بتاريخ: 25 مايو 200718 سنة comment_100560 ارجو من اخواني المساعدة . عندي مشكلتين؟في فورم الموظفين .اولا : اريد trigger يعمل على ادخال اسم الادارة في display item اتوماتيكيا عند ادخالي رقم ادارة في text item والذي سيأخذها من جدول " اسماء الادارات" .ثانيا : اريد trigger يعمل على نقل المؤشر الى عنوان الموظف"وهو اخر فيلد في الترتيب" مباشرة اذا كان text item للـ"هل ايملك عناون" قيمتها نعم ."اقصد ان ينتقل الى text item معين اذا كانت قيمة text item اخر بنعم والا يستمر بالتنقل بالترتيب"ارجو ان يكون الشرح واضح .عندي جدولين : الجدول الاول يحتوي على اسماء الادارات . والجدول الثاني يحتوي على معلومات للموظفين .شكرا تقديم بلاغ
بتاريخ: 26 مايو 200718 سنة comment_100629 بعد السلام عليكم بالنسبه للخطوه الاولى او الطلب الاول يوجد الكثير من الحلول ومنها .ممكن انشاء lov تعطيها رقم الأداره تعطيك اسم الادارة عن طرق هذا الكود SELECT DEPARTMENT.DEPARTMENT_ID, DEPARTMENT.DEPARTMENT_NAMEINTO :DEPARTMENT.DEPARTMENT_ID, :DEPARTMENT.DEPARTMENT_NAMEFROM DEPARTMENT ORDER BY DEPARTMENT_ID تقديم بلاغ
بتاريخ: 28 مايو 200718 سنة كاتب الموضوع comment_100737 شكرا اخي لكن دون استخدام lov . اعني بمجرد ما اكتب الرقم الادارة في text item يظهر اسم الادارة في text item الخاص فيه . تقديم بلاغ
بتاريخ: 28 مايو 200718 سنة comment_100760 السلام عليكم ورحمة الله وبركاتهاخي الكريم استخدم WHEN-VALIDATE-ITEM علي مستوي رقم الادارةحيث الكود التالي علي سبيل المثال يقوم بإدراج بيانات الصنف في الفاتورة حسب رقم الصنف المدخل DECLARE aa number; begin select count(invt_no) into aa from inventory where inventory.invt_no = :inv_sal.invt_no; IF aa = 0 THEN MESSAGE('يوجد خطأ في إدخال رقم الصنف'); MESSAGE('يوجد خطأ في إدخال رقم الصنف'); RAISE Form_Trigger_Failure; ELSIF aa = 1 THEN select inventory.qty ,inventory.invt_nam ,inventory.pric_sal ,inventory.tax_rat into :inv_sal.qty , :inv_sal.invt_nam , :inv_sal.pric_sal,:inv_sal.tax_rat from inventory where inventory.invt_no = :inv_sal.invt_no; IF :inv_sal.qty > 0 THEN execute_query; ELSE MESSAGE('لا يوجد كمية متوفرة من هذا الصنف'); MESSAGE('لا يوجد كمية متوفرة من هذا الصنف'); RAISE FORM_TRIGGER_FAILURE; END IF; END IF; END; كما يمكن استخدام POST-CHANGE للسؤال الاول الثانيحيث الكود التالي علي سبيل المثال يقوم بإدراج اسم البنك ونوع العملية شيك اذا كان رقم الحساب يحقق الشرطحيث تم وضع القيمة الافتراضية للحقل نقدي IF :c_ent.cc_num between 1020001 and 1040000 THEN select ac_nam , 'شيك' into :ch_bk ,:sh_ch from act where act.ac_num = :c_ent.cc_num; END IF; جزاك الله كل خير تقديم بلاغ
بتاريخ: 29 مايو 200718 سنة comment_100814 استخدام POST-CHANGE للسؤال الثانيif text item := 'نعم' thenGo_Block('Block name');Go_Item('Block name.Item name'); تقديم بلاغ
بتاريخ: 30 مايو 200718 سنة comment_100957 ممكن أيضا على السؤال ألاولوضع trigger على مستوى البلوك وهو post query وكتابة هذا الكودselect dnameinto :dept.dnamefrom deptwhere deptno=:dept.dname;والله اعلم miash80 :angry: :angry: :angry: تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.