malik alwadi بتاريخ: 10 أبريل 2012 تقديم بلاغ مشاركة بتاريخ: 10 أبريل 2012 Hi All,I am facing a problem in running custom report in oracle apps .i am using lexical parameter in (AfterPForm) as shown below :------------------------------------------------------------------------------------------------------function AfterPForm return boolean is begin declare x1 number; x2 varchar2(55);x4 number; cursor c2 is select A.inventory_item_id,A.segment1,MESC_CUS_ITEM_WEIGHTS_CU(A.segment1,'M') from mtl_system_items A where A.organization_id=90 ----and A.segment1 in('0111-08P16AWG-U0BK8-06','0111-08P18AWG-U0BK8-03') and A.item_type like 'FI%' and a.inventory_item_id in (select inventory_item_id from BOM_BILL_OF_MATERIALS where A.inventory_item_id=assembly_item_id and organization_id=90 --- and to_char(creation_date,'MMYYYY')=:MMYY) And ((Trunc(Creation_Date) Between To_Date(To_Char(:From_Date,'DD-MON-YYYY') ,'DD-MON-YYYY') And To_Date(To_Char(:To_Date,'DD-MON-YYYY') ,'DD-MON-YYYY') ) or (:From_Date is null and :To_Date is null))) &itemc; begin SRW.DO_SQL('truncate table BOM_EXPLOSION_TEMP_SAVE2'); open c2; loop fetch c2 into x1,x2,x4; exit when c2%notfound; end loop; return (TRUE); end; end; ---------------------------------------------------------------------------------------------------------is it true to used it in this place or should to be in main select regards. اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
asd202 بتاريخ: 10 أبريل 2012 تقديم بلاغ مشاركة بتاريخ: 10 أبريل 2012 Hi All,I am facing a problem in running custom report in oracle apps .i am using lexical parameter in (AfterPForm) as shown below :------------------------------------------------------------------------------------------------------function AfterPForm return boolean isbegin declare x1 number; x2 varchar2(55);x4 number; cursor c2 is select A.inventory_item_id,A.segment1,MESC_CUS_ITEM_WEIGHTS_CU(A.segment1,'M')from mtl_system_items A where A.organization_id=90----and A.segment1 in('0111-08P16AWG-U0BK8-06','0111-08P18AWG-U0BK8-03')and A.item_type like 'FI%'and a.inventory_item_id in (select inventory_item_id from BOM_BILL_OF_MATERIALS where A.inventory_item_id=assembly_item_id and organization_id=90 --- and to_char(creation_date,'MMYYYY')=:MMYY) And ((Trunc(Creation_Date) Between To_Date(To_Char(:From_Date,'DD-MON-YYYY') ,'DD-MON-YYYY') And To_Date(To_Char(:To_Date,'DD-MON-YYYY') ,'DD-MON-YYYY') ) or (:From_Date is null and :To_Date is null))) &itemc; begin SRW.DO_SQL('truncate table BOM_EXPLOSION_TEMP_SAVE2'); open c2; loop fetch c2 into x1,x2,x4; exit when c2%notfound; end loop; return (TRUE);end;end;---------------------------------------------------------------------------------------------------------is it true to used it in this place or should to be in main select regards. ما فائدة اللوب الاخيرةولاحظ ان x1,x2,x4سيتم ملاهم ثم اعادة مل وهكذا ولم يتم استخدامهم اصلا اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
malik alwadi بتاريخ: 10 أبريل 2012 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 10 أبريل 2012 السلام عليكم بصراحه اخي لم اتمكن من معرفة سبب هذا الوب والفائدة منه , حيث اني قمت بايقاف اللوب ولكن التقرير لم ينفذ ولم يستجيب الا بعد ان قمت بعمل اعادة تشغيل للجهاز .ولكن اعتقد ان هذه المتغيرات تستخدم لـــ Functionsخاصه بالاوراكل لاني قمت بأخد التقرير من تقارير اوراكل ابس............. والله اعلم . أمل من لديه الاجابه التفاعل بالموضوع.... اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
asd202 بتاريخ: 10 أبريل 2012 تقديم بلاغ مشاركة بتاريخ: 10 أبريل 2012 السلام عليكمبصراحه اخي لم اتمكن من معرفة سبب هذا الوب والفائدة منه , حيث اني قمت بايقاف اللوب ولكن التقرير لم ينفذ ولم يستجيب الا بعد ان قمت بعمل اعادة تشغيل للجهاز .ولكن اعتقد ان هذه المتغيرات تستخدم لـــ Functionsخاصه بالاوراكل لاني قمت بأخد التقرير من تقارير اوراكل ابس............. والله اعلم .أمل من لديه الاجابه التفاعل بالموضوع.... لان هذا الكرسور يقوم بارجاع اكثر من قيمةيمكن اضافة and rownum=1والغاء اللوب ومن كلامك التقرير يعمل الانلكن القيم لا تاخذ القيمةيمكن تغيير السطرfetch c2 into x1,x2,x4;الىfetch c2 into :inventory_item,:segment,:weightsطبعا ستغيير الاسماء بالاسماء الموجوده بالتقريروهذا سينفذ لمرة واحدة وليس كما بكويرى الريبورت سينفذ عن طريق ال repeating framوالله الموفق اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
malik alwadi بتاريخ: 11 أبريل 2012 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 11 أبريل 2012 شكرا على الافادةاخي يوجد عندي استفسار بخصوص الهدف من تغيير اسماء المتغيرات مع العلم بان هذه المتغيرات لا تستعمل باي حقل من حقول التقربر ,ولكن القيم الناتجه عن اللوب يتم تخزينها بجدول وهوالجدول الموجود في الكود الذي يتم حذف قيمه قبل جملة اللوب.وشكرا لك. اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
asd202 بتاريخ: 11 أبريل 2012 تقديم بلاغ مشاركة بتاريخ: 11 أبريل 2012 الكود يوجد به جمله ترنكيت للجدول فعلاولكن لا يوجد اى انسرت لهذه المتغيرات فهى لا قيمة لهاربما يكون التقرير المطلوب هكذا loop fetch c2 into x1,x2,x4; srw.do_sql(insert into BOM_EXPLOSION_TEMP_SAVE2 values(x1,x2,x3)); exit when c2%notfound; end loop; اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
malik alwadi بتاريخ: 11 أبريل 2012 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 11 أبريل 2012 شكرا على الاهتمام تعقيباً على كلامك .... توصلت الى الهدف من هذا اللوب , وهو انه يوجد Functionفي جملة السليكت وعمله هو انشاء جدول وايضا تعبأة القيم الناتجه من السليكت في هذا الجدول ,لذلك لابد من عمل للوب حتي يتم تنفيذ جملة السليكت وهذه المتغيرات فقط لكي يتم اسناد القيم بها .وشكرا اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Recommended Posts
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.