Page 1 of 1

ORA-06550 and PLS-00306 when ExecProc function

Posted: Thu 05 Jun 2008 06:22
by mxwx
Dear Sir and Madam,

I am not sure but believe that after the last update something is different :-).

Well, in my application I call some functions in the following style:

result := OraSession.ExecProc('whatever_function', [val1, val2]);

That worked well till the last days. Now I get the following error message.

ORA-06550:_line 2, column 3:
PLS-00306:_wrong number or types of arguments in call to 'WHATEVER_FUNCTION'
ORA-06550:_line 2, column 3:
PL/SQL:_Statement ignored

From my point of view :-) neither the number nor the type of the arguments are wrong when calling ExecProc - so I come up with the theory that ExecProc is doing something different after tha last update. I even did some more or less wired castings to prove that there shouldn't be any problem with number or type of the arguments. I am currently using 6.50.0.34 of ODAC.

When I do the whole thing via StoredProcedure everything works well:

OraSPwhatever.ParamByName('valA').Value := val1;
OraSPwhatever.ParamByName('valB').Value := val2;
OraSPwhatever.Execute;
result := OraSPwhatever.ParamByName('RESULT').Value;

I would like to use the ExecProc-way because it is more convinient to me as I do such calls alot in my application and the ExecProc-way is less to write.

Could you please explain me what happend and why it is that way and maybe if there is a workarround that let me stay with ExecProc.

Thanks in Advance

Michael

Posted: Thu 05 Jun 2008 06:24
by mxwx
by the way, if I make the function a procedure everything works even with the ExecProc. Convertiung all the functions to procedures is not an option for me.

Posted: Thu 05 Jun 2008 06:57
by Plash
This is the known problem. We are planning to release new ODAC build with the fix in few days.

Posted: Thu 31 Jul 2008 09:12
by mxwx
Dear Sir and Madam,

is the problem become fixed in the meantime. I have not found any hints in the history files.

Thanks and best regards

Michael

Posted: Thu 31 Jul 2008 09:17
by Plash
Yes, this problem is fixed in the latest ODAC build.