Shell Script to Update Workflow Configuration in Oracle Apps
I am going to share my script which I use to updating workflow configuration from the server using bash script.
Note: Workflow password still has to be updated from the front end and it is store in encrypted form and cannot be updated from the backend.
Please use only after testing in your environment and modify based on your requirement.
I have created a Config file and a driver file.
Config will have details of new workflow configuration values and driver fill take action based on the config file.
Config File:
cat config_file
from,10065,Workflow Mailer (DEV121 - Development)
inbound_server_name,10069,imap.ebs122.lab
outbound_server_name,10079,smtp.ebs122.lab
outbound_user,10307,WorkflowDEV121@ebs122.lab
reply_to_address,10089,WorkflowDEV121@ebs122.lab
inbound_username,10054,WorkflowDEV121@ebs122.lab
Driver file:
cat wf_up_driver.sh
. ~/.bash_profile
Curr_log=/tmp/$TWO_TASK
TMP_UPD=/tmp/wf_up_${TWO_TASK}.sql
cat /dev/null > ${Curr_log}
wf_config_file=$1
APPSLOGIN=apps/apps
wf_val_check()
{
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "$1"
for i in `awk -F ',' '{print $2}' ${wf_config_file}`
do
sqlplus -s $APPSLOGIN <<EOF
set head off
set feedback off
set verify off;
SELECT
'You have selected parameter : '
|| c.display_name
|| wf_core.newline
|| 'Current value of parameter : '
|| a.parameter_value
FROM
fnd_svc_comp_param_vals a,
fnd_svc_comp_params_tl c
WHERE
c.parameter_id = a.parameter_id
AND
a.component_parameter_id = to_number(nvl(
'${i}',
'0'
) )
AND
c.language = 'US';
exit;
EOF
done
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
}
wf_upd_val()
{
echo "updating values"
while read line;
do
new_val="`echo $line|awk -F ',' '{print $3}' `"
par_id="`echo $line|awk -F ',' '{print $2}'`"
echo "UPDATE fnd_svc_comp_param_vals
SET parameter_value = nvl('"$new_val"', parameter_value)
WHERE component_parameter_id = to_number(nvl('"$par_id"', '0'));"
done < ${wf_config_file} > ${TMP_UPD}
sqlplus -s $APPSLOGIN <<EOF
set head off
set feedback off
set verify off;
@${TMP_UPD}
commit;
exit;
EOF
}
wf_val_check old
wf_upd_val
wf_val_check new
Usage:
driverfile_name <config_file_name>
Post a Comment
Post a Comment