I have oracle package ETL_RUN, in the package there is a procedure which is declared like this:
procedure pRunTask(pTask in out nocopy TASK_RUN%rowtype)
I am trying to call the procedure from Python code c using oracledb library:
cursor.callproc('ETL_RUN.pRunTask', [task_run])
But I get an error:
File "...flows\migration_simple.py", line 48, in init
cursor.callproc('ETL_RUN.pRunTask', keyword_parameters={'pTask': task_run})
File "...venv\lib\site-packages\oracledb\cursor.py", line 651, in callproc
self._call(name, parameters, keyword_parameters)
File "...venv\lib\site-packages\oracledb\cursor.py", line 113, in _call
return self.execute(statement, bind_values)
File "...venv\lib\site-packages\oracledb\cursor.py", line 701, in execute
impl.execute(self)
File "src\\oracledb\\impl/thin/cursor.pyx", line 178, in oracledb.thin_impl.ThinCursorImpl.execute
File "src\\oracledb\\impl/thin/protocol.pyx", line 437, in oracledb.thin_impl.Protocol._process_single_message
File "src\\oracledb\\impl/thin/protocol.pyx", line 438, in oracledb.thin_impl.Protocol._process_single_message
File "src\\oracledb\\impl/thin/protocol.pyx", line 399, in oracledb.thin_impl.Protocol._process_message
File "src\\oracledb\\impl/thin/protocol.pyx", line 376, in oracledb.thin_impl.Protocol._process_message
File "src\\oracledb\\impl/thin/messages.pyx", line 314, in oracledb.thin_impl.Message.send
File "src\\oracledb\\impl/thin/messages.pyx", line 2162, in oracledb.thin_impl.ExecuteMessage._write_message
File "src\\oracledb\\impl/thin/messages.pyx", line 2096, in oracledb.thin_impl.ExecuteMessage._write_execute_message
File "src\\oracledb\\impl/thin/messages.pyx", line 428, in oracledb.thin_impl.MessageWithData._write_bind_params
File "src\\oracledb\\impl/thin/messages.pyx", line 1115, in oracledb.thin_impl.MessageWithData._write_bind_params_row
File "src\\oracledb\\impl/thin/messages.pyx", line 1081, in oracledb.thin_impl.MessageWithData._write_bind_params_column
File "src\\oracledb\\impl/thin/packet.pyx", line 809, in oracledb.thin_impl.WriteBuffer.write_dbobject
TypeError: object of type 'NoneType' has no len()
I previously got the task_run <oracledb.DbObject MAP.TASK_RUN%ROWTYPE at 0x152bec935e0> variable from another oracle function.
What am I doing wrong?