6

I'm debugging an Oracle package using PL/SQL developer, but I'm running into a problem - one of the parameters is a CLOB (it's a big ass XML string). I can pass it in from the application side and have it be a CLOB, but in the PL/SQL debugger, I put the string representation of the XML into the debugger so the proc in the package treats it as a CLOB? As it stands, when set it, then step into the package, the parameter evaluates to NULL, but the string is fine.

This is the debug setup window

aape
  • 475
  • 1
  • 8
  • 24
  • Like a charm. Would have been better than what I ended up doing - having two packages, one for testing and dev where I was justr passing in the string, unclobed, making sure everything worked, and then making those same changes in my package. Thanks. I'll use your method in the future. – aape Nov 10 '11 at 13:59

2 Answers2

14

you can always use the pl/sql block that is invoking the SP. In this case deselect the corresponding checkbox to the CLOB parameter, then replace the calling statement with this:

declare
    myClob1 clob := to_clob('your data');
begin
    searchtrackingpolicies_split(callerid => :callerid,
                                 xmlcriteria => myClob1,
                                 xmlsearchresults => :xmlsearchresults);
);
end;

notice that the colon before myClob1 were removed.

davidmontoyago
  • 1,834
  • 14
  • 18
0

https://forums.allroundautomations.com/ubb/ubbthreads.php?ubb=showflat&Number=18643

Use: 'Temporary CLOB' instead of 'CLOB' enter image description here

maly174
  • 37
  • 7