جمع بيانات قاعدة ABS على أســاس 20 سطــرا في جدول أخر
#1
السلام عليكم ورحمة الله تعالى وبركاته  أردت من خلال هذا البرنامج أن أقوم بعملية جمع في قاعدة بيانات وهي مرفقة ، على أســاس 20 سطر  أو تسجيل من dbGrid  إلى أخر أي جمع المعلومات أو التسجيلات على شكل 20تسجيل في بيانات أخرى  أي من Abstable1 إلى Abstable2  وأكتشفت بعدها أخطاء  ولم أتمكن من إكمال أو تتمة هذا البرنامج الصغير شكرا للجميع وشكرا للمساعدة.


الملفات المرفقة
.rar   ABSTABLE.rar (الحجم : 26.87 ك ب / التحميلات : 9)
الرد
#2
وعليك السلام

في فورم المجاميع غير ;b:=b+1   إلى ;b:=1
الرد
#3
شكرا الأخ العربي بارادوكس Larbiparadox لقد فعلت ما أجبتني به لكن لاحل لهذه المعضلة على كل شكرا وألف شكر.
الرد
#4
كود :
procedure TForm2.BitBtn2Click(Sender: TObject); var i,ii,iii,iiii:real; b: integer; begin i:=0;ii:=0;iii:=0;b:=1; Form1.aBSTABLE1.Close; Form1.aBSTABLE1.Open; repeat i:=i+Form1.ABSTable1D_pension.AsFloat; ii:=ii+Form1.ABSTable1Pension.AsFloat; iii:=iii+Form1.ABSTable1B_retro.AsFloat; iiii:=i+ii+iii; Form1.ABSTable1.Next; b:=b+1; if b=20 then begin Form1.ABSTable2.Append; Form1.ABSTable2D_pension.AsFloat:=i; Form1.ABSTable2Pension.AsFloat:=ii; Form1.ABSTable2B_retro.AsFloat:=iii; Form1.ABSTable2Total.AsFloat:=iiii; Form1.ABSTable2.Post ; b:=0; end; until Form1.ABSTable1.Eof; if b<>0 then begin Form1.ABSTable2.Append; Form1.ABSTable2D_pension.AsFloat:=i; Form1.ABSTable2Pension.AsFloat:=ii; Form1.ABSTable2B_retro.AsFloat:=iii; Form1.ABSTable2Total.AsFloat:=iiii; Form1.ABSTable2.Post ; end;
رَبَّنَا اغْفِرْ لِي وَلِوَالِدَيَّ وَلِلْمُؤْمِنِينَ يَوْمَ يَقُومُ الْحِسَابُ
الرد
#5
أهم شئ كنا ننساه و هو تصفير المجاميع ، إضافة صغيرة لأستاذ عبد العزيز

[صورة: 882286775.png]

كود :
procedure TForm2.BitBtn2Click(Sender: TObject); var i,ii,iii,iiii:real; b: integer; begin i:=0;ii:=0;iii:=0;b:=0; Form1.aBSTABLE1.Close; Form1.aBSTABLE1.Open; repeat i:=i+Form1.ABSTable1D_pension.AsFloat; ii:=ii+Form1.ABSTable1Pension.AsFloat; iii:=iii+Form1.ABSTable1B_retro.AsFloat; iiii:=i+ii+iii; Form1.ABSTable1.Next; b:=b+1; if b=20 then begin Form1.ABSTable2.Append; Form1.ABSTable2D_pension.AsFloat:=i; Form1.ABSTable2Pension.AsFloat:=ii; Form1.ABSTable2B_retro.AsFloat:=iii; Form1.ABSTable2Total.AsFloat:=iiii; Form1.ABSTable2.Post ; b:=0; i:=0;ii:=0;iii:=0 end; until Form1.ABSTable1.Eof; if b<>0 then begin Form1.ABSTable2.Append; Form1.ABSTable2D_pension.AsFloat:=i; Form1.ABSTable2Pension.AsFloat:=ii; Form1.ABSTable2B_retro.AsFloat:=iii; Form1.ABSTable2Total.AsFloat:=iiii; Form1.ABSTable2.Post ; end; end;
[-] كل من 1 user says قال شكرا ل larbiparadox على المشاركة المفيدة
  • محمد عبد العزيز
الرد
#6
الأخ العربي larbiparadox شكرا جزيلا لك فعلا حلت المشكلة لقد قمت بتصحيح الكود ولك كل الشكر كما لايسعني أن أشكر الأخ B.M Abdelazizi على المشاركة ولكم جميعا الشكر بعض الهفوات صادفتني أثناء تحرير الكود وكان بفضلكم الحل شكرا وألف شكر.
الرد


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم