----------------------------------------------------------------
هذه الطريقة لا تصلح مع ADO لل FireDAC فقط
---------------------------------------------------------------
طريقة حساب المجاميع لفاتورة ما
الدلفي مسهلة الأمر لأبعد الحدود ولا يلزم لا كويري خاص ولا فانكشن ولا شيء
أولا كيفية حساب المجموع والذي يتم لكل سجل على حدا
المجموع = الكمية * سعر الوحدة
Total = Qty * UnitPrice
ويتم حسابه باستخدام
Calculated Fields
لنفرض ان اسم مكون الكويري لديك هو
qryItems
نضغط باليمين عليه ونختار عرض كافة الحقول
Fields Editor
Add all fields
ثم نضغط باليمين ونختار اضافة حقل جديد
New field
تظهر نافدة نكتب فيها اي اسم للحقل وليكن
Total
ثم نختار النوع وهو اختياري
Currency
ثم نختار خيار
Calculated
نضغط اوكي
ثم نذهب الى حدث
OnCalcFields
ونكتب فيه
qryItemsTotal.Value := qryItemsQty.Value * qryItemsUnitPrice.Value;
لاحظ اسماء الحقول ملاصقة لاسم الكويري
ثم نأتي لمكون
DBGrid
مثلا ونختار حقل جديد ونربطه بحقلنا الذي انشأنه
Total
**************************************
ثانيا كيفية حساب المجموع الكلي (الخط الأزرق)
والذي يتم حسابه على كل السجلات
المجموع الكلي = مجموع(الكمية * سعر الوحدة)
GrandTotal = Sum(Qty*UnitPrice)
ويتم حسابه باستخدام
Aggregate Fields
نضغط باليمين علي نفس مكون الكويري ونختار اضافة حقل جديد
New field
تظهر نافدة نكتب فيها اي اسم للحقل وليكن
GrandTotal
ثم نختار خيار
Aggregate
نضغط اوكي
ثم نذهب لخواص هذا الحقل
وبشكل اختياري يمكن اختيار خاصية
Currency
المهم نختار الخاصية
Expression
ونكتب فيه المعادلة المطلوبة مثلا
Sum(Qty*UnitPrice)
ثم نفعل خاصية
Active
ثم نفعل خاصية
Visible
ثم نختار الكويري ونذهب ونفعل خاصية
AggregateActive
فقط
نضع مكون مثلا
DBEdit
ونربطه مع الحقل الجديد
GrandTotal
*************************
إن شاء الله يكون الشرح مفهوم
هذه الطريقة لا تصلح مع ADO لل FireDAC فقط
---------------------------------------------------------------
طريقة حساب المجاميع لفاتورة ما
الدلفي مسهلة الأمر لأبعد الحدود ولا يلزم لا كويري خاص ولا فانكشن ولا شيء
أولا كيفية حساب المجموع والذي يتم لكل سجل على حدا
المجموع = الكمية * سعر الوحدة
Total = Qty * UnitPrice
ويتم حسابه باستخدام
Calculated Fields
لنفرض ان اسم مكون الكويري لديك هو
qryItems
نضغط باليمين عليه ونختار عرض كافة الحقول
Fields Editor
Add all fields
ثم نضغط باليمين ونختار اضافة حقل جديد
New field
تظهر نافدة نكتب فيها اي اسم للحقل وليكن
Total
ثم نختار النوع وهو اختياري
Currency
ثم نختار خيار
Calculated
نضغط اوكي
ثم نذهب الى حدث
OnCalcFields
ونكتب فيه
qryItemsTotal.Value := qryItemsQty.Value * qryItemsUnitPrice.Value;
لاحظ اسماء الحقول ملاصقة لاسم الكويري
ثم نأتي لمكون
DBGrid
مثلا ونختار حقل جديد ونربطه بحقلنا الذي انشأنه
Total
**************************************
ثانيا كيفية حساب المجموع الكلي (الخط الأزرق)
والذي يتم حسابه على كل السجلات
المجموع الكلي = مجموع(الكمية * سعر الوحدة)
GrandTotal = Sum(Qty*UnitPrice)
ويتم حسابه باستخدام
Aggregate Fields
نضغط باليمين علي نفس مكون الكويري ونختار اضافة حقل جديد
New field
تظهر نافدة نكتب فيها اي اسم للحقل وليكن
GrandTotal
ثم نختار خيار
Aggregate
نضغط اوكي
ثم نذهب لخواص هذا الحقل
وبشكل اختياري يمكن اختيار خاصية
Currency
المهم نختار الخاصية
Expression
ونكتب فيه المعادلة المطلوبة مثلا
Sum(Qty*UnitPrice)
ثم نفعل خاصية
Active
ثم نفعل خاصية
Visible
ثم نختار الكويري ونذهب ونفعل خاصية
AggregateActive
فقط
نضع مكون مثلا
DBEdit
ونربطه مع الحقل الجديد
GrandTotal
*************************
إن شاء الله يكون الشرح مفهوم