الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Send Where Condition As A Parameter

Featured Replies

بتاريخ:

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.

بتاريخ:

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 easy

second : 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

بتاريخ:

Please show me the where clause of the first form ?

بتاريخ:
  • كاتب الموضوع

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 this

L_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 here


thanx

بتاريخ:

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 this
in Declare

RETURNSET IS TABLE OF TABLENAME%ROWTYPE;
/************************/
create or replace procedure PRC_GET_ROWSBYCLAUSE( v_clause Varchar2,returnData out RETURNSET,VERRORCODE number) is
begin
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 :)

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.