بتاريخ: 8 سبتمبر 200719 سنة comment_109420 السلام عليكم و رحمة الله و بركاتهالأخوة الأعزّاء ...بعدما قمت بإنشاء functions و استدعيتها عن طريق procedure كان لا بد لي في النظام الذي أعمل به أن أستدعي الـprocedure داخل الـcursor ... و هذا الـcursor أريد أن أضعه في الفورم في إحدى الـitems من نوع text_item حيث أنني استخدمت Trigger من نوع when-validate-item ... الآن سأضع لكم كود الـcursor الذي قمت بإنشائه -مع العلم أن الـcompiler لم يعطيني أي Errors - : DECLARE CURSOR CALCULATE IS SELECT A.org_id,A.org_name,A.EMP_id,A.EMP_number, A.JOB_WAY,A.JOB_KIND,A.order_date,A.EXJOB_qty FROM EMP_COMMISSION A; BEGIN FOR REC IN CALCULATE LOOP IF (REC.org_id = 1 or REC.org_id = 3 or REC.org_id = 5 ) AND REC.JOB_WAY='RD' AND REC.JOB_KIND ='PLANNING' THEN RESULTS_COMMISSION (REC.EMP_id, REC.order_date); forms_ddl('commit'); ELSIF REC.org_id = 4 AND REC.JOB_WAY = 'RD' AND REC.JOB_KIND ='PLANNING' THEN RESULTS_COMMISSION2 (REC.EMP_ID, REC.ORDER_DATE); forms_ddl('commit'); ELSIF (REC.org_id = 1 or REC.org_id = 3 or REC.org_id = 5) AND REC.JOB_WAY = 'SD' AND REC.JOB_KIND = 'DESIGNING' THEN RESULTS_COMMISSION (REC.EMP_id, REC.order_date); forms_ddl('commit'); ELSIF REC.org_id = 4 AND REC.JOB_WAY = 'SD' AND REC.JOB_KIND = 'DESIGNING' THEN RESULTS_COMMISSION2 (REC.EMP_ID, REC.ORDER_DATE); forms_ddl('commit'); ELSE RESULTS_COMMISSION (REC.EMP_ID, REC.ORDER_DATE); forms_ddl('commit'); END IF; END LOOP; EXCEPTION WHEN NO_DATA_FOUND THEN NULL; END; ملاحظة : هذا كود CURSOR مصغّر عن النظام الذي أعمل به و شبيه به ... ملاحظة : تلاحظون وجود RESULTS_COMMISSION (REC.EMP_ID, REC.ORDER_DATE);و RESULTS_COMMISSION2 (REC.EMP_ID, REC.ORDER_DATE);هاذان PROCEDURS احاول استدعائهما داخل الـCURSOR ... * فهل طريقة الاستدعاء صحيحة ؟* و هل في هذا الكود أية أخطاء ؟؟؟ علماً أن الـCOMPILER لم يعطيني أي خطأ .* و كيف يمكن تشغيل هذا الكود داخل ITEM مثل TEXT_ITEM في الفورم ؟؟؟ * وضعت هذا الكود في TRIGGER من نوع WHEN-VALIDATE-ITEM و لكنه أعطاني خطأ بعد تشغيل البرنامج و الوصول إلى الـITEM و هي :FRM-40735 : WHEN-VALIDATE-ITEM TRIGGER RAISED UNHANDLED EXCEPTION ORA-00001فما هي المشكلة ؟؟؟فتحاوي((أبو فلسطين)) تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.