Originally posted by: SystemAdmin
Hello - to anyone familiar with Oracle packages and WTX (I'm on 8.2.0.3)....
I've got a simple package:
create PACKAGE PM AS
FUNCTION fn_getpid (
i_exec_name IN VARCHAR2,
i_app_id IN VARCHAR2) RETURN NUMBER;
END;
Then I have a simple package body (both compile successfully and this body can be run and inserts a row):
create or replace PACKAGE BODY PM AS
FUNCTION fn_getpid(
i_exec_name in VARCHAR2,
i_app_id in VARCHAR2) RETURN NUMBER
IS l_pid NUMBER;
BEGIN
SELECT PROCESS_INFO_SEQ.nextval
INTO l_pid
FROM dual;
insert into procmon.process_info (process_id, executable_name, application_id, return_code)
values (l_pid,i_exec_name,i_app_id,0);
RETURN l_pid;
END;
END;
I keep getting the following in my DB trace no matter what I seem to do for a query call:
<3740-1272>: Query : Call ?= FN_GETPID(?,'f','t',?)
<3740-1272>: DBLOOKUP Function, Transaction scope: Map
<3740-1272>: TRACE command specified, file: C:\wtx_ws\wtx\utilities\maps\testGetPid.dbl
<3740-1272>: Error returned by OCIDescribeAny, errcode=4043
ORA-04043: object FN_GETPID does not exist
Can anyone point me in the right direction of trying to call a function within an Oracle Package from an output card? I need to at least return the l_pid for further processing.
My latest rule attempt is:
DbLookup("Call ?= FN_GETPID(?,'f','t',?)","-t -dbtype Oracle -connect xx -user yy -password zz")
I've also tried using the schema (such as PM.FN_GETPID) without any luck.
Any ideas would be greatly appreciated.
#DataExchange#IBM-Websphere-Transformation-Extender#IBMSterlingTransformationExtender