'Nome       : StcTbc.std
'Tipo       : LST
'Data       : 2006/09/28
'Versao     : 2.0
'Descricao  : Listagens para Artigos Compostos

'==============================================================================
'#VER - Historia de Modificacoes
'==============================================================================
'- Versao : 1.2  2006/09/28 --------------------------------------------------
'correcção estetica listagens graficas

'- Versao : 1.1b  2005/10/24 --------------------------------------------------
'correcção ortográfica

'- Versao : 1.1a  2003/09/04 --------------------------------------------------
'apenas permitia impressao de quantidades de componentes com 2 digitos
'Ajuste nos decimais dos campos de valor
'Impressao grafica

'- Versao : 1.1   2002/10/08 --------------------------------------------------
'Analise de existencias

'- Versao : 1.0   1998/10/07 --------------------------------------------------
'Versao base


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


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


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=Cst
Nome                       [DocNom]=CstL,Custo de Artigos

'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]=Cst_Cab
Listar linhas               [FxLIN]=Cst_;Lin;Inf;Tot
Listar fim                  [FxFIM]=Cst_Fim
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=Cst
Nome                       [DocNom]=Anl,Análise de Existências

'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]=Anl_Cab
Listar linhas               [FxLIN]=Anl_;Lin;Inf;Tot
Listar fim                  [FxFIM]=Anl_Fim
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=Cst
Nome                       [DocNom]=CstL_G,Custo de Artigos

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

'funcoes de listagem
Listar cabecalho            [FxCAB]=CstG_Cab
Listar linhas               [FxLIN]=CstG_;Lin;Inf;Tot
Listar fim                  [FxFIM]=CstG_Fim
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Tipo                       [DocTip]=Cst
Nome                       [DocNom]=Anl_G,Análise de Existências

'formato
Saida/Impressora           [DocPrt]=PAG_W
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]=AnlG_Cab
Listar linhas               [FxLIN]=AnlG_;Lin;Inf;Tot
Listar fim                  [FxFIM]=AnlG_Fim
##


'==============================================================================
#VAR - Variaveis
'==============================================================================
Pag      =Doc_CntPag
DataExt  =FrmVal$(Sig_DtHoje,45,0)

'variaveis a listar
Art      =StcCodFrm$(Stc_Tbc_Art$)   
ArtNom   =Stc_Mst_Nome1$
ArtNom2  =left$(Stc_Mst_Nome1$,35)
ArtQu    =FrmVal$(MemNum(20),21,6.2)

CmpArt   =stccodfrm$(Stc_Tbc_Cmp$)
CmpQv    =StcQuFrm$(Stc_Tbc_Qv,10,"")

CmpVu    =StcPrcFrm$(8,MemNum(21))
CmpQvT   =StcPrcFrm$(8,MemNum(22))
CmpVTot  =StcPrcFrm$(8,MemNum(23))

CmpTc    =Stc_Tbc_Tc
TotVtot  =StcPrcFrm$(8,Total(cmpvtot,1))
TotGer   =FrmMoe$("",8,Total(totVTot,2))

QExi    = StcQuFrm$(StcValCon(Stc_Mst_Art$,"EXI_Q",0,0),8,"")
Qnt1    = StcQuFrm$(StcValCon(Stc_Mst_Art$,"EXI_Q",0,1),8,"")
Qnt2    = StcQuFrm$(StcValCon(Stc_Mst_Art$,"EXI_Q",0,2),8,"")
Qnt3    = StcQuFrm$(StcValCon(Stc_Mst_Art$,"EXI_Q",0,3),8,"")
##


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



'==============================================================================
#PGM - Programa/Funcoes
'==============================================================================
SUB Lst_AJT
end sub

'-----------------------------------------------------------------------------
' Formato do documento
'-----------------------------------------------------------------------------

'- Precario de Artigos -------------------------------------------------------
SUB Cst_Cab
FxDiv LstIde,16CPI,0
print TxTit$("TT=16CPI, LD, PT=66C, TL=16CPI","Custo de Artigos")
?Data :  @DataExt                                                                                                  Folha No : @Pag#
?===================================================================================================================================
?     Artigo         Codigo                    Nome                Quant./Valor   V. Unitario      Q/V Total        V.Total     
?===================================================================================================================================
end sub


SUB Cst_Lin
?                    @CmpArt           @ArtNom                      @CmpQv         @CmpVu           @CmpQvt       @CmpVtot       #
end sub


SUB Cst_Inf
PrtCmd$("[10CPILD]")
?@Art                @ArtNom                                          @ArtQu                                                        #
PrtCmd$("[16CPILN]")
end sub


Sub Cst_Tot
?                                            Total :                                                              @TotVtot         #
x=totlpz(1)
end Sub


SUB Cst_Fim
?===================================================================================================================================
?                                            Total dos Custos :                                                   @TotGer          #
?===================================================================================================================================
FxDiv LstPer,SP
'call PrtCmd$("[SP]");
end sub



'- Analise de existencia -------------------------------------------------------
SUB Anl_Cab
FxDiv LstIde,16CPI,0
print TxTit$("TT=16CPI, LD, PT=66C, TL=16CPI","Analise de existencia")
Print PrtCmd$("[16CPILN]");
?Data :  @DataExt                                                                                                  Folha No : @Pag#
?===================================================================================================================================
?     Artigo                          Nome                     Exist. Total       Armazem 1        Armazem 2         Armazem 3
?===================================================================================================================================
end sub


SUB Anl_Lin
?  @CmpArt           @ArtNom                                      @Qexi             @Qnt1            @Qnt2             @Qnt3     #
end sub


SUB Anl_Inf
PrtCmd$("[16CPILD]");
?@Art               @ArtNom                                                 #
PrtCmd$("[10CPILN]");
end sub


SUB Anl_Fim
?===================================================================================================================================
FxDiv LstPer,SP
End sub


'------------------------------------------------------------------------------
' *****  Formato dos documentos em modo grafico  ****
'------------------------------------------------------------------------------
SUB FxIni 'funcao de inicializacao
Call SigLstIni
FimDoc=272
End sub


'---------Custo de artigos-----------------(Grafico) --------------------------
'---------Custo de artigos---------------------------------- CABECALHO --------
Sub CstG_Cab
SigCabNorOpcTit=2 		                 'alterar origem do titulo
Titulo$="Custo de Artigos"
Call SigLstCab

Lin1=0.5     'linha 1
Lin2=5       'linha 2

TCol1 =  4
TCol2 = 39
TCol3 = 70
TCol4 =100
TCol5 =123
TCol6 =146
TCol7 =169
TCol8 =190
Cmax=TCol8

PrWIN COR_T,  CorTitLst                        'cor de titulo
PrWIN FON  ,    9,   1                        	'activar fonte
PrWIN AJT_B,  Margem, 26                    	'posicao base

PrWIN FON, "BOLD+"
PrWIN TX_N,  TCol1,Lin1,"Artigo"
PrWIN TX_N,  TCol2,Lin1,"Código"
PrWIN TX_N,  TCol3,Lin1,"Nome"
PrWIN TX_N,  TCol4,Lin1,"Quant./Valor"
PrWIN TX_N,  TCol5,Lin1,"V. Unitário"
PrWIN TX_N,  TCol6,Lin1,"Q/V Total
PrWIN TX_N,  TCol7,Lin1,"V Total"
PrWIN FON, "BOLD-"

PrWIN COR_T,CorTraco                            'cor de linhas
PrWIN GR_LI, 0, 0, Cmax, 0                      'linha
PrWIN GR_LI, 0, 5, Cmax, 5                      'linha

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


'---------Custo de artigos---------------------------------- LINHA -----------
Sub CstG_Lin 'linha
LCol1 =  0
LCol2 = 33
LCol3 = 70
LCol4 =103
LCol5 =128
LCol6 =152
LCol7 =177
LCol8 =190
LCmax=lCol8

PrWIN AJT_B,  Margem, InicioLinhas+Doc_CntLin*4          	'posicao base
PrWIN COR_T,    CorLin
PrWIN TX_NP,   LCol2,0            ,"N", @CmpArt
PrWIN TX_DMX,  LCol3,0,lCol4-lCol3,     @ArtNom
PrWIN TX_NP,   LCol4,0            ,"N", @CmpQv
PrWIN TX_NP,   LCol5,0            ,"N", @CmpVu
PrWIN TX_NP,   LCol6,0            ,"N", @CmpQvt
PrWIN TX_NP,   LCol7,0            ,"N", @CmpVtot
End sub


'---------Custo de artigos---------------------------------- TITULO -----------
Sub CstG_Inf 'titulo
PrWIN AJT_B,  Margem, InicioLinhas+Doc_CntLin*4          	'posicao base
PrWIN COR_T,    LCorLin
PrWIN FON,"BOLD+"                                               'activar bold
PrWIN TX_NP,    LCol1,0          ,"N", @Art
PrWIN TX_N,     LCol2,0,               @ArtNom
PrWIN COR_T,    CorLin
PrWIN TX_NP,    LCol4,0          ,"N", @Artqu
PrWIN FON,"BOLD-"                                               'desactivar bold
end Sub


'---------Custo de artigos---------------------------------- TOTAIS -----------
Sub CstG_Tot
PrWIN AJT_B,  Margem, InicioLinhas+Doc_CntLin*4          	'posicao base
PrWIN GR_LI, 0, 0, Cmax, 0                                      'linha
PrWIN COR_T,  CorTit                                         'cor de titulo

PrWIN FON,"BOLD+"                                               'activar bold
PrWIN TX_N,    LCol4-8,0,               "Total :"
PrWIN TX_NP,   LCol7,0          ,"N", @TotVtot
PrWIN COR_T,    CorLin
PrWIN GR_LI, 0, 4, Cmax, 4                                      'linha
PrWIN FON,"BOLD-"                                               'desactivar bold
x=totlpz(1)
tmp=CntLin("INC",1)                                             'contar linha
end Sub


'---------Custo de artigos---------------------------------- FIM ---------------
SUB CstG_Fim
PrWIN COR_T,CorTraco                            'cor de linhas
PrWIN AJT_B,Margem,FimDoc-4                     'posicao base
PrWIN GR_LI,     0,  0, Cmax, 0            	'linha
PrWIN GR_LI,     0,  4, Cmax, 4            	'linha

PrWIN COR_T,     CorTotGer                      'cor para totais
PrWIN FON,"BOLD+"                               'activar bold
PrWIN TX_N,      LCol4-8,0   ,"Total de Custos"
PrWIN TX_NP,     LCol7   ,0  ,"N",@TotGer
PrWIN FON,"BOLD-"                               'desactivar bold
Call SigLstRod
PrWin FP
end sub



'---Analise de existencias-------------------(GRAFICO) -------------------------
'---Analise de existencias----------------------------------- CABECALHO --------
Sub AnlG_Cab
SigCabNorOpcTit=2 		                 'alterar origem do titulo
Titulo$="Análise de Existências"
Call SigLstCab

Lin1=1                            		'linha 1
Lin2=5                                    'linha2
esp=23

Col1=0
Col2=20
Col3=40
Col4=100
Col5=Col4+esp
Col6=Col5+esp
Col7=Col6+esp
Col8=Col7+esp
Cmax=190

PrWIN COR_T,  CorTitLst                        'cor de titulo
PrWIN FON  ,   9,   1                        	'activar fonte
PrWIN AJT_B,  Margem, 26                    	'posicao base

PrWIN FON, "BOLD+"
PrWIN TX_CTR,  Col1,Lin1,Col2,Lin1,"Artigo"
PrWIN TX_CTR,  Col2,Lin1,Col3,Lin1,"Código"
PrWIN TX_CTR,  Col3,Lin1,Col4,Lin1,"Nome"
PrWIN TX_N,    Col4,Lin1,"Exist.Total"
PrWIN TX_N,    Col5,Lin1,"Armazém 1"
PrWIN TX_N,    Col6,Lin1,"Armazém 2"
PrWIN TX_N,    Col7,Lin1,"Armazém 3"
PrWIN FON, "BOLD-"

PrWIN COR_T,CorTraco                            'cor de linhas
PrWIN GR_LI, 0, 0, Cmax, 0                      'linha
PrWIN GR_LI, 0, 5, Cmax, 5                      'linha

PrWIN FON  ,   9,   1                           'activar fonte
PrWIN COR_T,CorLin                              'cor de linhas
InicioLinhas=28
end sub


'---Analise de existencias----------------------------------- LINHA -----------
Sub AnlG_Lin
PrWIN AJT_B,  Margem, InicioLinhas+Doc_CntLin*4          	'posicao base
PrWIN COR_T,    CorLin
PrWIN TX_NP,    Col2,0          ,"N", @CmpArt
PrWIN TX_DMX,   Col3,0,Col4-Col3,     @ArtNom
PrWIN TX_NP,    Col4,0          ,"N", @Qexi
PrWIN TX_NP,    Col5,0          ,"N", @Qnt1
PrWIN TX_NP,    Col6,0          ,"N", @Qnt2
PrWIN TX_NP,    Col7,0          ,"N", @Qnt3
End sub


'---Analise de existencias----------------------------------- TITULO ----------
Sub AnlG_Inf
PrWIN AJT_B,  Margem, InicioLinhas+Doc_CntLin*4          	'posicao base
PrWIN COR_T,    LCorLin
PrWIN FON, "BOLD+"
PrWIN TX_NP,    Col1,0          ,"N", @Art
PrWIN TX_N,     Col2+13,0,            @ArtNom
PrWIN FON, "BOLD-"
PrWIN COR_T,    CorLin
end Sub


'---Analise de existencias----------------------------------- FIM  ------------
SUB AnlG_Fim
PrWIN COR_T,CorTraco                            'cor de linhas
PrWIN AJT_B,Margem,FimDoc                     'posicao base
PrWIN GR_LI, 0, 0, Cmax, 0                      'linha
Call SigLstRod
PrWin FP
end sub
##


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

