PL/TABLE using in oracle forms
525042Jun 20 2007 — edited Jun 20 2007Good morning everyone:
I have a problem I want to execute all my records through FIND button but I am not able to do this this is my below code I am using PL/SQL Table to hold the values in memory but whenever I pressed the find button it's give me last value of the record I hold scroll down key then it show me other records in one column at a time.
Please advice me as soon as possible .
Thanks,
Zeeshan
DECLARE
CURSOR HR IS
SELECT HR.FULL_NAME
FROM APPS.HR_EMPLOYEES HR,APPS.CIN_ESWO_WRITER_LEADER ES
WHERE HR.EMPLOYEE_ID = ES.LEADER_ID;
TYPE type_hr_tab IS TABLE OF APPS.HR_EMPLOYEES.FULL_NAME%TYPE
INDEX BY BINARY_INTEGER;
tab_hr type_hr_tab;
v_hr_counter NUMBER := 0;
CURSOR ES IS
SELECT HR.FULL_NAME
FROM APPS.HR_EMPLOYEES HR,APPS.CIN_ESWO_WRITER_LEADER ES
WHERE HR.EMPLOYEE_ID = ES.WRITER_ID;
TYPE type_es_tab IS TABLE OF APPS.HR_EMPLOYEES.FULL_NAME%TYPE
INDEX BY BINARY_INTEGER;
tab_es type_es_tab;
v_es_counter NUMBER := 0;
BEGIN
--For Leader Information
FOR leader_rec IN HR
LOOP
v_hr_counter := v_hr_counter + 1;
tab_hr(v_hr_counter):=leader_rec.full_name;
--:CINESWO.LEADER_NAME:=tab_hr(v_hr_counter);
--MESSAGE(':CINESWO.LEADER_NAME');
--MESSAGE(':CINESWO.LEADER_NAME');
END LOOP;
FOR i_cname IN 1..tab_hr.LAST
LOOP
:CINESWO.LEADER_NAME:=tab_hr(i_cname);
--NEXT_RECORD;
END LOOP;
--For Writer Information
FOR writer_rec IN ES
LOOP
v_es_counter := v_es_counter + 1;
tab_es(v_es_counter):=writer_rec.full_name;
--:CINESWO.WRITER_NAME:=tab_es(v_es_counter);
--MESSAGE(':CINESWO.WRITER_NAME');
--MESSAGE('::CINESWO.WRITER_NAME');
END LOOP;
END;
--Do_Key('Execute_Query');