Livro Diario
Enviado: 27 Jun 2012 09:23
Senhores,
Gostaria de ajuda, nao estou conseguindo, colocar a soma por dia no relatorio do livro diario:
Gostaria de ajuda, nao estou conseguindo, colocar a soma por dia no relatorio do livro diario:
Código: Selecionar todos
FUNCTION Imprndiario(Arg1)
LOCAL oPrn, oFont, oTit1, oTit2, nCounter, mRecn, nPag, mLarg, oTot,;
oCadDl4, oESdl5, mTtDsc, mTtTot, mTtBas, mTtIcm, SubKg, TotKg, SobVr, TotVr
local oCadDl2, lOk
local nRecNo := RecNo()
STORE 0 TO mTtDsc, mTtTot, mTtBas, mTtIcm, SubKg, TotKg, SobVr, TotVr
nPag=0
nDiario=SPACE(5)
* AARQ(29,.F.)
SELECT LANCA
DEFINE DIALOG oDlgMan ; // Defini janela p/ interação com o cliente
FROM 5,5 TO 20,50 TITLE "Livro Diário"
@ 01, 01 Say "Nº do Diario"
@ 02, 01 Say "Folha"
@ 01,08 Get nDiario OF oDlgMan PICTURE "@"
@ 02,08 Get nPag OF oDlgMan PICTURE "99999"
@90,35 BUTTON oCt04 PROMPT "Imprimir" SIZE 40, 14 PIXEL OF oDlgMan ACTION ( lSave := .T. , oDlgMan:End())
@90,79 BUTTON oCt05 PROMPT "Retonar" SIZE 40, 14 PIXEL OF oDlgMan ACTION ( lSave := .F. , oDlgMan:End())
ACTIVATE DIALOG oDlgMan CENTERED
PRINTER oPrn NAME OemToAnsi("RELATORIO NOTAS FISCAIS ENTRADAS") PREVIEW
DEFINE FONT oFont NAME "Arial" SIZE 0, -07 OF oPrn
DEFINE FONT oFon2 NAME "Arial" SIZE 0, -08 OF oPrn
DEFINE FONT oFon3 NAME "Arial" SIZE 0, -12 BOLD OF oPrn
DEFINE FONT oFon4 NAME "Courier New" SIZE 0, -10 OF oPrn
DEFINE PEN oPen COLOR CLR_BLACK WIDTH (oFont:nHeight/10)
mRcNo := RECNO()
nRow := 03
oTit2 :="________________________________________ _______ __________ ____________ _____ __________"
*nPag := 02
mLarg := oFont:nHeight
nTab := oPrn:nHorzRes()/15
nSpc := (oPrn:nHorzRes()-(2*nTab)) / 90
nCls := {nTab+(nSpc*01),;
nTab+(nSpc*35),;
nTab+(nSpc*43),;
nTab+(nSpc*68),;
nTab+(nSpc*07.50) }
CursorWait()
oPrn:StartPage()
*oPrn:Box(nRow*mLarg, nTab, oPrn:nVertRes()-(06*mLarg), oPrn:nHorzRes()-nTab, oPen )
oPrn:Line(nRow*mLarg,nTab, nRow*mLarg,oPrn:nHorzRes()-nTab, oPen )
nRow++
oPrn:Say(nRow*mLarg, nCls[1], ("JC - JUDIVAN CONTABILIDADE"), oFon4 )
nRow+=2
oPrn:Say(nRow*mLarg, nCls[1],"EMPRESA:"+" "+(razao), oFont )
nRow+=1.50
oPrn:Say(nRow*mLarg, nCls[1], "LIVRO DIARIO Nº.: "+(nDiario)+" PERIODO: "+(M->REF_ALFA)+" FOLHA: "+STRZERO(nPag,6), oFon4 )
nRow+=2
oPrn:Line(nRow*mLarg,nTab, nRow*mLarg,oPrn:nHorzRes()-nTab, oPen )
nRow++
oPrn:Say(nRow*mLarg, nCls[1], OEMTOANSI(" Dia Conta Nomenclatura Valor Historico"), oFon2 )
nRow+=1.50
oPrn:Line(nRow*mLarg,nTab, nRow*mLarg,oPrn:nHorzRes()-nTab, oPen )
nRow+=2
wl=0
nSubQtd := 0
nSubVal := 0
nTotVal := 0
WTOTAL_D=0.00
WTOTAL_C=0.00
WDIA_D=0.00
WDIA_C=0.00
DbSetOrder( 2 )
Goto Top
While (!EOF())
WCODIGO=CODIGO
WCONTA=CONTA
WPERIODO=PERIODO
WSINAL=S
WHIST1=Trim(HIST1)
WHIST2=Trim(HIST2)
WHIST3=Trim(HIST3)
WHIST4=Trim(HIST4)
WVALOR=VALOR
If WSINAL="D"
oPrn:Say(nRow*mLarg, nCls[1],;
+ALLTRIM(lanca->data)+" "+;
ALLTRIM(lanca->codigo)+" "+;
ALLTRIM(lanca->conta),oFont )
oPrn:Say(nRow*mLarg, nCls[2],;
Trans(lanca->valor,"@E 9,999,999.99"),oFont )
WTOTAL_D=WTOTAL_D+VALOR
Endif
If S="C"
oPrn:Say(nRow*mLarg, nCls[1],;
+ALLTRIM(lanca->data)+" "+;
ALLTRIM(lanca->codigo)+" "+;
ALLTRIM(lanca->conta),oFont )
oPrn:Say(nRow*mLarg, nCls[2],;
Trans(lanca->valor,"@E 9,999,999.99"),oFont )
WTOTAL_C=WTOTAL_C+VALOR
Endif
If Len(HIST1)<>0
*nRow+=1
oPrn:Say(nRow*mLarg, nCls[3],;
ALLTRIM(lanca->hist1),oFont )
Endif
If Len(HIST2)<>0
nRow+=1
oPrn:Say(nRow*mLarg, nCls[3],;
ALLTRIM(lanca->hist2),oFont )
Endif
If len(HIST3)<>0
nRow+=1
oPrn:Say(nRow*mLarg, nCls[3],;
ALLTRIM(lanca->hist3),oFont )
Endif
If Len(HIST4)<>0
nRow+=1
oPrn:Say(nRow*mLarg, nCls[3],;
ALLTRIM(lanca->hist4),oFont )
Endif
WDIA_C=WDIA_C+VALOR
WDIA_D=WDIA_D+VALOR
FOR nCol := 0 TO 89
oPrn:Say(nRow*mLarg, nTab+(nSpc*nCol), "-", oFont)
NEXT
nRow++
IF (nRow*mLarg) >= ( oPrn:nVertRes()-(8*mLarg) )
oPrn:EndPage()
oPrn:StartPage()
nPag ++
nRow := 3
oPrn:Line(nRow*mLarg,nTab, nRow*mLarg,oPrn:nHorzRes()-nTab, oPen )
nRow++
oPrn:Say(nRow*mLarg, nCls[1], ("JC - JUDIVAN CONTABILIDADE"), oFon4 )
nRow+=2
oPrn:Say(nRow*mLarg, nCls[1],"EMPRESA:"+" "+(razao), oFont )
nRow+=1.50
oPrn:Say(nRow*mLarg, nCls[1], "LIVRO DIARIO Nº.: "+(nDiario)+" PERIODO: "+(M->REF_ALFA)+" FOLHA: "+STRZERO(nPag,6), oFon4 )
nRow+=2
oPrn:Line(nRow*mLarg,nTab, nRow*mLarg,oPrn:nHorzRes()-nTab, oPen )
nRow++
oPrn:Say(nRow*mLarg, nCls[1], OEMTOANSI(" Dia Conta Nomenclatura Valor Historico"), oFon2 )
nRow+=1.50
oPrn:Line(nRow*mLarg,nTab, nRow*mLarg,oPrn:nHorzRes()-nTab, oPen )
nRow+=2
ENDIF
SKIP
END
oPrn:Line(nRow*mLarg,nTab, nRow*mLarg,oPrn:nHorzRes()-nTab, oPen )
nRow++
oPrn:Say(nRow*mLarg, nCls[1],;
"TOTAL GERAL A DEBITO==>"+;
" "+TRANS(WTOTAL_D,"@E 9,999,999.99"),;
oFont )
oPrn:Say(nRow*mLarg, nCls[2],;
+"TOTAL GERAL A CREDITO==>"+;
" "+TRANS(WTOTAL_C,"@E 9,999,999.99"),;
oFont )
nRow++
nRow+=1
oPrn:Line(nRow*mLarg,nTab, nRow*mLarg,oPrn:nHorzRes()-nTab, oPen )
oPrn:EndPage()
oPrn:Preview()
oFont:End()
RETURN .F.