Oracle Database link

i have a database link and i want to use it to return
result set of data...
when i use ref corsure i faced error ora-10001.
in form when i build a form on procedure that return ref corsure
the form  work correctly localy
but it do not work on database link....


any ideas plz
LVL 6
mohammedfAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

DavidSenior Oracle Database AdministratorCommented:
Apparently you have an invalid cursor in your code block.  Please post the code as a snippet.  And, I have no idea what word you mean by "corsure" -- regrets and please clarify.
0
mohammedfAuthor Commented:
hi
the procedure that retures the cursor is working 100% on the local Database , but in the other database that i have link to it , it did not work ,,
so i guess the problem is in the link,,im not sure

0
sdstuberCommented:
please post the code
0
Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

mohammedfAuthor Commented:

create or replace package reg_pack as
TYPE rec IS RECORD(cd_tb_cd rg_code_tb.cd_tb_cd%TYPE,
                              cd_cd rg_code_tb.cd_cd%TYPE,
                              CD_ARB_TR rg_code_tb.CD_ARB_TR%TYPE);
type my_ref is ref cursor RETURN rec;
procedure test_ref_proc(my_cur in out my_ref);
end reg_pack;
 
create or replace package body reg_pack as
procedure test_ref_proc(my_cur in out my_ref) is
begin
open my_cur for select cd_tb_cd,cd_cd,cd_arb_tr from rg_code_tb
where cd_tb_cd=0;
end test_ref_proc;
end reg_pack;
 
CREATE TYPE code_tab AS OBJECT
       (code_main         number(5),
        code_sub          number(5),
        Icode_desc       VARCHAR2(50));
/
CREATE TYPE code_tab_table AS VARRAY(1000) OF code_tab;
/
CREATE FUNCTION gets_code (code_main number) 
         RETURN code_tab_table PIPELINED IS
v_tab code_tab_table := code_tab_table();
begin
FOR cur IN (SELECT cd_tb_cd,cd_cd,cd_arb_tr 
                 FROM   rg_code_tb
                 WHERE  cd_tb_cd =code_main
                 ORDER BY cd_cd)
  LOOP
PIPE ROW(code_tab(cur.cd_tb_cd, cur.cd_cd, cur.cd_arb_tr));        
  END LOOP;
  RETURN;
END;

Open in new window

0
sdstuberCommented:
where is the db link involved?

what line generates the error?
0
DavidSenior Oracle Database AdministratorCommented:
I assume you've checked for the appropriate privs and synonyms on the remote object -- and please show the error in context.
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
DavidSenior Oracle Database AdministratorCommented:
May we be of any further assistance or has this been abandoned?
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Oracle Database

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.