IBM Sterling Transformation Extender

Sterling Transformation Extender

Come for answers, stay for best practices. All we're missing is you.


#Sterling
#Supplychain
 View Only

Calling an Oracle Stored Procedure that returns multiple rows

  • 1.  Calling an Oracle Stored Procedure that returns multiple rows

    Posted 01/08/15 09:03 AM

    Originally posted by: paul.brett


    When using a WTX map to call a stored procedure that returns multiple rows, you may find that although the map work perfectly using the IBM WebSphere TX Design Studio, porting the map to Unix, and running with a 64 bit execution engine results in one of two behaviours:

    1.  An error:

    <6220-1184>: Error in SQLExecDirect
    Message: [IBM WTX][ODBC Oracle Wire Protocol driver][Oracle]ORA-06550:
    line 1, column 8:
    PLS-00306: wrong number or types of arguments in call to 'TEST_ODBC'
    ORA-06550: line 1, column 8:
    PL/SQL: Statement ignored
    SQL State: S1000
    <6220-1184>: Returned status: (-1009)
    Failed_to_execute_the_SQL_statement

    ....or

    2.  The output contains only 1 of the 2 (or more) rows expected from the procedure.

    To resolve scenario 1, the following option is required in the odbc.ini file:   (find and change the value in the Oracle stanza)

    ProcedureRetResults=1

    To resolve scenario 2, the following option is required in the odbc.ini file:   (find and change the value in the Oracle stanza)

    WireProtocolMode=2

    After which, all rows should be returned.

    Thank-you.

    Paul

    Follow me on Twitter


    #IBMSterlingTransformationExtender
    #DataExchange
    #IBM-Websphere-Transformation-Extender