代码拉取完成,页面将自动刷新
##############################################
# puvdacup002a
#
# Gera arquivo com todas as vendas a partir dos lgcx
# da vanguarda Prisma e ordena.
#
# Programas chamados:
# sup01270 (em Cobol)
#
##############################################
. /DSOP/DEXE/pusopo12 >/dev/null 2>&1
#set -x
if [ `ps -ef | grep sup01270 | grep -v grep | wc -l` -gt 0 ]
then
echo "----------------------------------"
date
echo "Ja existe sup01270 rodando"
exit 0
fi
umask 000
export novodir=$VARSTAT/LXCUPOM
export dirtrab=$VARSTAR/CUPONS
export DIRSAIDA=$dirtrab/SAIDA
[ ! -d $novodir ] && mkdir -p $novodir
[ ! -d $DIRSAIDA ] && mkdir -p $DIRSAIDA
[ ! -d $dirtrab/LOG ] && mkdir -p $dirtrab/LOG
[ ! -d $dirtrab/TEMP ] && mkdir -p $dirtrab/TEMP
dia=`date +%d`
dirvendas=/lasa/pdvs/bk0$dia
# forca diretorio de leitura dos logs de vendas
echo "dados" >$CONCENTRADOR/camcupom.txt
[ "${1}" != "" ] && echo "${1}" >$CONCENTRADOR/camcupom.txt
chmod 444 $CONCENTRADOR/camcupom.txt
#
#
dirprog=$CONCENTRADOR/exec
logfile=$dirtrab/LOG/puvdacup002a.log
loja=""
ZIP="/bin/gzip"
loja=`hostname | cut -c6-`
# testa presenca de arquivos
if [ `ls $dirvendas/lgcx??? $dirvendas/lgcx???b 2>/dev/null | wc -l` -gt 0 ]
then
if [ ! -d $DIRSAIDA ]
then
echo "ERRO. Diretorio: $DIRSAIDA inexistente!"
exit
fi
#
datahoraatual=`date +%Y%m%d%H`
################################################
echo "Inicio sup01270:`date +%y%m%d-%H%M%S`" >> $logfile
echo "--------------------------" >>$logfile
echo "--- Arquivos antes sup01270" >>$logfile
echo "--------------------------" >>$logfile
ls -l $DIRSAIDA/vendas_bcup.txt $DIRSAIDA/arq_* >>$logfile 2>&1
$dirprog/sup01270 >>$logfile 2>&1
echo "--------------------------" >>$logfile
echo "--- Arquivos apos sup01270" >>$logfile
echo "--------------------------" >>$logfile
ls -l $DIRSAIDA/vendas_bcup.txt $DIRSAIDA/arq_* >>$logfile 2>&1
echo "--------------------------" >>$logfile
echo "Fim sup01270:`date +%y%m%d-%H%M%S`" >> $logfile
# Se nao existir venda , entao SAI
if [ ! -s $DIRSAIDA/arq_fech_cup_bcup.txt -o ! -s $DIRSAIDA/vendas_bcup.txt ]
then
echo "ARQUIVOS VAZIOS" >> $logfile
exit 0
fi
#
#
# arq_fech_cup_bcup.txt ; Cupom Fechado
# arq_cup_canc_bcup.txt ; Cupom Cancelado
# arq_itemcanc_bcup.txt ; Item cancelado
# arq_crd_digi_bcup.txt ; Credito Digital
# arq_fech_cup_bcup.txt ; Itens
for ARQ in arq_fech_cup_bcup.txt:cupf_ord_bcup:cupf_trans_bcup \
arq_cup_canc_bcup.txt:cupc_ord_bcup:cupc_trans_bcup \
arq_itemcanc_bcup.txt:ite_ord_itemcanc_bcup:ite_trans_itemcanc_bcup \
arq_crd_digi_bcup.txt:cupd_ord_bcup:cupd_trans_bcup \
vendas_bcup.txt:tosr_ord_bcup:tosrv_bcup \
meio_pagamento_bcup.txt:mpag_ord_bcup:mpag_ord \
arq_servicos_bcup.txt:serv_ord_bcup:serv_trans_bcup
do
ORIGARQ=`echo $ARQ | cut -d: -f1`
ORDARQ=`echo $ARQ | cut -d: -f2`
SAIDAARQ=`echo $ARQ | cut -d: -f3`
[ ! -s $DIRSAIDA/${ORIGARQ} ] && continue
# ordena fechamentos para poder obter diferencas a frente
sort -T $dirtrab $DIRSAIDA/$ORIGARQ > $DIRSAIDA/${ORDARQ}.$loja
# se existe anterior compara
if [ -s $DIRSAIDA/${ORDARQ}.$loja.ant ]
then
# obtem diferencial das vendas geradas
comm -23 $DIRSAIDA/${ORDARQ}.$loja \
$DIRSAIDA/${ORDARQ}.$loja.ant > $DIRSAIDA/${SAIDAARQ}.$loja
C1ERRO=$?
if [ -s $DIRSAIDA/${SAIDAARQ}.$loja ] && [ $C1ERRO -eq 0 ]
then
# salva diferenca para uso posterior
cp $DIRSAIDA/${SAIDAARQ}.$loja $DIRSAIDA/_TMP_${SAIDAARQ}.$loja
# compacta diferenca para envio
$ZIP -f $DIRSAIDA/${SAIDAARQ}.$loja
if [ $? -eq 0 ]
then
data=`date +%y%m%d%H%M%S`
mv -f $DIRSAIDA/${SAIDAARQ}.$loja.gz \
${novodir}/${SAIDAARQ}.$loja.${data}.gz
else
rm -f $DIRSAIDA/_TMP_${SAIDAARQ}.$loja
fi
fi
else
if [ -s $DIRSAIDA/${ORDARQ}.$loja ]
then
# faz backup do arquivo gerado para uso posterior
cp $DIRSAIDA/${ORDARQ}.$loja $DIRSAIDA/_TMP_${SAIDAARQ}.$loja
# compacta para envio
$ZIP -f $DIRSAIDA/${ORDARQ}.$loja
if [ $? -eq 0 ]
then
data=`date +%y%m%d%H%M%S`
mv -f $DIRSAIDA/${ORDARQ}.$loja.gz \
$novodir/${SAIDAARQ}.$loja.${data}.gz
else
rm -f $DIRSAIDA/_TMP_${SAIDAARQ}.$loja
fi
fi
fi
# Salva diferenca no arquivo ANTERIOR
if [ -s $DIRSAIDA/_TMP_${SAIDAARQ}.$loja ]
then
cat $DIRSAIDA/_TMP_${SAIDAARQ}.$loja >> $DIRSAIDA/${ORDARQ}.$loja.ant
rm -f $DIRSAIDA/_TMP_${SAIDAARQ}.$loja
sort -T $dirtrab -o $DIRSAIDA/${ORDARQ}.$loja.ant $DIRSAIDA/${ORDARQ}.$loja.ant
fi
done
else
#
# Verifica datas a manter no historico
#
D0=`date +%Y%m%d`
D1=`date +%Y%m%d --date=yesterday`
D2=`date +%Y%m%d --date="2 days ago"`
D3=`date +%Y%m%d --date="3 days ago"`
D4=`date +%Y%m%d --date="4 days ago"`
D5=`date +%Y%m%d --date="5 days ago"`
D6=`date +%Y%m%d --date="6 days ago"`
for XANT in `ls ${DIRSAIDA}/*.ant 2>/dev/null`
do
grep -E "${D0}|${D1}|${D2}|${D3}|${D4}|${D5}|${D6}" ${XANT} >${XANT}.LIMPEZA
mv ${XANT}.LIMPEZA ${XANT}
done
#
exit 50
fi
#
#
chmod 777 ${novodir}/*
chown rsync:500 ${novodir}/*
# TUDO OK
echo "dados" >$CONCENTRADOR/camcupom.txt
exit
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。