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.
          Section
          bordertrue
          zxczxczxc
          1. El usuario se loguea al portal del Acceso Cabal.
            Image AddedImage Added



          2. Va a la opción asignada para levantar el archivo => Esto copia el archivo a un servidor por SFTP
            Image Added
          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.
            Image Added
    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. 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
          
          
      2. 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
          
          
    5. 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
    6. 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
    7. 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.
      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 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
          
          


    ...