'Nome       : Vnd_Fac.ipw
'Tipo       : LST
'Data       : 2011/03/29
'Versao     : 1.0d
'Descricao  : Factura - Modo grafico

'==============================================================================
'#VER - Historia de modificacoes
'==============================================================================
'- Versao : 1.0d  2011/03/29 --------------------------------------------------
'na sequencia linha para recolher centro de custo por linha

'- Versao : 1.0c  2011/01/26 --------------------------------------------------
'Correccao para documentos certificados com mais que 1 página

'- Versao : 1.0b  2010/12/14 --------------------------------------------------
'Adaptação nas sequencias de Razão da NC e isencao IVA

'- Versao : 1.0b  2010/12/06 --------------------------------------------------
'Correccao impressão de linhas com nome artigo alterado (DocLinNorIde)

'- Versao : 1.0a  2010/11/09 --------------------------------------------------
'Permitir seleccionar aspecto para documento anulado

'- Versao : 1.0   2010/11/01 --------------------------------------------------
'Versao base
'Adaptacao de StdFac.ipw


'==============================================================================
#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]=?

'Artigos fixos a recolher       [DocArtFix]=*:*,PORTES,MOB:1
'Formato para definicao de artigos fixos:
' [DocArtFix]=art1:max1,art2:max2, ...
'              |    |
'              |    +-> Vezes a recolher (maximo)
'              |        Se nao for indicado e considerado 1 (neste caso nao usar o separador ':')
'              |        Se for indicado '*' nao e limitado o numero de vezes de recolha
'              |
'              +------> Artigo fixo a usar.
'                       Se for indicado '*' pode ser usado qualquer artigo
##


'==============================================================================
#DOC - Configuracao do documento
'==============================================================================
Nome                       [DocNom]=Factura
Vias                       [DocVia]=Original
'Vias                       [DocVia]=Original;Duplicado;Triplicado

Tipo                       [DocTip]=
Dados especificos          [DocEsp]=ESP1,FAC

'formato
Saida/Impressora           [DocPrt]=PAG_W
'Saida/Impressora           [DocPrt]=PAG_W,PRV

Linhas por pagina          [DocLpg]=18
Formato do papel           [DocPap]=72L
Ajustar pagina             [DocApg]=3


'funcoes de listagem
Listar cabecalho            [FxCAB]=DocCab
Listar linhas               [FxLIN]=DocLin; Nor; Ajt; Txl; Med; Pmo; Doc; Cor; Ide; Lot,2; Eco_Art; Eco_Dis; Agp
Listar fim                  [FxFIM]=DocFim
##


'==============================================================================
'#DOC - Configuracao do documento
'==============================================================================
'Nome                       [DocNom]=Factura - Via especial
'Vias                       [DocVia]=Especial
'Tipo                       [DocTip]=
'Personalizacao             [DocPer]=
'Dados especificos          [DocEsp]=ESP1,FAC
'Dados especificos          [DocEsp]=ESP2,GRM

''formato
'Impressora                 [DocPrt]=
''Impressora                 [DocPrt]=PR02

'Linhas por pagina          [DocLpg]=20
'Formato do papel           [DocPap]=72L
'Ajustar pagina             [DocApg]=3
'
''funcoes de listagem
'Listar cabecalho            [FxCAB]=DocCabEsp
'Listar linhas               [FxLIN]=DocLinEsp; Nor; ...
'Listar fim                  [FxFIM]=DocFimEsp
'##


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

'descricao da empresa 
EmpNome  = Emp_Inf_Nome$
EmpMorada= Emp_Inf_Morada$
EmpLocal = Emp_Inf_Local$
EmpCpost = Emp_Inf_Cpost$
EmpTel   = Emp_Inf_Telef$
EmpFax   = Emp_Inf_Fax$
EmpCtrb  = Emp_Inf_Contrib$
EmpTps   = Emp_Inf_NatJur$
EmpReg   = Emp_Inf_NumReg$

'indicacao do destinatario do documento
Ct       = Cta_Mst_Ct$
Nome     = VarAlt$("Enc_Mst","Cta_Mst_Nome$")
Morada   = VarAlt$("Enc_Mst","Cta_Ang_Morada$")
Local    = VarAlt$("Enc_Mst","Cta_Ang_Local$")
Cpost    = VarAlt$("Enc_Mst","Cta_Ang_Cpost$")
Ctrb     = VarAlt$("Enc_Mst","Cta_Mst_Ctrb$")

'linhas do documento
LinArt   = Stc_Mst_Art$
LinOpcCor= TxIde$(Enc_Mov_Opc$,"COR")   
ArtIde   = TxIde$(Enc_Mov_Opc$,"OPCIDE")   
LinNome  = EncArtIde$("")
LinQu    = StcQuFrm$(Doc_Art_Qu,13,"")
LinUni   = Stc_Mst_Unid$
LinDesco = Enc_Mov_Desco$
LinMedTx = Enc_Mov_MedTxt$
LinLote  = Enc_Mov_Lote$

LinLiq   = FrmMoe$("",14,Doc_Art_Liq)
LinPrc   = StcPrcFrm$(14,Doc_Art_Prc)

LinPrc2  = FrmVal$(MoeCnv("N",Doc_Art_Prc,Enc_Mst_Moeda,2),21,10.2)
LinLiq2  = FrmVal$(MoeCnv("N",Doc_Art_Liq,Enc_Mst_Moeda,2),21,10.2)
MoedaExt = "Valores na moeda Euro :"

LinPrcEsc  = FrmVal$(MoeCnv("N",Doc_Art_Prc,Enc_Mst_Moeda,1),21,10.2)
LinLiqEsc  = FrmVal$(MoeCnv("N",Doc_Art_Liq,Enc_Mst_Moeda,1),21,10.2)
TxMoedaEsc = "Valores em escudos :"

Iva        = IvaTax$("A")+"%"
LinTxl     = Enc_Mov_Div$
DocArtQuM  = FrmVal$(Doc_Art_QuM,21,5.3)
DocArtMedV = FrmVal$(Doc_Art_MedVal,21,5.3)

'valores de iva/taxas do documento
'Ver funcao EncDocCom_PrpLstIva no ficheiro EncDocCom_Pgm.inc

'totais do documento
DocDesco = FrmMoe$("",15,Ado_Tot_Desco)
DocIlq   = FrmMoe$("",15,Ado_Tot_Ilq)
DocLiq   = FrmMoe$("",15,Ado_Tot_Liq)
DocPort  = FrmMoe$("",15,Ado_Tot_Ext)
DocIvaSuj= FrmMoe$("",15,Ado_Tot_IvaSuj)
DocInc   = FrmMoe$("",15,Ado_Tot_Inc)
DocIva   = FrmMoe$("",15,Ado_Tot_Iva)
DocIlq   = FrmMoe$("",15,Ado_Tot_Ilq)
DocLiq   = FrmMoe$("",15,Ado_Tot_Liq)
DocTot   = FrmMoe$("",15,Ado_Tot_Tot)

'informacoes sobre o documento
Vend      = "("+Enc_Mst_Vend+") "+EmpTabCon$("Vend",Enc_Mst_Vend,"Nome")
Cpag      = EmpTabCon$("Cpag",Enc_Mst_CpagCod,"Des")

DocNome   = Doc_Ide_Nome$
'DocNome   = Doc_Ide_Sdoc$

DocNum    = FrmNdo$("",Enc_Mst_Tdoc$,Enc_Mst_Ndoc$)
DocVia    = Doc_Ide_Via$
DocDtl    = FrmVal$(Doc_Ide_Dtl,44,0)
DocDtv    = FrmVal$(Doc_Ide_Dtv,44,0)
DocOrg    = VarAlt$("ENC_MST","Emp_Inf_Local$")
DocDest   = VarAlt$("ENC_MST","Cta_Ang_Local$,LocEnt$")
Viatura   = TxIde$(Enc_Mst_Opc$,"MAT")
HorSai    = FrmVal$(Enc_Mst_HrSai,53,0)

DocRcNum  = DocRcNum$
DocRcDtl  = DocRcDtl$
DocRcDtv  = DocRcDtv$

'listar documentos
DocIde    = Enc_Mst_Tdoc$+" "+FrmNdo$("",Enc_Mst_Tdoc$,Enc_Mst_Ndoc$)
'DocIde    = Enc_Mst_Descr$

DocVl     = FrmVal$(Doc_Tot_Tot,21,13.2)
pIvaI1    = FrmVal$(IvaInc("T",1),21,10.2)
pIvaV1    = FrmVal$(IvaVal("T",1),21,10.2)
pDocIva   = FrmVal$(Doc_Tot_Iva,21,13.2)
pDocTot   = FrmVal$(Doc_Tot_Tot,21,13.2)
PDocDtl   = FrmVal$(Doc_Mst_Dtl,44,0)

Abv1 = EmpTabCon$("MOEDA",Enc_Mst_Moeda,"ABRV")

MoedaAbv1 = MoedaAbv1$
LinInf1   = LinInf1$
Ecovalor  = FrmNum$(12.2,CtpVl(93,"T"))              'valor total ecovalor

TipRec    = left$(Enc_Mov_TipRI$,3)
##


'==============================================================================
#INC - Inclusao de funcionalidades
'==============================================================================
Variaveis para certificacao       =[SIG_DOC_DIR.ENC],EncDocCer_Var.inc
Variaveis para IVA                =[SIG_DOC_DIR.ENC],EncDocCom_Var.inc
##


'==============================================================================
#SEQ - Sequencias para recolha de artigos
'==============================================================================
'------------------------------------------------------------------------------
'#NOR - Tipo Normal
'------------------------------------------------------------------------------
Identificacao de sequencia [IDS]=NOR
Codigos validos            [ID1]=*
Codigos invalidos          [ID0]=PORTE,MOBRA

'Modos de uso               [IDM]=Rec,Cor

Funcao : Recolha       [FX,REC ]=REC; EXE
Funcao : Corrigir      [FX,COR ]=COR; EXE
Funcao : Executar      [FX,EXE ]=*
Recolha automatica           [E]=RAUTO
'Campo opcional              [E]=OPC Var$,Descricao,Tipo(A/N)+Dig
'Campo opcional              [E]=OPC CCU.ADI,CCU Adicional,A10

Quantidade                   [E]=QU; ESC:LPL
'Quantidade 2                [E]=QU2
Preco                        [E]=PRC 0,-1
Desconto                     [E]=DES
Razao NCR                    [E]=NCR_RAZ [USO=AUT]
Iva                          [E]=IVA [ISE=]

'Funcao e Mensagem (MsgBox)   [E]=FxExe UtzMsgBox
'Funcao e Mensagem (Sbar)     [E]=FxExe UtzMsgSbar
'Mensagem em MsgBox           [E]=MsgBox "",Titulo,Linha1|Linha2
'Mensagem em Status Bar       [E]=MsgSbar 1,Msg painel 1
'Esperar (segundos)           [E]=EspSeg 2

Total                  [E,TOT  ]=TOT
Confirmar linha              [E]=CFL; CF2:ALT, ESC:LPL
Registar                     [E]=REG
Fim de sequencia             [E]=FIM

'alterar dados
Inicio de alteracao    [E,ALT  ]=ALT
'Campo opcional 1            [E]=OPC 1
Quantidade                   [E]=QU
Preco                        [E]=PRC 0,-1
Desconto                     [E]=DES
Razao NCR                    [E]=NCR_RAZ [USO=AUT]
Iva                          [E]=IVA [ISE=]; TOT

'anulacao
Limpar linha           [E,LPL  ]=LPL
Fim de sequencia             [E]=FIM


'------------------------------------------------------------------------------
'#LOT - Tipo Lotes
'------------------------------------------------------------------------------
Identificacao de sequencia [IDS]=LOT
Codigos validos            [ID1]=
Codigos invalidos          [ID0]=

Funcao : Recolha       [FX,REC ]=REC; EXE
Funcao : Corrigir      [FX,COR ]=COR; EXE
Funcao : Executar      [FX,EXE ]=*
Recolha automatica           [E]=RAUTO

'Campo opcional              [E]=OPC Var$,Descricao,Tipo(A/N)+Dig

'Quantidade                   [E]=QU; ESC:LPL
'Quantidade 2                [E]=QU2

Lotes                        [E]=LOTSEL; ESC:LPL
Preco                        [E]=PRC 0,-1
Desconto                     [E]=DES
Razao NCR                    [E]=NCR_RAZ [USO=AUT]
Iva                          [E]=IVA

Total                  [E,TOT  ]=TOT
Confirmar linha              [E]=CFL; CF2:ALT, ESC:LPL
Registar                     [E]=REG
Fim de sequencia             [E]=FIM

'alterar dados
Inicio de alteracao    [E,ALT  ]=ALT
'Campo opcional 1            [E]=OPC 1
'Quantidade                   [E]=QU

Lotes                        [E]=LOTSEL; ESC:LPL
Preco                        [E]=PRC 0,-1
Desconto                     [E]=DES
Razao NCR                    [E]=NCR_RAZ [USO=AUT]
Iva                          [E]=IVA [ISE=]; TOT

'anulacao
Limpar linha           [E,LPL  ]=LPL
Fim de sequencia             [E]=FIM


'------------------------------------------------------------------------------
'#COR - Linha com campos opcionais 
'------------------------------------------------------------------------------
' Deficinao de Campos opcionais  ex:Cor

' linha para sequencia                     [E]=OPC Var$,Descricao,Tipo(A/N)+Dig
'               Campo opcional Cor         [E]=OPC COR,Cor escolhida,A15

' definir a linha no cabecalho do documento e no documento com o nome "COR"
'
' Indicar no artigo o tipo de linha da identificacao de sequencia 
' neste caso "COR"
'------------------------------------------------------------------------------
Identificacao de sequencia [IDS]=COR
Codigos validos            [ID1]=*
Codigos invalidos          [ID0]=PORTE,MOBRA
'Modos de uso               [IDM]=Rec,Cor

Funcao : Recolha       [FX,REC ]=REC; EXE
Funcao : Corrigir      [FX,COR ]=COR; EXE
Funcao : Executar      [FX,EXE ]=*
Recolha aautomatica          [E]=RAUTO
Campo opcional 1             [E]=OPC COR,Cor,A15
Campo opcional 2             [E]=OPC XYZ,Opcao XYZ,A5
Quantidade                   [E]=QU; ESC:LPL
Quantidade 2                 [E]=QU2
Preco                        [E]=PRC 0,-1
Desconto                     [E]=DES
Razao NCR                    [E]=NCR_RAZ [USO=AUT]
Iva                          [E]=IVA [ISE=]

Total                  [E,TOT  ]=TOT
Confirmar linha              [E]=CFL; CF2:ALT, ESC:LPL
Registar                     [E]=REG
Fim de sequencia             [E]=FIM

'alterar dados
Inicio de alteracao    [E,ALT  ]=ALT
'Campo opcional 1            [E]=OPC 1
Quantidade                   [E]=QU
Preco                        [E]=PRC 0,-1
Desconto                     [E]=DES
Razao NCR                    [E]=NCR_RAZ [USO=AUT]
Iva                          [E]=IVA [ISE=]; TOT

'anulacao
Limpar linha           [E,LPL  ]=LPL
Fim de sequencia             [E]=FIM


'------------------------------------------------------------------------------
'#PMO - Tipo Valor total (portes e Mao de obra)
'------------------------------------------------------------------------------
Identificacao de sequencia [IDS]=PMO
Codigos validos            [ID1]=PORTE,MOBRA
Codigos invalidos          [ID0]=

Funcao : Recolha       [FX,REC ]=REC; EXE
Funcao : Corrigir      [FX,COR ]=COR; EXE
Funcao : Executar      [FX,EXE ]=*
Recolha automatica           [E]=RAUTO
Preco                        [E]=PRC 0,-1
Desconto                     [E]=DES
Razao NCR                    [E]=NCR_RAZ [USO=AUT]
Iva                          [E]=IVA [ISE=]
Total                  [E,TOT  ]=TOT
Confirmar linha              [E]=CFL; CF2:ALT, ESC:LPL
Registar                     [E]=REG
Fim de sequencia             [E]=FIM

Inicio de alteracao    [E,ALT  ]=ALT
Preco                        [E]=PRC 0,-1
Desconto                     [E]=DES
Razao NCR                    [E]=NCR_RAZ [USO=AUT]
Iva                          [E]=IVA [ISE=]; TOT

'anulacao
Limpar linha           [E,LPL  ]=LPL
Fim de sequencia             [E]=FIM


'------------------------------------------------------------------------------
'#MED - Tipo Medidas
'------------------------------------------------------------------------------
Identificacao de sequencia [IDS]=MED
Codigos validos            [ID1]=MED
Codigos invalidos          [ID0]=

Funcao : Recolha       [FX,REC ]=REC; EXE
Funcao : Corrigir      [FX,COR ]=COR; EXE
Funcao : Executar      [FX,EXE ]=*
Recolha automatica           [E]=RAUTO
Quantidade                   [E]=QU
Medidas (altera se nulo)     [E]=MED
'Medidas (forca alteracao)    [E]=MED ALT
'Esperar (segundos)           [E]=EspSeg 2
Preco                        [E]=PRC 0,-1
Desconto                     [E]=DES
Razao NCR                    [E]=NCR_RAZ [USO=AUT]
Iva                          [E]=IVA [ISE=]
Total                  [E,TOT  ]=TOT
Confirmar linha              [E]=CFL; CF2:ALT, ESC:LPL
Registar                     [E]=REG
Fim de sequencia             [E]=FIM

Inicio de alteracao    [E,ALT  ]=ALT
Medidas (forca alteracao)    [E]=MED ALT
Preco                        [E]=PRC 0,-1
Desconto                     [E]=DES
Razao NCR                    [E]=NCR_RAZ [USO=AUT]
Iva                          [E]=IVA [ISE=]; TOT

'anulacao
Limpar linha           [E,LPL  ]=LPL
Fim de sequencia             [E]=FIM


'------------------------------------------------------------------------------
'#TXL - Tipo Texto livre
'------------------------------------------------------------------------------
Identificacao de sequencia [IDS]=TXL
Codigos validos            [ID1]=
Codigos invalidos          [ID0]=
'Modos de uso               [IDM]=Rec:RTX; Alt:RTX; Cor:RTX

Funcao : Recolha       [FX,REC ]=REC; EXE
Funcao : Corrigir      [FX,COR ]=COR; EXE
Funcao : Executar      [FX,EXE ]=*
Texto                  [E,RTX  ]=TXL
Recolha automatica           [E]=RAUTO
Confirmar linha              [E]=CFL; CF2:RTX, ESC:LPL
Registar                     [E]=REG
Fim de sequencia             [E]=FIM

'anulacao
Limpar linha           [E,LPL  ]=LPL
Fim de sequencia             [E]=FIM


'------------------------------------------------------------------------------
'#IDE - Linha artigo com nome livre 
'------------------------------------------------------------------------------
Identificacao de sequencia [IDS]=IDE
Codigos validos            [ID1]=
Codigos invalidos          [ID0]=
'Modos de uso               [IDM]=Rec,Cor

Funcao : Recolha       [FX,REC ]=REC; EXE
Funcao : Corrigir      [FX,COR ]=COR; EXE
Funcao : Executar      [FX,EXE ]=*
Recolha aautomatica          [E]=RAUTO
Campo opcional 1             [E]=OPC OPCIDE,Nome,A30
Quantidade                   [E]=QU; ESC:LPL
Preco                        [E]=PRC 0,-1
Desconto                     [E]=DES
Razao NCR                    [E]=NCR_RAZ [USO=AUT]
Iva                          [E]=IVA [ISE=]

Total                  [E,TOT  ]=TOT
Confirmar linha              [E]=CFL; CF2:ALT, ESC:LPL
Registar                     [E]=REG
Fim de sequencia             [E]=FIM

'alterar dados
Inicio de alteracao    [E,ALT  ]=ALT
Quantidade                   [E]=QU
Preco                        [E]=PRC 0,-1
Desconto                     [E]=DES
Razao NCR                    [E]=NCR_RAZ [USO=AUT]
Iva                          [E]=IVA [ISE=]; TOT

'anulacao
Limpar linha           [E,LPL  ]=LPL
Fim de sequencia             [E]=FIM


'------------------------------------------------------------------------------
'#ECO_ART - Artigos com Ecovalor
'------------------------------------------------------------------------------
Identificacao de sequencia [IDS]=ECO_ART
Codigos validos            [ID1]=
Codigos invalidos          [ID0]=

'Modos de uso               [IDM]=Rec,Cor

Funcao : Recolha       [FX,REC ]=REC; EXE
Funcao : Corrigir      [FX,COR ]=COR; EXE
Funcao : Executar      [FX,EXE ]=*
Recolha automatica           [E]=RAUTO ART:SBT
Quantidade                   [E]=QU; ESC:LPL
Preco                        [E]=PRC
Desconto                     [E]=DES
Iva                          [E]=IVA [ISE=]

Total                  [E,TOT  ]=TOT
Confirmar linha              [E]=CFL; CF2:ALT, ESC:LPL

Guardar quantidade           [E]=MEM_G ECO.QU,[QUR]

Registar                     [E]=REG
Fim de sequencia             [E]=FIM

'alterar dados
Inicio de alteracao    [E,ALT  ]=ALT
Quantidade                   [E]=QU
Preco                        [E]=PRC
Desconto                     [E]=DES
Razao NCR                    [E]=NCR_RAZ [USO=AUT]
Iva                          [E]=IVA [ISE=]; TOT

'anulacao
Limpar linha           [E,LPL  ]=LPL
Fim de sequencia             [E]=FIM


'------------------------------------------------------------------------------
'#ECO_DIS - Ecovalor discriminado
'------------------------------------------------------------------------------
Identificacao de sequencia [IDS]=ECO_DIS
Codigos validos            [ID1]=
Codigos invalidos          [ID0]=

'Modos de uso               [IDM]=Rec,Cor

Funcao : Recolha       [FX,REC ]=REC; EXE
Funcao : Corrigir      [FX,COR ]=COR; EXE
Funcao : Executar      [FX,EXE ]=*
Recolha automatica           [E]=RAUTO

Activar modo automatico      [E]=AUT 1
Consultar quantidade         [E]=MEM_C ECO.QU,[QUR]
Quantidade                   [E]=QU; ESC:LPL
Desactivar modo automatico   [E]=AUT 0

Preco                        [E]=PRC
Desconto                     [E]=DES
Razao NCR                    [E]=NCR_RAZ [USO=AUT]
Iva                          [E]=IVA [ISE=]

Funcao : Executar      [FX,CMP ]=*
Recolha automatica           [E]=RAUTO

Total                  [E,TOT  ]=TOT
Confirmar linha              [E]=CFL; CF2:ALT, ESC:LPL
Registar                     [E]=REG
Fim de sequencia             [E]=FIM

'alterar dados
Inicio de alteracao    [E,ALT  ]=ALT
Quantidade                   [E]=QU
Preco                        [E]=PRC
Desconto                     [E]=DES
Razao NCR                    [E]=NCR_RAZ [USO=AUT]
Iva                          [E]=IVA [ISE=]; TOT

'anulacao
Limpar linha           [E,LPL  ]=LPL
Fim de sequencia             [E]=FIM


'------------------------------------------------------------------------------
'#AGP - Artigo/Grupo cores e tamanhos
'------------------------------------------------------------------------------
Identificacao de sequencia [IDS]=AGP
Codigos validos            [ID1]=
Codigos invalidos          [ID0]=

Funcao : Recolha       [FX,REC ]=REC; EXE
Funcao : Corrigir      [FX,COR ]=COR; EXE
Funcao : Executar      [FX,EXE ]=*
Recolha automatica           [E]=RAUTO
Quantidade                   [E]=QUAGP; ESC:LPL
Preco                        [E]=PRC
Desconto                     [E]=DES
Razao NCR                    [E]=NCR_RAZ [USO=AUT]
Iva                          [E]=IVA [ISE=]

Total                  [E,TOT  ]=TOT
Confirmar linha              [E]=CFL; CF2:ALT, ESC:LPL
Registar                     [E]=REG
Fim de sequencia             [E]=FIM

'alterar dados
Inicio de alteracao    [E,ALT  ]=ALT
Quantidade                   [E]=QUAGP
Preco                        [E]=PRC
Desconto                     [E]=DES
Razao NCR                    [E]=NCR_RAZ [USO=AUT]
Iva                          [E]=IVA [ISE=]; TOT

'anulacao
Limpar linha           [E,LPL  ]=LPL
Fim de sequencia             [E]=FIM
##


'==============================================================================
'- Recolha do Cabecalho do documento ------------------------------------------
'==============================================================================
'==============================================================================
#PAGDEF - Definicao de paginas
'==============================================================================
Pagina inicial      [PagIni]=1
Campo inicial       [CmpIni]=2
##


'==============================================================================
#PAG  Dados para Documento    'Definicao da pagina 
'==============================================================================
'mo asp x   y  identificacao      di  variavel                            frm   dv ope
30,-10, 20, 50,"Conta          " ,100,Cta_Mst_Ct$                         ,30.0,250
31, 10, 20, 80,"Nome           " ,100,VarAlt$("ENC_MST","Cta_Mst_Nome$")  ,30.0,250
31, 10, 20,110,"Morada         " ,100,VarAlt$("ENC_MST","Cta_Ang_Morada$"),30.0,250
31, 10, 20,140,"Localidade     " ,100,VarAlt$("ENC_MST","Cta_Ang_Local$") ,30.0,250
31, 10, 20,170,"Codigo Postal  " ,100,VarAlt$("ENC_MST","Cta_Ang_Cpost$") ,30.0,250
31, 10, 20,200,"Vendedor       " ,100,Enc_Mst_Vend                        , 2.0, 50
30, 10, 20,230,"Contribuinte   " ,100,VarAlt$("ENC_MST","Cta_Mst_Ctrb$")  ,12.0,130
30,110, 20,260,"Cond. Pagamento" ,100,Enc_Mst_CpagCod                     , 2.0, 50

31, 10, 390, 50,"Desconto a usar  ",100,VarAlt$("ENC_MST","Cta_Ang_Desco$,Desco")   ,30.0,25
31, 10 ,390, 80,"Descrição p/ doc ",100,TxIde$(Enc_Mst_Opc$,"DOC_DESCR")           ,08.0, 90
31, 44, 390,110,"Data             ", 50,Enc_Mst_Dtl                        , 8.0,100
10, 53, 390,140,"Hora de saida   ",100,Enc_Mst_HrSai                              , 4.0,100
31, 10, 390,170,"Local de carga  ",100,VarAlt$("ENC_MST","Emp_Inf_Local$")        ,30.0,100
31, 10, 390,200,"Local de entrega",100,VarAlt$("ENC_MST","Cta_Ang_Local$,LocEnt$"),30.0,100
31, 10, 390,230,"Matricula       ",100,TxIde$(Enc_Mst_Opc$,"MAT")                 ,30.0,100
31, 10, 240,260,"Informação Livre",100,TxIde$(Enc_Mst_Opc$,"INF1")                ,40.0,250
##

'30, 10,430,100,100,  8.0,"Texto   : ",150,Variavel,Ope
' |   |  |   |   |    |      |          |    |       |
' |   |  |   |   |    |      |          |    |       +--> Opcao especial
' |   |  |   |   |    |      |          |    +----------> Variavel
' |   |  |   |   |    |      |          +---------------> Dimensao da identificacao
' |   |  |   |   |    |      +--------------------------> Texto Informativo
' |   |  |   |   |    +--------------> Formato do valor
' |   |  |   |   +-------------------> Dimensao
' |   |  |   +-----------------------> Coluna
' |   |  +---------------------------> Linha
' |   +------------------------------> Tipo de valor/Aspecto
' +----------------------------------> Controlo de recolha
'
'1o parametro - modo/controlo de recolha (<0 nao pode alterar)
'2o parametro - tipo dos dados/aspecto
'3o parametro - linha
'4o parametro - coluna
'5o parametro - dimensao da identificacao
'6o parametro - formato do valor (inteiros.decimais)
'7o parametro - texto informativo
'8o parametro - variavel
'
'Controlo de recolha : 1x - Pode modificar para registo novo
'                      2x - Pode modificar para alteracao de registo
'                      3x - Igual a 1x+2x
'                      ?0 - Nao cria variavel
'                      ?1 - Cria variavel
'
'Notas : O campo 'Opcao especial' e opcional


'==============================================================================
#PGM - Funcoes para impressao do documento
'==============================================================================
'- +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
'- (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


'------------------------------------------------------------------------------
'Inicializacao do documento
'------------------------------------------------------------------------------
Sub FxIni 'funcao de inicializacao
'logoNom$ = "EmpLogo.bmp"                   'nome do logotipo
'logoDba$ = EmpFic$("EMP","$Img")           'directorio de imagens na empresa
'logoUsa$ = logoDba$ +"," + logoNom$        'logotipo a usar - empresa

logoNom$ = "DocLogo.bmp"                   'nome do logotipo
logoUsa$ = "[SIG_DIR.DIV]," + logoNom$     'logotipo a usar - comum

logoFic$ = VarTx$(logoUsa$,"R")            'ficheiro do logotipo

'modo WIN
PrWIN AJT_F, 56.7,  56.7                   'ajuste para milimetros
PrWIN AJT_D,-280.0,-280.0                  'deslocamento de ajuste 
PrWIN IMG_F, 1, logoFic$                   'imagem (logotipo)
PrWIN ET,  2                               'espessura de traco 
end sub


Sub FxFim 'funcao de finalizacao
PrWIN FON, "REG"                           'limpar registo de fontes
end sub


'------------------------------------------------------------------------------
' Funcoes para impressao do documento
'------------------------------------------------------------------------------
Sub DocCabIni 'inicializacao do documento
'definicao das moedas para valores
Moeda1    = Enc_Mst_Moeda                  'moeda do documento

'variaveis para totais
MoedaAbv1$ = EmpTabCon$("MOEDA",Enc_Mst_Moeda,"ABRV")      'abreviatura moeda documento
TotalAbv1$ = "Total "+EmpTabCon$("MOEDA",Moeda1,"ABRV")  
DocEurCmb$ = FrmVal$(EmpTabCon$("MOEDA",Enc_Mst_Moeda,"CMBEUR"),21,3.3)

'Definicao de posicoes de linhas
Margem       = 10                           'margem esquerda do documento
PosIdeLin    = 115                          'titulos das linhas
InicioLinhas = PosIdeLin + 2                'escrita das linhas documento
FimDoc       = 220                          'fim do documento

'memorizar variaveis diversas
LinInf1$  = TxIde$(Enc_Mst_Opc$,"INF1")
DocRcNum$ = FrmNdo$("",Enc_Mst_Tdoc$,Enc_Mst_Ndoc$)
DocRcDtl$ = FrmVal$(Doc_Ide_Dtl,44,0)
DocRcDtv$ = FrmVal$(Doc_Ide_Dtv,44,0)

CerDocAnuAsp = 1                            'aspecto para documento anulado
call DocCerVarPrp                           'preparar variaveis referentes a certificacao
end sub


'------------------------------------------------------------------------------
' Cabecalho do documento
'------------------------------------------------------------------------------
Sub DocCab 'cabecalho do documento
'CerDocAnuAsp = 1                                'aspecto para documento anulado
'call DocCerVarPrp                               'preparar variaveis referentes a certificacao

'listar
PrWin PAG_PRP                                   'preparar pagina
call DocCerLisAnu                               'listar informacao de anulado

'zona de logotipo
PrWIN AJT_B,  Margem, 10.0                      'posicao base
PrWIN IMG_V,1, 2, 2, 50, 20                     'imagem (logotipo)
'PrWIN GR_CX,   2, 2, "+50", "+20", 2           'caixa envolvente

PrWIN FON, 18, 1                                'activar fonte
PrWin FON, "BOLD+"                              'activar bold
PrWIN TX_N, 55, 10,@EmpNome                     'nome da empresa
PrWin FON, "BOLD-"                              'desactivar bold

'Dados da empresa
PrWIN FON, 10, 1                                'activar fonte
PrWIN AJT_B,  Margem+2, 10.0                    'posicao base
PrWIN TX_N, 0, 28,@EmpNome
PrWIN TX_N, 0, 33,@EmpMorada
PrWIN TX_N, 0, 38,@EmpLocal
PrWIN TX_N, 0, 43,@EmpCpost
PrWIN TX_N, 0, 48,"Telefone:"
PrWIN TX_N,21, 48,@EmpTel
PrWIN TX_N, 0, 53,"Telefax:"
PrWIN TX_N,21, 53,@EmpFax

'dados de registo 
PrWIN TX_N,  0, 58,"Contribuinte:"
PrWIN TX_N, 21, 58,@EmpCtrb
PrWIN TX_N,  0, 63,@EmpTps
PrWIN TX_N,  0, 68,@EmpReg

'destinatario do documento
PrWIN AJT_B, Margem+100, 37                     'posicao base
PrWIN TX_N, 0, 10,"Exmo(s). Snr(s).:"
PrWIN TX_N, 0, 20,@Nome
PrWIN TX_N, 0, 25,@Morada
PrWIN TX_N, 0, 30,@Local
PrWIN TX_N, 0, 35,@Cpost

PrWIN AJT_B, Margem, 90                         'posicao base
PrWIN GR_CX,  0,  0, 80, 17, 2                  'caixa dos dados do cliente
PrWIN TX_N, 2,  2,"V/ Codigo:"
PrWIN TX_N, 32, 2,@Ct
PrWIN TX_N, 2,  7,"V/ Ctrb :"
PrWIN TX_N, 32, 7,@Ctrb
PrWIN TX_N, 2,  12,"Data Vencimento :"
PrWIN TX_N, 32, 12,@DocRcDtv

PrWIN TX_N, 2, 19,@LinInf1

PrWIN AJT_B, Margem+115, 85                     'posicao base
PrWIN   FON, 18,   1                            'activar fonte

PrWIN  TX_N,  0,   0,@DocNome
'PrWIN  TX_N,  0,   0,@vCerDocIde                'identificacao do documento

PrWIN   FON, 12,   1                            'activar fonte

PrWIN  TX_N,  0,  10,"Numero :"
'PrWIN  TX_N, 34,  10,@DocRcNum
PrWIN  TX_N, 34,  10,@vCerDocNum                'numero do documento

PrWIN  TX_N,  0,  15,"Data :"
PrWIN  TX_N, 34,  15,@DocRcDtl
PrWIN  TX_N,  0,  20,"Via :"
PrWIN  TX_N, 34,  20,@DocVia

'- Tamanhos das colunas -------------------------------------------------------
Tcod = 25                              'tamanho para codigo
Tdes = 70                              'tamanho para descricao
Tqnt = 25                              'tamanho para quantidade
Tuni =  6                              'tamanho para unidade
Tpun = 29                              'tamanho para preco unitario
TDsc =  5                              'tamanho para desconto
Tliq = Tpun                            'tamanho para liquido
TIva =  7                              'tamanho para IVA

'- Posicoes iniciais para as colunas ------------------------------------------
esp = 0                                'espaco entre colunas

Col1 = 0                               'coluna de codigo
Col2 = Col1 + Tcod                     'coluna de descricao
Col3 = Col2 + Tdes + esp               'coluna de quantidade
col4 = col3 + tqnt + esp               'coluna de unidade
col5 = col4 + tuni + esp               'coluna de prc unitario
col6 = col5 + tpun + esp               'coluna desconto
col7 = col6 + tdsc + esp               'coluna liquido
col8 = col7 + tliq + esp               'coluna iva
Col9 = col8 + tIva                     'coluna maxima
MargemD = Col9                         'margem direita

altQ = 5                                              'altura de quadro titulo de linha

PrWIN AJT_B, Margem, PosIdeLin                        'posicao base

PrWIN COR_E, 200, 200, 200                            'cor de enchimento RGB
PrWIN GR_ME, 0                                        'modo de enchimento
PrWIN GR_CE,  0,  0,MargemD,  altq, 2                 'caixa do cabecalho
PrWin FON, "BOLD+"                                    'activar bold
PrWIN FON, 9, 1                             	      'Fonte para titulos da linha

PrWIN TX_CTR, Col1,  0, Col3, Altq,"Descrição"        'texto centrado
PrWIN TX_CTR, Col3,  0, Col4, Altq,"Quant"            'texto centrado

PrWIN TX_CTR, Col4,  0, Col5, Altq,"Un"               'texto centrado
PrWIN TX_CTR, Col5,  0, Col6, Altq,"Unitário"         'texto centrado

PrWIN TX_CTR, Col6,  0, Col7, Altq,"Desc %"           'texto centrado
PrWIN TX_CTR, Col7,  0, Col8, Altq,"Valor total"      'texto centrado
PrWIN TX_CTR, Col8,  0, Col9, Altq,"IVA"              'texto centrado

PrWIN FON, 8, 1                                       'fonte para linhas
PrWin FON, "BOLD-"                                    'desactivar bold

'ajustes para colunas
ajt  = 0                                              'ajuste
Col3 = Col3 + ajt                                     'coluna 3
Col4 = Col4 + ajt                                     'coluna 4
Col5 = Col5 + ajt                                     'coluna 5
Col6 = Col6 + ajt                                     'coluna 6
Col7 = Col7 + ajt                                     'coluna 7
Col8 = Col8                                           'coluna 8

PrWIN GR_CX,  0,  0, MargemD ,Fimdoc-PosIdeLin-5      'caixa do corpo da factura
Portes$ = ""                                          'informacao de portes
end sub


'------------------------------------------------------------------------------
' Linhas do Documento
'------------------------------------------------------------------------------
Sub DocLinPos 'posicionar linha
PrWIN AJT_B,   Margem, InicioLinhas+Doc_CntLin*5            'posicao base
end Sub


Sub DocLinNor 'artigos tipo normal
Call DocLinPos                                              'posicionar linha

'listar
PrWIN TX_N,  Col1+1, 0,    @LinArt
PrWIN TX_N,  Col2,   0,    @LinNome
PrWIN TX_NP, Col3+5, 0,"N",@LinQu
PrWIN TX_N,  Col4,   0,    @LinUni
PrWIN TX_NP, Col5,   0,"N",@LinPrc
PrWIN TX_NP, Col6,   0,"N",@LinDesco
PrWIN TX_NP, Col7,   0,"N",@LinLiq
PrWIN TX_NP, Col8,   0,"N",@Iva
end sub


Sub DocLinNorIde 'artigos tipo normal com nome alterado
Call DocLinPos                                              'posicionar linha

'listar
PrWIN TX_N,  Col1+1, 0,    @LinArt
PrWIN TX_N,  Col2,   0,    @ArtIde
PrWIN TX_NP, Col3+5, 0,"N",@LinQu
PrWIN TX_N,  Col4,   0,    @LinUni
PrWIN TX_NP, Col5,   0,"N",@LinPrc
PrWIN TX_NP, Col6,   0,"N",@LinDesco
PrWIN TX_NP, Col7,   0,"N",@LinLiq
PrWIN TX_NP, Col8,   0,"N",@Iva
end sub



Sub DocLinLot 'artigos tipo lote
Call DocLinPos                                              'posicionar linha

'listar
PrWIN TX_N,  Col1+1, 0,    @LinArt
PrWIN TX_N,  Col2,   0,    @LinNome
PrWIN TX_NP, Col3+5, 0,"N",@LinQu
PrWIN TX_N,  Col4,   0,    @LinUni
PrWIN TX_NP, Col5,   0,"N",@LinPrc
PrWIN TX_NP, Col6,   0,"N",@LinDesco
PrWIN TX_NP, Col7,   0,"N",@LinLiq
PrWIN TX_NP, Col8,   0,"N",@Iva

tmp=CntLin("INC",1)                                         'incrementar contador linhas
res = EncLotLer(Enc_Mov_Lote$)                              'ler lote
PrWIN TX_N,  Col2,   5,    Enc_LOT_Lot$                     'imprime
end sub


Sub DocLinMed 'artigos com medidas
call DocLinNor                                              'listar dados do artigo

'listar - medidas
tmp=CntLin("INC",1)                                         'incrementar contador linhas
Call DocLinPos                                              'posicionar linha
PrWIN TX_N,  Col3,  0,"Medidas digitadas :"
PrWIN TX_N,  Col3+25,  0,@LinMedTx

'PrWIN TX_N,  Col3,  0,"Medidas em Qnt  :"
'PrWIN TX_N,  Col3+25,  0,@DocArtQuM

PrWIN TX_N,  Col6,  0,"Medidas em Valor :"
PrWIN TX_N,  col6+27,  0,@DocArtMedV
end sub


Sub DocLinIde 'artigos tipo nome livre
ArtIdeLin=1                                                 'activar tipo de linha
call DocLinNorIde                                           'listar
ArtIdeLin=0                                                 'desactivar tipo linha
end sub


Sub DocLinEco_Art 'artigos com ecovalor
Call DocLinPos                                              'posicionar linha

'listar
PrWIN TX_N,  Col1+1, 0,    @LinArt
PrWIN TX_N,  Col2,   0,    @LinNome
PrWIN TX_NP, Col3+5, 0,"N",@LinQu
PrWIN TX_N,  Col4,   0,    @LinUni
PrWIN TX_NP, Col5,   0,"N",@LinPrc
PrWIN TX_NP, Col6,   0,"N",@LinDesco
PrWIN TX_NP, Col7,   0,"N",@LinLiq
PrWIN TX_NP, Col8,   0,"N",@Iva
end sub


Sub DocLinEco_Dis 'artigos discriminados com ecovalor
Call DocLinPos                                              'posicionar linha

'listar
PrWIN TX_N,  Col1+1, 0,    @LinArt
PrWIN TX_N,  Col2,   0,    @LinNome
PrWIN TX_NP, Col3+5, 0,"N",@LinQu
PrWIN TX_N,  Col4,   0,    @LinUni
PrWIN TX_NP, Col5,   0,"N",@LinPrc
PrWIN TX_NP, Col6,   0,"N",@LinDesco
PrWIN TX_NP, Col7,   0,"N",@LinLiq
PrWIN TX_NP, Col8,   0,"N",@Iva
end sub


Sub DocLinCor 'Exemplo campos opcionais
Call DocLinPos                                              'posicionar linha

'listar
PrWIN TX_N,    Col3,  0,"Cor escolhida   :"
PrWIN TX_N, Col3+30,  0,@LinOpcCor
end sub


Sub DocLinPmo 'artigos tipo Portes e Mao-de-obra
'guardar valor para imprimir no final do documento
Portes$  = FrmVal$(Doc_Art_Liq,21,13.2)
end sub


Sub DocLinTxl 'artigos tipo texto livre
Call DocLinPos                                              'posicionar linha

'listar
PrWIN TX_N,   Col2,  0,@LinTxl
end sub


Sub DocLinAjt 'ajuste de linhas
'nada a executar
end sub


Sub DocLinDoc 'linha de documento
Call DocLinPos                                              'posicionar linha

'listar
PrWIN TX_N,   Col1,  0,"Documento :"
PrWIN TX_N,   Col2+3,  0,@DocIde
end sub


Sub DocLinAgp 'artigos tipo grupo
Call DocLinNor                                              'listar dados do artigo

'listar dados adicionais
AgpC1=  3                                                   'coluna de codigo
AgpC2= 30                                                   'coluna de descricao
AgpC6=105                                                   'coluna de Quanidade
AgpC7=125                                                   'coluna de unidade

tmp=CntLin("INC",1)                                         'incrementar contador linhas
RegAgp = AgpAsp(">", 9, "Total")                            'separar titulos com 10 caracteres
nli    = AgpPrp(Enc_Mov_Art$, Enc_Mov_Opc$, zer)            'separar tamanhos recolhidos
tco$   = FrmVal$(AgpLin$(0),8)                              'descritivo dos tamanhos

call DocLinPos                                              'posicionar linha

AgpC1=  5                                                   'coluna de codigo
AgpC2= 25                                                   'coluna de descricao

PrWIN FON,  6.5, 1                             	            'activar fonte
PrWIN TX_NP, AgpC1, 0  ,"N","Cores     Tam. >>"             'titulo
PrWIN TX_NP, AgpC2, 0  ,"N",tco$                            'titulo

for li = 1 to nli
tmp=CntLin("INC",1)                                         'incrementar linha
PrWIN FON, 6.5, 1                             	            'activar fonte

call DocLinPos                                              'posicionar na linha
PrWIN TX_NP, AgpC1, 0,"N",AgpIde$(li)                       'nome das cores
PrWIN TX_NP, AgpC2, 0,"N",AgpLin$(li)                       'quantidade das cores
next

tmp=CntLin("INC",1)                                         'incrementar linha
PrWIN FON, 6.5, 1                             	            'activar fonte
call DocLinPos                                              'posicao base

tot$ = FrmVal$(AgpTot$(0),8)                                'descritivo dos tamanhos
PrWIN TX_NP,AgpC1, 0,"N","Totais : "                        'titulo totais
PrWIN TX_NP,AgpC2, 0,"N",tot$                               'totais
end sub


'------------------------------------------------------------------------------
' Final do Documento
'------------------------------------------------------------------------------
Sub DocFimAjt 'ajuste de fim de pagina
PrWIN AJT_B,   8, FimDoc                                    'posicao base
PrWIN FON, 9, 1                             	            'activar fonte
PrWIN TX_N,  5,  0,"Documento não totalmente impresso ..."
PrWIN FP                                                    'fim de pagina
end sub


Sub DocFim 'totais do documento
IvaLinMax = 4                                           'maximo de linhas para IVA
call EncDocCom_PrpLstIva                                'preparar listagem IVA

PrWIN AJT_B,   Margem, FimDoc                           'posicao base
PrWIN COR_E, 200, 200, 200                              'cor de enchimento RGB
PrWIN GR_ME, 0                                          'modo de enchimento

PrWIN GR_CX,  0,  0, MargemD,  58, 2                    'caixa de moldura
PrWIN GR_CE,  0,  0, MargemD,  08, 2                    'caixa com enchimento - cabecalho

PrWIN GR_CX, 100,   0, 135,  58, 2                      'caixa central

PrWIN GR_LI,   0,  35, 100    ,  35, 2                  'separador horizontal dos IVAS
PrWIN GR_LI, 100,  42, MargemD,  42, 2                  'separador horizontal dos TOTAIS

PrWin FON, "BOLD+"                                      'activar bold
PrWIN FON, 10, 1                             	        'activar fonte

py = 2                                                  'posicao Y
PrWIN TX_N,  8, py,"Cod."                               'identificar coluna de codigo de IVA
PrWIN TX_N, 17, py,"Taxa"                               'identificar coluna de taxa de IVA
PrWIN TX_N, 30, py,"V.Incidencia"                       'identificar coluna de valor de incidencia
PrWIN TX_N, 70, py,"I.V.A."                             'identificar coluna de valor de IVA

PrWin FON, "BOLD-"                                      'desactivar bold

PrWIN TX_NP,  10, 10,"N"," 0"
PrWIN TX_NP,  20, 10,"N"," 0"
PrWIN TX_NP,  30, 10,"N",@IvaI0
'PrWIN TX_NP,  60, 10,"N","0"

PrWIN TX_NP,  10, 15,"N",@IvaC1
PrWIN TX_NP,  20, 15,"N",@IvaT1
PrWIN TX_NP,  30, 15,"N",@IvaI1
PrWIN TX_NP,  60, 15,"N",@IvaV1

PrWIN TX_NP,  10, 20,"N",@IvaC2
PrWIN TX_NP,  20, 20,"N",@IvaT2
PrWIN TX_NP,  30, 20,"N",@IvaI2
PrWIN TX_NP,  60, 20,"N",@IvaV2

PrWIN TX_NP,  10, 25,"N",@IvaC3
PrWIN TX_NP,  20, 25,"N",@IvaT3
PrWIN TX_NP,  30, 25,"N",@IvaI3
PrWIN TX_NP,  60, 25,"N",@IvaV3

PrWIN TX_NP,  10, 30,"N",@IvaC4
PrWIN TX_NP,  20, 30,"N",@IvaT4
PrWIN TX_NP,  30, 30,"N",@IvaI4
PrWIN TX_NP,  60, 30,"N",@IvaV4

PrWin FON, "BOLD+"                              'activar bold
PrWIN TX_N,  10, 36,"Local Entrega"
PrWIN TX_N,  10, 41,"Local de Carga"
PrWIN TX_N,  10, 46,"Hora de Saida"
PrWIN TX_N,  10, 51,"Viatura"

PrWIN TX_N, 105, 10,"Iliquido"
PrWIN TX_N, 105, 15,"Desconto"
PrWIN TX_N, 105, 20,"Liquido"
'PrWIN TX_N, 105, 30,"Total Ecovalor"            'Ecovalor - Texto
PrWIN TX_N, 105, 35,"Total de IVA"
PrWIN TX_N, 105, 45,TotalAbv1$

PrWin FON, "BOLD-"                              'desactivar bold

PrWIN TX_N,  40, 36,@DocDest
PrWIN TX_N,  40, 41,@DocOrg
PrWIN TX_N,  40, 46,@HorSai
PrWIN TX_N,  40, 51,@Viatura

PrWIN TX_NP, 150, 10,"N",@DocIlq
PrWIN TX_NP, 150, 15,"N",@DocDesco
PrWIN TX_NP, 150, 20,"N",@DocLiq
'PrWIN TX_NP, 150, 30,"N",@EcoValor              'Ecovalor - Valor
PrWIN TX_NP, 150, 35,"N",@DocIva
PrWIN TX_NP, 150, 45,"N",@DocTot
'PrWIN TX_NP, 150, 50,"N",Portes$               'valor de portes

PrWIN TX_N, 137, 52,@vCerDocAdi                 'informacao adicional do documento

'PrWIN TX_N, 145, 60,"PROCESSADO POR COMPUTADOR

PrWIN FON, 7, 1                             	'activar fonte
PrWIN TX_N,  03, 60,@PerSon                     'personalizacao/licenca do programa

'PrWIN TX_N, 137, 60,@vCerDocAdi                 'informacao adicional do documento
PrWIN TX_N,  03, 64,@vCerPgmDes                 'certificacao do programa

'PrWIN TX_N, 137, 60,@vCerPgmDe1                 'certificacao do programa - linha 1
'PrWIN TX_N, 137, 64,@vCerPgmDe2                 'certificacao do programa - linha 2

PrWin FON, 8, 1                                 'repor fonte


'tmp$=left$(Cta_Ang_Grupo$,2)
'if tmp$="AA" then
'   PrWIN TX_N,  05,  70, "Este cliente e do tipo AA"
'else
'   PrWIN TX_N,  05,  70, "Este cliente e de tipo desconhecido"
'end if

PrWIN FP                                        'fim de pagina
end sub


'------------------------------------------------------------------------------
' Funcoes diversas
'------------------------------------------------------------------------------
'Sub UtzMsgSbar 'mensagem na status bar
'zona=0                                'numero da zona
'msg$="Mensagem ao utilizador"         'mensagem

'upc=Stc_Acm_Upc                       'UPC
'prc=Doc_Art_Prc                       'preco
'maV=prc-upc                           'margem em valor
'if maV<>0 then
'   if prc=0 then
'      txm$="0 (Prc=0)
'   else
'      maP=maV/prc*100                 'calcular %
'      txm$= FrmVal$(maP,21,3.2)+"%"
'    end if
'else
'   txm$="100 (UPC=0)"
'end if

'txi$="  UPC="+str$(upc)+"  Prc="+str$(prc)+"  Dif.="+str$(maV)             
'msg$="Margem: "+txm$+txi$             

'MsgSbar zona,msg$                     'mostrar mensagem
'end sub


'Sub UtzMsgBox 'mensagem
'modo$=""                              'modo da mensagem
'tit$="Titulo da mensagem"             'titulo
'msg$="Mensagem ao utilizador"         'mensagem
'MsgBox modo$,tit$,msg$                'mostrar mensagem
'end sub

##


'==============================================================================
#INC - Inclusao de funcionalidades
'==============================================================================
Funcoes para certificacao         =[SIG_DOC_DIR.ENC],EncDocCer_Pgm.inc
Funcoes para IVA                  =[SIG_DOC_DIR.ENC],EncDocCom_Pgm.inc
##

