El usuario se loguea al portal del Acceso Cabal.
#!/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 |
#!/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 |
#!/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 |
# 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 |
#!/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 |
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 |
#!/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 |
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.