Hi,
we are trying to implement a new stored Procedure call for Oracle 10g, websphere 6.
The procedure has two input parameters and 5 output ones.
We have not any issue informing the input parameters, but the call is not retrieving us the ouptut parameters informed.
Any ideas about what is happening or any exmaple for calling a Store Procedure with output parameters will be welcome.
This is the cocobase log for this:
CocoPowder:: OP=<call> Return value instance=null
CocoPowder:: OP=<call> NOT SETTING RETURN VALUE!
CocoPowder:: OP=<call> Processing result set
CocoPowder:: OP=<call> Null result set
CocoPowder:: OP=<call> No OUTPUT parameters at all!
CocoPowder:: Began new command for operation=close_stmt
CocoPowder:: OP=<close_stmt> Closing JDBC Statement = com.ibm.ejs.cm.proxy.OracleCallableStatementProxy@179241 [OPEN]
Ended new command for operation=call
And these are the cocobase entries:
<CBObject MapName="com.db.espear.dal.lcm.CGetTradeOriginId" ClassName="com.db.espear.dal.lcm.CGetTradeOriginId" DefaultBlockSize="100" Version="1" AppVersion="3.0.2" DateModified="2003-06-26 10:38:07.572"> <select>
<CBFields />
<CBTables />
<CBClauses />
</select>
<insert>
<CBFields />
<CBTables />
<CBClauses />
</insert>
<update>
<CBFields />
<CBTables />
<CBClauses />
</update>
<delete>
<CBFields />
<CBTables />
<CBClauses />
</delete>
<call>
<CBFieldReturns>
</CBFieldReturns>
<CBProcedures>
<CBTable catalogname="null" schemaname="TRM_REPOSITORY" tablename="TRM_API_P_GET_TRADE_ORIGIN_ID" tabletype="null"></CBTable>
</CBProcedures>
<CBFieldParams>
<CBField location="0" catalogname="null" schemaname="" tablename="TRM_API_P_GET_TRADE_ORIGIN_ID" fieldname="P_ESPEAR_TRADE_NO_IN" fieldvalue=":P_ESPEAR_TRADE_NO_IN" dbfieldtype="CHAR" fielddirection="0" dbtype="12" dbfieldsize="12" searchable="0" signed="0" keyposition="-1"></CBField>
<CBField location="1" catalogname="null" schemaname="" tablename="TRM_API_P_GET_TRADE_ORIGIN_ID" fieldname="P_DATA_SRC_IN" fieldvalue=":P_DATA_SRC_IN" dbfieldtype="VARCHAR2" fielddirection="0" dbtype="12" dbfieldsize="6" searchable="0" signed="0" keyposition="-1"></CBField>
<CBField location="2" catalogname="null" schemaname="" tablename="TRM_API_P_GET_TRADE_ORIGIN_ID" fieldname="P_TRADE_ORIGIN_ID_OUT" fieldvalue=":P_TRADE_ORIGIN_ID_OUT" dbfieldtype="VARCHAR2" fielddirection="0" dbtype="12" dbfieldsize="3" searchable="0" signed="0" keyposition="-1"></CBField>
<CBField location="3" catalogname="null" schemaname="" tablename="TRM_API_P_GET_TRADE_ORIGIN_ID" fieldname="P_DATA_SRC_OUT" fieldvalue=":P_DATA_SRC_OUT" dbfieldtype="VARCHAR2" fielddirection="0" dbtype="12" dbfieldsize="6" searchable="0" signed="0" keyposition="-1"></CBField>
<CBField location="4" catalogname="null" schemaname="" tablename="TRM_API_P_GET_TRADE_ORIGIN_ID" fieldname="P_SRC_TABLE_OUT" fieldvalue=":P_SRC_TABLE_OUT" dbfieldtype="VARCHAR2" fielddirection="0" dbtype="12" dbfieldsize="10" searchable="0" signed="0" keyposition="-1"></CBField>
<CBField location="5" catalogname="null" schemaname="" tablename="TRM_API_P_GET_TRADE_ORIGIN_ID" fieldname="P_ERROR_STATUS_OUT" fieldvalue=":P_ERROR_STATUS_OUT" dbfieldtype="CHAR" fielddirection="0" dbtype="12" dbfieldsize="1" searchable="0" signed="0" keyposition="-1"></CBField>
<CBField location="6" catalogname="null" schemaname="" tablename="TRM_API_P_GET_TRADE_ORIGIN_ID" fieldname="P_ERROR_MSG_OUT" fieldvalue=":P_ERROR_MSG_OUT" dbfieldtype="VARCHAR2" fielddirection="0" dbtype="12" dbfieldsize="255" searchable="0" signed="0" keyposition="-1"></CBField>
</CBFieldParams>
</call>
</CBObject>
The paremters definition in the Stored Procedure are these ones:
P_ESPEAR_TRADE_NO_IN IN CHAR,
P_DATA_SRC_IN IN VARCHAR2,
P_TRADE_ORIGIN_ID_OUT OUT NOCOPY VARCHAR2,
P_DATA_SRC_OUT OUT NOCOPY VARCHAR2,
P_SRC_TABLE_OUT OUT NOCOPY VARCHAR2,
P_ERROR_STATUS_OUT OUT NOCOPY CHAR,
P_ERROR_MSG_OUT OUT NOCOPY VARCHAR2
Thanks in advance
|