Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Acceso Cabal:
    1. Pagos entidades:
      1. Se selecciona la opción para importar el archivo de pagos de PRONET y luego para procesar ese archivo.
        1. El usuario se loguea al portal del Acceso Cabal.



        2. Va a la opción asignada para levantar el archivo => Esto copia el archivo a un servidor por SFTP
        3. Va a la opción asignada para procesar el archivo => Con el parámetro de entrada el programa encuentra el mismo archivo desde el servidor SFTP y lo procesa.
  2. Putty:
    1. Procesar Promociones de Cupones.
      1. Se ejecuta el archivo PROMO_CUPONES.scr
        1. Code Block
          languagebash
          themeDJango
          titleResumen del archivo PROMO_CUPONES.scr
          linenumberstrue
          collapsetrue
          #!/bin/bash
          # Script para ejecutar la promocion de cupones
          # desde el sqlplus
          # Amalia Rodriguez.  Wed Dec  9 15:46:17 PYST 2009
          
          . funciones_py.scr
          
          SCRIPTNAME=PROMO_CUPONES
          [ "$DIRLOGS" ] && SCRIPTLOG=$DIRLOGS/$SCRIPTNAME.log
          SCRIPTLOG=${SCRIPTLOG:-$RAIZ/datos/logs/$SCRIPTNAME.log}
          
          echo "--> Inicia $SCRIPTNAME `date`" | tee -a $SCRIPTLOG
          
          clear
          echo -n "
                   USUARIO NO INGRESADO POR PROGRAMA
                   INGRESE USUARIO: $USER_BAPY
                   PASSWORD       : "
          
          VerPasswdOracle
          if  [ $PASE_OK = "0" ]
          then
              W_USUARIO=$USER
              echo
          
          echo Inicio del proceso - $(date)
          sqlplus -S -L ${USER_BAPY}/${PASE_BAPY}@${ORACLE_SID} &> $HOME/$SCRIPTNAME.sqllog <<!
          prompt Generando promocion de cupones...;
          exec creditopy.PR_PROMO_PROCESAR('$W_USUARIO',805,to_date('01/01/1900','dd/mm/yyyy'),0,0);
          exit
          !
          sqlplus -S -L ${USER_BAPY}/${PASE_BAPY}@${ORACLE_SID} <<!
          set head off;
          select 'Proceso: '||nombre_proceso, 'Cnt.Cup: '||ent1 from creditopy.control_datos
           where fecha_proceso = trunc(sysdate) and nombre_proceso like 'PROMO%';
          exit
          !
          sqlplus -S -L ${USER_BAPY}/${PASE_BAPY}@${ORACLE_SID} <<!
          set echo off;
          prompt Aplicando cotizacion a autorizaciones...;
          exec creditopy.PR_BUG_COTIZACIONES;
          commit;
          prompt Generando creditos por intereses con tasa 0...;
          exec creditopy.PR_DEVOLVER_INTERES(null);
          commit;
          prompt Generando cargos por cobranza...;
          exec creditopy.PROCESAR_CARGOS.PR_GENERAR_COMISION(805,0,null,'$W_USUARIO');
          commit;
          exit
          !
              chmod +x $HOME/ejecuta_$SCRIPTNAME.sh
              $HOME/ejecuta_$SCRIPTNAME.sh | tee -a $SCRIPTLOG | cat
          
              ret_cod=$(grep -c ORA- $HOME/$SCRIPTNAME.sqllog )
              
              if [ $ret_cod -ne 0 ]
              then
                echo | tee -a $SCRIPTLOG | cat
                echo "ERROR(ES) AL PROCESAR PROMOCION:" | tee -a $SCRIPTLOG | cat
                grep ORA- $HOME/$SCRIPTNAME.sqllog | tee -a $SCRIPTLOG | cat
                echo "*** NO PROCESAR LA DIARIA - AVISE A SISTEMAS ***" | tee -a $SCRIPTLOG | cat
                date | tee -a $SCRIPTLOG | cat
              else
                echo "Fin proceso de promocion de cupones - $(date)" | tee -a $SCRIPTLOG | cat
              fi
              rm -f $HOME/ejecuta_$SCRIPTNAME.sh
          fi
          
          rm -f $HOME/$SCRIPTNAME.sqllog
          echo "--> $SCRIPTNAME `date`" | tee -a $SCRIPTLOG
          
          
    2. Actualización de pagos, fechas mayores a hoy.
      1. Se ejecuta el archivo UPD_FECHAS_PAGOS.scr
        1. Code Block
          languagebash
          themeDJango
          titleResumen del archivo UPD_FECHAS_PAGOS.scr
          linenumberstrue
          collapsetrue
          #!/bin/bash
          # Script para ejecutar la actualizacion de fechas de pagos procesados por archivo con fecha mayor a hoy
          # desde el sqlplus
          # Amalia Rodriguez.  Wed Jan  2 13:51:23 PYST 2013
          
          . funciones_py.scr
          
          SCRIPTNAME=UPD_FECHAS_PAGOS
          [ "$DIRLOGS" ] && SCRIPTLOG=$DIRLOGS/$SCRIPTNAME.log
          SCRIPTLOG=${SCRIPTLOG:-$RAIZ/datos/logs/$SCRIPTNAME.log}
          
          echo "--> Inicia $SCRIPTNAME `date` - $USER " | tee -a $SCRIPTLOG
          
          clear
          echo -n "
                   USUARIO NO INGRESADO POR PROGRAMA
                   INGRESE USUARIO: $USER_BAPY
                   PASSWORD       : "
          
          VerPasswdOracle
          if  [ $PASE_OK = "0" ]
          then
              W_USUARIO=$USER
              echo
              echo Inicio del proceso - $(date)
              sqlplus -S -L ${USER_BAPY}/${PASE_BAPY}@${ORACLE_SID} &> $HOME/$SCRIPTNAME.sqllog <<!
          alter session set NLS_LANGUAGE = 'SPANISH';
          prompt Actualizando fecha de pagos...;
          UPDATE LOG_TRANSACC_CR@OLPY A SET A.FECHA=TO_DATE(TO_CHAR(A.FECHA,'DDMM')||(TO_CHAR(SYSDATE,'YYYY') - 1),'DDMMYYYY')
           WHERE A.PLAN=6 AND TRUNC(A.FECHA)>TRUNC(SYSDATE);
          commit;
          exit
          !
          
              chmod +x $HOME/ejecuta_$SCRIPTNAME.sh
              $HOME/ejecuta_$SCRIPTNAME.sh | tee -a $SCRIPTLOG | cat
          
              ret_cod=$(grep -c ORA- $HOME/$SCRIPTNAME.sqllog )
              
              if [ $ret_cod -ne 0 ]
              then
                echo | tee -a $SCRIPTLOG | cat
                echo "ERROR(ES) AL ACTUALIZAR PAGOS:" | tee -a $SCRIPTLOG | cat
                grep ORA- $HOME/$SCRIPTNAME.sqllog | tee -a $SCRIPTLOG | cat
                echo "*** AVISE A SISTEMAS ***" | tee -a $SCRIPTLOG | cat
                date | tee -a $SCRIPTLOG | cat
              else
                echo "Fin proceso de actualizacion de pagos. - $(date)" | tee -a $SCRIPTLOG | cat
              fi
              rm -f $HOME/ejecuta_$SCRIPTNAME.sh
          fi
          
          rm -f $HOME/$SCRIPTNAME.sqllog
          echo "--> $SCRIPTNAME `date`" | tee -a $SCRIPTLOG
          
          
    3. Generar Orden de Embozado.
      1. Se ejecuta el archivo GENERA_OT_EMBOZADO.scr
        1. Code Block
          languagebash
          themeDJango
          titleResumen del archivo GENERA_OT_EMBOZADO.scr
          linenumberstrue
          collapsetrue
          #!/bin/bash
          # Script para ejecutar la generacion de ordenes de embozado
          # desde el sqlplus
          # Amalia Rodriguez.  Mon Oct 29 17:27:39 PYST 2012
          
          . funciones_py.scr
          
          SCRIPTNAME=GENERA_OT
          [ "$DIRLOGS" ] && SCRIPTLOG=$DIRLOGS/$SCRIPTNAME.log
          SCRIPTLOG=${SCRIPTLOG:-$RAIZ/datos/logs/$SCRIPTNAME.log}
          
          echo "--> Inicia $SCRIPTNAME `date` - $USER " | tee -a $SCRIPTLOG
          
          clear
          echo -n "
                   USUARIO NO INGRESADO POR PROGRAMA
                   INGRESE USUARIO: $USER_BAPY
                   PASSWORD       : "
          
          VerPasswdOracle
          if  [ $PASE_OK = "0" ]
          then
              W_USUARIO=$USER
              echo
          
          echo Inicio del proceso - $(date)
          sqlplus -S -L ${USER_BAPY}/${PASE_BAPY}@${ORACLE_SID} &> $HOME/$SCRIPTNAME.sqllog <<!
          alter session set NLS_LANGUAGE = 'SPANISH';
          prompt Procesando cierre embozado...;
          exec creditopy.PR_GENERA_OT(805,0,'$W_USUARIO',0);
          exit
          !
          sqlplus -S -L ${USER_BAPY}/${PASE_BAPY}@${ORACLE_SID} <<!
          set linesize 120;
          set head off;
          select 'Fecha: ' || a.fecha_orden || ' Procesador: ' || a.procesador || ' Nro Orden: ' || lpad(a.nro_orden,6) ||
                 ' Cnt.Tarjetas: ' || lpad(a.cant_tarjetas,6) || ' - Generado por: ' || a.usuario
          from ot_ordenes a where a.fecha_registro > trunc(sysdate) and upper(a.usuario) = upper('$W_USUARIO') order by a.nro_orden;
          exit
          !
              chmod +x $HOME/ejecuta_$SCRIPTNAME.sh
              $HOME/ejecuta_$SCRIPTNAME.sh | tee -a $SCRIPTLOG | cat
          
              ret_cod=$(grep -c ORA- $HOME/$SCRIPTNAME.sqllog )
              
              if [ $ret_cod -ne 0 ]
              then
                echo | tee -a $SCRIPTLOG | cat
                echo "ERROR(ES) AL CERRAR ORDEN:" | tee -a $SCRIPTLOG | cat
                grep ORA- $HOME/$SCRIPTNAME.sqllog | tee -a $SCRIPTLOG | cat
                echo "*** NO SE PUEDEN EMBOZAR TARJETAS - AVISE A SISTEMAS ***" | tee -a $SCRIPTLOG | cat
                date | tee -a $SCRIPTLOG | cat
              else
                echo "Fin proceso de generacion de orden - $(date)" | tee -a $SCRIPTLOG | cat
              fi
              rm -f $HOME/ejecuta_$SCRIPTNAME.sh
          fi
          
          rm -f $HOME/$SCRIPTNAME.sqllog
          echo "--> $SCRIPTNAME `date`" | tee -a $SCRIPTLOG
          
          
  3. VisualBasic:
    1. Generación de Pagos.
      1. El usuario inicia sesión en la aplicación de Ceibo.
      2. Selecciona el apartado: Operación => Generación de Pagos.
      3. Image Added
  4. Putty:
    1. Notificación de Cuentas con Disponible > Límite.
      1. Proceso de Ajustes Automático al Pago Mínimo.
    2. Acceso Cabal:
      1. Cargos Pagos vía Boca Cobranza.
    3. VisualBasic:
      1. Ajustes.
      2. Novedades.
    4. Putty:
      1. Verificar Datos generación VisualBasic.

    ETAPA II

    1. Putty:
      1. Carga de Pagos.
      2. Carga de Novedades.
      3. Carga de Ajustes.
      4. Limpiar Datos de Carga.

    ETAPA III

    1. Putty:
      1. Actualización Diaria.
      2. Actualización.

    El usuario se conecta por ssh, mediante un cliente de ssh (Putty), al servidor de producción donde están los scripts y programas cobol. Mediante el logueo, por una configuración del servidor, se ejecuta el archivo "LoginOper.sh" que es un script de shell que presenta un menú al usuario para realizar varias tareas relacionadas con la operación de cupones, cierres, pagos, autorizaciones, de comercios, la administración de impresiones, entre otros. Lo que se resume en 17 opciones presentadas al usuario.

    ...

        1. Se ejecuta el archivo PR_NotifCTADisponibleMayorLimite.sh
        2. Code Block
          languagebash
          themeDJango
          titleResumen del archivo PR_NotifCTADisponibleMayorLimite.sh
          linenumberstrue
          collapsetrue
          # ejecucion del pr_time_out_autoriz
          W_PID=$$
          echo "Ejecucion de Notificaciones de Cuentas con Disponible mayor a su Limite - $(date)" 
          echo "Ejecucion de Notificaciones de Cuentas con Disponible mayor a su Limite - $(date)" >> $DIRLOGS/pr_notif_cta_disponible_limite.log
          
          echo "
          sqlplus creditopy/${PASE_BAPY}@${ORACLE_SID} <<! 
          
          set time on;
          prompt exec creditopy.pkg_notificaciones_proceso.sp_disponible_mayor_limite_cta;
          exec creditopy.pkg_notificaciones_proceso.sp_disponible_mayor_limite_cta;
          
          exit;
          !" > $HOME/ejecuta.sh_$USER$W_PID
          chmod -f +x $HOME/ejecuta.sh_$USER$W_PID
          
          $HOME/ejecuta.sh_$USER$W_PID | tee -a  $DIRLOGS/pr_notif_cta_disponible_limite.log | cat
          
          echo "Notificaciones de Cuentas con Disponible mayor a su Limite finalizado - $(date)" 
          echo "Notificaciones de Cuentas con Disponible mayor a su Limite finalizado - $(date)" >> $DIRLOGS/pr_notif_cta_disponible_limite.log
          
          rm $HOME/ejecuta.sh_$USER$W_PID
          
          
      1. Proceso de Ajustes Automático al Pago Mínimo.
        1. Se ejecuta el archivo GENERA_AJUSTES_PM.scr
        2. Code Block
          languagebash
          themeDJango
          titleResumen del archivo 'GENERA_AJUSTES_PM.scr'
          linenumberstrue
          collapsetrue
          #!/bin/bash
          # Script para ejecutar la generacion de ajustes al pago minimo
          # desde el sqlplus
          # Amalia Rodriguez.  jue sep  7 17:14:19 PYST 2017
          
          . funciones_py.scr
          
          SCRIPTNAME=GENERA_AJUSTES_PM
          [ "$DIRLOGS" ] && SCRIPTLOG=$DIRLOGS/$SCRIPTNAME.log
          SCRIPTLOG=${SCRIPTLOG:-$RAIZ/datos/logs/$SCRIPTNAME.log}
          
          echo "--> Inicia $SCRIPTNAME `date`" | tee -a $SCRIPTLOG
          
          clear
          echo -n "
                   USUARIO NO INGRESADO POR PROGRAMA
                   INGRESE USUARIO: $USER_BAPY
                   PASSWORD       : "
          
          VerPasswdOracle
          if  [ $PASE_OK = "0" ]
          then
              W_USUARIO=$USER
              echo
          
          echo Inicio del proceso - $(date)
          sqlplus -S -L ${USER_BAPY}/${PASE_BAPY}@${ORACLE_SID} &> $HOME/$SCRIPTNAME.sqllog <<!
          exec CREDITOPY.CEIBO_EMISORES.PR_PROCESAR_AAPM_II();
          exec pkg_ceibo_fix.sp_fix_alta_mov_ajustes_dupli@olpy;
          commit;
          exit
          !
              chmod +x $HOME/ejecuta_$SCRIPTNAME.sh
              $HOME/ejecuta_$SCRIPTNAME.sh | tee -a $SCRIPTLOG | cat
          
              ret_cod=$(grep -c ORA- $HOME/$SCRIPTNAME.sqllog )
              
              if [ $ret_cod -ne 0 ]
              then
                echo | tee -a $SCRIPTLOG | cat
                echo "ERROR(ES) AL GENERAR AJUSTES AL PM: " | tee -a $SCRIPTLOG | cat
                grep ORA- $HOME/$SCRIPTNAME.sqllog | tee -a $SCRIPTLOG | cat
                echo "*** AVISE A SISTEMAS ANTES DE CONTINUAR CON EL PROCESO ***" | tee -a $SCRIPTLOG | cat
                date | tee -a $SCRIPTLOG | cat
              else
                echo "Fin generacion de ajustes - $(date)" | tee -a $SCRIPTLOG | cat
              fi
              rm -f $HOME/ejecuta_$SCRIPTNAME.sh
          fi
          
          rm -f $HOME/$SCRIPTNAME.sqllog
          echo "--> $SCRIPTNAME `date`" | tee -a $SCRIPTLOG
          
          
    1. Acceso Cabal:
      1. Cargos Pagos vía Boca Cobranza.
        1. El usuario vuelve a ingresar al acceso Cabal para ejecutar la opción de Cargos para pagos vía Boca de Cobranza.
        2. Image Added
    2. VisualBasic:
      1. Ajustes.
        1. El usuario ingresa a la opción del Visual basic
        2. Image Added
      2. Novedades.
        1. El usuario ingresa a la opción del Visual basic
        2. Image Added
    3. Putty:
      1. Verificar Datos generación VisualBasic.
        1. Se ejecuta el archivo CRVERFTP.scr
        2. Code Block
          languagebash
          themeDJango
          titleResumen del archivo CTVERFTP.src
          linenumberstrue
          collapsetrue
          NAME="CTCARLIMPIAR"
          SCRIPTLOG=$DIRLOGS/${NAME}.log
          DIRCARGA=$RAIZD/cargas
          HORA=$(date +%y%m%d%H%M)
          
          echo "--> Inicia ${NAME} $(date) - $USER" | tee -a $SCRIPTLOG
          cd $DIRCARGA
          echo "    Directorio de trabajo: `pwd`" | tee -a $SCRIPTLOG
          echo
          ls -lth pagosemin CABALCB3 cabalcb5c | tee -a $SCRIPTLOG
          
          error="0"
          
          for ARCH in pagosemin CABALCB3 cabalcb5c
          do
            case $ARCH in
             pagosemin) PROCESO=Pagos;;
             CABALCB3)  PROCESO=Novedades;;
             cabalcb5c) PROCESO=Ajustes;;
            esac
            SIZE=$(du -h $ARCH | awk '{ print $1 }')
            if  [ $SIZE = "0" ]
            then
              echo "\n          *** Archivo de $PROCESO = $ARCH no tiene datos ***\n          Verifique generacion antes de continuar " | tee -a $SCRIPTLOG
              error="1"
            else
              echo
              echo "Archivo de $PROCESO = $ARCH ok."
            fi
          done
          echo
          
          if [ $error = "1" ]
          then
            echo "\n**********************************************\n***  NO SE PUEDEN PROCESAR LAS CARGAS.     ***\n***  AVISE A SISTEMAS ANTES DE CONTINUAR!  ***\n********************************************** " | tee -a $SCRIPTLOG
          else
            echo "--> Fin normal CTACARLIMPIAR $(date)" | tee -a $SCRIPTLOG
          fi
          echo | tee -a $SCRIPTLOG
          
          

    ETAPA II

    1. Putty:
      1. Carga de Pagos.
        1. Se ejecuta el archivo GENSCRIPT.scr con los sgtes parametros: CTCARPAG -p CTCMD051
        2. Code Block
          languagebash
          themeDJango
          titleResumen del archivo GENSCRIPT.scr
          linenumberstrue
          collapsetrue
          #!/bin/ksh
          # Script generico de ejecucion de programas y scripts
          # Los parametros son muy simples:
          # Sintaxis
          #     GENSCRIPT.scr -s SCRIPTNAME -p PGMNAME [-l SCRIPTLOG ]
          
          set +o noclobber
          
          Ayuda() {
            echo "Sintaxis:  GENSCRIPT.scr -s SCRIPT -p PROGRAMA [-a ARGUMENTO][ -l LOG ][-w SWITCH][ -o OTRO-PGM ][ ARGUMENTO]"
            exit 1
          }
          
          [ "$DEBUG" ] && set -x
          [ $# -lt 2  ] && Ayuda
          
          while getopts "w:s:p:l:o:a:h" OPCION
          do
              case $OPCION in
                s) SCRIPTNAME=$OPTARG;;
                p) PGMNAME=$OPTARG;;
                a) LINEA_ARG=$OPTARG;;
                l) SCRIPTLOG=$OPTARG;;
                o) OTROPGM=$OPTARG;;
                w) typeset -x COBSW=$OPTARG;;
                h) Ayuda;;
              esac
          done
          shift `expr $OPTIND - 1`
          
          if [ ! "$SCRIPTLOG" ]
          then
             NAME=${SCRIPTNAME:-"GENSCRIPT"}
             [ "$DIRLOGS" ] && SCRIPTLOG=$DIRLOGS/$NAME.log
             SCRIPTLOG=${SCRIPTLOG:-$RAIZD/logs/$NAME.log}
          fi
          
          [ ! "$SCRIPTNAME" ] && {
            echo "===> ERROR. No se especifico nombre de SCRIPT" | tee -a $SCRIPTLOG
            exit 1
          }
          
          [ ! "$PGMNAME" ] && {
            echo "===> ERROR. No se especifico nombre de PROGRAMA" | tee -a $SCRIPTLOG
            exit 2
          }
          
          [ "$OTROPGM" ] && OTROPGM="-o $OTROPGM"
          [ ! "$LINEA_ARG" ] && LINEA_ARG=$@
          [ "$LINEA_ARG" ] && export LINEA_ARG
          
          echo "--> Inicia $SCRIPTNAME `date`" | tee -a $SCRIPTLOG
          [ "$COBSW" ] && {
            echo "    SWITCH especificado --> [$COBSW] " >> $SCRIPTLOG
          }
          
          echo "    GENSCRIPT: Argumento --> $LINEA_ARG" >>$SCRIPTLOG
          echo "    GENSCRIPT:Argumentos sobrantes:  $@" >>$SCRIPTLOG
          
          rtsora.sc -p $PGMNAME -s $SCRIPTNAME -l $SCRIPTLOG $OTROPGM
          STATUS=$?
          if [ $STATUS -ne 0 ]
          then
              echo "---> Ejecucion de programa $PGMNAME con error. Status: $STATUS" | tee -a $SCRIPTLOG
              echo "     Pulse [ENTER] para continuar"
              read PAUSA
              exit $STATUS
          fi
          
          echo "--> $SCRIPTNAME `date`" | tee -a $SCRIPTLOG
          
          
      2. Carga de Novedades.
        1. Se ejecuta el archivo GENSCRIPT.scr con los sgtes parametros: CTCARNOV -p CTCMD076
        2. Code Block
          languagebash
          themeDJango
          titleResumen del archivo GENSCRIPT.scr
          linenumberstrue
          collapsetrue
          #!/bin/ksh
          # Script generico de ejecucion de programas y scripts
          # Los parametros son muy simples:
          # Sintaxis
          #     GENSCRIPT.scr -s SCRIPTNAME -p PGMNAME [-l SCRIPTLOG ]
          
          set +o noclobber
          
          Ayuda() {
            echo "Sintaxis:  GENSCRIPT.scr -s SCRIPT -p PROGRAMA [-a ARGUMENTO][ -l LOG ][-w SWITCH][ -o OTRO-PGM ][ ARGUMENTO]"
            exit 1
          }
          
          [ "$DEBUG" ] && set -x
          [ $# -lt 2  ] && Ayuda
          
          while getopts "w:s:p:l:o:a:h" OPCION
          do
              case $OPCION in
                s) SCRIPTNAME=$OPTARG;;
                p) PGMNAME=$OPTARG;;
                a) LINEA_ARG=$OPTARG;;
                l) SCRIPTLOG=$OPTARG;;
                o) OTROPGM=$OPTARG;;
                w) typeset -x COBSW=$OPTARG;;
                h) Ayuda;;
              esac
          done
          shift `expr $OPTIND - 1`
          
          if [ ! "$SCRIPTLOG" ]
          then
             NAME=${SCRIPTNAME:-"GENSCRIPT"}
             [ "$DIRLOGS" ] && SCRIPTLOG=$DIRLOGS/$NAME.log
             SCRIPTLOG=${SCRIPTLOG:-$RAIZD/logs/$NAME.log}
          fi
          
          [ ! "$SCRIPTNAME" ] && {
            echo "===> ERROR. No se especifico nombre de SCRIPT" | tee -a $SCRIPTLOG
            exit 1
          }
          
          [ ! "$PGMNAME" ] && {
            echo "===> ERROR. No se especifico nombre de PROGRAMA" | tee -a $SCRIPTLOG
            exit 2
          }
          
          [ "$OTROPGM" ] && OTROPGM="-o $OTROPGM"
          [ ! "$LINEA_ARG" ] && LINEA_ARG=$@
          [ "$LINEA_ARG" ] && export LINEA_ARG
          
          echo "--> Inicia $SCRIPTNAME `date`" | tee -a $SCRIPTLOG
          [ "$COBSW" ] && {
            echo "    SWITCH especificado --> [$COBSW] " >> $SCRIPTLOG
          }
          
          echo "    GENSCRIPT: Argumento --> $LINEA_ARG" >>$SCRIPTLOG
          echo "    GENSCRIPT:Argumentos sobrantes:  $@" >>$SCRIPTLOG
          
          rtsora.sc -p $PGMNAME -s $SCRIPTNAME -l $SCRIPTLOG $OTROPGM
          STATUS=$?
          if [ $STATUS -ne 0 ]
          then
              echo "---> Ejecucion de programa $PGMNAME con error. Status: $STATUS" | tee -a $SCRIPTLOG
              echo "     Pulse [ENTER] para continuar"
              read PAUSA
              exit $STATUS
          fi
          
          echo "--> $SCRIPTNAME `date`" | tee -a $SCRIPTLOG
          
          
      3. Carga de Ajustes.
        1. Se ejecuta el archivo GENSCRIPT.scr con los sgtes parametros: CTCARAJU -p CTCMD061O
        2. Code Block
          languagebash
          themeDJango
          titleResumen del archivo GENSCRIPT.scr
          linenumberstrue
          collapsetrue
          #!/bin/ksh
          # Script generico de ejecucion de programas y scripts
          # Los parametros son muy simples:
          # Sintaxis
          #     GENSCRIPT.scr -s SCRIPTNAME -p PGMNAME [-l SCRIPTLOG ]
          
          set +o noclobber
          
          Ayuda() {
            echo "Sintaxis:  GENSCRIPT.scr -s SCRIPT -p PROGRAMA [-a ARGUMENTO][ -l LOG ][-w SWITCH][ -o OTRO-PGM ][ ARGUMENTO]"
            exit 1
          }
          
          [ "$DEBUG" ] && set -x
          [ $# -lt 2  ] && Ayuda
          
          while getopts "w:s:p:l:o:a:h" OPCION
          do
              case $OPCION in
                s) SCRIPTNAME=$OPTARG;;
                p) PGMNAME=$OPTARG;;
                a) LINEA_ARG=$OPTARG;;
                l) SCRIPTLOG=$OPTARG;;
                o) OTROPGM=$OPTARG;;
                w) typeset -x COBSW=$OPTARG;;
                h) Ayuda;;
              esac
          done
          shift `expr $OPTIND - 1`
          
          if [ ! "$SCRIPTLOG" ]
          then
             NAME=${SCRIPTNAME:-"GENSCRIPT"}
             [ "$DIRLOGS" ] && SCRIPTLOG=$DIRLOGS/$NAME.log
             SCRIPTLOG=${SCRIPTLOG:-$RAIZD/logs/$NAME.log}
          fi
          
          [ ! "$SCRIPTNAME" ] && {
            echo "===> ERROR. No se especifico nombre de SCRIPT" | tee -a $SCRIPTLOG
            exit 1
          }
          
          [ ! "$PGMNAME" ] && {
            echo "===> ERROR. No se especifico nombre de PROGRAMA" | tee -a $SCRIPTLOG
            exit 2
          }
          
          [ "$OTROPGM" ] && OTROPGM="-o $OTROPGM"
          [ ! "$LINEA_ARG" ] && LINEA_ARG=$@
          [ "$LINEA_ARG" ] && export LINEA_ARG
          
          echo "--> Inicia $SCRIPTNAME `date`" | tee -a $SCRIPTLOG
          [ "$COBSW" ] && {
            echo "    SWITCH especificado --> [$COBSW] " >> $SCRIPTLOG
          }
          
          echo "    GENSCRIPT: Argumento --> $LINEA_ARG" >>$SCRIPTLOG
          echo "    GENSCRIPT:Argumentos sobrantes:  $@" >>$SCRIPTLOG
          
          rtsora.sc -p $PGMNAME -s $SCRIPTNAME -l $SCRIPTLOG $OTROPGM
          STATUS=$?
          if [ $STATUS -ne 0 ]
          then
              echo "---> Ejecucion de programa $PGMNAME con error. Status: $STATUS" | tee -a $SCRIPTLOG
              echo "     Pulse [ENTER] para continuar"
              read PAUSA
              exit $STATUS
          fi
          
          echo "--> $SCRIPTNAME `date`" | tee -a $SCRIPTLOG
          
          
      4. Limpiar Datos de Carga.
        1. Se ejecuta el archivo CTCARLIMPIAR.scr
        2. Code Block
          languagebash
          themeDJango
          titleResumen del archivo CTCARLIMPIAR.scr
          linenumberstrue
          collapsetrue
          NAME="CTCARLIMPIAR"
          SCRIPTLOG=$DIRLOGS/${NAME}.log
          DIRCARGA=$RAIZD/cargas
          HORA=$(date +%y%m%d%H%M)
          
          echo "--> Inicia CTACARLIMPIAR $(date) - $USER" | tee -a $SCRIPTLOG
          cd $DIRCARGA
          echo "    Directorio de trabajo: `pwd`" | tee -a $SCRIPTLOG
          
          if [ -f respaldo ]
          then
              mv respaldo respaldo_arch
              mkdir respaldo
              chmod 775 respaldo
              echo "    respaldo creado por unica vez." | tee -a $SCRIPTLOG
          else
            if [ -d respaldo ]
            then
                continue
            else
                mkdir respaldo
                chmod 775 respaldo
                echo "    respaldo creado por unica vez." | tee -a $SCRIPTLOG
            fi
          fi
          
          for ARCH_PROC in CABALCB3 pagosemin cabalcb5c maeopin.txt
          do
            if [ -a $ARCH_PROC ]
            then
              cp -p $ARCH_PROC ${DIRCARGA}/respaldo/${ARCH_PROC}_${HORA}
              > $ARCH_PROC
              echo "    Inicializacion ok: $ARCH_PROC" | tee -a $SCRIPTLOG
            fi
          done
          
          echo "--> Fin normal CTACARLIMPIAR $(date)" | tee -a $SCRIPTLOG
          
          

    ETAPA III

    1. Putty:
      1. Actualización Diaria.
        1. Se ejecuta el archivo GENSCRIPT.scr con los parámetros: -s CTACTCTAS -p CTMENU01 -o CTCMD078 ONLINE CTCMD078
        2. Code Block
          languagebash
          themeDJango
          titleResumen del archivo GENSCRIPT.scr
          linenumberstrue
          collapsetrue
          #!/bin/ksh
          # Script generico de ejecucion de programas y scripts
          # Los parametros son muy simples:
          # Sintaxis
          #     GENSCRIPT.scr -s SCRIPTNAME -p PGMNAME [-l SCRIPTLOG ]
          
          set +o noclobber
          
          Ayuda() {
            echo "Sintaxis:  GENSCRIPT.scr -s SCRIPT -p PROGRAMA [-a ARGUMENTO][ -l LOG ][-w SWITCH][ -o OTRO-PGM ][ ARGUMENTO]"
            exit 1
          }
          
          [ "$DEBUG" ] && set -x
          [ $# -lt 2  ] && Ayuda
          
          while getopts "w:s:p:l:o:a:h" OPCION
          do
              case $OPCION in
                s) SCRIPTNAME=$OPTARG;;
                p) PGMNAME=$OPTARG;;
                a) LINEA_ARG=$OPTARG;;
                l) SCRIPTLOG=$OPTARG;;
                o) OTROPGM=$OPTARG;;
                w) typeset -x COBSW=$OPTARG;;
                h) Ayuda;;
              esac
          done
          shift `expr $OPTIND - 1`
          
          if [ ! "$SCRIPTLOG" ]
          then
             NAME=${SCRIPTNAME:-"GENSCRIPT"}
             [ "$DIRLOGS" ] && SCRIPTLOG=$DIRLOGS/$NAME.log
             SCRIPTLOG=${SCRIPTLOG:-$RAIZD/logs/$NAME.log}
          fi
          
          [ ! "$SCRIPTNAME" ] && {
            echo "===> ERROR. No se especifico nombre de SCRIPT" | tee -a $SCRIPTLOG
            exit 1
          }
          
          [ ! "$PGMNAME" ] && {
            echo "===> ERROR. No se especifico nombre de PROGRAMA" | tee -a $SCRIPTLOG
            exit 2
          }
          
          [ "$OTROPGM" ] && OTROPGM="-o $OTROPGM"
          [ ! "$LINEA_ARG" ] && LINEA_ARG=$@
          [ "$LINEA_ARG" ] && export LINEA_ARG
          
          echo "--> Inicia $SCRIPTNAME `date`" | tee -a $SCRIPTLOG
          [ "$COBSW" ] && {
            echo "    SWITCH especificado --> [$COBSW] " >> $SCRIPTLOG
          }
          
          echo "    GENSCRIPT: Argumento --> $LINEA_ARG" >>$SCRIPTLOG
          echo "    GENSCRIPT:Argumentos sobrantes:  $@" >>$SCRIPTLOG
          
          rtsora.sc -p $PGMNAME -s $SCRIPTNAME -l $SCRIPTLOG $OTROPGM
          STATUS=$?
          if [ $STATUS -ne 0 ]
          then
              echo "---> Ejecucion de programa $PGMNAME con error. Status: $STATUS" | tee -a $SCRIPTLOG
              echo "     Pulse [ENTER] para continuar"
              read PAUSA
              exit $STATUS
          fi
          
          echo "--> $SCRIPTNAME `date`" | tee -a $SCRIPTLOG
          
          


    ...