'Nome       : CTADIA.STD
'Tipo       : STD
'Data       : 2007/06/26
'Versao     : 3.0
'Descricao  : Listagem de Diario de Movimentos

'==============================================================================
'#VER - Historia de modificacoes
'==============================================================================
'- Versao : 3.0a 2006/09/26 --------------------------------------------------
'Correccao estetica

'- Versao : 3.0  2006/06/07 --------------------------------------------------
'Listagem para EXCEL

'- Versao : 2.0f 2001/09/10 --------------------------------------------------
'Estava a listar a personalização na ultima folha 2 vezes

'- Versao : 2.0d 2001/03/08 --------------------------------------------------
'Correcoes na impressao dos totais

'- Versao : 2.0c 2001/01/23 --------------------------------------------------
'Alteracao nos ficheiros a usar nas inclusoes

'- Versao : 2.0b 2000/12/20 --------------------------------------------------
Nao apresentava o numero da pagina e a data

'- Versao : 2.0a 2000/12/14 --------------------------------------------------
'Impressao no formato grafico
'Alterados radicais das funcoes para listagem

'- Versao : 2.0  2000/02/15 --------------------------------------------------
'usar decimais da moeda da empresa

'- Versao : 1.0a 2000/02/09 --------------------------------------------------
'Indicar tipo de diario no diario ordenado por documento

'- Versao : 1.0  1999/02/18 --------------------------------------------------
'Versao base


'==============================================================================
#DEF - Definicao global do documento
'==============================================================================
Caracteres invalidos             [CarInv]=#
##


'==============================================================================
#ESP - Campos especificos
'==============================================================================
'Especifico 1                      [EspOp1]=Opcao 1
'Especifico 2                      [EspOp2]=Opcao 2
'Limites a listar                  [EspLim]=?
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=DiaCt
Nome                       [DocNom]=DiarCt,Por conta

'formato
Saida/Impressora           [DocSai]=1
Linhas por pagina          [DocLpg]=50
Colunas por linha          [DocCol]=132
Formato do papel           [DocPap]=72L
Ajustar pagina             [DocApg]=0

'funcoes de listagem
Listar cabecalho            [FxCAB]=TX_Cab
Listar linhas               [FxLIN]=TX_Ct; Tot,2; Rza,2
Listar fim                  [FxFIM]=TX_Fim
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=DiaCt
Nome                       [DocNom]=DiaCt_XLS,por Conta (EXCEL)

'formato
Saida/Impressora           [DocPrt]=NULA
Linhas por pagina          [DocLpg]=50
Colunas por linha          [DocCol]=80
Formato do papel           [DocPap]=72L
Ajustar pagina             [DocApg]=0
Especifico do documento    [DocEsp]=

'funcoes de listagem
Base para documento         [FxDOC]=XlsDiaCt
Listar cabecalho            [FxCAB]=XlsDiaCt_Cab
Listar linhas               [FxLIN]=XlsDiaCt_Lin,0; Tot,0; Rza,0
Listar fim                  [FxFIM]=XlsDiaCt_Fim

Matriz auxiliar            [DocMat]=CtaDia.xls
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=DiaDoc
Nome                       [DocNom]=DiarNdo,Por Documento

'formato
Saida/Impressora           [DocSai]=1
Linhas por pagina          [DocLpg]=50
Colunas por linha          [DocCol]=132
Formato do papel           [DocPap]=72L
Ajustar pagina             [DocApg]=0

'funcoes de listagem
Listar cabecalho            [FxCAB]=TX_Cab
Listar linhas               [FxLIN]=TX_Ndo; Tot,2; TdoTit; Tdo,2
Listar fim                  [FxFIM]=TX_Fim
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=DiaDoc
Nome                       [DocNom]=DiaDoc_XLS,por Documento (EXCEL)

'formato
Saida/Impressora           [DocPrt]=NULA
Linhas por pagina          [DocLpg]=50
Colunas por linha          [DocCol]=80
Formato do papel           [DocPap]=72L
Ajustar pagina             [DocApg]=0
Especifico do documento    [DocEsp]=

'funcoes de listagem
Base para documento         [FxDOC]=XlsDiaDoc
Listar cabecalho            [FxCAB]=XlsDiaDoc_Cab
Listar linhas               [FxLIN]=XlsDiaDoc_Lin,0; Tot,0; TdoTit,0; Tdo,0
Listar fim                  [FxFIM]=XlsDiaDoc_Fim

Matriz auxiliar            [DocMat]=CtaDiaD.xls
##


'-(Impressao modo grafico)------------------------------------------------------
'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=DiaCt
Nome                       [DocNom]=DiarCt_G,Por conta

'formato
Saida/Impressora           [DocPrt]=PAG_W
Linhas por pagina          [DocLpg]=55
Colunas por linha          [DocCol]=132
Formato do papel           [DocPap]=72L
Ajustar pagina             [DocApg]=0

'funcoes de listagem
Listar cabecalho            [FxCAB]=PW_Cab
Listar linhas               [FxLIN]=PW_Ct; Tot,2; Rza,1
Listar fim                  [FxFIM]=PW_Fim
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=DiaDoc
Nome                       [DocNom]=DiarNdo_G,Por Documento

'formato
Saida/Impressora           [DocPrt]=PAG_W
Linhas por pagina          [DocLpg]=56
Colunas por linha          [DocCol]=132
Formato do papel           [DocPap]=72L
Ajustar pagina             [DocApg]=0

'funcoes de listagem
Listar cabecalho            [FxCAB]=PW_Cab
Listar linhas               [FxLIN]=PW_Ndo; Tot,2; TdoTit; Tdo,2
Listar fim                  [FxFIM]=PW_Fim
##


'==============================================================================
#VAR - Definicao de variaveis
'==============================================================================
'MemTxt(1)  - Titulo

'valores para a linha
'MemNum(21) - Valor debito contabilidade geral
'MemNum(22) - valor credito contabilidade geral
'MemNum(23) - valor a debito contabilidade analitica
'MemNum(24) - valor a credito contabilidade analitica

Sub-total
'MemTxt$(2) - razao anterior/conta/diario/numero documento
'MemNum(31) - debito contabilidade geral
'MemNum(32) - credito contabilidade geral
'MemNum(33) - debito contabilidade analitica
'MemNum(34) - credito contabilidade analitica

'Total geral 
'MemNum(41) - total a debito contabilidade geral
'MemNum(42) - total a credito contabilidade geral
'MemNum(43) - total a debito da analitica
'MemNum(44) - total a credito da analitica


Pag      = Doc_CntPag
DataExt  = FrmVal$(Sig_DtHoje,45,0)
Titulo   = TxTit$("TT=16CPI, LD, PT=66C, TL=16CPI",Memtxt$(1))

Dtl      = Left$(FrmVal$(Cta_Mov_Dtl,42,0),8)
Ctn      = Cta_Mov_Ct$
Ndoc     = FrmNdo$("06",Cta_Mov_Tdoc$,Cta_Mov_Ndoc$)
Dtv      = left$(FrmVal$(Cta_Mov_Dtv,42,0),8)
Descr    = Cta_Mov_Descr$

'Linha de Movimento
DebGer   = FrmMoe$("",19,MemNum(21))
CreGer   = FrmMoe$("",19,MemNum(22))
DebAnl   = FrmMoe$("",19,MemNum(23))
CreAnl   = FrmMoe$("",19,MemNum(24))

'Linha de subtotal
SCt      = MemTxt$(2)
SRza     = MemTxt$(2)
STdo     = MemTxt$(2)
SDiaIde  = MemTxt$(2)+" - "+TdoNome$(1,MemTxt$(2))
SDiaTot  = MemTxt$(2)
SDebGer  = FrmMoe$("",19,MemNum(31))
SCreGer  = FrmMoe$("",19,MemNum(32))
SDebAnl  = FrmMoe$("",19,MemNum(33))
SCreAnl  = FrmMoe$("",19,MemNum(34))

'Linha de Total geral
TDebGer  = FrmMoe$("",19,Total(DebGer))
TCreGer  = FrmMoe$("",19,Total(CreGer))
TDebAnl  = FrmMoe$("",19,Total(DebAnl))
TCreAnl  = FrmMoe$("",19,Total(CreAnl))

SCGD     = 0                         'contabilidade geral - debitos
SCGC     = 0                         'contabilidade geral - creditos
SCAD     = 0                         'contabilidade analitica - debitos
SCAC     = 0                         'contabilidade analitica - creditos
##


'==============================================================================
#INC - Variaveis comuns
'==============================================================================
Variaveis  comuns                 =[SIG_Dir.Div],LsComVar.std
##


'==============================================================================
#PGM - Programa/Funcoes
'==============================================================================
SUB Lst_Ajt 'linha de ajuste
end sub


Sub TX_Cab 'cabecalho da pagina
FxDiv LstIde,16CPI,0
?@Titulo                                                                                                                            #
?Data: @DataExt                                                                                                        Folha No: @Pag#
?====================================================================================================================================
?    Data                          Data                              Contabilidade Geral               Contabilidade Analitica
?   Movim.   No Conta  No Doc.    Vencim.    Descricao           Debito              Credito         Debito              Credito
?====================================================================================================================================
end sub


Sub TX_Fim 'total geral
?====================================================================================================================================
?    TOTAL DOS MOVIMENTOS                                @TDebGer           @TCreGer           @TDebAnl           @TCreAnl          #
?====================================================================================================================================
'Print PrtCmd$("[SP]");
FxDiv LstPer,SP
end sub


Sub TX_FimAjt 'subtotal por pagina
?====================================================================================================================================
? SUBTOTAL DOS MOVIMENTOS                                @TDebGer           @TCreGer           @TDebAnl           @TCreAnl          #
?====================================================================================================================================
'Print PrtCmd$("[SP]");
FxDiv LstPer,SP
end sub


Sub TX_Ct 'linha normal
?@Dtl      @Ctn        @Ndoc     @Dtv       @Descr       @DebGer            @CreGer            @DebAnl            @CreAnl           #
end sub


Sub TX_CtTot 'total por conta
?    Total da Conta : @SCt                               @SDebGer           @SCreGer           @SDebAnl           @SCreAnl          #
?
end sub


Sub TX_CtRza 'total por razao
?    Total do Razao : @SRza                              @SDebGer           @SCreGer           @SDebAnl           @SCreAnl          #
?
end sub


'- Por documento -------------------------------------------------------------------------
Sub TX_Ndo 'linha normal
?@Dtl      @Ctn        @Ndoc     @Dtv       @Descr       @DebGer            @CreGer            @DebAnl            @CreAnl           #
end sub


Sub TX_NdoTot 'total por documento
?    Total de documento  :                               @SDebGer           @SCreGer           @SDebAnl           @SCreAnl          #
?
end sub


Sub TX_NdoTdoTit 'titulo do diario
?    Diario : @SDiaIde                                            #
end sub


Sub TX_NdoTdo 'total por diario
?    Total de Diario : @SDiaTot                          @SDebGer           @SCreGer           @SDebAnl           @SCreAnl          #
?
end sub


'=============================================================================
' Impressao no formato grafico
'=============================================================================
SUB FxIni 'funcao de inicializacao
Call SigLstIni
End sub

Sub PW_Cab 'cabecalho da pagina
Call SigLstCab

MargemD=190

'titulo 1ª linha
T1Col1=  2
T1Col2= 50
T1Col3= 98
T1Col4=150

'titulo 2ª linha
T2Col1=  0
T2Col2= 17
T2Col3= 35
T2Col4= 50
T2Col5= 65
T2Col6= 96
T2Col7=118
T2Col8=149
T2Col9=175

'posicao linhas de titulo
Lin1=2                            	'linha 1
Lin2=5					'linha2

PrWIN COR_T,  CorTitLst                 'cor de titulo
PrWIN FON  ,   9,   1                   'activar fonte
PrWin Ajt_B, Margem, 26

PrWIN FON,"BOLD+"
PrWIN TX_N,T1Col1,Lin1,"Data"
PrWIN TX_N,T2Col1,Lin2,"Movim."
PrWIN TX_N,T2Col2,Lin2,"Conta"
PrWIN TX_N,T2Col3,Lin2,"Doc."
PrWIN TX_N,T1Col2,Lin1,"Data"
PrWIN TX_N,T2Col4,Lin2,"Venc."
PrWIN TX_N,T2Col5,Lin2,"Descrição"
PrWIN TX_N,T1Col3,Lin1,"Contabilidade Geral"
PrWIN TX_N,T2Col6,Lin2,"Débito"
PrWIN TX_N,T2Col7,Lin2,"Crédito"
PrWIN TX_N,T1Col4,Lin1,"Contabilidade Analítica"
PrWIN TX_N,T2Col8,Lin2,"Débito"
PrWIN TX_N,T2Col9,Lin2,"Crédito"
PrWIN FON,"BOLD-"

PrWIN COR_T,CorTraco                            'cor de linhas
PrWIN GR_LI, 0,  0, MargemD, 0               	'linha
PrWIN GR_LI, 0, 10, MargemD, 10               	'linha

PrWIN FON  ,   8,   1                           'activar fonte
PrWIN COR_T,CorLin                              'cor de linhas
InicioEscrita=33
end sub


Sub PW_Fim 'total geral
txtit$="Total dos movimentos"
Call PW_FimListagem
'Call SigLstRod
'PrWin FP
end sub


Sub PW_FimAjt 'subtotal por pagina
TxTit$="Sub-total dos movimentos"
Call PW_FimListagem
end sub


Sub PW_FimListagem
FCol1 =  1
FCol2 = 13
FCol3 = 28
FCol4 = 48
FCol5 = 60
FCol6 = 80
FCol7 =104
FCol8 =132
FCol9 =160
FCol10=MargemD

PrWin FON,"BOLD+"
PrWin FON,"ITAL+"

PrWIN COR_T,     CorTraco                       'cor traco
PrWIN AJT_B,Margem,265                 		'posicao base
PrWIN GR_LI,     0,  0, MargemD, 0            	'linha
PrWIN AJT_B,Margem,267                 		'posicao base
PrWIN COR_T,     CorTotGer                      'cor azul
PrWIN FON,       8,  1                          'activar fonte
PrWIN TX_N,  FCol2,  0,   TxTit$
PrWIN TX_NP, FCol6,  0,"N",@TDebGer
PrWIN TX_NP, FCol7,  0,"N",@TCreGer
PrWIN TX_NP, FCol8,  0,"N",@TDebAnl
PrWIN TX_NP, FCol9,  0,"N",@TCreAnl
PrWIN GR_LI,     0,  5, MargemD,5            	'linha
call SigLstRod
PrWin FP

PrWin FON,"BOLD+"
PrWin FON,"ITAL+"
end sub


'- Por conta -----------------------------------------------------------------------------
Sub PW_Ct 'linha normal
LCol1 =  1
LCol2 = 13
LCol3 = 28
LCol4 = 48
LCol5 = 60
LCol6 = 80
LCol7 =104
LCol8 =132
LCol9 =160
LCol10=MargemD

PrWIN AJT_B,  Margem, InicioEscrita+Doc_CntLin*4          	'posicao base
PrWIN TX_N,    LCol1,0,@Dtl
PrWIN TX_N,    LCol2,0,@Ctn
PrWIN TX_NP,   LCol3,0,"N",@Ndoc
PrWIN TX_N,    LCol4,0,@Dtv
PrWIN TX_N,    LCol5,0,@Descr
PrWIN TX_NP,   LCol6,0,"N",@DebGer
PrWIN TX_NP,   LCol7,0,"N",@CreGer
PrWIN TX_NP,   LCol8,0,"N",@DebAnl
PrWIN TX_NP,   LCol9,0,"N",@CreAnl
end sub


Sub PW_CtTot 'total por conta
PrWin FON,"BOLD+"
PrWin FON,"ITAL+"
PrWIN COR_T,     CorTitLst                         'cor total geral
'PrWIN AJT_B,  Margem, InicioEscrita+Doc_CntLin*4   'posicao base
PrWIN AJT_B,  Margem, 33+Doc_CntLin*4   'posicao base
PrWIN TX_N,     LCol2,0,"Total da conta :"
PrWIN TX_N,     LCol4,0,@Sct

PrWIN COR_T,CorLin                                 'cor de linhas
PrWIN TX_NP,    LCol6,0,"N",@SDebGer
PrWIN TX_NP,    LCol7,0,"N",@SCreGer
PrWIN TX_NP,    LCol8,0,"N",@SDebAnl
PrWIN TX_NP,    LCol9,0,"N",@SCreAnl
PrWin FON,"BOLD-"
PrWin FON,"ITAL-"
tmp=CntLin("INC",1)                                'contar linha
End sub


Sub PW_CtRza 'total por razao
PrWin FON,"BOLD+"
PrWin FON,"ITAL+"

PrWIN COR_T,     CorTitLst                         'cor total geral
'PrWIN AJT_B,  Margem, InicioEscrita+Doc_CntLin*4   'posicao base
PrWIN AJT_B,  Margem, 28+Doc_CntLin*4   'posicao base
PrWIN TX_N,    LCol2,0,"Total do Razão:"
PrWIN TX_N,    LCol4,0,@SRza
PrWIN COR_T,CorLin                                 'cor de linhas
PrWIN TX_NP,   LCol6,0,"N",@SDebGer
PrWIN TX_NP,   LCol7,0,"N",@SCreGer
PrWIN TX_NP,   LCol8,0,"N",@SDebAnl
PrWIN TX_NP,   LCol9,0,"N",@SCreAnl

PrWin FON,"BOLD-"
PrWin FON,"ITAL-"
end sub



'- Por documento -------------------------------------------------------------------------
Sub PW_Ndo 'linha normal
Call Pw_Ct
end sub


Sub PW_NdoTot 'total por documento
PrWin FON,"BOLD+"
PrWin FON,"ITAL+"

PrWIN COR_T,     CorTitLst                      'cor total geral
PrWIN AJT_B,  Margem, InicioEscrita+Doc_CntLin*4          	'posicao base
PrWIN TX_N,    LCol2,0,"Total de Documento :"
PrWIN COR_T,CorLin                              'cor de linhas
PrWIN TX_NP,   LCol6,0,"N",@SDebGer
PrWIN TX_NP,   LCol7,0,"N",@SCreGer
PrWIN TX_NP,   LCol8,0,"N",@SDebAnl
PrWIN TX_NP,   LCol9,0,"N",@SCreAnl

PrWin FON,"BOLD-"
PrWin FON,"ITAL-"
end sub


Sub PW_NdoTdoTit 'titulo do diario
PrWin FON,"BOLD+"
PrWin FON,"ITAL+"

PrWIN AJT_B,  Margem, InicioEscrita+Doc_CntLin*4          	'posicao base
PrWIN COR_T,     CorTitLst                      'cor total geral
PrWIN TX_N,    LCol2,0,"Diário :"
PrWIN TX_N,    LCol4,0,@SDiaIde
PrWIN COR_T,CorLin                              'cor de linhas

PrWin FON,"BOLD-"
PrWin FON,"ITAL-"
end sub


Sub PW_NdoTdo 'total por diario
PrWin FON,"BOLD+"
PrWin FON,"ITAL+"

PrWIN COR_T,     CorTitLst                      'cor total geral
PrWIN AJT_B,  Margem, InicioEscrita+Doc_CntLin*4          	'posicao base
PrWIN TX_N,    LCol2,0,"Total de Diário :"
PrWIN TX_N,    LCol4,0,@SDiaTot
PrWIN COR_T,CorLin                              'cor de linhas
PrWIN TX_NP,   LCol6,0,"N",@SDebGer
PrWIN TX_NP,   LCol7,0,"N",@SCreGer
PrWIN TX_NP,   LCol8,0,"N",@SDebAnl
PrWIN TX_NP,   LCol9,0,"N",@SCreAnl

PrWin FON,"BOLD-"
PrWin FON,"ITAL-"
tmp=CntLin("INC",1)                                'contar linha
end sub


'=============================================================================
' XLS - Funcoes comuns
'=============================================================================
Sub Xls_DocIni 'inicializar documento
dfi$ = FicEmp$("EMP","Ext","dExcel",cmo$)          'directorio de documentos EXCEL
nfi$ = "RND:CtaDia.xls"                            'nome do ficheiro
cmo$ = SigCmoCur$("MIX")                           'modulo corrente
ficDoc$ = FicTmp$(dfi$, nfi$)                      'ficheiro para documento
res = DirCri("D", dfi$)                            'criar directorio para documento

xlsMatNom$ = DocOpc$("DocMat")                     'nome do ficheiro matriz
xlsMat$    = DocOpc$("DocMat+SBT")                 'endereco do ficheiro matriz

res = FicCop(xlsMat$, ficDoc$)                     'criar ficheiro (copia de matriz)
res = XlsPrp(0)                                    'preparar EXCEL
res = XlsDocLer(ficDoc$)                           'ler ficheiro

'res = XlsDocCri("")                                'criar documento
end sub


Sub Xls_DocFim 'terminar documento
res = XlsDocDir$("A", dfi$)                        'activar directorio
res = XlsDocGrv(ficDoc$)                           'gravar ficheiro

res = XlsVer(1)                                    'mostrar EXCEL - maximizado
res = XlsLib(0)                                    'libertar EXCEL
end sub


Sub Xls_DocCab 'cabecalho do documento
empNum$ = Emp_Inf_Cod$                             'numero da empresa
empNom$ = Emp_Inf_Nome$                            'nome da empresa
lstTit$ = MemTxt$(1)                               'titulo da listagem
lstTip$ = MemTxt$(2)                               'tipo da listagem
lstDt$  = FrmDt$("EXT", Sig_DtHoje)                'data para listagem

res = XlsIdeLst("Emp_Num", empNum$)                'numero da empresa
res = XlsIdeLst("Emp_Nome", empNom$)               'nome da empresa
res = XlsIdeLst("Lst_Tit", lstTit$)                'titulo da listagem
res = XlsIdeLst("Lst_Tipo", lstTip$)               'tipo da listagem
res = XlsIdeLst("Lst_Data", lstDt$)                'data
end sub


Sub Xls_LinInc 'incrementar linha
xlsLsa = xlsLin                                    'linha de saida
res = XlsLinIns(xlsLin, 1)                         'juntar linha

'seguinte
xlsLin = xlsLin + 1                                'contar linha
end sub


Sub Xls_LinIni 'iniciar linhas
res = XlsIdePsq("PO_BAS")                          'pesquisar posicao base
linBav = XlsIdePsqRes("L")                         'linha da posicao base

xlsLba = linBav                                    'linha base
xlsLin = linBav + 1                                'contador de linhas usadas
end sub


Sub Xls_LinFim 'fim de linhas
res = XlsLinEli(xlsLin, 1)                         'eliminar linha - ultima
res = XlsLinEli(xlsLba, 1)                         'eliminar linha - primeira

res = XlsIdePsq("PO_FIM")                          'pesquisar posicao final
linFim = XlsIdePsqRes("L")                         'linha da posicao final
end sub


'=============================================================================
' Diário de Movimentos por Conta (EXCEL)
'=============================================================================
Sub XlsDiaCt_DocIni 'inicializar documento
call Xls_DocIni                                    'inicializar documento
call XlsDiaCt_Prep                                'preparar
end sub


Sub XlsDiaCt_DocFim 'terminar documento
call Xls_DocFim                                    'terminar/mostrar documento
end sub


Sub XlsDiaCt_Prep 'preparar para listar
res = XlsWks("Valores")                            'activar worksheet
call Xls_DocCab                                    'cabecalho do documento
res = XlsIdeLst("Lst_Tit", "")                     'anular titulo da listagem
call Xls_LinIni                                    'iniciar linhas

'definicao das colunas
coDat = 2                                          'data
coCte = 3                                          'conta
coDoc = 4                                          'documento
coDtv = 5                                          'data vencimento
coDes = 6                                          'descricao
coCgd = 7                                          'contabilidade geral - debito
coCgc = 8                                          'contabilidade geral - credito
coCad = 9                                          'contabilidade analitica - debito
coCac =10                                          'contabilidade analitica - credito
end sub


Sub XlsDiaCt_IncLin 'incrementar linha	
call Xls_LinInc                                    'incrementar linha
liUsa =  xlsLsa                                    'linha a usar

zon$= XlsZonNum$("L", liUsa)                       'zona da linha
res = XlsFon(zon$, ",,B-I-")                       'desactivar fonte bold, italico
end sub


Sub XlsDiaCt_Lin 'linha de valores
call XlsDiaCt_IncLin                              'incrementar linha	

'valores a listar
dtm$     = Left$(FrmVal$(Cta_Mov_Dtl,42,0),8)
cte$     = Cta_Mov_Ct$
ndo$     = FrmNdo$("06",Cta_Mov_Tdoc$,Cta_Mov_Ndoc$)
dtv$     = left$(FrmVal$(Cta_Mov_Dtv,42,0),8)
des$     = Cta_Mov_Descr$

'Linha de Movimento
cgd      = MemNum(21)
cgc      = MemNum(22)
cad      = MemNum(23)
cac      = MemNum(24)

'listar
res = XlsLst(liUsa, coDat, dtm$)                   'data movimento
res = XlsLst(liUsa, coCte, cte$)                   'conta
res = XlsLst(liUsa, coDoc, ndo$)                   'documento
res = XlsLst(liUsa, coDtv, dtv$)                   'data vencimento
res = XlsLst(liUsa, coDes, des$)                   'descricao
res = XlsLst(liUsa, coCgd, cgd)                    'contabilidade geral - debito
res = XlsLst(liUsa, coCgc, cgc)                    'contabilidade geral - credito
res = XlsLst(liUsa, coCad, cad)                    'contabilidade analitica - debito
res = XlsLst(liUsa, coCac, cac)                    'contabilidade analitica - credito

'acumular
res = AcmExe("SCGD", cgd)                          'subtotal - contabilidade geral - debitos
res = AcmExe("SCGC", cgc)                          'subtotal - contabilidade geral - creditos
res = AcmExe("SCAD", cad)                          'subtotal - contabilidade analitica - debitos
res = AcmExe("SCAC", cac)                          'subtotal - contabilidade analitica - creditos
end sub


Sub XlsDiaCt_LinTot 'linha de subtotal
call XlsDiaCt_IncLin                              'incrementar linha

'valores a listar
ide$ = "Total da Conta : "+cte$                   'identificacao

scgd  = Total("SCGD", 1)                           'contabilidade geral - debitos
scgc  = Total("SCGC", 1)                           'contabilidade geral - creditos
scad  = Total("SCAD", 1)                           'contabilidade analitica - debitos
scac  = Total("SCAC", 1)                           'contabilidade analitica - creditos

'listar
res = XlsLst(liUsa, coDes, ide$)                   'titulo
res = XlsLst(liUsa, coCgd, scgd)                   'contabilidade geral - debitos
res = XlsLst(liUsa, coCgc, scgc)                   'contabilidade geral - creditos
res = XlsLst(liUsa, coCad, scad)                   'contabilidade analitica - debitos
res = XlsLst(liUsa, coCac, scac)                   'contabilidade analitica - creditos

zon$= XlsZonNum$("L", liUsa)                       'zona da linha
res = XlsFon(zon$, ",,B+I+")                       'activar fonte bold, italico

x=TotLpz(1)                                        'limpar totais

call XlsDiaCt_LinSep                               'linha de separacao
end sub


Sub XlsDiaCt_LinRza 'linha de total do razao
call XlsDiaCt_IncLin                              'incrementar linha

ctr$   = MemTxt$(2)                               'conta do razão
rcgd   = MemNum(31)                               'razao - contabilidade geral debitos
rcgc   = MemNum(32)                               'razao - contabilidade geral creditos
rcad   = MemNum(33)                               'razao - contabilidade analitica debitos 
rcac   = MemNum(34)                               'razao - contabilidade analitica creditos

'valores a listar
ide$ = "Total do Razão : "+ctr$                   'identificacao

'listar
res = XlsLst(liUsa, coDes, ide$)                   'titulo
res = XlsLst(liUsa, coCgd, rcgd)                   'contabilidade geral - debitos
res = XlsLst(liUsa, coCgc, rcgc)                   'contabilidade geral - creditos
res = XlsLst(liUsa, coCad, rcad)                   'contabilidade analitica - debitos
res = XlsLst(liUsa, coCac, rcac)                   'contabilidade analitica - creditos

zon$= XlsZonNum$("L", liUsa)                       'zona da linha
res = XlsFon(zon$, ",,B+I+")                       'activar fonte bold, italico

x=TotLpz(1)                                        'limpar totais

call XlsDiaCt_LinSep                               'linha de separacao
end sub


Sub XlsDiaCt_LinSep 'linha de separacao
call XlsDiaCt_IncLin                              'incrementar linha
end sub


Sub XlsDiaCt_Fim 'terminar
call Xls_LinFim                                    'fim de linhas

'valores a listar
Tcgd   = Total("SCGD", 0)                          'contabilidade geral - debitos
Tcgc   = Total("SCGC", 0)                          'contabilidade geral - creditos
Tcad   = Total("SCAD", 0)                          'contabilidade analitica - debitos
Tcac   = Total("SCAC", 0)                          'contabilidade analitica - creditos

'listar
liUsa = linFim                                     'linha a usar

res = XlsLst(liUsa, coCgd, Tcgd)                   'contabilidade geral - debitos
res = XlsLst(liUsa, coCgc, Tcgc)                   'contabilidade geral - creditos
res = XlsLst(liUsa, coCad, Tcad)                   'contabilidade analitica - debitos
res = XlsLst(liUsa, coCac, Tcac)                   'contabilidade analitica - creditos

'mostrar
res = XlsWksAct("A", 1)                            'activar worksheet
end sub


'=============================================================================
' Diário de Movimentos por Documento (EXCEL)
'=============================================================================
Sub XlsDiaDoc_DocIni 'inicializar documento
call Xls_DocIni                                    'inicializar documento
call XlsDiaDoc_Prep                                'preparar
end sub


Sub XlsDiaDoc_DocFim 'terminar documento
call Xls_DocFim                                    'terminar/mostrar documento
end sub


Sub XlsDiaDoc_Prep 'preparar para listar
res = XlsWks("Valores")                            'activar worksheet
call Xls_DocCab                                    'cabecalho do documento
res = XlsIdeLst("Lst_Tit", "")                     'anular titulo da listagem
call Xls_LinIni                                    'iniciar linhas

'definicao das colunas
coDat = 2                                          'data
coCte = 3                                          'conta
coDoc = 4                                          'documento
coDtv = 5                                          'data vencimento
coDes = 6                                          'descricao
coCgd = 7                                          'contabilidade geral - debito
coCgc = 8                                          'contabilidade geral - credito
coCad = 9                                          'contabilidade analitica - debito
coCac =10                                          'contabilidade analitica - credito
end sub


Sub XlsDiaDoc_IncLin 'incrementar linha	
call Xls_LinInc                                    'incrementar linha
liUsa =  xlsLsa                                    'linha a usar

zon$= XlsZonNum$("L", liUsa)                       'zona da linha
res = XlsFon(zon$, ",,B-I-")                       'desactivar fonte bold, italico
end sub


Sub XlsDiaDoc_Lin 'linha de valores
call XlsDiaDoc_IncLin                              'incrementar linha	

'valores a listar
dtm$     = Left$(FrmVal$(Cta_Mov_Dtl,42,0),8)
cte$     = Cta_Mov_Ct$
ndo$     = FrmNdo$("06",Cta_Mov_Tdoc$,Cta_Mov_Ndoc$)
dtv$     = left$(FrmVal$(Cta_Mov_Dtv,42,0),8)
des$     = Cta_Mov_Descr$

'Linha de Movimento
cgd      = MemNum(21)
cgc      = MemNum(22)
cad      = MemNum(23)
cac      = MemNum(24)

'listar
res = XlsLst(liUsa, coDat, dtm$)                   'data movimento
res = XlsLst(liUsa, coCte, cte$)                   'conta
res = XlsLst(liUsa, coDoc, ndo$)                   'documento
res = XlsLst(liUsa, coDtv, dtv$)                   'data vencimento
res = XlsLst(liUsa, coDes, des$)                   'descricao
res = XlsLst(liUsa, coCgd, cgd)                    'contabilidade geral - debito
res = XlsLst(liUsa, coCgc, cgc)                    'contabilidade geral - credito
res = XlsLst(liUsa, coCad, cad)                    'contabilidade analitica - debito
res = XlsLst(liUsa, coCac, cac)                    'contabilidade analitica - credito

'acumular
res = AcmExe("SCGD", cgd)                          'subtotal - contabilidade geral - debitos
res = AcmExe("SCGC", cgc)                          'subtotal - contabilidade geral - creditos
res = AcmExe("SCAD", cad)                          'subtotal - contabilidade analitica - debitos
res = AcmExe("SCAC", cac)                          'subtotal - contabilidade analitica - creditos
end sub


Sub XlsDiaDoc_LinTdo 'linha de subtotal
call XlsDiaDoc_IncLin                              'incrementar linha

'valores a listar
ide$ = "Total do Diário :"                        'identificacao

scgd  = Total("SCGD", 1)                           'contabilidade geral - debitos
scgc  = Total("SCGC", 1)                           'contabilidade geral - creditos
scad  = Total("SCAD", 1)                           'contabilidade analitica - debitos
scac  = Total("SCAC", 1)                           'contabilidade analitica - creditos

'listar
res = XlsLst(liUsa, coDes, ide$)                   'titulo
res = XlsLst(liUsa, coCgd, scgd)                   'contabilidade geral - debitos
res = XlsLst(liUsa, coCgc, scgc)                   'contabilidade geral - creditos
res = XlsLst(liUsa, coCad, scad)                   'contabilidade analitica - debitos
res = XlsLst(liUsa, coCac, scac)                   'contabilidade analitica - creditos

zon$= XlsZonNum$("L", liUsa)                       'zona da linha
res = XlsFon(zon$, ",,B+I+")                       'activar fonte bold, italico

x=TotLpz(1)                                        'limpar totais

call XlsDiaDoc_LinSep                               'linha de separacao
end sub


Sub XlsDiaDoc_LinTdoTit 'titulo de grupo
call XlsDiaDoc_IncLin                              'incrementar linha

ide$  = "Diário : "+MemTxt$(2)+" - "+TdoNome$(1,MemTxt$(2))

'listar
res = XlsLst(liUsa, coCte, ide$)                   'escrever nome

zon$= XlsZonNum$("L", liUsa)                       'zona da linha
res = XlsFon(zon$, ",,B+I+")                      'activar fonte bold, italico
end sub


Sub XlsDiaDoc_LinSep 'linha de separacao
call XlsDiaDoc_IncLin                              'incrementar linha
end sub


Sub XlsDiaDoc_Fim 'terminar
call Xls_LinFim                                    'fim de linhas

'valores a listar
Tcgd   = Total("SCGD", 0)                          'contabilidade geral - debitos
Tcgc   = Total("SCGC", 0)                          'contabilidade geral - creditos
Tcad   = Total("SCAD", 0)                          'contabilidade analitica - debitos
Tcac   = Total("SCAC", 0)                          'contabilidade analitica - creditos

'listar
liUsa = linFim                                     'linha a usar

res = XlsLst(liUsa, coCgd, Tcgd)                   'contabilidade geral - debitos
res = XlsLst(liUsa, coCgc, Tcgc)                   'contabilidade geral - creditos
res = XlsLst(liUsa, coCad, Tcad)                   'contabilidade analitica - debitos
res = XlsLst(liUsa, coCac, Tcac)                   'contabilidade analitica - creditos

'mostrar
res = XlsWksAct("A", 1)                            'activar worksheet
end sub
##


'==============================================================================
#INC - Funcoes comuns
'==============================================================================
Funcoes comuns                    =[SIG_Dir.Div],LsComPgm.std
##



