delphi4arab منتديات دلفي للعرب
كيف تخزن سجل لمنتج ولم تخزن الفاتورة بعد؟ - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : كيف تخزن سجل لمنتج ولم تخزن الفاتورة بعد؟ (/showthread.php?tid=4657)

الصفحات: 1 2 3


كيف تخزن سجل لمنتج ولم تخزن الفاتورة بعد؟ - S.FATEH - 27-10-2012

افضل حل لمثل هذه المشاكل هي استخدام Triggersان كانت قاعدة البيانات تعدم ذلك يوفر لك Triggers عمليات
Before Insert
After Insert
Before Update
و الله اعلم ...


كيف تخزن سجل لمنتج ولم تخزن الفاتورة بعد؟ - cosinuszero - 28-10-2012

مشكورين جميعا
لقد اتخذت قراري و فعلت التالي

في النافذة الخاصة بإضافة فاتورة قمت بوضع زر بالقرب من رقم الفاتورة و الزبون و تاريخ الفاتورة و سميته"تأكيد الفاتورة"

و عمله هو تخزين الفاتورة قبل إضافة أي منتج و من ثم إضافة المنتجات عن طريق دبغريد بعد تخزين الفاتورة.

شكرا لكم على تعليقاتك و ردودكم و عيدكم مبارك.


كيف تخزن سجل لمنتج ولم تخزن الفاتورة بعد؟ - cosinuszero - 29-10-2012

السلام عليكم و رحمة الله و بركاته

إذا استعملنا المكون جدول لBDE نجد في خصائصه AutoRefresh للتحديث التلقائي.

أما بالنسبة لـADO فإنه لا توجد هذه الخاصية فما هو الحل.


سأكون مسرور بأية إجابة


كيف تخزن سجل لمنتج ولم تخزن الفاتورة بعد؟ - justnick - 30-10-2012

انا استخدم
PHP كود :
Adotable1.Requery([]); 



كيف تخزن سجل لمنتج ولم تخزن الفاتورة بعد؟ - Lam.Abdeldjalil - 30-10-2012

و عليكم السلام و رحمة الله وبركاته

لم و لن أعمل باالـ Bde لكن AutoRefresh : تحدد ما إذا كانت إعادة جلب الحقول المولدة تلقائيا أو العكس من الخادم ( من قيم إفتراضية / قوادح / autoincrement )
كود :
http://docwiki.embarcadero.com/Libraries/XE2/en/Bde.DBTables.TDBDataSet.AutoRefresh
فيما يخص الـ ADO إطلع على موضوع الـ ADO في العدد 5 للمجلة
http://www.delphi4arab.net/forum/showthread.php?tid=5403

بالتوفيق


كيف تخزن سجل لمنتج ولم تخزن الفاتورة بعد؟ - cosinuszero - 31-10-2012

justnick كتب :
PHP كود :
adotable1.requery([]); 
شكرا أخي ولكن هذه التعليمة لم تنفع

ربما أنا لم أطرح مشكلتي جيدا و ظننت الحل في Autorefresh.
و هي عند إضافة منتج في الدبغريد تختفي كل المنتجات الأخرى فظننت أن الحل في Autorefresh


كيف تخزن سجل لمنتج ولم تخزن الفاتورة بعد؟ - kachwahed - 31-10-2012

TDataSource مزود بالأحداث OnDataChange/OnUpdateData
أيضا جرب TRDSConnection في حالة العمل على شبكة
http://www.delphi4arab.net/forum/showthread.php?tid=6900



كيف تخزن سجل لمنتج ولم تخزن الفاتورة بعد؟ - Lam.Abdeldjalil - 01-11-2012

السلام عليكم

لماذا تستخدم lockType=ltbatchOptimistic ؟
+ هل الحقل ( المفتاح الأساسي في fac ) من نوع Autoinc ؟


كيف تخزن سجل لمنتج ولم تخزن الفاتورة بعد؟ - cosinuszero - 01-11-2012

أستخدم lockType=ltbatchOptimistic من أجل التأكيد الجماعي
Fac.UpdateBatch
FacProd.UpdateBatch

أو الالغاء الجماعي
FacProd.CancelUpdates
Fac.CancelUpdates

أما الحقل ( المفتاح الأساسي في fac ) ليس من نوع Autoinc لأنه مبرمج بــ+1 في الحدث OnNewRecord


كيف تخزن سجل لمنتج ولم تخزن الفاتورة بعد؟ - cosinuszero - 01-11-2012

سأبين أكثر


مشروعي هو برنامج تسيير تجاري لبيئة دلفي 2010 قاعدة البيانات 2007 التكنولوجيا ADO

المشكل في نافذة إضافة فاتورة جديدة

بعد اضافة منتج و الضغط على زر الاتجاه للأسفل لإضافة منتج جديد يختفي المنتج الذي تم حجزه من الدبغريد يعني دائما الدبغريد فارغ عند الضغط على زر الاتجاه للأسفل.

ملاحظة: لدي جدول Facture الماستر و FacProd الديتل.
خصائصهما:
LockType=ltBatchOptimistic
CursorType=ctStatic