#!/bin/sh
TEMPFILE=/tmp/checkddoverw.$$
if [ -f $TEMPFILE ]
then
  rm $TEMPFILE
  if [ $? -ne 0 ]
  then
    echo "ERROR initializing file $TEMPFILE"
    echo "exit 255" > SOURCE_DD_OVERRIDE.${JON}
    echo 255 > status.${JON}
    abtjob $JON
    sleep 100
    exit 255
  fi
fi
cat <$DEVNULL >SOURCE_DD_OVERRIDE.${JON}
if [ $? -ne 0 ]
then
  echo "ERROR initializing file SOURCE_DD_OVERRIDE.${JON}"
  echo 255 > status.${JON}
  abtjob $JON
  sleep 100
  exit 255
fi
stepname=`echo $STEPNAME | cut -f2 -d'_'`
env | grep "d${stepname}_" > $TEMPFILE
cat $TEMPFILE | while read env_entry
do
  ddname=`echo $env_entry | cut -f2 -d'_' | cut -f1 -d'='`
  env_name=$`eval echo d${stepname}_${ddname}`
  filename=`eval echo $env_name`
  ln -s $filename ${ddname}.${JON} 
  echo "setenv DD_${ddname} ${ddname}.${JON}" >> SOURCE_DD_OVERRIDE.${JON}
  echo "echo OVERRIDING ${ddname} FROM JOB" >> SOURCE_DD_OVERRIDE.${JON}
  echo "rm -f ${ddname}.${JON}" >> ${JON}_WK2a
  echo "rm -f ${ddname}.${JON}" >> ${JON}_WK2n
  echo "unsetenv DD_${ddname}" >> ${JON}_WK2a
  echo "unsetenv DD_${ddname}" >> ${JON}_WK2n
done 
env | grep "l${stepname}_" > $TEMPFILE
cat $TEMPFILE | while read env_entry
do
  ddname=`echo $env_entry | cut -f2 -d'_' | cut -f1 -d'='`
  env_name=$`eval echo l${stepname}_${ddname}`
  filename=`eval echo $env_name`
  ln -s $filename l${ddname}.${JON} 
  echo "setenv LN_${ddname} l${ddname}.${JON}" >> SOURCE_DD_OVERRIDE.${JON}
  echo "rm -f l${ddname}.${JON}" >> ${JON}_WK2a
  echo "rm -f l${ddname}.${JON}" >> ${JON}_WK2n
  echo "unsetenv LN_${ddname}" >> ${JON}_WK2a
  echo "unsetenv LN_${ddname}" >> ${JON}_WK2n
done 
env | grep "PDD_" | grep -v "PDD_.*_.*=" > $TEMPFILE
cat $TEMPFILE | while read env_entry
do
  ddname=`echo $env_entry | cut -f2 -d'_' | cut -f1 -d'='`
  env_name=$`eval echo PDD_${ddname}`
  filename=`eval echo $env_name`
  if [ "$filename" != "null" ]
  then
    echo "echo OVERRIDING ${ddname} FROM JOB" >> SOURCE_DD_OVERRIDE.${JON}
    echo "setenv DD_${ddname} ${filename}" >> SOURCE_DD_OVERRIDE.${JON}
    echo "unsetenv DD_${ddname}" >> ${JON}_WK2a
    echo "unsetenv DD_${ddname}" >> ${JON}_WK2n
    disp_name=$`eval echo JDISP_${ddname}`
    disp_value=`eval echo $disp_name`
    if [ "$disp_value" != "MOD" ]
    then
      dd_disp_name=$`eval echo DD_${ddname}_DISP`
      dd_disp_value=`eval echo $dd_disp_name`
      if [ "$dd_disp_value" = "MOD" ]
      then
#       echo "echo JOB DISP OVERRIDES PROC DISP=MOD FOR ${ddname}" >> SOURCE_DD_OVERRIDE.${JON}
        echo "unsetenv DD_${ddname}_DISP" >> SOURCE_DD_OVERRIDE.${JON}
      fi
    fi
  fi
done 
env | grep "PLN_" | grep -v "PLN_.*_.*=" > $TEMPFILE
cat $TEMPFILE | while read env_entry
do
  ddname=`echo $env_entry | cut -f2 -d'_' | cut -f1 -d'='`
  env_name=$`eval echo PLN_${ddname}`
  filename=`eval echo $env_name`
  if [ "$filename" != "null" ]
  then
    echo "setenv LN_${ddname} ${filename}" >> SOURCE_DD_OVERRIDE.${JON}
    echo "unsetenv LN_${ddname}" >> ${JON}_WK2a
    echo "unsetenv LN_${ddname}" >> ${JON}_WK2n
  fi
done 
env | grep "JDISP_" | grep -v "JDISP_.*_.*=" > $TEMPFILE
cat $TEMPFILE | while read env_entry
do
  ddname=`echo $env_entry | cut -f2 -d'_' | cut -f1 -d'='`
  env_name=$`eval echo JDISP_${ddname}`
  jdisp_value=`eval echo $env_name`
  if [ "$jdisp_value" != "null" ]
  then
    dd_ddn_disp=$`eval echo DD_${ddname}_DISP`
    dd_ddn_disp_value=`eval echo $dd_ddn_disp`
    if [ "$dd_ddn_disp_value" != "MOD" ]
    then
#     echo "echo JOB DISP=$jdisp_value OVERRIDES PROC DISP FOR ${ddname}" >> SOURCE_DD_OVERRIDE.${JON}
      echo "setenv DD_${ddname}_DISP $jdisp_value" >> SOURCE_DD_OVERRIDE.${JON}
      echo "unsetenv DD_${ddname}_DISP" >> ${JON}_WK2a
      echo "unsetenv DD_${ddname}_DISP" >> ${JON}_WK2n
    fi
  fi
done 
env | grep "JDCB_" | grep -v "JDCB_.*_.*=" > $TEMPFILE
cat $TEMPFILE | while read env_entry
do
  ddname=`echo $env_entry | cut -f2 -d'_' | cut -f1 -d'='`
  env_name=$`eval echo JDCB_${ddname}`
  filename=`eval echo $env_name`
  if [ "$filename" != "null" ]
  then
    echo "setenv DCB_${ddname} ${filename}" >> SOURCE_DD_OVERRIDE.${JON}
    echo "unsetenv DCB_${ddname}" >> ${JON}_WK2a
    echo "unsetenv DCB_${ddname}" >> ${JON}_WK2n
  fi
done 
env | grep "PDD_${stepname}_" > $TEMPFILE
cat $TEMPFILE | while read env_entry
do
  ddname=`echo $env_entry | cut -f3 -d'_' | cut -f1 -d'='`
  env_name=$`eval echo PDD_${stepname}_${ddname}`
  filename=`eval echo $env_name`
  if [ "$filename" != "null" ]
  then
    echo "echo OVERRIDING ${ddname} FROM JOB" >> SOURCE_DD_OVERRIDE.${JON}
    echo "setenv DD_${ddname} ${filename}" >> SOURCE_DD_OVERRIDE.${JON}
    echo "unsetenv DD_${ddname}" >> ${JON}_WK2a
    echo "unsetenv DD_${ddname}" >> ${JON}_WK2n
    disp_name=$`eval echo JDISP_${stepname}_${ddname}`
    disp_value=`eval echo $disp_name`
    if [ "$disp_value" != "MOD" ]
    then
      dd_disp_name=$`eval echo DD_${ddname}_DISP`
      dd_disp_value=`eval echo $dd_disp_name`
      if [ "$dd_disp_value" = "MOD" ]
      then
#       echo "echo JOB DISP OVERRIDES PROC DISP=MOD FOR ${ddname}" >> SOURCE_DD_OVERRIDE.${JON}
        echo "unsetenv DD_${ddname}_DISP" >> SOURCE_DD_OVERRIDE.${JON}
      fi
    fi
  fi
done 
env | grep "PLN_${stepname}_" > $TEMPFILE
cat $TEMPFILE | while read env_entry
do
  ddname=`echo $env_entry | cut -f3 -d'_' | cut -f1 -d'='`
  env_name=$`eval echo PLN_${stepname}_${ddname}`
  filename=`eval echo $env_name`
  if [ "$filename" != "null" ]
  then
    echo "setenv LN_${ddname} ${filename}" >> SOURCE_DD_OVERRIDE.${JON}
    echo "unsetenv LN_${ddname}" >> ${JON}_WK2a
    echo "unsetenv LN_${ddname}" >> ${JON}_WK2n
  fi
done 
env | grep "JDCB_${stepname}_" > $TEMPFILE
cat $TEMPFILE | while read env_entry
do
  ddname=`echo $env_entry | cut -f3 -d'_' | cut -f1 -d'='`
  env_name=$`eval echo JDCB_${stepname}_${ddname}`
  filename=`eval echo $env_name`
  if [ "$filename" != "null" ]
  then
    echo "setenv DCB_${ddname} ${filename}" >> SOURCE_DD_OVERRIDE.${JON}
    echo "unsetenv DCB_${ddname}" >> ${JON}_WK2a
    echo "unsetenv DCB_${ddname}" >> ${JON}_WK2n
  fi
done 
env | grep "JDISP_${stepname}_" > $TEMPFILE
cat $TEMPFILE | while read env_entry
do
  ddname=`echo $env_entry | cut -f3 -d'_' | cut -f1 -d'='`
  env_name=$`eval echo JDISP_${stepname}_${ddname}`
  jdisp_value=`eval echo $env_name`
  if [ "$jdisp_value" != "null" ]
  then
    dd_ddn_disp=$`eval echo DD_${ddname}_DISP`
    dd_ddn_disp_value=`eval echo $dd_ddn_disp`
    if [ "$dd_ddn_disp_value" != "MOD" ]
    then
#     echo "echo JOB DISP=$jdisp_value OVERRIDES PROC DISP FOR ${ddname}" >> SOURCE_DD_OVERRIDE.${JON}
      echo "setenv DD_${ddname}_DISP $jdisp_value" >> SOURCE_DD_OVERRIDE.${JON}
      echo "unsetenv DD_${ddname}_DISP" >> ${JON}_WK2a
      echo "unsetenv DD_${ddname}_DISP" >> ${JON}_WK2n
    fi
  fi
done 
rm $TEMPFILE
