06-01-2016, 12:52 PM
السلام عليكم ورحمة الله
لقد وضعت هذا الكود والمقصود منه هو بيحث في الجدول abstable2
اذا كان الرقم Cde يساوي القيمة 0 أو يساوي قيمة اكثر من 0
يجب ان يكون الحقل CdeN في الجدولabstable1 تساوي القيمة Cde + 1
والمشكلة التي اعاني منها الان هي اذا كان الجدول abstable2 فارغ
لا يجعل قيمة الحقل CdeN في الجدول abstable1 تساوي 1
والمطلوب لوكانت قيمة Cde تساوي 0 يجب ان تكون قيمة CdeN تساوي 1
وبالتوفيق
لقد وضعت هذا الكود والمقصود منه هو بيحث في الجدول abstable2
اذا كان الرقم Cde يساوي القيمة 0 أو يساوي قيمة اكثر من 0
يجب ان يكون الحقل CdeN في الجدولabstable1 تساوي القيمة Cde + 1
والمشكلة التي اعاني منها الان هي اذا كان الجدول abstable2 فارغ
لا يجعل قيمة الحقل CdeN في الجدول abstable1 تساوي 1
والمطلوب لوكانت قيمة Cde تساوي 0 يجب ان تكون قيمة CdeN تساوي 1
كود :
procedure TForm1.Button1Click(Sender: TObject);
var t01,t02,t03:string;
MT:double;
s01:integer;
begin
if abstable1.State=DSEdit then abstable1.Post;
abstable2.Open;
abstable2.First;
while not abstable2.Eof do
begin
{Keep Previous values}
s01 := abstable2.FieldValues['Cde'];
t01 := abstable2NAT.AsString;
t02 := abstable2NBT.AsString;
t03 := abstable2NCT.AsString;
MT := abstable2MT_N.AsFloat;
abstable2.Next;
if abstable1.Locate('NAT;NBT;NCT',vararrayof([t01,t02,t03]),[locaseinsensitive,lopartialkey]) then
begin
abstable1.Edit;
if MT<>0 then
begin
If abstable1MT_RS.Asfloat<>0 then
begin
end else begin
abstable1.Edit;
abstable1MT_TO.AsFloat := MT;
abstable1MT_NV.AsFloat := 0;
abstable1CdeA.asinteger := s01;
abstable1CdeN.asinteger := s01+1;
end;
end else begin
abstable1.Edit;
abstable1MT_TO.AsFloat :=0;
abstable1MT_NV.AsFloat :=0;
end;
abstable1.Next;
end else begin
end;
end;
end;
end;
