Execute Non Query: Parameter 'Invoice Status': Value is too large to bind

Hi Guys,

I’m calling one procedure from my Main workflow where I’m facing
this error Value is too large to bind

these are the parameters I’m passing to proc

In DB the Invoice Status type is varchar2

What might be the issue here?


What is the length of InvStatus variable? It could be that the value returned is too big for this variable.

Thanks, @csathys for the reply
InvStatus variable type is varchar2 in DB
and in workflow i declared a string variable to receive it
below is the proc code

InvStatus varchar2;
v_err_msg_lns VARCHAR2 (4000);
v_err_msg_lns := NULL;
v_err_msg_lns := v_err_msg_lns|| 'No data exists for receipt - '|| p_po_number;
InvStatus := v_err_msg_lns;

So v_err_msg_lns is causing the problem here???

But when I’ve executed this procedure in database I’m getting simple two-line content in InvStatus variable

  1. What database are you using?
  2. InvStatus is Varchar2 is ok, but what is the size?
  3. How exactly are you making the call in WF vs off workflow?

The db is oracle 11g
size is not declared for InvStatus, it is simply varchar2

for off workflow, i’m simply executing the procedure in db by passing input parameters and declared one output parameter InvStatus type varchar 2, it’s working fine able to print the InvStatus

with workflow i’m using execute query activity and passing input values and receiving output through parameters property

The variable that is receiving the OUT parameter in your calling procedure has to have a size. For example, assuming result is OUT parameter and InvNum is IN parameter, passing them to a procedure Yourprocedure, this is how we typically do. How/where is your code different from this?

 InvStatus varchar2(4000);
    Yourprocedure(result=>InvStatus, InvNum=>'9199111');
    dbms_output.put_line('Status is : '||InvStatus);