حلت مشكلة في مشروع قاعة الانتظار

Ahmed Jendoubi

Developpeur Windev
طاقم الإدارة
إنضم
17 جوان 2013
المشاركات
3.411
مستوى التفاعل
6.145
بارك الله فيك اخي احمد وجزاك الله كل خير
ساقوم بشرح الكود على فهمي واترك التعليق لكم


مشاهدة المرفق 1124222

  1. البرنامج يعمل عادي إضافة أو تغير .
  2. الكود يبدا عمله من الحذف .فرضا عندنا 8 أشخاص في قاعدة الانتظار طبعا ترتيبهم 1-2-3-4-5-6-7-8 حذفنا رقم 1 يصبح الترتيب 2-3-4-5-6-7- 8
  3. هنا يدخل دور كودا الحذف
  4. كود:
     HSupprimeTout(numero)
    HLitDernier(salle_d_attente)
        numero.numero =salle_d_attente.N_Dossier
         HAjoute(numero)
  5. عند الضغط على زر الحذف يقوم
    • HSupprimeTout(numero) بحذف كل ما هو موجود في قاعدة numero التي استعملت فقط لتخزين اخر رقم في قاعدة salle_d_attente
  6. HLitDernier(salle_d_attente) دوره يبحث في
    • salle_d_attente وياخذ رقم اخر عنصر مسجلة
    • salle_d_attente ويحفظه في numero عن طريق الكود Hajoute

  7. مشاهدة المرفق 1124227



  8. الكود رقم 7 نستعمله لاضافة شخص جديد كما يلي salle_d_attente..NouvelEnregistrement معناه اذا كان هنا ك تسجيل جديد افعل ما يلي
  9. SI HNbEnr(numero) =0 ALORS
    HLitDernier(salle_d_attente)
  10. SI HNbEnr(numero) معنها عدد التسجيلات المحفوظة في قاعدة numero =0 (اي لم نقم بحذف اي عنصر) اذهب الى قاعدة قاعدة الانتظار وحذ رقم اخر عنصر فيها واضف له +1 عن طريق الكود
  11. SAI_N_Dossier = Val(salle_d_attente.N_Dossier)+1
  12. ثم يعيد الحقل الى القيمة الافتراضية عن طريق HRAZ(salle_d_attente)
  13. ما سبق هو الجزء الاول من الكود
  14. نمر الى SINON من نفس الكود رقم 7
  15. معنها اذا انه توجد قيمة مسجلة في قاعدة numero
  16. حذه القيمة الموجود واعطها للحقل SAI_N_Doossier

هذا الذي فهمته من الكود والله اعلم



شكرا لك على شرح الكود
 
إنضم
14 أفريل 2016
المشاركات
595
مستوى التفاعل
263
فقط توجد اشكالية صغيرة

اغلقنا التسجيل وواكملنا الفحص فان البرنامج يبقى محتفظ باخر رقم محذوفه
وبالتالي عن البدا في اليوم الموالي فانه يبدا باخر رقم موجود في قاعدة numero

فظن االحل ان نظيف الكود التالي عن فتح الصفحة

كود:
SI HNbEnr(salle_d_attente)=0 ALORS
    HSupprimeTout(numero)
FIN
 

Ahmed Jendoubi

Developpeur Windev
طاقم الإدارة
إنضم
17 جوان 2013
المشاركات
3.411
مستوى التفاعل
6.145
فقط توجد اشكالية صغيرة

اغلقنا التسجيل وواكملنا الفحص فان البرنامج يبقى محتفظ باخر رقم محذوفه
وبالتالي عن البدا في اليوم الموالي فانه يبدا باخر رقم موجود في قاعدة numero

فظن االحل ان نظيف الكود التالي عن فتح الصفحة

كود:
SI HNbEnr(salle_d_attente)=0 ALORS
    HSupprimeTout(numero)
FIN

قم باظافة هذا الكود عند غلق البرنامج

HSupprimeTout(numero)
 
أعلى