Can't assign value to output-only parameter (Error 40043)

An attempt was made to set a value for a parameter that is defined as an output (only) parameter.

To avoid this error, use the Direction property to be sure the parameter for which you are setting a value is defined as either an input (rdParamInput) or input/output (rdParamInputOutput) parameter. Generally, the Direction property is set automatically based on how the called procedure is defined, but some drivers require you to set the direction before accessing the parameter. This error could also occur if you mismatch the ordinal number or name of a parameter and mistake an input parameter for an output parameter.