بتاريخ: 23 فبراير 20169 سنة comment_271604 كيف تقوم بإدارة الرسائل والاشعارات والأخطاء بالنظام بدون تدخل برمجي أولاً نقوم بإنشاء جدول كما في الشكل التالي : CREATE TABLE NOTIFICATIONS ( NVG_CODE NUMBER, NVG_TYPE VARCHAR2(20 BYTE), NVG_DESC_EN VARCHAR2(100 BYTE), NVG_DESC_AR VARCHAR2(100 BYTE), NOTES VARCHAR2(100 BYTE) ) يحتوي على البيانات التالية : NVG_CODE NVG_TYPE NVG_DESC_AR NOTES 40400 MSG تمت عملية الحفظ بنجاح ، شكراً لك في حالة الحفظ 40200 ERR لا تستطيع التعديل على البيانات الآن عند محااولة التعديل وهو غير ممكن 41049 ERR لا تستطيع الحذف لأن هذا الحقل محمي عنند محاولة الحذ وهو غير ممكن 40401 ERR لم تتم أي تغييرات عند الحفظ ولم يتم أي تغيير ثم ندخل على أي شاشة ونقوم بما يلي: 1. نقوم باضافة ALERTS بهذا الأسم (SHWMSG) وأخر باسم (SHWERR). 2. نعمل أثنين ترقير على مستوى الفورم وهما كما يلي . 1. تريقر ON-ERROR نكتب فيه الكود التالي DECLARE errnum number :=ERROR_CODE; errtxt varchar2(100) :=ERROR_TEXT; errtyp varchar2(3) :=ERROR_TYPE; msg_fld varchar2(100);FAMO number; BEGIN BEGINmsg_fld := msg_fld || chr(10)|| errtxt ;SELECT NVG_DESC_AR INTO msg_fld FROM NOTIFICATIONS WHERE NVG_CODE = ERRNUM and NVG_TYPE = 'ERR';SET_ALERT_PROPERTY('SHWERR',ALERT_MESSAGE_TEXT,'You are not connected');EXCEPTION WHEN NO_DATA_FOUND THEN msg_fld := ERRTXT||chr(10) ||errtyp||'-'|| TO_CHAR(ERROR_CODE);FAMO:=show_alert('SHWERR');when others THEN IF ERROR_CODE = 47109 THEN END IF;END;MSG_FLD := ERRTXT || chr(10) ||errtxt || errtyp; END; SET_ALERT_PROPERTY('SHWERR',ALERT_MESSAGE_TEXT,MSG_FLD );FAMO:=show_alert('SHWERR'); 2. تريقر ON-MESSAGE نكتب فيه نفس الكود السابق مع بعض التغييرات البسيطة DECLARE errnum number :=ERROR_CODE; errtxt varchar2(100) :=ERROR_TEXT; errtyp varchar2(3) :=ERROR_TYPE; msg_fld varchar2(100);FAMO number; BEGIN BEGINmsg_fld := msg_fld || chr(10)|| errtxt ;SELECT NVG_DESC_AR INTO msg_fld FROM NOTIFICATIONS WHERE NVG_CODE = ERRNUM and NVG_TYPE = 'ERR';SET_ALERT_PROPERTY('SHWERR',ALERT_MESSAGE_TEXT,'You are not connected');EXCEPTION WHEN NO_DATA_FOUND THEN msg_fld := ERRTXT||chr(10) ||errtyp||'-'|| TO_CHAR(ERROR_CODE);FAMO:=show_alert('SHWERR');when others THEN IF ERROR_CODE = 47109 THEN END IF;END;MSG_FLD := ERRTXT || chr(10) ||errtxt || errtyp; END; SET_ALERT_PROPERTY('SHWERR',ALERT_MESSAGE_TEXT,MSG_FLD );FAMO:=show_alert('SHWERR'); في الأخير قم بتشغيل الفورم وسوف تنبهر بالنتيجة,,, بإمكانك في أي وقت وبدن تدخل برمجي تغيير رسائل النظام اثناء القيام بأي عمل .... انا على استعداد تام لاي ملاحظات او شرح للكود السابق ... في المرفقات فورم يحتوي على بيانات عينة Forms.rar تم تعديل 24 فبراير 20169 سنة بواسطة ميسم الكرام تقديم بلاغ
بتاريخ: 23 فبراير 20169 سنة كاتب الموضوع comment_271610 البيانات بقاعدة البيانات NVG_CODE NVG_TYPE NVG_DESC_AR NOTES 40400 MSG تمت عملية الحفظ بنجاح ، شكراً لك في حالة الحفظ 40200 ERR لا تستطيع التعديل على البيانات الآن عند محااولة التعديل وهو غير ممكن 41049 ERR لا تستطيع الحذف لأن هذا الحقل محمي عنند محاولة الحذ وهو غير ممكن 40401 ERR لم تتم أي تغييرات عند الحفظ ولم يتم أي تغيير تقديم بلاغ
بتاريخ: 23 فبراير 20169 سنة comment_271628 السلام عليكم ورحمة الله وبركاته مشكور اخي العزيز ولكني صدقا لم اعرف بداية الموضوع هل هو سؤال ام هو شرح اخي الفاضل الموضوع مهم ولكن اسلوب الشرح غير مرتب ارجو منك اعادة كتابة الشرح خطوة خطوة وبالترتيب مع شرح كل خطوة ارجو ان تقبل ملاحظتي بصدر رحب لكي يستفيد الجميع وانا اولهم اخوك موسى تقديم بلاغ
بتاريخ: 25 فبراير 20169 سنة comment_271713 جزاك الله خير الجزاء ومجهود متميز يستحق الشكر والثناء تقديم بلاغ
بتاريخ: 26 فبراير 20178 سنة comment_283538 شكرا أستاذي الفاضل نتعلم منكم الكثير جعله الله ذخرا لكم يوم لا ينفع مال و لا بنون إلا من أتى الله بقلب سليم تقديم بلاغ
بتاريخ: 3 مارس 20178 سنة comment_283713 شرح ممتاز جزاكم الله خير وفى اضافة اتمنى تكون مفيدة وومكن نفس كلام حضرتك يتعمل عن طريق Procedure ويتنادى عليه من التريقرز سالفة الذكر تقديم بلاغ
بتاريخ: 3 مارس 20178 سنة كاتب الموضوع comment_283716 شكرا على الملاحدة اخي موسى ، سأعمل بها في مواضيع لاحقة ان شاء الله تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.