بتاريخ: 1 أكتوبر 201213 سنة comment_227735 Dear All, I have two forms : the caller form and the called form. in the called form I have a block (x) in the caller form i have a database block (y) with five lines ,i will select for example two rows.the issue is :I need to pass the ids of the selected rows in a parameter to a cursor in the called form to fill the block(x).thanks. تقديم بلاغ
بتاريخ: 1 أكتوبر 201213 سنة comment_227738 Dear All,I have two forms : the caller form and the called form. in the called form I have a block (x) in the caller form i have a database block (y) with five lines ,i will select for example two rows.the issue is :I need to pass the ids of the selected rows in a parameter to a cursor in the called form to fill the block(x).thanks. I think you have 2 ideas first : if you have just 5 lines or 5 records only you may use 5 :Global Variables. it is easysecond : you may be create temporary table, Insert data from first form when you call the second form and then call these data into the second form then erase these data تقديم بلاغ
بتاريخ: 1 أكتوبر 201213 سنة comment_227739 Please show me the where clause of the first form ? تقديم بلاغ
بتاريخ: 2 أكتوبر 201213 سنة كاتب الموضوع comment_227745 1- I give an example of five lines but it may be more than this.2- I pass the where clause as parameter from the caller form as thisL_WHERE := ' And column IN(' ||y|| ' ) ';when it passed , it supposed to be like this -- and column in (1,2,3,4) --3- in the called form the cursor like this cursor x is select * from table where -- I need to pass the parameter herethanx تقديم بلاغ
بتاريخ: 2 أكتوبر 201213 سنة comment_227747 Hello , Thanks for Eng Ahmed saleh ..older brother see ...in global case you only have 256 char to pass between forms in the same session track .. so how to pass where clause in runtime you will create procedure like thisin DeclareRETURNSET IS TABLE OF TABLENAME%ROWTYPE;/************************/create or replace procedure PRC_GET_ROWSBYCLAUSE( v_clause Varchar2,returnData out RETURNSET,VERRORCODE number) isbegin EXECUTE IMMEDIATE 'select * from TABLENAME where 1=1 and ' || V_CLAUSE BULK COLLECT INTO returnData ; EXCEPTION WHEN OTHERS THEN VERRORCODE:= SQLCODE; end PRC_GET_ROWSBYCLAUSE; then you can loop in returnData as cursor تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.