'Nome       : StcResCt.sql
'Tipo       : SQL
'Data       : 2013/05/07
'Versao     : 1.0a
'Descricao  : Resumo por conta

'==============================================================================
'#VER - Historia de modificacoes
'==============================================================================
'- Versao : 1.0a  ____/__/__ --------------------------------------------------
'Correccao do SQL para nome do artigo (usar tabela corrente)

'- Versao : 1.0   2010/11/21 --------------------------------------------------
'Versao base


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


'==============================================================================
#ESP - Campos especificos
'==============================================================================
##


'==============================================================================
#SQL - Comandos SQL
'==============================================================================
Base de dados           [BD]=EmpFic$("EMP","Cemp,Emp_Dat.mdb")
'Base de dados           [BD]=EmpFic$("EMP","Stc,Stc.mdb")


'------------------------------------------------------------------------------
'- generico -------------------------------------------------------------------
'------------------------------------------------------------------------------
Nome do artigo [Cmd]=ArtNom=+
   +SELECT Nome1$ as [NOME$] +
   +FROM {TB_StcMst} +
   +WHERE Art$ = '{ART.COD}'


'------------------------------------------------------------------------------
'- Lista de contas por Artigo -------------------------------------------------
'------------------------------------------------------------------------------
Gerar registos      [Cmd]=Ctu_Art_Lis=+
   +SELECT Ct$ AS CTU, Art$ AS ART, +
   +COUNT(*) AS NUM +
   +FROM StcMov{Ano} AS MOV +
   +WHERE RecVal <> 255 +
   +AND   Ct$     BETWEEN '{Opc_Ct.Ini}'    AND '{Opc_Ct.Fim}' +
   +AND   Art$    BETWEEN '{Opc_Art.Ini}'   AND '{Opc_Art.Fim}' +
   +AND   Dtl     BETWEEN  {Opc_Dtl.Ini}    AND  {Opc_Dtl.Fim} +
   +AND   ArzSai  BETWEEN  {Opc_ArzSai.Ini} AND  {Opc_ArzSai.Fim} +
   +AND   Vend    BETWEEN  {Opc_Vnd.Ini}    AND  {Opc_Vnd.Fim} +
   +GROUP BY Art$, Ct$ +
   +ORDER BY Art$, Ct$


'------------------------------------------------------------------------------
'- Numero de contas por Artigo ------------------------------------------------
'------------------------------------------------------------------------------
Gerar registos      [Cmd]=Ctu_Art_Num=+
   +SELECT ART, +
   +COUNT(*) AS NRG +
   +FROM +
   +(+
   +SELECT Ct$ AS CTU, Art$ AS ART, COUNT(*) AS NUM +
   +FROM StcMov{Ano} AS MOV +
   +WHERE RecVal <> 255 +
   +AND   Ct$     BETWEEN '{Opc_Ct.Ini}'    AND '{Opc_Ct.Fim}' +
   +AND   Art$    BETWEEN '{Opc_Art.Ini}'   AND '{Opc_Art.Fim}' +
   +AND   Dtl     BETWEEN  {Opc_Dtl.Ini}    AND  {Opc_Dtl.Fim} +
   +AND   ArzSai  BETWEEN  {Opc_ArzSai.Ini} AND  {Opc_ArzSai.Fim} +
   +AND   Vend    BETWEEN  {Opc_Vnd.Ini}    AND  {Opc_Vnd.Fim} +
   +GROUP BY Ct$, Art$ +
   +) +
   +GROUP BY ART +
   +ORDER BY ART;


'------------------------------------------------------------------------------
'- Lista de contas por Vendedor -----------------------------------------------
'------------------------------------------------------------------------------
Gerar registos      [Cmd]=Ctu_Vnd_Lis=+
   +SELECT Ct$ AS CTU, Vend AS VND, +
   +COUNT(*) AS NUM +
   +FROM StcMov{Ano} AS MOV +
   +WHERE RecVal <> 255 +
   +AND   Ct$     BETWEEN '{Opc_Ct.Ini}'    AND '{Opc_Ct.Fim}' +
   +AND   Art$    BETWEEN '{Opc_Art.Ini}'   AND '{Opc_Art.Fim}' +
   +AND   Dtl     BETWEEN  {Opc_Dtl.Ini}    AND  {Opc_Dtl.Fim} +
   +AND   ArzSai  BETWEEN  {Opc_ArzSai.Ini} AND  {Opc_ArzSai.Fim} +
   +AND   Vend    BETWEEN  {Opc_Vnd.Ini}    AND  {Opc_Vnd.Fim} +
   +GROUP BY Vend, Ct$ +
   +ORDER BY Vend, Ct$


'------------------------------------------------------------------------------
'- Numero de contas por Vendedor ----------------------------------------------
'------------------------------------------------------------------------------
Gerar registos      [Cmd]=Ctu_Vnd_Num=+
   +SELECT VND, +
   +COUNT(*) AS NRG +
   +FROM +
   +(+
   +SELECT Ct$ AS CTU, Vend AS VND, COUNT(*) AS NUM +
   +FROM StcMov{Ano} AS MOV +
   +WHERE RecVal <> 255 +
   +AND   Ct$     BETWEEN '{Opc_Ct.Ini}'    AND '{Opc_Ct.Fim}' +
   +AND   Art$    BETWEEN '{Opc_Art.Ini}'   AND '{Opc_Art.Fim}' +
   +AND   Dtl     BETWEEN  {Opc_Dtl.Ini}    AND  {Opc_Dtl.Fim} +
   +AND   ArzSai  BETWEEN  {Opc_ArzSai.Ini} AND  {Opc_ArzSai.Fim} +
   +AND   Vend    BETWEEN  {Opc_Vnd.Ini}    AND  {Opc_Vnd.Fim} +
   +GROUP BY Ct$, Vend +
   +) +
   +GROUP BY VND +
   +ORDER BY VND;


'------------------------------------------------------------------------------
'- Lista de contas por Armazem ------------------------------------------------
'------------------------------------------------------------------------------
Gerar registos      [Cmd]=Ctu_Arz_Lis=+
   +SELECT Ct$ AS CTU, ArzSai AS ARZ, +
   +COUNT(*) AS NUM +
   +FROM StcMov{Ano} AS MOV +
   +WHERE RecVal <> 255 +
   +AND   Ct$     BETWEEN '{Opc_Ct.Ini}'    AND '{Opc_Ct.Fim}' +
   +AND   Art$    BETWEEN '{Opc_Art.Ini}'   AND '{Opc_Art.Fim}' +
   +AND   Dtl     BETWEEN  {Opc_Dtl.Ini}    AND  {Opc_Dtl.Fim} +
   +AND   ArzSai  BETWEEN  {Opc_ArzSai.Ini} AND  {Opc_ArzSai.Fim} +
   +AND   Vend    BETWEEN  {Opc_Vnd.Ini}    AND  {Opc_Vnd.Fim} +
   +GROUP BY ArzSai, Ct$ +
   +ORDER BY ArzSai, Ct$


'------------------------------------------------------------------------------
'- Numero de contas por Armazem -----------------------------------------------
'------------------------------------------------------------------------------
Gerar registos      [Cmd]=Ctu_Arz_Num=+
   +SELECT ARZ, +
   +COUNT(*) AS NRG +
   +FROM +
   +(+
   +SELECT Ct$ AS CTU, ArzSai AS ARZ, COUNT(*) AS NUM +
   +FROM StcMov{Ano} AS MOV +
   +WHERE RecVal <> 255 +
   +AND   Ct$     BETWEEN '{Opc_Ct.Ini}'    AND '{Opc_Ct.Fim}' +
   +AND   Art$    BETWEEN '{Opc_Art.Ini}'   AND '{Opc_Art.Fim}' +
   +AND   Dtl     BETWEEN  {Opc_Dtl.Ini}    AND  {Opc_Dtl.Fim} +
   +AND   ArzSai  BETWEEN  {Opc_ArzSai.Ini} AND  {Opc_ArzSai.Fim} +
   +AND   Vend    BETWEEN  {Opc_Vnd.Ini}    AND  {Opc_Vnd.Fim} +
   +GROUP BY Ct$, ArzSai +
   +) +
   +GROUP BY ARZ +
   +ORDER BY ARZ;


'------------------------------------------------------------------------------
'- Lista de contas por Vendedor/Artigo ----------------------------------------
'------------------------------------------------------------------------------
Gerar registos      [Cmd]=Ctu_VndArt_Lis=+
   +SELECT Ct$ AS CTU, Art$ AS ART, Vend AS VND, +
   +COUNT(*) AS NUM +
   +FROM StcMov{Ano} AS MOV +
   +WHERE RecVal <> 255 +
   +AND   Ct$     BETWEEN '{Opc_Ct.Ini}'    AND '{Opc_Ct.Fim}' +
   +AND   Art$    BETWEEN '{Opc_Art.Ini}'   AND '{Opc_Art.Fim}' +
   +AND   Dtl     BETWEEN  {Opc_Dtl.Ini}    AND  {Opc_Dtl.Fim} +
   +AND   ArzSai  BETWEEN  {Opc_ArzSai.Ini} AND  {Opc_ArzSai.Fim} +
   +AND   Vend    BETWEEN  {Opc_Vnd.Ini}    AND  {Opc_Vnd.Fim} +
   +GROUP BY Vend, Art$, Ct$ +
   +ORDER BY Vend, Art$, Ct$


'------------------------------------------------------------------------------
'- Numero de contas por Vendedor/Artigo ---------------------------------------
'------------------------------------------------------------------------------
Gerar registos      [Cmd]=Ctu_VndArt_Num=+
   +SELECT VND, ART, +
   +COUNT(*) AS NRG +
   +FROM +
   +(+
   +SELECT Ct$ AS CTU, Art$ AS ART, Vend AS VND, COUNT(*) AS NUM +
   +FROM StcMov{Ano} AS MOV +
   +WHERE RecVal <> 255 +
   +AND   Ct$     BETWEEN '{Opc_Ct.Ini}'    AND '{Opc_Ct.Fim}' +
   +AND   Art$    BETWEEN '{Opc_Art.Ini}'   AND '{Opc_Art.Fim}' +
   +AND   Dtl     BETWEEN  {Opc_Dtl.Ini}    AND  {Opc_Dtl.Fim} +
   +AND   ArzSai  BETWEEN  {Opc_ArzSai.Ini} AND  {Opc_ArzSai.Fim} +
   +AND   Vend    BETWEEN  {Opc_Vnd.Ini}    AND  {Opc_Vnd.Fim} +
   +GROUP BY Ct$, Vend, Art$ +
   +) +
   +GROUP BY VND, ART +
   +ORDER BY VND, ART;


'------------------------------------------------------------------------------
'- Lista de contas por Armazem/Artigo -----------------------------------------
'------------------------------------------------------------------------------
Gerar registos      [Cmd]=Ctu_ArzArt_Lis=+
   +SELECT Ct$ AS CTU, Art$ AS ART, ArzSai AS ARZ, +
   +COUNT(*) AS NUM +
   +FROM StcMov{Ano} AS MOV +
   +WHERE RecVal <> 255 +
   +AND   Ct$     BETWEEN '{Opc_Ct.Ini}'    AND '{Opc_Ct.Fim}' +
   +AND   Art$    BETWEEN '{Opc_Art.Ini}'   AND '{Opc_Art.Fim}' +
   +AND   Dtl     BETWEEN  {Opc_Dtl.Ini}    AND  {Opc_Dtl.Fim} +
   +AND   ArzSai  BETWEEN  {Opc_ArzSai.Ini} AND  {Opc_ArzSai.Fim} +
   +AND   Vend    BETWEEN  {Opc_Vnd.Ini}    AND  {Opc_Vnd.Fim} +
   +GROUP BY ArzSai, Art$, Ct$ +
   +ORDER BY ArzSai, Art$, Ct$


'------------------------------------------------------------------------------
'- Numero de contas por Armazem/Artigo ----------------------------------------
'------------------------------------------------------------------------------
Gerar registos      [Cmd]=Ctu_ArzArt_Num=+
   +SELECT ARZ, ART, +
   +COUNT(*) AS NRG +
   +FROM +
   +(+
   +SELECT Ct$ AS CTU, Art$ AS ART, ArzSai AS ARZ, COUNT(*) AS NUM +
   +FROM StcMov{Ano} AS MOV +
   +WHERE RecVal <> 255 +
   +AND   Ct$     BETWEEN '{Opc_Ct.Ini}'    AND '{Opc_Ct.Fim}' +
   +AND   Art$    BETWEEN '{Opc_Art.Ini}'   AND '{Opc_Art.Fim}' +
   +AND   Dtl     BETWEEN  {Opc_Dtl.Ini}    AND  {Opc_Dtl.Fim} +
   +AND   ArzSai  BETWEEN  {Opc_ArzSai.Ini} AND  {Opc_ArzSai.Fim} +
   +AND   Vend    BETWEEN  {Opc_Vnd.Ini}    AND  {Opc_Vnd.Fim} +
   +GROUP BY Ct$, ArzSai, Art$ +
   +) +
   +GROUP BY ARZ, ART +
   +ORDER BY ARZ, ART;

##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=SQL
Nome                       [DocNom]=CtuLis_Art,Lista de contas por Artigo

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

'funcoes de listagem
Listar cabecalho            [FxCAB]=ArtLis_Cab
Listar linhas               [FxLIN]=ArtLis_Lin
Listar fim                  [FxFIM]=ArtLis_Fim

'controlo de listagem SQL
Gerador de dados a listar  [SQLDat]=Ctu_Art_Lis
Subtotalizadores           [SQLSbt]=ART
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=SQL
Nome                       [DocNom]=CtuNum_Art,Numero de contas por Artigo

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

'funcoes de listagem
Listar cabecalho            [FxCAB]=ArtNum_Cab
Listar linhas               [FxLIN]=ArtNum_Lin
Listar fim                  [FxFIM]=ArtNum_Fim

'controlo de listagem SQL
Gerador de dados a listar  [SQLDat]=Ctu_Art_Num
Subtotalizadores           [SQLSbt]=
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=SQL
Nome                       [DocNom]=CtuLis_Vnd,Lista de contas por Vendedor

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

'funcoes de listagem
Listar cabecalho            [FxCAB]=VndLis_Cab
Listar linhas               [FxLIN]=VndLis_Lin
Listar fim                  [FxFIM]=VndLis_Fim

'controlo de listagem SQL
Gerador de dados a listar  [SQLDat]=Ctu_Vnd_Lis
Subtotalizadores           [SQLSbt]=VND
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=SQL
Nome                       [DocNom]=CtuNum_Vnd,Numero de contas por Vendedor

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

'funcoes de listagem
Listar cabecalho            [FxCAB]=VndNum_Cab
Listar linhas               [FxLIN]=VndNum_Lin
Listar fim                  [FxFIM]=VndNum_Fim

'controlo de listagem SQL
Gerador de dados a listar  [SQLDat]=Ctu_Vnd_Num
Subtotalizadores           [SQLSbt]=
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=SQL
Nome                       [DocNom]=CtuLis_Arz,Lista de contas por Armazem

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

'funcoes de listagem
Listar cabecalho            [FxCAB]=ArzLis_Cab
Listar linhas               [FxLIN]=ArzLis_Lin
Listar fim                  [FxFIM]=ArzLis_Fim

'controlo de listagem SQL
Gerador de dados a listar  [SQLDat]=Ctu_Arz_Lis
Subtotalizadores           [SQLSbt]=ARZ
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=SQL
Nome                       [DocNom]=CtuNum_Arz,Numero de contas por Armazem

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

'funcoes de listagem
Listar cabecalho            [FxCAB]=ArzNum_Cab
Listar linhas               [FxLIN]=ArzNum_Lin
Listar fim                  [FxFIM]=ArzNum_Fim

'controlo de listagem SQL
Gerador de dados a listar  [SQLDat]=Ctu_Arz_Num
Subtotalizadores           [SQLSbt]=
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=SQL
Nome                       [DocNom]=CtuLis_VndArt,Lista de contas por Vendedor/Artigo

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

'funcoes de listagem
Listar cabecalho            [FxCAB]=VndArtLis_Cab
Listar linhas               [FxLIN]=VndArtLis_Lin
Listar fim                  [FxFIM]=VndArtLis_Fim

'controlo de listagem SQL
Gerador de dados a listar  [SQLDat]=Ctu_VndArt_Lis
Subtotalizadores           [SQLSbt]=VND,ART
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=SQL
Nome                       [DocNom]=CtuNum_VndArt,Numero de contas por Vendedor/Artigo

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

'funcoes de listagem
Listar cabecalho            [FxCAB]=VndArtNum_Cab
Listar linhas               [FxLIN]=VndArtNum_Lin
Listar fim                  [FxFIM]=VndArtNum_Fim

'controlo de listagem SQL
Gerador de dados a listar  [SQLDat]=Ctu_VndArt_Num
Subtotalizadores           [SQLSbt]=VND
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=SQL
Nome                       [DocNom]=CtuLis_ArzArt,Lista de contas por Armazem/Artigo

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

'funcoes de listagem
Listar cabecalho            [FxCAB]=ArzArtLis_Cab
Listar linhas               [FxLIN]=ArzArtLis_Lin
Listar fim                  [FxFIM]=ArzArtLis_Fim

'controlo de listagem SQL
Gerador de dados a listar  [SQLDat]=Ctu_ArzArt_Lis
Subtotalizadores           [SQLSbt]=ARZ,ART
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=SQL
Nome                       [DocNom]=CtuNum_ArzArt,Numero de contas por Armazem/Artigo

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

'funcoes de listagem
Listar cabecalho            [FxCAB]=ArzArtNum_Cab
Listar linhas               [FxLIN]=ArzArtNum_Lin
Listar fim                  [FxFIM]=ArzArtNum_Fim

'controlo de listagem SQL
Gerador de dados a listar  [SQLDat]=Ctu_ArzArt_Num
Subtotalizadores           [SQLSbt]=ARZ
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=SQL
Nome                       [DocNom]=XlsCtuLis_Art,XLS - Lista de contas por Artigo

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

'funcoes de listagem
Base para documento         [FxDOC]=XlsArtLis
Listar cabecalho            [FxCAB]=XlsArtLis_Cab
Listar linhas               [FxLIN]=XlsArtLis_Lin
Listar fim                  [FxFIM]=XlsArtLis_Fim

'controlo de listagem SQL
Gerador de dados a listar  [SQLDat]=Ctu_Art_Lis
Subtotalizadores           [SQLSbt]=ART

Matriz auxiliar            [DocMat]=StcResCt.xls
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=SQL
Nome                       [DocNom]=XlsCtuNum_Art,XLS - Numero de contas por Artigo

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

'funcoes de listagem
Base para documento         [FxDOC]=XlsArtNum
Listar cabecalho            [FxCAB]=XlsArtNum_Cab
Listar linhas               [FxLIN]=XlsArtNum_Lin
Listar fim                  [FxFIM]=XlsArtNum_Fim

'controlo de listagem SQL
Gerador de dados a listar  [SQLDat]=Ctu_Art_Num
Subtotalizadores           [SQLSbt]=

Matriz auxiliar            [DocMat]=StcResCt.xls
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=SQL
Nome                       [DocNom]=XlsCtuLis_Vnd,XLS - Lista de contas por Vendedor

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

'funcoes de listagem
Base para documento         [FxDOC]=XlsVndLis
Listar cabecalho            [FxCAB]=XlsVndLis_Cab
Listar linhas               [FxLIN]=XlsVndLis_Lin
Listar fim                  [FxFIM]=XlsVndLis_Fim

'controlo de listagem SQL
Gerador de dados a listar  [SQLDat]=Ctu_Vnd_Lis
Subtotalizadores           [SQLSbt]=VND

Matriz auxiliar            [DocMat]=StcResCt.xls
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=SQL
Nome                       [DocNom]=XlsCtuNum_Vnd,XLS - Numero de contas por Vendedor

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

'funcoes de listagem
Base para documento         [FxDOC]=XlsVndNum
Listar cabecalho            [FxCAB]=XlsVndNum_Cab
Listar linhas               [FxLIN]=XlsVndNum_Lin
Listar fim                  [FxFIM]=XlsVndNum_Fim

'controlo de listagem SQL
Gerador de dados a listar  [SQLDat]=Ctu_Vnd_Num
Subtotalizadores           [SQLSbt]=

Matriz auxiliar            [DocMat]=StcResCt.xls
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=SQL
Nome                       [DocNom]=XlsCtuLis_Arz,XLS - Lista de contas por Armazem

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

'funcoes de listagem
Base para documento         [FxDOC]=XlsArzLis
Listar cabecalho            [FxCAB]=XlsArzLis_Cab
Listar linhas               [FxLIN]=XlsArzLis_Lin
Listar fim                  [FxFIM]=XlsArzLis_Fim

'controlo de listagem SQL
Gerador de dados a listar  [SQLDat]=Ctu_Arz_Lis
Subtotalizadores           [SQLSbt]=ARZ

Matriz auxiliar            [DocMat]=StcResCt.xls
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=SQL
Nome                       [DocNom]=XlsCtuNum_Arz,XLS - Numero de contas por Armazem

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

'funcoes de listagem
Base para documento         [FxDOC]=XlsArzNum
Listar cabecalho            [FxCAB]=XlsArzNum_Cab
Listar linhas               [FxLIN]=XlsArzNum_Lin
Listar fim                  [FxFIM]=XlsArzNum_Fim

'controlo de listagem SQL
Gerador de dados a listar  [SQLDat]=Ctu_Arz_Num
Subtotalizadores           [SQLSbt]=

Matriz auxiliar            [DocMat]=StcResCt.xls
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=SQL
Nome                       [DocNom]=XlsCtuLis_VndArt,XLS - Lista de contas por Vendedor/Artigo

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

'funcoes de listagem
Base para documento         [FxDOC]=XlsVndArtLis
Listar cabecalho            [FxCAB]=XlsVndArtLis_Cab
Listar linhas               [FxLIN]=XlsVndArtLis_Lin
Listar fim                  [FxFIM]=XlsVndArtLis_Fim

'controlo de listagem SQL
Gerador de dados a listar  [SQLDat]=Ctu_VndArt_Lis
Subtotalizadores           [SQLSbt]=VND,ART

Matriz auxiliar            [DocMat]=StcResCt.xls
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=SQL
Nome                       [DocNom]=XlsCtuNum_VndArt,XLS - Numero de contas por Vendedor/Artigo

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

'funcoes de listagem
Base para documento         [FxDOC]=XlsVndArtNum
Listar cabecalho            [FxCAB]=XlsVndArtNum_Cab
Listar linhas               [FxLIN]=XlsVndArtNum_Lin
Listar fim                  [FxFIM]=XlsVndArtNum_Fim

'controlo de listagem SQL
Gerador de dados a listar  [SQLDat]=Ctu_VndArt_Num
Subtotalizadores           [SQLSbt]=VND

Matriz auxiliar            [DocMat]=StcResCt.xls
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=SQL
Nome                       [DocNom]=XlsCtuLis_ArzArt,XLS - Lista de contas por Armazem/Artigo

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

'funcoes de listagem
Base para documento         [FxDOC]=XlsArzArtLis
Listar cabecalho            [FxCAB]=XlsArzArtLis_Cab
Listar linhas               [FxLIN]=XlsArzArtLis_Lin
Listar fim                  [FxFIM]=XlsArzArtLis_Fim

'controlo de listagem SQL
Gerador de dados a listar  [SQLDat]=Ctu_ArzArt_Lis
Subtotalizadores           [SQLSbt]=ARZ,ART

Matriz auxiliar            [DocMat]=StcResCt.xls
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=SQL
Nome                       [DocNom]=XlsCtuNum_ArzArt,XLS - Numero de contas por Armazem/Artigo

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

'funcoes de listagem
Base para documento         [FxDOC]=XlsArzArtNum
Listar cabecalho            [FxCAB]=XlsArzArtNum_Cab
Listar linhas               [FxLIN]=XlsArzArtNum_Lin
Listar fim                  [FxFIM]=XlsArzArtNum_Fim

'controlo de listagem SQL
Gerador de dados a listar  [SQLDat]=Ctu_ArzArt_Num
Subtotalizadores           [SQLSbt]=ARZ

Matriz auxiliar            [DocMat]=StcResCt.xls
##


'==============================================================================
#VAR - Variaveis
'==============================================================================
Tipo     = MemTxt$(1)
Pag      = Doc_CntPag
Tit080   = TxTit$("TT=10CPI, LD, PT=40C",Memtxt$(1))
Tit132   = TxTit$("TT=16CPI, LD, PT=66C",Memtxt$(1))
DataExt  = FrmVal$(Sig_DtHoje,45,0)

'- dados a listar -------------------------------------------------------------
vEntCod  = entCod$                              'entidade - codigo
vEntCov  = entCov$                              'entidade - codigo formatado
vEntIde  = entIde$                              'entidade - identificacao

vCnt     = 0                                    'auxiliar para contagem
vObs     = usaObs$                              'observacaoes

'resumo
vaResNrg = FrmNum$(9.0,resNrg)                  'numero de registos
vaResQu  = FrmNum$(6.3,resQu)                   'quantidade
vaResVt  = FrmNum$(12.2,resVt)                  'valor

'artigo
vArtCod  = artCod$                              'codigo
vArtCov  = artCov$                              'codigo formatado
vArtNom  = artNom$                              'nome

'conta
vCtCod   = CTA_MST_Ct$                          'codigo da conta
vCtNom   = CTA_MST_Nome$                        'nome

'armazem
vArzCod  = arzCod$                              'codigo
vArzCov  = arzCov$                              'codigo formatado
vArzNom  = arzNom$                              'nome

'vendedor
vVndCod  = vndCod$                              'codigo
vVndCov  = vndCov$                              'codigo formatado
vVndNom  = vndNom$                              'nome

'- diversos -------------------------------------------------------------------
'contagem
toNrg    = FrmNum$(9.0,TotCnt("vEntCov",0))     'numero de registos - total
s1Nrg    = FrmNum$(9.0,TotCnt("vEntCov",1))     'numero de registos - subtotal 1
s2Nrg    = FrmNum$(9.0,TotCnt("vEntCov",2))     'numero de registos - subtotal 2

'resumo
toResNrgX= FrmNum$(9.0,Total("vaResNrg",0))     'numero de registos - total
s1ResNrgX= FrmNum$(9.0,Total("vaResNrg",1))     'numero de registos - subtotal 1
s2ResNrgX= FrmNum$(9.0,Total("vaResNrg",2))     'numero de registos - subtotal 2

toResQu  = FrmNum$(6.3,Total("vaResQu",0))      'quantidade - total
s1ResQu  = FrmNum$(6.3,Total("vaResQu",1))      'quantidade - subtotal 1
s2ResQu  = FrmNum$(6.3,Total("vaResQu",2))      'quantidade - subtotal 2

toResVt  = FrmNum$(12.2,Total("vaResVt",0))     'valor - total
s1ResVt  = FrmNum$(12.2,Total("vaResVt",1))     'valor - subtotal 1
s2ResVt  = FrmNum$(12.2,Total("vaResVt",2))     'valor - subtotal 2
##


'==============================================================================
#PGM - Programa/Funcoes
'==============================================================================
'- +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
'- (13) --->'Comentario
'- (25) --------------->'Comentario
'- (28) ------------------>'Comentario
'- (40) ------------------------------>'Comentario
'- (43) --------------------------------->'Comentario
'- (46) ------------------------------------>'Comentario
'- (49) --------------------------------------->'Comentario
'- (52) ------------------------------------------>'Comentario
'- (55) --------------------------------------------->'Comentario
'- (58) ------------------------------------------------>'Comentario
'- (61) --------------------------------------------------->'Comentario
'- (64) ------------------------------------------------------>'Comentario
'- (67) --------------------------------------------------------->'Comentario
'- (70) ------------------------------------------------------------>'Comentario


Sub FxIni 'funcao de inicializacao
'nada a excutar
end sub


Sub FxFim 'funcao de finalizacao
'nada a excutar
end sub


Sub Lst_AJT 'ajuste
'nada a excutar
end sub


'=============================================================================
'- Comum ---------------------------------------------------------------------
'=============================================================================
'-----------------------------------------------------------------------------
'- [VAR] - Variaveis ---------------------------------------------------------
'-----------------------------------------------------------------------------
Sub Com_Var_Con 'consultar variaveis
artCod$ = SqlCmp$("ART")                           'artigo
ctuCod$ = SqlCmp$("CTU")                           'conta

arzCod  = SqlCmp("ARZ")                            'armazem
vndCod  = SqlCmp("VND")                            'vendedor

resNrg  = SqlCmp("NRG")                            'numero de registos
end sub


Sub Com_Var_Prp 'preparar variaveis
usaObs$ = ""                                       'anular observacoes
call Com_Var_Con                                   'consultar variaveis

'preparar valores
call Com_Var_PrpArt                                'preparar variaveis - artigo
call Com_Var_PrpArz                                'preparar variaveis - armazem
call Com_Var_PrpVnd                                'preparar variaveis - vendedor
call Com_Var_PrpCtu                                'preparar variaveis - conta
end sub


Sub Com_Var_PrpArt 'preparar variaveis - artigo
'res     = SqlOpcAct("Art.Cod",artCod$)             'registar artigo
'res     = SqlCalc("ARTNOM")                        'preparar nome do artigo

'artCov$ = StcCodFrm$(artCod$)                      'codigo formatado
'artNom$ = SqlOpcCon$("NOME$")                      'nome
'artIde$ = artCov$ + " - " + artNom$                'identificacao

res = StcArtLer(artCod$)                           'preparar dados do artigo

artCov$ = StcCodFrm$(artCod$)                      'codigo formatado
artNom$ = STC_MST_Nome1$                           'nome
artIde$ = artCov$ + " - " + artNom$                'identificacao
end sub


Sub Com_Var_PrpArz 'preparar variaveis - armazem
'arzCov$ = TxtCv$(arzCod)                          'codigo formatado
arzCov$ = NumTxt$(arzCod, 2)                       'codigo formatado
arzNom$ = "Armazem " + arzCov$                     'nome
arzIde$ = "Armazem " + arzCov$                     'identificacao
end sub


Sub Com_Var_PrpVnd 'preparar variaveis - vendedor
vndCov$ = NumTxt$(vndCod, 2)                       'codigo formatado
vndNom$ = EmpTabCon$("VEND", vndCod, "NOME")       'nome
vndIde$ = vndCov$ + " - " + vndNom$                'identificacao
end sub


Sub Com_Var_PrpCtu 'preparar variaveis - conta
res  = CtaContaLer(ctuCod$)                        'preparar dados da conta

ctuCov$ = CTA_MST_Ct$                              'codigo formatado
ctuNom$ = CTA_MST_Nome$                            'nome
ctuIde$ = ctuCov$ + " - " + ctuNom$                'identificacao
end sub


'-----------------------------------------------------------------------------
'- [TXT] - Listar em modo texto ----------------------------------------------
'-----------------------------------------------------------------------------
Sub Com_Txt_Cab 'cabecalho - texto
'cabTit$ = "Titulo"
FxDiv LstIde,10CPI,0
print TxTit$("TT=10CPI, LD, PT=40C, TL=10CPI",comCabTit$)
?Data: @DataExt                                                   Folha No: @Pag#
?================================================================================
?  Codigo         Nome                                                 Numero   #
'123456789.12345  123456789.123456789.123456789.12               -123,456,789   #
?================================================================================
end sub


Sub Com_Txt_LinLis 'executar linha - lista
?@vEntCov        @vEntIde                                           @vaResNrgX  #
end sub


Sub Com_Txt_LinNum 'executar linha - numero
?@vEntCov        @vEntIde                                           @vaResNrg   #
end sub


Sub Com_Txt_Fim 'terminar
?================================================================================
?   Totais: @toNrg                                                  @toResNrg   #
?================================================================================
FxDiv LstPer,SP
'Print PrtCmd$("[SP]");
end sub


Sub Com_Txt_LinTit1 'titulo 1
if titIde$ <> "" then                              'ha titulo ?
   tmp = CntLin("INC", 1)                          'contar linhas
   print tab(5) titIde$                            'listar 
end if

titIde$ = ""                                       'anular titulo
end sub


Sub Com_Txt_LinTit2 'titulo 2
if titIde$ <> "" then                              'ha titulo ?
   tmp = CntLin("INC", 1)                          'contar linhas
   print tab(5) titIde$                            'listar 
end if

titIde$ = ""                                       'anular titulo
sepSbt2 = 1                                        'separar subtotal 2
end sub


Sub Com_Txt_LinSbt1 'subtotal 1
nrg = TotCnt("vEntCov",1)                          'numero de registos

if nrg > 1 then                                    'listar numero ?
?           @s1Nrg                                                  @s1ResNrg   #
   tmp=CntLin("INC", 1)                            'contar linhas
end if

tmp=CntLin("INC", 1)                               'contar linhas
print                                              'separar

x = TotLpz(1)                                      'limpar totais
end sub


Sub Com_Txt_LinSbt2 'subtotal 2
nrg = TotCnt("vEntCov",2)                          'numero de registos

if nrg > 1 then                                    'listar numero ?
?           @s2Nrg                                                  @s2ResNrg    #
   tmp=CntLin("INC", 1)                            'contar linhas
end if

if sepSbt2 = 1 then                                'separar subtotal 2 ?
   tmp=CntLin("INC", 1)                            'contar linhas
   print                                           'separar
end if

sepSbt2 = 1                                        'separar subtotal 2
x = TotLpz(2)                                      'limpar totais
end sub


'------------------------------------------------------------------------------
'- [XLS] - Listar para EXCEL --------------------------------------------------
'------------------------------------------------------------------------------
Sub Com_Xls_DocIni 'inicializar documento
xlsOpcNfi$ = "RND:" + comXlsFic$                   'nome do ficheiro a gerar
xlsOpcWks$ = ""                                    'nome da woorksheet

call XlsComDoc_IniMat                              'inicializar documento por matriz

'preparacao especifica
res = XlsWks("Valores")                            'activar worksheet

'preparar cabecalho
empNum$ = Emp_Inf_Cod$                             'numero da empresa
empNom$ = Emp_Inf_Nome$                            'nome da empresa
lstTit$ = comCabTit$                               '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

call XlsComLin_Ini                                 'iniciar linhas

'definicao das colunas
coNrg    = 2                                       'numero de registos - total
coNrs    = 3                                       'numero de registos - subtotal

coCod    = 2                                       'codigo
coNom    = 3                                       'nome

coResNrg = 4                                       'numero de registos
end sub


Sub Com_Xls_DocFim 'terminar documento
'res = XlsWksAct("A", 1)                            'activar worksheet
call XlsComDoc_Fim                                 'terminar/mostrar documento
end sub


Sub Com_Xls_IncLin 'incrementar linha
'call XlsComLin_Inc                                 'incrementar linha
call XlsComLin_IncRep                              'incrementar linha + repor formato normal

zon$ = XlsZon$(liUsa, coCod,liUsa, coNom)          'zona
'zon$= XlsZonNum$("L", liUsa)                      'zona da linha
res = XlsAli(zon$, "<")                            'alinhamento
end sub


Sub Com_Xls_LinSep 'linha de separacao
call XlsVnd_IncLin                                 'incrementar linha
end sub


Sub Com_Xls_LstLinIde 'listar linha - identificacao (codigo e nome)
vaCod$ = entCov$                                   'codigo formatado
vaNom$ = entIde$                                   'identificacao

res = XlsLst(liUsa, coCod, vaCod$)                 'codigo
res = XlsLst(liUsa, coNom, vaNom$)                 'nome

res = AcmExe("vCnt", 1)                            'acumular - contagem
end sub


Sub Com_Xls_LstLinArt 'listar linha - artigo
res = XlsLst(liUsa, coArtCod, artCod$)             'codigo
res = XlsLst(liUsa, coArtNom, artNom$)             'nome
end sub


Sub Com_Xls_LstLinArz 'listar linha - armazem
res = XlsLst(liUsa, coArzCod, arzCod)              'codigo
end sub


Sub Com_Xls_LstLinVnd 'listar linha - vendedor
res = XlsLst(liUsa, coVndCod, vndCod)              'codigo
end sub


Sub Com_Xls_LstLinCtu 'listar linha - conta
res = XlsLst(liUsa, coCtuCod, ctuCod$)             'codigo
res = XlsLst(liUsa, coCtuNom, ctuNom$)             'nome
end sub


Sub Com_Xls_LstLinNrg 'listar linha - numero de registos
res = XlsLst(liUsa, coResNrg, ResNrg)              'numero de registos
'- (52) ------------------------------------------>'Comentario

res = AcmExe("vaResNrg", resNrg)                   'acumular - numero de registos
end sub


Sub Com_Xls_LstTot 'listar totais
call XlsComLin_Fim                                 'fim de linhas

vNrg   = TotCnt("vCnt", 0)                         'numero de registos
vResNrg= Total("vaResNrg", 0)                      'quantidade

'listar
liUsa = linFim                                     'linha a usar

call XlsComLin_ActBI                               'activar linha em BOLD+ITALICO
res = XlsLst(liUsa, coNrg, vNrg)                   'numero de registos
res = XlsLst(liUsa, coResNrg, "")                  'total registos
end sub


Sub Com_Xls_LinTit1 'titulo 1
if titIde$ <> "" then                              'ha titulo ?
   call Com_Xls_IncLin                             'incrementar linha	

   res = XlsLst(liUsa, coNom, titIde$)             'listar identificacao
end if

titIde$ = ""                                       'anular titulo
end sub


Sub Com_Xls_LinTit2 'titulo 2
if titIde$ <> "" then                              'ha titulo ?
   call Com_Xls_IncLin                             'incrementar linha	

   res = XlsLst(liUsa, coNom, titIde$)             'listar identificacao
end if

titIde$ = ""                                       'anular titulo
sepSbt2 = 1                                        'separar subtotal 2
end sub


Sub Com_Xls_SbtNrg 'numero de registos do subtotal
res = XlsLst(liUsa, coNrs, vNrg)                   'numero de registos

zon$ = XlsZon$(liUsa, coNrs)                       'zona
res = XlsAli(zon$, "|")                            'alinhamento
end sub


Sub Com_Xls_LinSbt1 'subtotal 1
vNrg   = TotCnt("vCnt", 1)                         'numero de registos
vResNrg= Total("vaResNrg", 1)                      'total de registos

if vNrg > 1 then                                   'listar numero ?
   call Com_Xls_IncLin                             'incrementar linha	
   call XlsComLin_ActBI                            'activar linha em BOLD+ITALICO

   call Com_Xls_SbtNrg                             'numero de registos do subtotal
   'res = XlsLst(liUsa, coResNrg, vResNrg)          'total de registos
end if

call Com_Xls_IncLin                                'incrementar linha	

x = TotLpz(1)                                      'limpar totais
end sub


Sub Com_Xls_LinSbt2 'subtotal 2
vNrg   = TotCnt("vCnt", 2)                         'numero de registos
vResNrg= Total("vaResNrg", 2)                      'total de registos

if vNrg > 1 then                                   'listar numero ?
   call Com_Xls_IncLin                             'incrementar linha	
   call XlsComLin_ActBI                            'activar linha em BOLD+ITALICO

   call Com_Xls_SbtNrg                             'numero de registos do subtotal
   'res = XlsLst(liUsa, coResNrg, vResNrg)          'total de registos
end if

if sepSbt2 = 1 then                                'separar subtotal 2 ?
   call Com_Xls_IncLin                             'incrementar linha	
end if

sepSbt2 = 1                                        'separar subtotal 2
x = TotLpz(2)                                      'limpar totais
end sub


'==============================================================================
'- [TXT] - Listar em modo texto -----------------------------------------------
'==============================================================================
'------------------------------------------------------------------------------
'- [TXT] - Lista de contas por Artigo -----------------------------------------
'------------------------------------------------------------------------------
Sub ArtLis_Cab 'cabecalho
comCabTit$ = "Contas por Artigo"                   'titulo

call Com_Txt_Cab                                   'listar
end sub


Sub ArtLis_Fim 'terminar
call Com_Txt_Fim                                   'listar
end sub


Sub ArtLis_Lin 'linha
call Com_Var_Prp                                   'preparar variaveis

entCod$ = ctuCod$                                  'entidade - codigo
entCov$ = ctuCov$                                  'entidade - codigo formatado
entIde$ = ctuNom$                                  'entidade - identificacao

call Com_Txt_LinLis                                'executar linha
end sub


Sub ArtLis_LinTit1 'titulo 1
call Com_Var_Con                                   'consultar variaveis
call Com_Var_PrpArt                                'preparar variaveis - artigo

titIde$ = artIde$                                  'titulo
call Com_Txt_LinTit1                               'listar
end sub


Sub ArtLis_LinSbt1 'subtotal 1
call Com_Txt_LinSbt1                               'listar
end sub


'------------------------------------------------------------------------------
'- [TXT] - Numero de contas por Artigo ----------------------------------------
'------------------------------------------------------------------------------
Sub ArtNum_Cab 'cabecalho
comCabTit$ = "Contas por Artigo"                   'titulo

call Com_Txt_Cab                                   'listar
end sub


Sub ArtNum_Fim 'terminar
call Com_Txt_Fim                                   'listar
end sub


Sub ArtNum_Lin 'linha
call Com_Var_Prp                                   'preparar variaveis

entCod$ = artCod$                                  'entidade - codigo
entCov$ = artCov$                                  'entidade - codigo formatado
entIde$ = artNom$                                  'entidade - identificacao

call Com_Txt_LinNum                                'executar linha
end sub


'------------------------------------------------------------------------------
'- [TXT] - Lista de contas por Vendedor ---------------------------------------
'------------------------------------------------------------------------------
Sub VndLis_Cab 'cabecalho
comCabTit$ = "Contas por Vendedor"                 'titulo

call Com_Txt_Cab                                   'listar
end sub


Sub VndLis_Fim 'terminar
call Com_Txt_Fim                                   'listar
end sub


Sub VndLis_Lin 'linha
call Com_Var_Prp                                   'preparar variaveis

entCod$ = ctuCod$                                  'entidade - codigo
entCov$ = ctuCov$                                  'entidade - codigo formatado
entIde$ = ctuNom$                                  'entidade - identificacao

call Com_Txt_LinLis                                'executar linha
end sub


Sub VndLis_LinTit1 'titulo 1
call Com_Var_Con                                   'consultar variaveis
call Com_Var_PrpVnd                                'preparar variaveis - vendedor

titIde$ = vndIde$                                  'titulo
call Com_Txt_LinTit1                               'listar
end sub


Sub ArtLis_LinSbt1 'subtotal 1
call Com_Txt_LinSbt1                               'listar
end sub


'------------------------------------------------------------------------------
'- [TXT] - Numero de contas por Vendedor --------------------------------------
'------------------------------------------------------------------------------
Sub VndNum_Cab 'cabecalho
comCabTit$ = "Contas por Vendedor"                 'titulo

call Com_Txt_Cab                                   'listar
end sub


Sub VndNum_Fim 'terminar
call Com_Txt_Fim                                   'listar
end sub


Sub VndNum_Lin 'linha
call Com_Var_Prp                                   'preparar variaveis

entCod$ = vndCod$                                  'entidade - codigo
entCov$ = vndCov$                                  'entidade - codigo formatado
entIde$ = vndNom$                                  'entidade - identificacao

call Com_Txt_LinNum                                'executar linha
end sub


'------------------------------------------------------------------------------
'- [TXT] - Lista de contas por Armazem ----------------------------------------
'------------------------------------------------------------------------------
Sub ArzLis_Cab 'cabecalho
comCabTit$ = "Contas por Armazem"                  'titulo

call Com_Txt_Cab                                   'listar
end sub


Sub ArzLis_Fim 'terminar
call Com_Txt_Fim                                   'listar
end sub


Sub ArzLis_Lin 'linha
call Com_Var_Prp                                   'preparar variaveis

entCod$ = ctuCod$                                  'entidade - codigo
entCov$ = ctuCov$                                  'entidade - codigo formatado
entIde$ = ctuNom$                                  'entidade - identificacao

call Com_Txt_LinLis                                'executar linha
end sub


Sub ArzLis_LinTit1 'titulo 1
call Com_Var_Con                                   'consultar variaveis
call Com_Var_PrpArz                                'preparar variaveis - armazem

titIde$ = arzIde$                                  'titulo
call Com_Txt_LinTit1                               'listar
end sub


Sub ArzLis_LinSbt1 'subtotal 1
call Com_Txt_LinSbt1                               'listar
end sub


'------------------------------------------------------------------------------
'- [TXT] - Numero de contas por Armazem ---------------------------------------
'------------------------------------------------------------------------------
Sub ArzNum_Cab 'cabecalho
comCabTit$ = "Contas por Armazem"                  'titulo

call Com_Txt_Cab                                   'listar
end sub


Sub ArzNum_Fim 'terminar
call Com_Txt_Fim                                   'listar
end sub


Sub ArzNum_Lin 'linha
call Com_Var_Prp                                   'preparar variaveis

entCod$ = arzCod$                                  'entidade - codigo
entCov$ = arzCov$                                  'entidade - codigo formatado
entIde$ = arzNom$                                  'entidade - identificacao

call Com_Txt_LinNum                                'executar linha
end sub


'------------------------------------------------------------------------------
'- [TXT] - Lista de contas por Vendedor/Artigo --------------------------------
'------------------------------------------------------------------------------
Sub VndArtLis_Cab 'cabecalho
comCabTit$ = "Contas por Vendedor/Artigo"          'titulo

call Com_Txt_Cab                                   'listar
end sub


Sub VndArtLis_Fim 'terminar
call Com_Txt_Fim                                   'listar
end sub


Sub VndArtLis_Lin 'linha
call Com_Var_Prp                                   'preparar variaveis

entCod$ = ctuCod$                                  'entidade - codigo
entCov$ = ctuCov$                                  'entidade - codigo formatado
entIde$ = ctuNom$                                  'entidade - identificacao

call Com_Txt_LinLis                                'executar linha
end sub


Sub VndArtLis_LinTit1 'titulo 1
call Com_Var_Con                                   'consultar variaveis
call Com_Var_PrpVnd                                'preparar variaveis - vendedor

titIde$ = vndIde$                                  'titulo
call Com_Txt_LinTit1                               'listar
end sub


Sub VndArtLis_LinSbt1 'subtotal 1
call Com_Txt_LinSbt1                               'listar
end sub


Sub VndArtLis_LinTit2 'titulo 2
call Com_Var_Con                                   'consultar variaveis
call Com_Var_PrpArt                                'preparar variaveis - artigo

titIde$ = artIde$                                  'titulo
call Com_Txt_LinTit2                               'listar
end sub


Sub VndArtLis_LinSbt2 'subtotal 2
'sepSbt2 = 0                                        'nao separar subtotal 2
call Com_Txt_LinSbt2                               'listar
end sub


'------------------------------------------------------------------------------
'- [TXT] - Numero de contas por Vendedor/Artigo -------------------------------
'------------------------------------------------------------------------------
Sub VndArtNum_Cab 'cabecalho
comCabTit$ = "Contas por Vendedor/Artigo"          'titulo

call Com_Txt_Cab                                   'listar
end sub


Sub VndArtNum_Fim 'terminar
call Com_Txt_Fim                                   'listar
end sub


Sub VndArtNum_Lin 'linha
call Com_Var_Prp                                   'preparar variaveis

entCod$ = artCod$                                  'entidade - codigo
entCov$ = artCov$                                  'entidade - codigo formatado
entIde$ = artNom$                                  'entidade - identificacao

call Com_Txt_LinNum                                'executar linha
end sub


Sub VndArtNum_LinTit1 'titulo 1
call Com_Var_Con                                   'consultar variaveis
call Com_Var_PrpVnd                                'preparar variaveis - vendedor

titIde$ = vndIde$                                  'titulo
call Com_Txt_LinTit1                               'listar
end sub


Sub VndArtNum_LinSbt1 'subtotal 1
call Com_Txt_LinSbt1                               'listar
end sub


'------------------------------------------------------------------------------
'- [TXT] - Lista de contas por Armazem/Artigo ---------------------------------
'------------------------------------------------------------------------------
Sub ArzArtLis_Cab 'cabecalho
comCabTit$ = "Contas por Armazem/Artigo"           'titulo

call Com_Txt_Cab                                   'listar
end sub


Sub ArzArtLis_Fim 'terminar
call Com_Txt_Fim                                   'listar
end sub


Sub ArzArtLis_Lin 'linha
call Com_Var_Prp                                   'preparar variaveis

entCod$ = ctuCod$                                  'entidade - codigo
entCov$ = ctuCov$                                  'entidade - codigo formatado
entIde$ = ctuNom$                                  'entidade - identificacao

call Com_Txt_LinLis                                'executar linha
end sub


Sub ArzArtLis_LinTit1 'titulo 1
call Com_Var_Con                                   'consultar variaveis
call Com_Var_PrpArz                                'preparar variaveis - armazem

titIde$ = arzIde$                                  'titulo
call Com_Txt_LinTit1                               'listar
end sub


Sub ArzArtLis_LinSbt1 'subtotal 1
call Com_Txt_LinSbt1                               'listar
end sub


Sub ArzArtLis_LinTit2 'titulo 2
call Com_Var_Con                                   'consultar variaveis
call Com_Var_PrpArt                                'preparar variaveis - artigo

titIde$ = artIde$                                  'titulo
call Com_Txt_LinTit2                               'listar
end sub


Sub ArzArtLis_LinSbt2 'subtotal 2
'sepSbt2 = 0                                        'nao separar subtotal 2
call Com_Txt_LinSbt2                               'listar
end sub


'------------------------------------------------------------------------------
'- [TXT] - Numero de contas por Armazem/Artigo --------------------------------
'------------------------------------------------------------------------------
Sub ArzArtNum_Cab 'cabecalho
comCabTit$ = "Contas por Armazem/Artigo"           'titulo

call Com_Txt_Cab                                   'listar
end sub


Sub ArzArtNum_Fim 'terminar
call Com_Txt_Fim                                   'listar
end sub


Sub ArzArtNum_Lin 'linha
call Com_Var_Prp                                   'preparar variaveis

entCod$ = artCod$                                  'entidade - codigo
entCov$ = artCov$                                  'entidade - codigo formatado
entIde$ = artNom$                                  'entidade - identificacao

call Com_Txt_LinNum                                'executar linha
end sub


Sub ArzArtNum_LinTit1 'titulo 1
call Com_Var_Con                                   'consultar variaveis
call Com_Var_PrpArz                                'preparar variaveis - armazem

titIde$ = arzIde$                                  'titulo
call Com_Txt_LinTit1                               'listar
end sub


Sub ArzArtNum_LinSbt1 'subtotal 1
call Com_Txt_LinSbt1                               'listar
end sub


'==============================================================================
'- [XLS] - Listar para XLS ----------------------------------------------------
'==============================================================================
'------------------------------------------------------------------------------
'- [XLS] - Lista de contas por Artigo -----------------------------------------
'------------------------------------------------------------------------------
Sub XlsArtLis_DocIni 'inicializar documento
comXlsFic$ = "StcResCt.xls"                        'nome do ficheiro
comCabTit$ = "Contas por Artigo"                   'titulo

call Com_Xls_DocIni                                'inicializar documento
end sub


Sub XlsArtLis_DocFim 'terminar documento
call Com_Xls_DocFim                                'terminar documento
end sub


Sub XlsArtLis_Fim 'terminar
call Com_Xls_LstTot                                'listar totais
end sub


Sub XlsArtLis_Lin 'linha
call Com_Var_Prp                                   'preparar variaveis
call Com_Xls_IncLin                                'incrementar linha	

entCod$ = ctuCod$                                  'entidade - codigo
entCov$ = ctuCov$                                  'entidade - codigo formatado
entIde$ = ctuNom$                                  'entidade - identificacao

'listar
call Com_Xls_LstLinIde                             'listar identificacao (codigo e nome)
end sub


Sub XlsArtLis_LinTit1 'titulo 1
call Com_Var_Con                                   'consultar variaveis
call Com_Var_PrpArt                                'preparar variaveis - artigo

titIde$ = artIde$                                  'titulo
call Com_Xls_LinTit1                               'listar
end sub


Sub XlsArtLis_LinSbt1 'subtotal 1
call Com_Xls_LinSbt1                               'listar
end sub


'------------------------------------------------------------------------------
'- [XLS] - Numero de contas por Artigo ----------------------------------------
'------------------------------------------------------------------------------
Sub XlsArtNum_DocIni 'inicializar documento
comXlsFic$ = "StcResCt.xls"                        'nome do ficheiro
comCabTit$ = "Contas por Artigo"                   'titulo

call Com_Xls_DocIni                                'inicializar documento
end sub


Sub XlsArtNum_DocFim 'terminar documento
call Com_Xls_DocFim                                'terminar documento
end sub


Sub XlsArtNum_Fim 'terminar
call Com_Xls_LstTot                                'listar totais
end sub


Sub XlsArtNum_Lin 'linha
call Com_Var_Prp                                   'preparar variaveis
call Com_Xls_IncLin                                'incrementar linha	

entCod$ = artCod$                                  'entidade - codigo
entCov$ = artCov$                                  'entidade - codigo formatado
entIde$ = artNom$                                  'entidade - identificacao

'listar
call Com_Xls_LstLinIde                             'listar identificacao (codigo e nome)
call Com_Xls_LstLinNrg                             'listar numero de registos
end sub


'------------------------------------------------------------------------------
'- [XLS] - Lista de contas por Vendedor ---------------------------------------
'------------------------------------------------------------------------------
Sub XlsVndLis_DocIni 'inicializar documento
comXlsFic$ = "StcResCt.xls"                        'nome do ficheiro
comCabTit$ = "Contas por Vendedor"                 'titulo

call Com_Xls_DocIni                                'inicializar documento
end sub


Sub XlsVndLis_DocFim 'terminar documento
call Com_Xls_DocFim                                'terminar documento
end sub


Sub XlsVndLis_Fim 'terminar
call Com_Xls_LstTot                                'listar totais
end sub


Sub XlsVndLis_Lin 'linha
call Com_Var_Prp                                   'preparar variaveis
call Com_Xls_IncLin                                'incrementar linha	

entCod$ = ctuCod$                                  'entidade - codigo
entCov$ = ctuCov$                                  'entidade - codigo formatado
entIde$ = ctuNom$                                  'entidade - identificacao

'listar
call Com_Xls_LstLinIde                             'listar identificacao (codigo e nome)
end sub


Sub XlsVndLis_LinTit1 'titulo 1
call Com_Var_Con                                   'consultar variaveis
call Com_Var_PrpVnd                                'preparar variaveis - vendedor

titIde$ = vndIde$                                  'titulo
call Com_Xls_LinTit1                               'listar
end sub


Sub XlsArtLis_LinSbt1 'subtotal 1
call Com_Xls_LinSbt1                               'listar
end sub


'------------------------------------------------------------------------------
'- [XLS] - Numero de contas por Vendedor --------------------------------------
'------------------------------------------------------------------------------
Sub XlsVndNum_DocIni 'inicializar documento
comXlsFic$ = "StcResCt.xls"                        'nome do ficheiro
comCabTit$ = "Contas por Vendedor"                 'titulo

call Com_Xls_DocIni                                'inicializar documento
end sub


Sub XlsVndNum_DocFim 'terminar documento
call Com_Xls_DocFim                                'terminar documento
end sub


Sub XlsVndNum_Fim 'terminar
call Com_Xls_LstTot                                'listar totais
end sub


Sub XlsVndNum_Lin 'linha
call Com_Var_Prp                                   'preparar variaveis
call Com_Xls_IncLin                                'incrementar linha	

entCod$ = vndCod$                                  'entidade - codigo
entCov$ = vndCov$                                  'entidade - codigo formatado
entIde$ = vndNom$                                  'entidade - identificacao

'listar
call Com_Xls_LstLinIde                             'listar identificacao (codigo e nome)
call Com_Xls_LstLinNrg                             'listar numero de registos
end sub


'------------------------------------------------------------------------------
'- [XLS] - Lista de contas por Armazem ----------------------------------------
'------------------------------------------------------------------------------
Sub XlsArzLis_DocIni 'inicializar documento
comXlsFic$ = "StcResCt.xls"                        'nome do ficheiro
comCabTit$ = "Contas por Armazem"                  'titulo

call Com_Xls_DocIni                                'inicializar documento
end sub


Sub XlsArzLis_DocFim 'terminar documento
call Com_Xls_DocFim                                'terminar documento
end sub


Sub XlsArzLis_Fim 'terminar
call Com_Xls_LstTot                                'listar totais
end sub


Sub XlsArzLis_Lin 'linha
call Com_Var_Prp                                   'preparar variaveis
call Com_Xls_IncLin                                'incrementar linha	

entCod$ = ctuCod$                                  'entidade - codigo
entCov$ = ctuCov$                                  'entidade - codigo formatado
entIde$ = ctuNom$                                  'entidade - identificacao

'listar
call Com_Xls_LstLinIde                             'listar identificacao (codigo e nome)
end sub


Sub XlsArzLis_LinTit1 'titulo 1
call Com_Var_Con                                   'consultar variaveis
call Com_Var_PrpArz                                'preparar variaveis - armazem

titIde$ = arzIde$                                  'titulo
call Com_Xls_LinTit1                               'listar
end sub


Sub XlsArzLis_LinSbt1 'subtotal 1
call Com_Xls_LinSbt1                               'listar
end sub


'------------------------------------------------------------------------------
'- [XLS] - Numero de contas por Armazem ---------------------------------------
'------------------------------------------------------------------------------
Sub XlsArzNum_DocIni 'inicializar documento
comXlsFic$ = "StcResCt.xls"                        'nome do ficheiro
comCabTit$ = "Contas por Armazem"                  'titulo

call Com_Xls_DocIni                                'inicializar documento
end sub


Sub XlsArzNum_DocFim 'terminar documento
call Com_Xls_DocFim                                'terminar documento
end sub


Sub XlsArzNum_Fim 'terminar
call Com_Xls_LstTot                                'listar totais
end sub


Sub XlsArzNum_Lin 'linha
call Com_Var_Prp                                   'preparar variaveis
call Com_Xls_IncLin                                'incrementar linha	

entCod$ = arzCod$                                  'entidade - codigo
entCov$ = arzCov$                                  'entidade - codigo formatado
entIde$ = arzNom$                                  'entidade - identificacao

'listar
call Com_Xls_LstLinIde                             'listar identificacao (codigo e nome)
call Com_Xls_LstLinNrg                             'listar numero de registos
end sub


'------------------------------------------------------------------------------
'- [XLS] - Lista de contas por Vendedor/Artigo --------------------------------
'------------------------------------------------------------------------------
Sub XlsVndArtLis_DocIni 'inicializar documento
comXlsFic$ = "StcResCt.xls"                        'nome do ficheiro
comCabTit$ = "Contas por Vendedor/Artigo"          'titulo

call Com_Xls_DocIni                                'inicializar documento
end sub


Sub XlsVndArtLis_DocFim 'terminar documento
call Com_Xls_DocFim                                'terminar documento
end sub


Sub XlsVndArtLis_Fim 'terminar
call Com_Xls_LstTot                                'listar totais
end sub


Sub XlsVndArtLis_Lin 'linha
call Com_Var_Prp                                   'preparar variaveis
call Com_Xls_IncLin                                'incrementar linha	

entCod$ = ctuCod$                                  'entidade - codigo
entCov$ = ctuCov$                                  'entidade - codigo formatado
entIde$ = ctuNom$                                  'entidade - identificacao

'listar
call Com_Xls_LstLinIde                             'listar identificacao (codigo e nome)
end sub


Sub XlsVndArtLis_LinTit1 'titulo 1
call Com_Var_Con                                   'consultar variaveis
call Com_Var_PrpVnd                                'preparar variaveis - vendedor

titIde$ = vndIde$                                  'titulo
call Com_Xls_LinTit1                               'listar
end sub


Sub XlsVndArtLis_LinSbt1 'subtotal 1
call Com_Xls_LinSbt1                               'listar
end sub


Sub XlsVndArtLis_LinTit2 'titulo 2
call Com_Var_Con                                   'consultar variaveis
call Com_Var_PrpArt                                'preparar variaveis - artigo

titIde$ = artIde$                                  'titulo
call Com_Xls_LinTit2                               'listar
end sub


Sub XlsVndArtLis_LinSbt2 'subtotal 2
'sepSbt2 = 0                                        'nao separar subtotal 2
call Com_Xls_LinSbt2                               'listar
end sub


'------------------------------------------------------------------------------
'- [XLS] - Numero de contas por Vendedor/Artigo -------------------------------
'------------------------------------------------------------------------------
Sub XlsVndArtNum_DocIni 'inicializar documento
comXlsFic$ = "StcResCt.xls"                        'nome do ficheiro
comCabTit$ = "Contas por Vendedor/Artigo"          'titulo

call Com_Xls_DocIni                                'inicializar documento
end sub


Sub XlsVndArtNum_DocFim 'terminar documento
call Com_Xls_DocFim                                'terminar documento
end sub


Sub XlsVndArtNum_Fim 'terminar
call Com_Xls_LstTot                                'listar totais
end sub


Sub XlsVndArtNum_Lin 'linha
call Com_Var_Prp                                   'preparar variaveis
call Com_Xls_IncLin                                'incrementar linha	

entCod$ = artCod$                                  'entidade - codigo
entCov$ = artCov$                                  'entidade - codigo formatado
entIde$ = artNom$                                  'entidade - identificacao

'listar
call Com_Xls_LstLinIde                             'listar identificacao (codigo e nome)
call Com_Xls_LstLinNrg                             'listar numero de registos
end sub


Sub XlsVndArtNum_LinTit1 'titulo 1
call Com_Var_Con                                   'consultar variaveis
call Com_Var_PrpVnd                                'preparar variaveis - vendedor

titIde$ = vndIde$                                  'titulo
call Com_Xls_LinTit1                               'listar
end sub


Sub XlsVndArtNum_LinSbt1 'subtotal 1
call Com_Xls_LinSbt1                               'listar
end sub


'------------------------------------------------------------------------------
'- [XLS] - Lista de contas por Armazem/Artigo ---------------------------------
'------------------------------------------------------------------------------
Sub XlsArzArtLis_DocIni 'inicializar documento
comXlsFic$ = "StcResCt.xls"                        'nome do ficheiro
comCabTit$ = "Contas por Armazem/Artigo"           'titulo

call Com_Xls_DocIni                                'inicializar documento
end sub


Sub XlsArzArtLis_DocFim 'terminar documento
call Com_Xls_DocFim                                'terminar documento
end sub


Sub XlsArzArtLis_Fim 'terminar
call Com_Xls_LstTot                                'listar totais
end sub


Sub XlsArzArtLis_Lin 'linha
call Com_Var_Prp                                   'preparar variaveis
call Com_Xls_IncLin                                'incrementar linha	

entCod$ = ctuCod$                                  'entidade - codigo
entCov$ = ctuCov$                                  'entidade - codigo formatado
entIde$ = ctuNom$                                  'entidade - identificacao

'listar
call Com_Xls_LstLinIde                             'listar identificacao (codigo e nome)
end sub


Sub XlsArzArtLis_LinTit1 'titulo 1
call Com_Var_Con                                   'consultar variaveis
call Com_Var_PrpArz                                'preparar variaveis - armazem

titIde$ = arzIde$                                  'titulo
call Com_Xls_LinTit1                               'listar
end sub


Sub XlsArzArtLis_LinSbt1 'subtotal 1
call Com_Xls_LinSbt1                               'listar
end sub


Sub XlsArzArtLis_LinTit2 'titulo 2
call Com_Var_Con                                   'consultar variaveis
call Com_Var_PrpArt                                'preparar variaveis - artigo

titIde$ = artIde$                                  'titulo
call Com_Xls_LinTit2                               'listar
end sub


Sub XlsArzArtLis_LinSbt2 'subtotal 2
'sepSbt2 = 0                                        'nao separar subtotal 2
call Com_Xls_LinSbt2                               'listar
end sub


'------------------------------------------------------------------------------
'- [XLS] - Numero de contas por Armazem/Artigo --------------------------------
'------------------------------------------------------------------------------
Sub XlsArzArtNum_DocIni 'inicializar documento
comXlsFic$ = "StcResCt.xls"                        'nome do ficheiro
comCabTit$ = "Contas por Armazem/Artigo"           'titulo

call Com_Xls_DocIni                                'inicializar documento
end sub


Sub XlsArzArtNum_DocFim 'terminar documento
call Com_Xls_DocFim                                'terminar documento
end sub


Sub XlsArzArtNum_Fim 'terminar
call Com_Xls_LstTot                                'listar totais
end sub


Sub XlsArzArtNum_Lin 'linha
call Com_Var_Prp                                   'preparar variaveis
call Com_Xls_IncLin                                'incrementar linha	

entCod$ = artCod$                                  'entidade - codigo
entCov$ = artCov$                                  'entidade - codigo formatado
entIde$ = artNom$                                  'entidade - identificacao

'listar
call Com_Xls_LstLinIde                             'listar identificacao (codigo e nome)
call Com_Xls_LstLinNrg                             'listar numero de registos
end sub


Sub XlsArzArtNum_LinTit1 'titulo 1
call Com_Var_Con                                   'consultar variaveis
call Com_Var_PrpArz                                'preparar variaveis - armazem

titIde$ = arzIde$                                  'titulo
call Com_Xls_LinTit1                               'listar
end sub


Sub XlsArzArtNum_LinSbt1 'subtotal 1
call Com_Xls_LinSbt1                               'listar
end sub

##


'==============================================================================
#INC - Funcoes comuns
'==============================================================================
Funcoes comuns                         =[SIG_Dir.Div],LsComPgm.std
Funcoes comuns XLS                     =[SIG_LST_DIR.XLS],XlsCom_Pgm.inc
##
