#
#---------------------------------------------------------
# Shell to Load ldt files
#---------------------------------------------------------
# Parameters
# 1. Apps DB Password
# 2. Loader Data file name ldt
#---------------------------------------------------------
# Syntax
#---------------------------------------------------------
# LOAD_LDT_FILE_SH appsPassword ldt_name
# e.g.
# LOAD_LDT_FILE_SH appsDB LDT_FILE_TO_LOAD.ldt
#---------------------------------------------------------
#
echo "Current Directory " `pwd`
db_pasw=$1
file_name=$2
file_path=""
prd_name=""
str_len=""
load_cmd=""
echo "============================================================="
is_ldt=`echo $file_name | grep ldt 2>/dev/null | wc -l`
if [ $is_ldt -eq 0 ]
then
echo "Not Processing File " $file_name 2>/dev/null
echo "============================================================="
else
echo "Processing File " $file_name
echo "============================================================="
file_path=`grep -i lct $file_name 2>/dev/null | cut -f2 -d '@' | grep -i patch`
if [ "$file_path" == "" ]
then
echo "Not Processing File " $file_name 2>/dev/null
else
echo "Start removing OLD log files "
file_name_arr=( `grep -nicH $file_name *.log | grep -v ":0" | cut -f1 -d ':'` )
file_count=${#file_name_arr[@]};
for (( f = 0 ; f < $file_count; f++ ))
do
log_file_name=${file_name_arr[$f]}
echo "Removing log file "$log_file_name
rm $log_file_name
done
echo "End of removing OLD log files "
echo "============================================================="
prd_name=`echo $file_path | cut -f1 -d ':'`
if [ "$prd_name" == "FND" ]
then
prd_name=`echo $FND_TOP`
fi
if [ "$prd_name" == "ALR" ]
then
prd_name=`echo $ALR_TOP`
fi
## you can add more to above list as needed
str_len=`expr index $file_path : + 1`
file_path=`echo $file_path | cut -c$str_len-`
ctrl_file=$prd_name"/"$file_path
echo "Control File " $ctrl_file
echo "============================================================="
read_ctrl=`cat $ctrl_file | wc -l`
if [ $read_ctrl -eq 0 ]
then
echo "Issue in control file read"
echo "============================================================="
else
echo "Command to Load is "
echo "FNDLOAD apps/db_pasw 0 Y UPLOAD "$prd_name"/"$file_path $file_name "CUSTOM_MODE=FORCE"
echo "============================================================="
echo "Start Load "
load_output=`FNDLOAD apps"/"$db_pasw 0 Y UPLOAD $prd_name"/"$file_path $file_name CUSTOM_MODE=FORCE`
echo "End Load"
echo "============================================================="
file_name_arr=( `grep -nicH $file_name *.log | grep -v ":0" | cut -f1 -d ':'` )
file_count=${#file_name_arr[@]};
for (( f = 0 ; f < $file_count; f++ ))
do
log_file_name=${file_name_arr[$f]}
ln_error=`grep -icH error $log_file_name | grep -v ":0" | wc -l `
if [ $ln_error -eq 0 ]
then
echo "Load is SUCCESS"
else
echo "Load FAILED"
fi
echo "============================================================="
echo "Log file contents are "
cat $log_file_name
done
echo "============================================================="
fi
fi
fi
Wednesday, December 16, 2009
Shell script to load any ldt file
This is a shell script that can load any ldt (FND or ALR standard) file. Just needs DB password and file name parameters and run from the location where the ldt resides.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment