主语言并发程序
您可以将程序命名为 .prog,其中
是在“可执行并发程序”窗口的“执行文件”字段中输入的值。然后,使用执行文件名(无扩展名)创建与
fndcpesr 的符号链接,其中 fndcpesr 位于 $FND_TOP/$APPLBIN
目录下。最后,请将可执行文件和链接的文件置于应用产品 TOP 目录下的 $APPLBIN 目录中。
例如,首先将自定义的
Shell Script 程序命名为 CUSTOM.prog。然后创建与
fndcpesr(此处为
CUSTOM)的符号连接,并将这两个文件置于
$APPLBIN 目录下。最后使用执行文件 CUSTOM 创建可执行并发程序。
主程序参数
并发管理器在运行程序时会将程序名指定为 $0,并且将四个变元
orauser/pwd,userid,username 和 request_id 分别指定为 $1 到 $4,而程序特定参数则指定为
$5,依次类推。各个变元最长可达
50 个字符。
例如,如果要将两个参数传递给程序,您可以用 $5 来表示第一个参数,而用 $6 来表示第二个参数。
保护您的 Oracle 用户口令
在某些情况下,将 Oracle
用户名和口令直接传递给主程序可能存在安全问题。如果不想并发管理器将用户名/口令传递给程序,您可以让管理器将其作为环境变量传递,或者根本不传递。
首先,在“可执行并发程序”表单中将可执行并发程序定义为主程序。
要将用户名/口令作为环境变量传递,请在使用此可执行程序定义并发程序时,在“并发程序”窗口的“执行选项”字段中输入
'ENCRYPT' 一词。'ENCRYPT' 会发出信号,通知并发管理器将用户名/口令传递给环境变量 fcp_login。变元 $1
留空。
如果您根本不需要将用户名/口令传递给程序,请在“执行选项”字段中输入
'SECURE'。这样,并发管理器就不会将用户名/口令传递给程序。
成功代码
默认情况下,Shell Script 程序会返回成功值(状态代码 0)。如果 Script 程序捕获到错误,请使用 UNIX
的退出命令 "exit 1" 将失败值(状态代码 1)返回给当前运行程序的并发管理器。
在EBS开发过程中,有时候需要通过并发请求来调用主机文件,如FTP文件传输,定义基于HOST的并发请求的过程如下:
1、定义执行方法为:主机(HOST)的并发可执行
2、定义并发程序(可以定义参数)
3、编写SHELL脚本文件,假如名为:ftp_test.prog,注:后缀名为prog,是否必须为prog尚未作研究。
4、上传ftp_test.prog到$CUX_TOP/bin/下
5、添加可执行权限 chmod 777 ftp_test.prog,
创建连接 ln -s $FND_TOP/bin/fndcpesr $CUX_TOP/bin/ftp_test
这样ftp_test脚本就可以接受并发请求传进去的参数
前4个参数被系统接受,如果自己要添加参数,则从第五个开始
ORA_USER_PASS=$1
USERID=$2
USERNAME=$3
REQUESTID=$4
$4以后是host并发程序传进去的参数。
6、附一个FTP文件传输的例子
#!/bin/ksh
###########################################################################
# Shell Name : ftp_test.prog
# Parameters : None
# Purpose This shell put the created files to ftp
server
#
###########################################################################
ORA_USER_PASS=$1
USERID=$2
USERNAME=3$
REQUESTID=$4
ftpdir=$5
lcldir=$6
filename=$7
echo $ftpdir
echo $lcldir
echo $filename