VARIAVEL Z_NUMCXA = RECC()
VARIAVEL Z_REGPAG = 0
VARIAVEL Z_REGREC = 0
VARIAVEL Z_REGFAT = 0
VARIAVEL Z_FAT = ""
VARIAVEL Z_FATP = ""
VARIAVEL Z_DATACXA  = CTOD("")
VARIAVEL z_concilia = If(type("z_concilia")<>"U",z_concilia,"N")

VARIAVEL #TEXTO_FONTE
DbGoBottom()
while .not.bof().and.dataopen=s_datual.and.s_vb_totcxs>1.and.si_caixa<>S_VB_NCAIX
   DbSkip(-1)
   Z_NUMCXA:=RECNO()
end
#FIM_TEXTO_FONTE

T10,10,16,60,Parametros
T2,2,Numero de Controle do Caixa:,4,Z_NUMCXA,999999
COMANDO DEPOIS DBGOTO(Z_NUMCXA)
COMANDO DEPOIS Z_DATACXA  = DATAOPEN
COMANDO DEPOIS Z_REGPAG = REG_PAG
COMANDO DEPOIS Z_REGREC = REG_REC
COMANDO DEPOIS Z_REGFAT = REG_FAT

COMANDO DEPOIS z_concilia = If(day(dataconf)>0.and.VcnDINH+VcnCHEQ+VcnCART+VcnCONV+vcnCARN>0,"S",z_concilia)
COMANDO DEPOIS z_cdinh=fdinh+VDINH+VPMDINH +vcrdinh-vpag_caixa 
COMANDO DEPOIS z_ccheq=fcheq+VCHEQ+VPMCHEQ +vcrcheq 
COMANDO DEPOIS z_ccart=fcart+VCART+VPMCART +vcrcart
COMANDO DEPOIS z_cconv=fconv+VCONV+VPMCONV +vcrconv
COMANDO DEPOIS z_ccarn=fcarn+VCARN+VPMCarn +vcrcarn

COMANDO DEPOIS ZD_DINH = VIDINH-(FDINH+VDINH+VPMDINH +vcrdinh-vpag_caixa)
COMANDO DEPOIS ZD_CHEQ = VICHEQ-(FCHEQ+VCHEQ+VPMCHEQ +vcrcheq)
COMANDO DEPOIS ZD_CART = VICART-(FCART+VCART+VPMCART +vcrcart) 
COMANDO DEPOIS ZD_CONV = VICONV-(FCONV+VCONV+VPMCONV +vcrconv) 
COMANDO DEPOIS ZD_CARN = VICARN-(FCARN+VCARN+VPMCARN +vcrcarn) 
COMANDO DEPOIS Zvpag_caixa = if(vpag_caixa=VcpDINH+VcpCHEQ+VcpCART+VcpCONV+VcpCARN,0,vpag_caixa)
 
COMANDO DEPOIS zstrdinh= str(fdinh,9,2)+"|"+str(VDINH+VPMDINH,9,2)+"|"+str(VcrDINH,9,2)+"|"+str(0-(VcpDINH+zvpag_caixa),9,2)+"|"+str(z_cdinh,9,2)+"|"+str(ViDINH,9,2)+"|"+str(ZD_DINH,9,2)
COMANDO DEPOIS zstrcheq= str(fcheq,9,2)+"|"+str(VCHEQ+VPMCHEQ,9,2)+"|"+str(VcrCHEQ,9,2)+"|"+str(0-VcpCHEQ,9,2)+"|"+str(z_ccheq,9,2)+"|"+str(ViCHEQ,9,2)+"|"+str(ZD_CHEQ,9,2)
COMANDO DEPOIS zstrcart= str(fcart,9,2)+"|"+str(VCART+VPMCART,9,2)+"|"+str(VcrCART,9,2)+"|"+str(0-VcpCART,9,2)+"|"+str(z_ccart,9,2)+"|"+str(ViCART,9,2)+"|"+str(ZD_CART,9,2)
COMANDO DEPOIS zstrconv= str(fconv,9,2)+"|"+str(VCONV+VPMCONV,9,2)+"|"+str(VcrCONV,9,2)+"|"+str(0-VcpCONV,9,2)+"|"+str(z_cconv,9,2)+"|"+str(ViCONV,9,2)+"|"+str(ZD_CONV,9,2)
COMANDO DEPOIS zstrcarn= str(fcarn,9,2)+"|"+str(VCARN+VPMCarn,9,2)+"|"+str(VcrCARN,9,2)+"|"+str(0-VcpCARN,9,2)+"|"+str(z_ccarn,9,2)+"|"+str(ViCARN,9,2)+"|"+str(ZD_CARN,9,2)

COMANDO DEPOIS zfstrdinh = if(z_concilia="S", str(VcncDINH,9,2)+"|"+str(VcnDINH,9,2)+"|"+str(VcnDINH-VcncDINH,9,2) ,"")
COMANDO DEPOIS zfstrcheq = if(z_concilia="S", str(VcncCHEQ,9,2)+"|"+str(VcnCHEQ,9,2)+"|"+str(VcnCHEQ-VcncCHEQ,9,2) ,"")
COMANDO DEPOIS zfstrcart = if(z_concilia="S", str(VcncCART,9,2)+"|"+str(VcnCART,9,2)+"|"+str(VcnCART-VcncCART,9,2) ,"")
COMANDO DEPOIS zfstrconv = if(z_concilia="S", str(VcncCONV,9,2)+"|"+str(VcnCONV,9,2)+"|"+str(VcnCONV-VcncCONV,9,2) ,"")
COMANDO DEPOIS zfstrcarn = if(z_concilia="S", str(VcncCarn,9,2)+"|"+str(VcnCarn,9,2)+"|"+str(VcnCARN-VcncCarn,9,2) ,"")

COMANDO DEPOIS zstrtot =         str(fdinh+fcheq+fcart+fconv+fcarn,9,2)+"|"+str(VDINH+VCHEQ+VCART+VCONV+vmist,9,2)+"|"
COMANDO DEPOIS zstrtot = zstrtot+str(vrec_caixa,9,2)+"|"+str(0-vpag_caixa,9,2)+"|"
COMANDO DEPOIS zstrtot = zstrtot+str(z_cdinh+z_ccheq+z_ccart+z_cconv+z_ccarn,9,2)+"|"+str(ViDINH+ViCHEQ+ViCART+ViCONV+ViCARN,9,2)+"|"
COMANDO DEPOIS zstrtot = zstrtot+str(ZD_DINH+ZD_CHEQ+ZD_CART+ZD_CONV+ZD_CARN,9,2)

COMANDO DEPOIS ZtotVcnc = VcncDINH+VcncCHEQ+VcncCART+VcncCONV+VcncCarn
COMANDO DEPOIS ZtotVcn  = VcnDINH+VcnCHEQ+VcnCART+VcnCONV+vcnCARN
COMANDO DEPOIS zfstrtot = if(z_concilia="S", "|"+str(ZtotVcnc,9,2)+"|"+str(ZtotVcn,9,2)+"|"+str(ZtotVcnc-ZtotVcn,9,2) ,"")

//C[EMPRESA]  [if(z_concilia="S",chr(15),"")] 
//C[SISTEMA]
ULTPAGPosicao do Caixa Numero:[z_numcxa 9999]
ULTPAGemitida em [s_datual] as [time()]
ULTPAG[repl("-",40)]
ULTPAGAbertura: [USU_OPEN] Fechamento: [USU_FECH]    
ULTPAGData....: [DATAOPEN] Data......: [DATAFECH]    
ULTPAGHora....: [HORAOPEN] Hora......: [HORAFECH]
ULTPAGSituacao: [SITUACAO] No Caixa: [si_caixa 99]

ULTPAG[repl("=",40)]
ULTPAG
ULTPAG Vda.Dinheiro.: [VDINH 9999999.99] ([NVEN1 9999] Cupons)     
ULTPAG Vda.Cheques..: [VCHEQ 9999999.99] ([NVEN2 9999] Cupons)     
ULTPAG Vda.Cartoes..: [VCART 9999999.99] ([NVEN3 9999] Cupons)     
ULTPAG Vda.Convenios: [VCONV 9999999.99] ([NVEN4 9999] Cupons)     
ULTPAG Vda.Pz.Misto.: [vmist 9999999.99] ([NVEN5 9999] Cupons)     
ULTPAG *** Vda Total: [VDINH+VCHEQ+VCART+VCONV+vmist 9999999.99]
ULTPAG
ULTPAG[repl("-",40)]
ULTPAG Vda.Mista.Dinhei:[VPMDINH 9999999.99]
ULTPAG Vda.Mista.Cheque:[VPMCHEQ 9999999.99]
ULTPAG Vda.Mista.Cartao:[VPMCART 9999999.99]
ULTPAG Vda.Mista.Conven:[VPMCONV 9999999.99]
ULTPAG Vda.Mst CA/FP/EP:[VPMCARN 9999999.99]
ULTPAG *Total Vda.Mista:[Vmist 9999999.99]
FILTROIMP abs((vpmdinh+vpmcheq+vpmcart+vpmconv+vpmcarn)-vmist)>0.1
ULTPAG*Diferenca Parcelas:[abs(vpmdinh+vpmcheq+vpmcart+vpmconv+vpmcarn-vmist) 9999999.99]
ULTPAG[repl("-",40)]
ULTPAG
ULTPAG Transferencias..:[VTRANSF 9999999.99] ([nven6 9999]Cupons)
ULTPAG Cancelamentos...:[VCANC 9999999.99] ([ncanc 9999]Cupons)
ULTPAG Diferenca Trocas:[VDEV 9999999.99] ([ndev 9999]Cupons)
ULTPAG Vendas Alteradas:[VALT 9999999.99] ([nalt 9999]Cupons)
ULTPAG    (V.Medio Cheq:[if(nven2>0,VCHEQ/NVEN2,0) 99999.99])
ULTPAG    (V.Medio Cart:[if(nven3>0,VCART/NVEN3,0) 99999.99])
ULTPAG    (V.Medio Conv:[if(nven4>0,VCONV/NVEN4,0) 99999.99])
ULTPAG
ULTPAGSangrias/Pagtos. Avulsos......:[vpag_caixa 9999999.99]
ULTPAG  ([npag_caixa 9999] lancamentos)
ULTPAGSuprimentos/Quit./Rec.Avulsos.:[vrec_caixa 9999999.99]
ULTPAG  ([nrec_caixa 9999] lancamentos)

VARIAVEL zcab0=if(z_concilia="S"," RECALCULO REINFORMAD DifFINAL","")
VARIAVEL zcab1=if(z_concilia="S","|=========|=========|=========","")

ULTPAG [str(VcrDINH,9,2)]
ULTPAG**DINHEIRO**
ULTPAG=========|=========|=========|=========|
ULTPAGFundo Cxa|[str(fdinh,9,2)]|   Venda |[str(VDINH+VPMDINH,9,2)]|
ULTPAGQuit/Rec |[str(VcrDINH,9,2)]| Sangrias|[str(0-(VcpDINH+zvpag_caixa),9,2)]|
ULTPAGTot.Calc |[str(z_cdinh,9,2)]| Tot.Inf.|[str(ViDINH,9,2)]|
ULTPAGDif.Cxa. |[str(ZD_DINH,9,2)]|
ULTPAG=======================================|
ULTPAG**CHEQUE**
ULTPAG=========|=========|=========|=========|
ULTPAGFundo Cxa|[str(fcheq,9,2)]|   Venda |[str(VCHEQ+VPMCHEQ,9,2)]|
ULTPAGQuit/Rec |[str(VcrCHEQ,9,2)]| Sangrias|[str(0-VcpCHEQ,9,2)]|
ULTPAGTot.Calc |[str(z_ccheq,9,2)]| Tot.Inf.|[str(ViCHEQ,9,2)]|
ULTPAGDif.Cxa. |[str(ZD_CHEQ,9,2)]|
ULTPAG=======================================|
ULTPAG**CARTAO**
ULTPAG=========|=========|=========|=========|
ULTPAGFundo Cxa|[str(fcart,9,2)]|   Venda |[str(VCART+VPMCART,9,2)]|
ULTPAGQuit/Rec |[str(VcrCART,9,2)]| Sangrias|[str(0-VcpCART,9,2)]|
ULTPAGTot.Calc |[str(z_ccart,9,2)]| Tot.Inf.|[str(ViCART,9,2)]|
ULTPAGDif.Cxa. |[str(ZD_CART,9,2)]|
ULTPAG=======================================|
ULTPAG**CONVENIO**
ULTPAG=========|=========|=========|=========|
ULTPAGFundo Cxa|[str(fconv,9,2)]|   Venda |[str(VCONV+VPMCONV,9,2)]|
ULTPAGQuit/Rec |[str(VcrCONV,9,2)]| Sangrias|[str(0-VcpCONV,9,2)]|
ULTPAGTot.Calc |[str(z_cconv,9,2)]| Tot.Inf.|[str(ViCONV,9,2)]|
ULTPAGDif.Cxa. |[str(ZD_CONV,9,2)]|
ULTPAG=======================================|
ULTPAG**TOTAIS**
ULTPAG=========|=========|=========|=========|
ULTPAGFundo Cxa|[str(fdinh+fcheq+fcart+fconv+fcarn,9,2)]|   Venda |[str(VDINH+VCHEQ+VCART+VCONV+vmist,9,2)]|
ULTPAGQuit/Rec |[str(vrec_caixa,9,2)]| Sangrias|[str(0-vpag_caixa,9,2)]|
ULTPAGTot.Calc |[str(z_cdinh+z_ccheq+z_ccart+z_cconv+z_ccarn,9,2)]| Tot.Inf.|[str(ViDINH+ViCHEQ+ViCART+ViCONV+ViCARN,9,2)]|
ULTPAGDif.Cxa. |[str(ZD_DINH+ZD_CHEQ+ZD_CART+ZD_CONV+ZD_CARN,9,2)]|
ULTPAG=======================================|

COMANDO DEPOIS Z_AAMM = SUBSTR(DTOS(DATAOPEN),3,4)
COMANDO DEPOIS Z_FAT  = "FAT"+Z_AAMM
COMANDO DEPOIS Z_FATP = "FATP"+Z_AAMM
