السلام اخواني الكرام اعترضني مشكل اثناء البرمجة و المتمثل في عمليات الحسابية في الفاير مانكي بحيت اود حساب اجمالي الحضور و تظهر النتائج عبر مكون label7 وكذا اجمالي الغيابات و تظهر عبر مكون label8 وفق لما هو مبين في البرنامج المرفق . وشكرا مسبقا
* أردت تبسيط الأمر لكي تفهمه ، لم ارد الإكثار في السطور
ـ 01 ـ أضفت ADOQuery1 و ADOQuery2 لكتابة جمل SQL لحساب المجاميع
ـ 02 ـ و ربطناها مع ADOConnection1
ـ 03 ـ كتبنا الجملة SQL بدأناها بـ select وهي إختيار الحقول المراد استدعاءها و بعدها إخترنا دالة sum لحساب مجموع الحقل
الغيابات و
as نعيد تسمية الحقل
و from وهذا من الجدول nouvelle_affaire
- نفس الشيء مع ADOQuery2 في SQL مع تغيير إسم الحقل الحضور
- في LiveBindings ربطنا ADOQuery1 و ADOQuery2 مع Label
* أما لكي تظهر لنا المجاميع صحيحة في قسم الاحداث في ADOTable1 في RecordChangeComplete عند التغيير أو إظافة حقل يغلق ADOQuery1 و ADOQuery2 ليعطينا المجاميع الجديدة
شكرا اخي الكريم على هذا التوضيح فانا قمت بوضع هذا الكود الذي ارفقه في المرفقات لكن المشكلة تضهر في grid2 ممكن التصحيح ان امكن حتي شتغل معايا كما ارفق لكن البرنامج
(05-04-2020, 05:48 AM)SOFIANE09 كتب : [ -> ]شكرا اخي الكريم على هذا التوضيح فانا قمت بوضع هذا الكود الذي ارفقه في المرفقات لكن المشكلة تضهر في grid2 ممكن التصحيح ان امكن حتي شتغل معايا كما ارفق لكن البرنامج
لا يحتوي FMX على DBGRID إذا لن ينجح معك هذا على عكس VCL
كود :
procedure TForm1.Button1Click(Sender: TObject);
var s,e :real;
begin
s:=0;
e:=0;
begin
s:=StrToFloat(Grid2.Fields[03].Text)+s;
s:=StrToFloat(Grid2.Fields[04].Text)+s;
adotable1.Next;
end;
label7.text:=FloatToStr(s)+' الحضور ';
label8.text:=FloatToStr(e)+' الغيابات ';
end;
إستبدله بهذا
كود :
procedure TForm1.Button1Click(Sender: TObject);
var s,e :real;
begin
s:=0;
e:=0;
adotable1.First;
while not adotable1.Eof do
begin
if adotable1.FieldByName('الغيابات').Value <> null then s:=adotable1.FieldByName('الغيابات').AsFloat+s;
if adotable1.FieldByName('الحضور').Value <> null then e:=adotable1.FieldByName('الحضور').AsFloat+s;
adotable1.Next;
end;
label7.text:=FloatToStr(e)+' الحضور ';
label8.text:=FloatToStr(s)+' الغيابات ';
end;
شكرا اخي على المداخلة القيمة التي افادتني كثير و تحسين مستوى البرنامج الف الف شكر