F0cus
F0cus

Reputation: 625

Call a PL/SQL package from shell script - Error "identifier must be declared"

am calling a plsql package from shell script as

sqlplus -s <<! 
   $userpass
    set pagesize 0 feedback off verify off heading off echo off
   exec POEXT.PO_ACK_UPDATE("$worfile",$ftpvendornum,"$org_code",$req_id,"$ftpgrp","$vendor_name");
     exit;
!

The value of the parameters as follows

[email protected]
ftpvendornum=15163
org_code=US2
req_id=53004007
ftpgrp=DCU
vendor_name=Empty

when i run - I get an error message like below

ERROR at line 1:
ORA-06550: line 1, column 35:
PLS-00201: identifier '[email protected]' must be declared
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored

I executed the same block in sqldeveloper using anonymous block its getting executed.

can someone help me to figure out what could be the possible issue?

Upvotes: 0

Views: 517

Answers (1)

Rene
Rene

Reputation: 10541

How is it when you write the statement with single ' around the parameters?

exec POEXT.PO_ACK_UPDATE('$worfile',$ftpvendornum,'$org_code',$req_id,'$ftpgrp','$vendor_name');

Upvotes: 1

Related Questions