المشاركات : 3
المواضيع 1
:
: 2
الإنتساب : May 2025
01-05-2025, 06:18 PM
(آخر تعديل لهذه المشاركة: 01-05-2025, 06:28 PM بواسطة hamam2025.)
السلام عليكم
نرجو من الاخوة افادتي في اشكال بتطبيقي حيث قمت بعمل فلترة بين تاريخين و نجح الامر و لكن الاشكال أردت مجموع حقل معين بالجدول و اظهاره
https://e.top4top.io/p_3408ygcr71.png
المشاركات : 522
المواضيع 46
:
: 394
الإنتساب : Sep 2011
02-05-2025, 09:37 AM
(آخر تعديل لهذه المشاركة: 02-05-2025, 09:38 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;
اللّهمّ فرّج أُموراً ضَاقت بها صُدورنا وعجزت بها حيلتنا وقلّ بها صَبرنا الّلهمّ أَسعِد قلوبنا بما أنتَ أعْلَمُ بِهِ مِنّا
المشاركات : 1,252
المواضيع 170
:
: 1,500
الإنتساب : Jul 2009
02-05-2025, 10:08 AM
(آخر تعديل لهذه المشاركة: 02-05-2025, 05:10 PM بواسطة أبو معاذ.)
وعليكم السلام و رحمة الله وبركاته.
إذا كنت تستعمل sql ، فالحل مثلما قال به أخونا العربي،
أما إذا كنت لا تستعمل sql، فاستعمل حلقة while
PHP كود :
Sum := 0;
While not adotable.eof do
Begin
Sum :=sum +adotabletotal.float;
Adotable.next;
End;
اللهم اجعلني من أهل القرآن ، الذين هم أهلك و خاصتك.
تذكر بأن الوقت الذي تلهو فيه ، غيرك يبني مجده فيه.
المشاركات : 3
المواضيع 1
:
: 2
الإنتساب : May 2025
(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
المشاركات : 67
المواضيع 14
:
: 43
الإنتساب : Jan 2025
وعليكم السلام ورحمة الله
مررت من هنا واردت ترك تعقيب بسيط
اذا كانت البيانات ليست كثيرة فكل الحلول تؤدي الى افغانستان
ولكن ..!
استعمال SQL هو اتصال بقاعدة البيانات وعملية جديدة غير مبررة لان البيانات عندك اصلا ووقتها استخدام Do While تكون انسب
فقط مع وضع بالاعتبار حركة مؤشر موقع السجل يجب Table.DisableControl وبعد الانتهاء EnabledControl
وايضا يوجد حل ثالث وهو الذي تقدمه اغلب المكونات مثل FireDac وهو استخدام Aggregate Fields
إذا رأيت منتجاً مجانياً فأعلم بأنك أنت السّلعة
المشاركات : 3
المواضيع 1
:
: 2
الإنتساب : May 2025
(02-05-2025, 06:23 PM)الفجر الابيض كتب : وعليكم السلام ورحمة الله
مررت من هنا واردت ترك تعقيب بسيط
اذا كانت البيانات ليست كثيرة فكل الحلول تؤدي الى افغانستان
ولكن ..!
استعمال SQL هو اتصال بقاعدة البيانات وعملية جديدة غير مبررة لان البيانات عندك اصلا ووقتها استخدام Do While تكون انسب
فقط مع وضع بالاعتبار حركة مؤشر موقع السجل يجب Table.DisableControl وبعد الانتهاء EnabledControl
وايضا يوجد حل ثالث وهو الذي تقدمه اغلب المكونات مثل FireDac وهو استخدام Aggregate Fields
السلام عليكم
بارك الله في مروركم الجميل و لكن اخي لدي اشكال بذات السياق في حالة جمع نفس الحقل و لكن الفلترة بحقلين مختلفين ليس بتاريخ فقط و لكن بالتاريخ و الصندوق جزاكم الله كل خير
المشاركات : 67
المواضيع 14
:
: 43
الإنتساب : Jan 2025
الفلترة بحقلين
كود :
Table.filtted:=false
Table.filtter:='filedname1=4444 and filedname2=5555'
Table.filtted:=true
تجمع بين الحقول وتفصل بينهم بالعبارة and كما تفعل مع جمل Sql
إذا رأيت منتجاً مجانياً فأعلم بأنك أنت السّلعة