;** RO_0146 ********************************************************************
;** Imprime a Digitacao do Romaneio                            ** CLEMIG **    *
;*******************************************************************************
;Autor           : Vise Informatica (VISERP)
;Desenvolvido  em: 09/11/2005 por Niklas M. Mateus
;Alterado em     : 22/11/2006 por Nikolas
;Motivo Alteracao: Ajustes telefone
;Ultima Alteracao: 15/08/2007 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes Run
;Ultima Alteracao: 29/08/2008 por Nikolas
;Motivo Alteracao: Ajustes casas decimais quantidade

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

;************************** 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(60)+"
;Print File ARQIMP "\027F"

Print File ARQIMP "\027E"
Print File ARQIMP Format("W57,AL","      CLEMIG MATERIAS DE CONST. E ALTA TENSAO LTDA")+"          N§ "+Format("W06.3,AL",NOTAFISC)+"\n"
Print File ARQIMP "\027F"
Print File ARQIMP Format("W59,AL","             Rua Espirito Santo, 637  Centro")+Format("D10",Today())+"-"+Time()+"\n"
Print File ARQIMP Format("W65,AL","               Telefax: 37-3215-9131")+"\n"
Print File ARQIMP "----------------------------------------------------------------------------"+"\n"

;Print File ARQIMP "\014"
Print File ARQIMP "\027E"
;Print File ARQIMP "\020"

Print File ARQIMP "  Cliente : "+Format("W05,AL",[Codigo])+Format("W46,AL",[Razao Social])+"\n"
Print File ARQIMP "\027F"

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

Print File ARQIMP Spaces(03)+"End.: "+Format("W40,AL",[Endereco])
Print File ARQIMP "             CNPJ: "+Format("W18,AL",[CGC])+"        Operacao: "+[Codigo da Destinacao]+" "+[Descricao da Destinacao]+"\n"

Print File ARQIMP Spaces(03)+"Bairro: "+Format("W20,AL",[Bairro])
Print File ARQIMP "      CEP: "+Format("W20,AL",[CEP])
Print File ARQIMP "Insc.Est.: "+Format("W20,AL",[IE])+" Vendedor: "+Format("W05,AL",[Codigo do Representante])+Format("W20,AL",[Nome Fantasia Represent])+"\n"

Print File ARQIMP Spaces(03)+"Cidade: "+Format("W20,AL",[Cidade])
Print File ARQIMP "      UF: "+Format("W20,AL",[UF])
Ativ=""
Moveto [Codigo]
KeyPress "F1"
Locate [Faturac->Codigo]
If Retval
   Then Ativ=[Descricao Atividade]
EndIf
KeyPress "ESC"

Print File ARQIMP " Fone: "+Format("W25,AL",[Telefone])+" "+Format("W15,AL",Ativ)+"\n"

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

;********************* IMPRESSAO DOS ITENS ********************************
Print File ARQIMP "--------------------------------------------------------------------------------------------------------------------------------"+"\n"
Print File ARQIMP Spaces(02)+"Seq. Codigo     Descricao                                                      Un  Quantidade  Unitario        Total"+"\n"
Print File ARQIMP "--------------------------------------------------------------------------------------------------------------------------------"+"\n"
Moveto "FaturaI"
Moveto [Numero da OF]
Locate [FaturaC->Numero da OF]
QUANT    = 0
TOT      = 0
CONTADOR = 0

While [Numero da OF]=[FaturaC->Numero da OF]
  Print File ARQIMP Spaces(02)+Format("W03,AR",StrVal([Item da OF]))
  Print File ARQIMP Spaces(01)+Format("W11,AL",[Codigo do Item])
  Print File ARQIMP Spaces(01)+Format("W62,AL",[Descricao do Item])
  Print File ARQIMP Spaces(01)+Format("W03,Al",[Unidade Fiscal])
  Print File ARQIMP Format("W10.2,EIC",[Quantidade])
  Print File ARQIMP Format("W10.2,EIC",[Preco Unitario])
  Print File ARQIMP Format("W13.2,EIC",[Preco Total])+"\n"
  TOT   = TOT + [Preco Total]
  Skip
  If EOT() Then QuitLoop EndIf
  CONTADOR = CONTADOR + 1
EndWhile

For ITEM From CONTADOR To 9
    Print File ARQIMP "\n"
EndFor
Print File ARQIMP "--------------------------------------------------------------------------------------------------------------------------------"+"\n"

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

Print File ARQIMP Spaces(88)+"Total.............."+Format("W11.2,EIC",TOT)+"\n"

Print File ARQIMP Spaces(02)+"OBS.: "
Print File ARQIMP Format("W58,AL",SubStr([Observacao na Nota Fiscal],001,58))

;Print File ARQIMP "                                                                  "
Print File ARQIMP Spaces(22)+"Desconto"+Format("W06.2,EIC",[Taxa de Desconto]) + "%..."
Print File ARQIMP Format("W12.2,EIC",[Valor Desconto])+"\n"
Print File ARQIMP Spaces(88)+"Frete............."+Format("W12.2,EIC",[Valor do Frete])+"\n"
Print File ARQIMP Spaces(88)+"Total Liquido......"+Format("W11.2,EIC",[Valor Mercadoria Liquido]+[Valor do Frete])+"\n"

Print File ARQIMP "Cond. Pagto: "+[Descricao CondPagto]
Print File ARQIMP "   NP: "+StrVal([Numero de Parcelas])
Print File ARQIMP "   CD: "+[Composicao de Dias]+"\n"

;********************* IMPRESSAO DOS VENCIMENTOS **************************
Print File ARQIMP "Vencimentos: "

Array DATA[9]
Array VALOR[9]
Array FP[9]
K=0
KV=0
Moveto "FaturaV"
Moveto [Numero da OF]
Locate [FaturaC->Numero da OF]
While [Numero da OF]=[FaturaC->Numero da OF]
  K=K+1
  DATA[K]  = Format("D13",[Data])
  VALOR[K] = Format("W10.2,AR,EIC",[Valor])
  FP[K] = ([Forma de Pagamento])
  If K=9
     Then VENC()
          K=0
  EndIf
  Skip
  If EOT() Then QuitLoop EndIf
EndWhile
If K>0
   Then VENC()
EndIf
;Print File ARQIMP "\n"
;Print File ARQIMP "\027F"

;************************* IMPRESSAO DO RODAPE *********************************
Print File ARQIMP Spaces(74)+"Ass.: --------------------------------------" + "\n"
Print File ARQIMP CI_6LPP
Print File ARQIMP CI_10CPP
Print File ARQIMP "\f"
EndProc

;*******************************************************************************
;* Rotina de Impressao dos Vencimentos                                         *
;*******************************************************************************
Proc VENC()
If KV>0
   Then Print File ARQIMP Spaces(13)
EndIf
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(01)+FP[I]+Spaces(01)
EndFor

Print File ARQIMP "\n"

KV=KV+1
EndProc

;*******************************************************************************
;* Rotina Principal                                                            *
;*******************************************************************************
ArqImp=PrivDir()+"Romaneio.Txt"
Deleta_Arquivo(ARQIMP)

AGUARDE("Imprimindo Romaneio -> "+NOTAFISC)
IMPFAT()
Print File ARQIMP CI_10CPP
Print File ARQIMP CI_6LPP

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

Release Vars VALOR,DATA, FP
Release Procs IMPFAT,VENC
LIMPAGUARDE()


