I am experiencing difficulties running a stored procedure from the Session Pre-SQL option.
The stored procedure needs to run pre-session against my target table and the procedure needs to have a variable passed into it. For this reason I can't run the stored procedure from the mapping (Informatica says pre session procedures cannot pass variables).
Here are the steps I have performed:
1. In my target table created stored procedure AE_DELETE()
Proedure AE_DELETE (snapshot varchar2
BEGIN
delete from table where column_name = snapshot;
END;
2. In the mapping I created a parameter $$snapshot with a
default value of 'CA163'
3. In the session at the Pre-SQL option I attempted to run
the procedure: AE_DELETE($$snapshot)
When I run the session, the error log denotes the following:
MN_1022 [ae_delete('CA163')
ORA-00900: invalid SQL statement
From the log it appears that the variable value is being correctly passed into the procedure but the syntax I am using in the Pre-SQL is incorrect.
What do I need to enter in the Pre-SQL to have the procedure run correctly? I would like to run the procedure rather than entering in "delete from table.." in the Pre-SQL, I have successfully executed this procedure from SQL plus and I have looked into the Informatica mannual for proper naming conventions for executing procedures.
Any information you could provide would be appreciated.
Thanks
The stored procedure needs to run pre-session against my target table and the procedure needs to have a variable passed into it. For this reason I can't run the stored procedure from the mapping (Informatica says pre session procedures cannot pass variables).
Here are the steps I have performed:
1. In my target table created stored procedure AE_DELETE()
Proedure AE_DELETE (snapshot varchar2
BEGIN
delete from table where column_name = snapshot;
END;
2. In the mapping I created a parameter $$snapshot with a
default value of 'CA163'
3. In the session at the Pre-SQL option I attempted to run
the procedure: AE_DELETE($$snapshot)
When I run the session, the error log denotes the following:
MN_1022 [ae_delete('CA163')
ORA-00900: invalid SQL statement
From the log it appears that the variable value is being correctly passed into the procedure but the syntax I am using in the Pre-SQL is incorrect.
What do I need to enter in the Pre-SQL to have the procedure run correctly? I would like to run the procedure rather than entering in "delete from table.." in the Pre-SQL, I have successfully executed this procedure from SQL plus and I have looked into the Informatica mannual for proper naming conventions for executing procedures.
Any information you could provide would be appreciated.
Thanks