وعليكم السلام و رحمة الله وبركاته.
إذا كنت تستعمل sql ، فالحل مثلما قال به أخونا العربي،
أما إذا كنت لا تستعمل sql، فاستعمل حلقة while
PHP كود :
Sum := 0;
While not adotable.eof do
Begin
Sum :=sum +adotabletotal.float;
Adotable.next;
End;
(02-05-2025, 09:37 AM)larbiparadox كتب : [ -> ] (01-05-2025, 06:18 PM)hamam2025 كتب : [ -> ]السلام عليكم
نرجو من الاخوة افادتي في اشكال بتطبيقي حيث قمت بعمل فلترة بين تاريخين و نجح الامر و لكن الاشكال أردت مجموع حقل معين بالجدول و اظهاره
https://e.top4top.io/p_3408ygcr71.png
إقتباس : Query.SQL.Text := 'SELECT SUM(m2) AS Total FROM YourTableName ' +
'WHERE date_s BETWEEN :StartDate AND :EndDate';
// تحويل النص من Edit إلى تاريخ
Query.Parameters.ParamByName('StartDate').Value := StrToDate(Edit1.Text);
Query.Parameters.ParamByName('EndDate').Value := StrToDate(Edit2.Text);
Query.Open;
if not Query.FieldByName('Total').IsNull then
TotalAmount := Query.FieldByName('Total').AsFloat
else
TotalAmount := 0;
شكرا جزيلا اخوتي الكرام الكود 100/100
وعليكم السلام ورحمة الله
مررت من هنا واردت ترك تعقيب بسيط
اذا كانت البيانات ليست كثيرة فكل الحلول تؤدي الى افغانستان
ولكن ..!
استعمال SQL هو اتصال بقاعدة البيانات وعملية جديدة غير مبررة لان البيانات عندك اصلا ووقتها استخدام Do While تكون انسب
فقط مع وضع بالاعتبار حركة مؤشر موقع السجل يجب Table.DisableControl وبعد الانتهاء EnabledControl
وايضا يوجد حل ثالث وهو الذي تقدمه اغلب المكونات مثل FireDac وهو استخدام Aggregate Fields
(02-05-2025, 06:23 PM)الفجر الابيض كتب : [ -> ]وعليكم السلام ورحمة الله
مررت من هنا واردت ترك تعقيب بسيط
اذا كانت البيانات ليست كثيرة فكل الحلول تؤدي الى افغانستان
ولكن ..!
استعمال SQL هو اتصال بقاعدة البيانات وعملية جديدة غير مبررة لان البيانات عندك اصلا ووقتها استخدام Do While تكون انسب
فقط مع وضع بالاعتبار حركة مؤشر موقع السجل يجب Table.DisableControl وبعد الانتهاء EnabledControl
وايضا يوجد حل ثالث وهو الذي تقدمه اغلب المكونات مثل FireDac وهو استخدام Aggregate Fields
السلام عليكم
بارك الله في مروركم الجميل و لكن اخي لدي اشكال بذات السياق في حالة جمع نفس الحقل و لكن الفلترة بحقلين مختلفين ليس بتاريخ فقط و لكن بالتاريخ و الصندوق جزاكم الله كل خير
الفلترة بحقلين
كود :
Table.filtted:=false
Table.filtter:='filedname1=4444 and filedname2=5555'
Table.filtted:=true
تجمع بين الحقول وتفصل بينهم بالعبارة and كما تفعل مع جمل Sql