;** RO_0377 ********************************************************************
;** Imprime a Digitacao do Romaneio                                            *
;*******************************************************************************
;Autor           : Vise Informatica (VISERP)
;Desenvolvido  em: 14/12/2015 por Bruno Carvalho
;Ultima Alteracao: 07/01/2016 por Bruno Carvalho
;Motivo Alteracao: Adicionado TOTAL por Unidades           
;Ultima Alteracao: 08/01/2016 por Bruno Carvalho
;Motivo Alteracao: Ajustado confnorme solicita‡Æo por Karina para negritar campos 
;Ultima Alteracao: 15/01/2016 por Bruno Carvalho
;Motivo Alteracao: Ajustes 
;Ultima Alteracao: 15/02/2016 por Anivel Augutso Rodrigues
;Motivo Alteracao: Ajustes logica
;Ultima Alteracao: 22/02/2016 por Anivel Augutso Rodrigues
;Motivo Alteracao: Ajustes Codigo Empresa
;Ultima Alteracao: 24/02/2016 por Anivel Augutso Rodrigues
;Motivo Alteracao: Ajustes criterio soma CT_UTILIZADO
;Ultima Alteracao: 16/03/2016 por Anivel Augutso Rodrigues
;Motivo Alteracao: Ajustes inclusao desconto no item 
;Ultima Alteracao: 21/03/2016 por Anivel Augutso Rodrigues
;Motivo Alteracao: Ajustes inclusao desconto no item 
;Ultima Alteracao: 21/03/2016 por Kamila Gomes
;Motivo Alteracao: Ajustes inclusao desconto no item
;Ultima Alteracao: 16/02/2017 por Anivel Augutso Rodrigues
;Motivo Alteracao: Ajustes nÆo sair informa‡äes adicionais do item
;Ultima Alteracao: 06/04/2017 por Bruno Carvalho
;Motivo Alteracao: Adicionado impressÆo do controle_dia da expedicao no romaneio
;Ultima Alteracao: 28/04/2017 por Bruno Carvalho
;Motivo Alteracao: Ajustes na Observa‡Æo, removido a impressÆo do usu rio da expedi‡Æo, pois j    
;                  ‚ impresso na obs e foi adicionado o n£mero da expedi‡Æo no cabe‡alho do romaneio
;Ultima Alteracao: 09/06/2017 por Anivel Augutso Rodrigues
;Motivo Alteracao: Ajustes layout desconto unitario
;Ultima Alteracao: 05/08/2017 por Bruno Carvalho
;Motivo Alteracao: Substituido [Valor INSS] -> [Valor TC]                          
;Ultima Alteracao: 31/08/2017 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes desconto item
;Ultima Alteracao: 30/05/2018 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes vrfrete e obs
;Ultima Alteracao: 05/04/2019 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes contador itens, garantir meia folha
;Ultima Alteracao: 06/06/2019 por Bruno Carvalho
;Motivo Alteracao: Alterado todo o processo onde antes utilizava a tabela "ExpedOfC", que a partir de entÆo passou a ser "ExpedC"
;Ultima Alteracao: 21/10/2019 por Bruno Carvalho
;Motivo Alteracao: Ajustes p/ ignorar itens com [quantidade]=0 
;Ultima Alteracao: 06/11/2019 por Bruno Carvalho
;Motivo Alteracao: Ajustes no desconto unit rio do item, verificando a partir da tabela de pre‡o por cliente
;Ultima Alteracao: 07/11/2019 por Bruno Carvalho
;Motivo Alteracao: Foi solicitado que o valor do desconto unit rio (vrdescto_porc) fosse verificado a partir da tabela "TbprCit"    

;*******************************************************************************
;* Rotina para Impressao do Relatorio                                          *
;*******************************************************************************
Proc Cabecalho()

QUEBRA   = False
CONTADOR = 0

;************************** IMPRESSAO DO CABECALHO *****************************
If Not IsAssigned(NOMEMPRESA)
   Then NOMEMPRESA=""
EndIf
Moveto "Faturac"
;Print File ARQIMP chr(27)+chr(67)+chr(33) ;Imprime 33 Linhas por pagina
Print File ARQIMP CI_10CPP
Print File ARQIMP CI_6LPP

Print File ARQIMP "\027E"
Print File ARQIMP Spaces(52)+"Emissao: " + Format("D13",[Data de Emissao])+"\n"
Print File ARQIMP "\027F"
Print File ARQIMP Format("W50,AL","CONTROLE INTERNO - "+[Faturac->Codigo da Empresa])+"Impressao: "+Format("D13",Today())+"-"+Time()+ "\n"

Print File ARQIMP "\020"
;Print File ARQIMP "\014"
Print File ARQIMP "\027E"
Print File ARQIMP Spaces(60)+"Orcamento N§ "+Format("W06.3,AL",NOTAFISC)+"\n"
Print File ARQIMP "Cliente : "+Format("W05,AL",[Codigo])+Format("W43,AL",[Razao Social])
Print File ARQIMP "\027F"
If [FaturaC->Numero da Expedicao]<>""
   Then Print File ARQIMP Spaces(2)+"Expedi‡ao N§ "+Format("W06,AL", [FaturaC->Numero da Expedicao])+"\n"
   Else Print File ARQIMP "\n"
EndIf   

Print File ARQIMP CI_8LPP
Print File ARQIMP "\027P"         ;Imprime 10 Caracteres por polegada

Print File ARQIMP Spaces(10)+Format("W40,AL",[Endereco])
Print File ARQIMP Format("W18,AL",[CGC])+"\n"
                                                           
Print File ARQIMP Spaces(10)+Format("W20,AL",[Bairro])
Print File ARQIMP Format("W20,AL",[CEP])
Print File ARQIMP Format("W25,AL",[IE])+"\n"

Print File ARQIMP Spaces(10)+Format("W20,AL",[Cidade])
Print File ARQIMP Format("W20,AL",[UF])
Print File ARQIMP Format("W25,AL",[Telefone])+"\n"

Print File ARQIMP "Operacao: "
Print File ARQIMP Chr(27)+Chr(71)
Print File ARQIMP Format("W40",[Codigo da Destinacao]+" "+[Descricao da Destinacao])
Print File ARQIMP Chr(27)+Chr(72)
Print File ARQIMP Format("W30","Vendedor: "+Format("W05,AL",[Codigo do Representante])+Format("W25,AL",[Nome Fantasia Represent]))+"\n"

Print File ARQIMP "\015"         ;Imprime 17 Caracteres por polegada

;********************* IMPRESSAO DOS ITENS ********************************
Print File ARQIMP "----------------------------------------------------------------------------------------------------------------------------------------"+"\n"
Print File ARQIMP "  Item                                                                Un  Quantidade  Unitario    Desconto Unit.        Total      Pecas"+"\n"
Print File ARQIMP "----------------------------------------------------------------------------------------------------------------------------------------"+"\n"
                                                                                                                                   
EndProc ;Cabecalho()

;*******************************************************************************
;* Rotina para Impressao do Relatorio                                          *
;*******************************************************************************
Proc IMPFAT()
private UN_TIPO, UN_ITENS, UN_QTD, CONT_UN_TIPO, CONT_UN_ITENS, PECAS,
        ACHOU_UNIDADE, indice, vrdescto_item , vrdescto_porc

Cabecalho()

DynArray UN_TIPO[]
DynArray UN_QTD[]
DynArray UN_ITENS[] 
DynArray INF_ADC_ITENS[]         

CONT_UN_TIPO  = 0
CONT_UN_ITENS = 0
                       
Moveto "FaturaI"
Moveto [Numero da OF]
Locate [FaturaC->Numero da OF]
While [Numero da OF]=[FaturaC->Numero da OF]
  If [Quantidade]>0
     Then PECAS    = BlankNum()
  
          GetRecord "\\Sistemas\\Estoque\\Itens" [Codigo do Item] To REG_ITEM
          If RetVal
             Then If REG_ITEM["Unidade Fiscal"]="KG" 
                     Then If REG_ITEM["Peso Liquido"] > 0 And REG_ITEM["Peso Liquido"] <> BlankNum()
                             Then PECAS = NDecimal(NDecimal([Quantidade],3)/REG_ITEM["Peso Liquido"],3)
                          EndIf
                  EndIf   
          EndIf        
          
          ;---- Verifica Tipos de Unidade --------------------------------------
          ACHOU_UNIDADE = False
          For i From 1 To DynArraySize(UN_TIPO)
            If UN_TIPO[i]=[Unidade Fiscal]
               Then ACHOU_UNIDADE = True
                    indice=i
                    QuitLoop
            EndIf   
          EndFor
          
          If Not ACHOU_UNIDADE
             Then CONT_UN_TIPO    = CONT_UN_TIPO + 1
                  indice          = CONT_UN_TIPO
                  UN_TIPO[indice] = [Unidade Fiscal]
                  UN_QTD[indice]  = blanknum()
          EndIf         
          
          ;---- Item -----------------------------------------------------------
          vrdescto_item = Blanknum()
          vrdescto_porc = Blanknum()
          ;O desconto j  ‚ cedido ao cliente, na tabela de pre‡o, entÆo ‚ para ser desconsiderado o desconto nesta regra.
          ;switch
          ;  case [Tipo Desconto Item]="U":
          ;    switch
          ;      case [Taxa Desconto Unitario ]>0 : vrdescto_item=format("W10.2,EIC",[Taxa Desconto Unitario ])+"%  "
          ;      case [Valor Desconto Unitario]>0 : vrdescto_item=format("W10.2,EIC",[Valor Desconto Unitario])+" $ "
          ;    endswitch
          ;  case [Tipo Desconto Item]="T":
          ;    switch
          ;      case [Taxa Desconto Unitario ]>0 : vrdescto_item=format("W10.2,EIC",[Taxa Desconto Unitario ])+"%  "
          ;      case [Valor Desconto Unitario]>0 : vrdescto_item=format("W10.2,EIC",[Valor Desconto Unitario]/[Quantidade])+" $ "
          ;    endswitch
          ;endswitch
          
          preco_item = [Preco Unitario]
          GetRecord "\\Sistemas\\Vendas\\TbprCit" [FaturaC->Codigo da Tabela],[FaturaC->Codigo],[Codigo do Item] To REG_TBPRCIT                           
          If RetVal
             Then GetRecord "\\Sistemas\\Vendas\\TbprIte" [FaturaC->Codigo da Tabela],[Codigo do Item]  To REG_TBPRITE
                  If RetVal
                     Then If REG_TBPRCIT["Preco Unitario"] = [Preco Unitario] And REG_TBPRITE["Preco Unitario"]>[Preco Unitario]
                             Then preco_item = REG_TBPRITE["Preco Unitario"]
                                  vrdescto_item = REG_TBPRITE["Preco Unitario"] - REG_TBPRCIT["Preco Unitario"]
                                  
                                  ;vrdescto_porc = StrVal(100-(NDecimal(((REG_TBPRCIT["Preco Unitario"]*100)/REG_TBPRITE["Preco Unitario"]),2)))+"%"
                                  
                                  If REG_TBPRCIT["Taxa Ultimo Reajuste"]<0
                                     Then REG_TBPRCIT["Taxa Ultimo Reajuste"] = REG_TBPRCIT["Taxa Ultimo Reajuste"]*-1
                                  EndIf
                                  vrdescto_porc = StrVal(REG_TBPRCIT["Taxa Ultimo Reajuste"])+"%"   
                          EndIf     
                  EndIf
          EndIf   
          
          CONT_UN_ITENS = CONT_UN_ITENS + 1
          
          UN_ITENS[CONT_UN_ITENS] =                           Format("W03,AL",[Unidade Fiscal])                          
          UN_ITENS[CONT_UN_ITENS] = UN_ITENS[CONT_UN_ITENS] + Spaces(02)+Format("W03,AL",[Item da OF])
          UN_ITENS[CONT_UN_ITENS] = UN_ITENS[CONT_UN_ITENS] + Spaces(01)+Format("W11,AL",[Codigo do Item])
          UN_ITENS[CONT_UN_ITENS] = UN_ITENS[CONT_UN_ITENS] + Spaces(01)+Format("W51,AL",[Descricao do Item])
        ;;UN_ITENS[CONT_UN_ITENS] = UN_ITENS[CONT_UN_ITENS] + Spaces(01)+Format("W24,AL",[Informacoes_Adicionais]) nÆo ‚ pra sair
          UN_ITENS[CONT_UN_ITENS] = UN_ITENS[CONT_UN_ITENS] + Spaces(01)+Format("W03,Al",[Unidade Fiscal])
          UN_ITENS[CONT_UN_ITENS] = UN_ITENS[CONT_UN_ITENS] + Format("W11.3,EIC",[Quantidade])
          UN_ITENS[CONT_UN_ITENS] = UN_ITENS[CONT_UN_ITENS] + Format("W10.2,EIC",preco_item)
          UN_ITENS[CONT_UN_ITENS] = UN_ITENS[CONT_UN_ITENS] + Format("W9.2,EIC",vrdescto_item)+" "+Format("W7,AR",vrdescto_porc)+Spaces(1)
          UN_ITENS[CONT_UN_ITENS] = UN_ITENS[CONT_UN_ITENS] + Format("W13.2,EIC",[Preco Total])+Spaces(1)
          UN_ITENS[CONT_UN_ITENS] = UN_ITENS[CONT_UN_ITENS] + Format("W10.3,EIC",PECAS)
        
          UN_QTD[indice]=UN_QTD[indice]+[Quantidade]
  EndIf
  Skip
  If EOT() Then QuitLoop EndIf
EndWhile

For un From 1 To DynArraySize(UN_TIPO)
  For iten From 1 To DynArraySize(UN_ITENS)
     If Rtrim(UN_TIPO[un]) = Rtrim(SubStr(UN_ITENS[iten],1,3))
        Then Print File ARQIMP SubStr(UN_ITENS[iten],4,Len(UN_ITENS[iten]))+"\n"
             CONTADOR = CONTADOR + 1
     EndIf
     If CONTADOR>=20
        Then QUEBRA = True
             Rodape()
             Cabecalho()
     EndIf
  EndFor
  Print File ARQIMP CI_INEG+spaces(60)+Format("W13,AL","TOTAL POR "+Rtrim(UN_TIPO[un])+":") + Format("W11.3,EIC",UN_QTD[un])+CI_FNEG+"\n\n"
  CONTADOR = CONTADOR + 2
EndFor  

For ITEM From CONTADOR To 12
  Print File ARQIMP "\n"
EndFor     

QUEBRA = False
Rodape()        

EndProc ;IMPFAT()   

;*******************************************************************************
;* Rotina para Imprimir o Rodape                                               *
;*******************************************************************************
Proc Rodape()
private TC, CT_UTILIZADO, OBS,vrfrete,lvrfrete

Print File ARQIMP "----------------------------------------------------------------------------------------------------------------------------------------"+"\n"

;********************************** CALCULO TC *********************************
TC = ""
CT_UTILIZADO = BlankNum()
Moveto "FaturaV"
Moveto [Numero da OF]
Locate [FaturaC->Numero da OF]
While [Numero da OF]=[FaturaC->Numero da OF]
  If [Forma de Pagamento]="TC" and 
     (substr([Observacao],1,3)="CP-" Or substr([Observacao],1,3)="CR-") and
     not isblank([Numero do Cartao  ])
     Then If TC<>""
             Then TC = TC + ", "
          EndIf    
          TC = TC + Rtrim([Observacao]) + "  " + Ltrim(StrVal([Valor]))   
          CT_UTILIZADO = CT_UTILIZADO + [Valor]
  EndIf
  Skip
  If Eot() Then QuitLoop EndIf   
EndWhile

;************************** IMPRESSAO DOS TOTAIS *******************************
Moveto "FaturaC"

Print File ARQIMP Format("W66","Cond. Pagto: "+[Descricao CondPagto]+
                               "   NP: "+StrVal([Numero de Parcelas])+
                               "   CD: "+[Composicao de Dias])
                               
If QUEBRA
   Then Print File ARQIMP Spaces(28)+"Total............... *******   "+"\n"
   Else Print File ARQIMP Spaces(28)+"Total..............."+Format("W11.2,EIC",[Valor Mercadoria])+"\n"
EndIf   
            
;----- Observa‡Æo com 3 Linhas -------------------------------------------------    
Moveto "FaturaC"

If [Faturac->Frete Incluso na Nota]="S" or
  [Faturac->Frete Incluso na Nota]="+"
  Then  vrfrete=[Faturac->Valor do Frete]
       lvrfrete="(+)Frete..: "+Format("W10.2,EIC",vrfrete)
  Else  vrfrete=BlankNum()
       lvrfrete="(:)Frete..: "+Format("W10.2,EIC",vrfrete)
EndIf   

If QUEBRA
   Then LINHA1 =                 "Desconto  **  %..... *******   "+"\n"   
        LINHA2 =                 "DespAces............ *******   "+"\n"
        LINHA3 =                 "Frete............... *******   "+"\n"
        LINHA4 = Chr(27)+Chr(71)+"Total Liquido....... *******   "+Chr(27)+Chr(72)+"\n"   
   Else LINHA1 = "Desconto"+Format("W06.2,EIC",[Taxa de Desconto]) + "%....."+Format("W11.2,EIC",[Valor Desconto])+"\n"  
        LINHA2 = "DespAces............"+Format("W11.2,EIC",[Valor Despesas Acessorias])+"\n" 
        LINHA3 = "Frete..............."+Format("W11.2,EIC",vrfrete)+"\n" 
        LINHA4 = Chr(27)+Chr(71)+"Total Liquido......."+Format("W11.2,EIC",[Valor Nota Fiscal])+Chr(27)+Chr(72)+"\n"     
EndIf
    
OBS      ="OBS: "+Tira_QuebraLinha([Observacao na Nota Fiscal])
TM_OBS   = "85" 
OBS_NOTA1 = Ltrim(Rtrim(SubStr(OBS,                 1,NumVal(TM_OBS))))
OBS_NOTA2 = Ltrim(Rtrim(SubStr(OBS,NumVal(TM_OBS)  +1,NumVal(TM_OBS))))
OBS_NOTA3 = Ltrim(Rtrim(SubStr(OBS,NumVal(TM_OBS)*2+1,NumVal(TM_OBS))))
OBS_NOTA4 = Ltrim(Rtrim(SubStr(OBS,NumVal(TM_OBS)*3+1,NumVal(TM_OBS))))

For i From 1 To 4
  Switch
    Case i = 1 : AUX_LINHA = Format("W94,AL",OBS_NOTA1)+LINHA1
    Case i = 2 : AUX_LINHA = Format("W94,AL",OBS_NOTA2)+LINHA2
    Case i = 3 : AUX_LINHA = Format("W94,AL",OBS_NOTA3)+LINHA3
    Case i = 4 : AUX_LINHA = Format("W94,AL",OBS_NOTA4)+LINHA4
  EndSwitch
  Print File ARQIMP AUX_LINHA
EndFor
                 
;---- IMPRESSAO DE TITULO DE CREDITO -----------------------------
If Rtrim(TC)<>""
   Then TC = "Titulo de Credito: " + TC
EndIf   
If SubStr(TC,1,84)<>""
   Then Print File ARQIMP Chr(27)+Chr(71)
        Print File ARQIMP Completa(SubStr(TC,1,84),84," ")
        Print File ARQIMP Chr(27)+Chr(72)
   Else Print File ARQIMP Spaces(84)
EndIf    

If QUEBRA
   Then Print File ARQIMP Spaces(10)+"Credito Utilizado... *******   "+"\n"   
   Else Print File ARQIMP Spaces(10)+"Credito Utilizado..."  + Format("W11.2,EIC",CT_UTILIZADO)+"\n"
EndIf                               

If SubStr(TC,85,66)<>""
   Then Print File ARQIMP Chr(27)+Chr(71)
        Print File ARQIMP Spaces(18)+Completa(SubStr(TC,85,66),66," ")
        Print File ARQIMP Chr(27)+Chr(72)
   Else Print File ARQIMP Spaces(84)
EndIf

If QUEBRA
   Then Print File ARQIMP Spaces(10)+"Credito Gerado...... *******   "+"\n"   
   Else Print File ARQIMP Spaces(10)+"Credito Gerado......" + Format("W11.2,EIC",[Valor TC])+"\n"
EndIf       
    
If SubStr(TC,150,66)<>""
   Then Print File ARQIMP Spaces(18)+Completa(SubStr(TC,150,66),66," ")+"\n\n"
   Else Print File ARQIMP "\n"
EndIf           

;Print File ARQIMP "\n"+"  Expedicao: "
;If [Numero da Expedicao]<>"" And [Origem da Expedicao]<>""
;   Then Switch
;          Case [Origem da Expedicao]="OF" : GetRecord "\\Sistemas\\Vendas\\ExpedC"   [Numero da Expedicao] To REG_EXPED
;          OtherWise                       : GetRecord "\\Sistemas\\Vendas\\ExpedC"   [Numero da Expedicao] To REG_EXPED
;        EndSwitch        
;        If Retval
;           Then GetRecord "\\Sistemas\\Cadastro\\Usuarios" REG_EXPED["Codigo_Usuario"] To REG_USUARIO
;                If RetVal
;                   Then VSDGNOMUSUARIO = REG_USUARIO["Nome"]
;                   Else VSDGNOMUSUARIO = ""
;                EndIf   
;                Print File ARQIMP Format("W4",REG_EXPED["Codigo_Usuario"])+" "+VSDGNOMUSUARIO+"  "+
;                                  Format("D13",REG_EXPED["Data_Inclusao"])+" "+
;                                  REG_EXPED["Hora_Inclusao"]
;        EndIf
;        Release Vars REG_USUARIO,VSDGNOMUSUARIO,REG_EXPED
;EndIf
Print File ARQIMP "\n"                    
                        
;************************ IMPRESSAO DOS VENCIMENTOS ****************************
Array DATA [9]
Array VALOR[9]
Array FPGT [9]
QUEBRA_VENCTO = False
K=0
KV=0
Moveto "FaturaV"
Moveto [Numero da OF]
Locate [FaturaC->Numero da OF]
While [Numero da OF]=[FaturaC->Numero da OF]
  If [Forma de Pagamento]<>"TC"
     Then If K = 0
             Then ;Print File ARQIMP "\018"
                  If Not QUEBRA_VENCTO
                     Then Print File ARQIMP "\027E"
                          Print File ARQIMP "Vencimentos: "
                     Else Print File ARQIMP SpaceS(13)
                  EndIf   
          EndIf        
          K=K+1
          DATA[K]  = Format("D13",[Data])
          VALOR[K] = Format("W10.2,AR,EIC",[Valor])
          FPGT[K]  = Format("W10","FP: "+[Forma de Pagamento])
          If K=9
             Then QUEBRA_VENCTO=True
                  VENC()
                  K=0
          EndIf
  EndIf
  Skip
  If EOT() Then QuitLoop EndIf
EndWhile
If K>0
   Then VENC()
EndIf
Print File ARQIMP "\027F"

;************************* IMPRESSAO DO RODAPE *********************************
If Not QUEBRA
   Then Print File ARQIMP Format("W129,AC","   /   /     -                                   ")+ "\n"
        Print File ARQIMP Format("W129,AC","-------------------------------------------------") + "\n"
        Print File ARQIMP Format("W129,AC","Data e Assinatura")+"\n"        
EndIf

Print File ARQIMP CI_6LPP
Print File ARQIMP CI_10CPP
Print File ARQIMP "\f"
        
EndProc

;*******************************************************************************
;* Rotina de Impressao dos Vencimentos                                         *
;*******************************************************************************
Proc VENC()
private i

If KV>0
   Then If Not QUEBRA_VENCTO
           Then Print File ARQIMP Spaces(13)
        EndIf   
EndIf

For I From 1 to K
  Print File ARQIMP FPGT[I]+Spaces(02)
EndFor

Print File ARQIMP "\n"
Print File ARQIMP Spaces(13)
For I From 1 to K
  Print File ARQIMP DATA[I]+Spaces(02)
EndFor

Print File ARQIMP "\n"
Print File ARQIMP Spaces(13)
For I From 1 to K
  Print File ARQIMP VALOR[I]+Spaces(02)
EndFor

Print File ARQIMP "\n"

KV=KV+1
EndProc

;*******************************************************************************
;* Rotina Principal                                                            *
;*******************************************************************************

ArqImp=PrivDir()+"Ro_0377.Txt"
If IsFile(ArqImp)
   Then Deleta_Arquivo(ARQIMP)
EndIf

AGUARDE("Imprimindo Romaneio -> "+NOTAFISC)
IMPFAT()

;---- Imprime Arquivo Impressao ------------------------------------------------
ImpriArq(ARQIMP)

Release Vars QUEBRA, CONTADOR, DATA, VALOR, FPGT, QUEBRA_VENCTO, K, KV
Release Procs IMPFAT, VENC, Cabecalho, Rodape
LIMPAGUARDE()
