كل مؤسسة تبيع منتجاتها أو خداماتها ، تستعمل فواتير للتعامل مع زبنائها ، كل الفواتير يجب أن تحمل تاريخ ورقم ، الأرقام يجب أن تكون متسلسلة وغير مكررة في نفس السنة. الفاتورة الأولى لأي سنة يجب أن تبدأ بالرقم واحد(1) ، والفاتورة التي تليها يجب أن تحمل رقم اثنين(2) وهكذا دواليك.
عادة ما يتم عرض أرقام الفواتير بشكل رقم تسلسي مضاف إليه الرمز '/' ثم سنة تحرير الفاتورة أو سنة النشاط، مثل '0001/2020' ، '0002/2020'، '00011/2021' ... الخ
هناك طرق عديدة للحصول على هذا الرقم المتسلسل في فاتورة،
في المثال التالي نستعمل قاعدة بيانات SQLITE في تطبيق دلفي كما يلي :
- في مشروع دلفي فارغ نضع على الفورم العناصر الموضحة في الشكل :
نلاحظ على الفورم العناصر التالية :
العناصر الثلاثة الموضحة في الشكل لربط الاتصال بقاعدة البيانات
ثلاثة عناصر من نوع `TFDQuery` لإنشاء جدول و إضافة بعض القيم ، العنصر الثاني للبحث عن رقم الفاتورة الأخير ، والعنصر الثالث لإدراج القيمة التالية في الفاتور ة كما هو موضح في الشكل التالي :
للعنصر `FDQCreateAndAdd` الكود التالي :
CREATE TABLE if not exists Facture ( idsf integer, idclient integer, date_facture date, Reff varchar(20)); INSERT INTO Facture (idsf, idclient, date_facture, Reff) VALUES (1, 19, '2020-06-23', '1065/2020'), (2, 27, '2020-06-23', '1066/2020'), (3, 31, '2020-07-22', '1067/2020'), (4, 18, '2020-08-23', '1068/2020'), (5, 8, '2021-08-04', '0008/2021');
الكود بالنسبة للعنصر `"FDQFindMax"` هو كما يلي :
select max(reff) nref from facture where reff like '%'||:ref
مع العلم أن الوسيط `"ref"`معرف كما هو موضح في الشكل التالي :
أما الكود بالنسبة للعنصر `FDQShow` فهو كالتالي :
select * from facture;
نضيف الإجراء التالي في الدلفي في القسم الخاص بالتصريحات كما هو موضح في الشكل التالي :
عند تحرير فاتورة جديدة نحتاج إلى الكود دلفي الموضح في الشكل التالي للحصول على الرقم الجديد :
طريقة عمل هذا الكود على رابط الفيديو التالي
ليست هناك تعليقات:
إرسال تعليق