在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
STATUS=`ftp -n 192.168.1.1 <<!
quote user oracle
quote pass oracle
ascii
cd $ftpdir
prompt
lcd $lcldir
mput $filename
quit
!`
#if [ ${#STATUS} -gt 0 ]
if [ $? != 0 ]
then
echo "${STATUS}"
echo ""
exit 1
fi