;** Ro_0102 ********************************************************************
;** Imprime a Digitacao do Romaneio               Concretos Vico              *
;*******************************************************************************
;Autor           : Vise Informatica (VISERP)
;Desenvolvido  em: 26/12/2002 por Karen Lauar Nery
;Alterado em     : 31/07/2006 por Nikolas M. Mateus
;Motivo Alteracao: Ajustes
;Alterado em     : 19/06/2006 por Antonio Marcelo Alves
;Motivo Alteracao: Inclusao ImpriArq()
;Alterado em     : 24/10/2006 por Davi carrano/Nikolas
;Motivo Alteracao: Cabe‡alho no Final e Ajustes
;Alterado em     : 04/04/2007 por Nikolas
;Motivo Alteracao: Retirada a Marca
;Ultima Alteracao: 14/08/2007 por Antonio Marcelo Alves
;Motivo Alteracao: Ajustes Deleta_Arquivo
;Ultima Alteracao: 11/05/2010 por Bruno Carvalho
;Motivo Alteracao: Adicionado Porcentagem do Desconto  
;Ultima Alteracao: 24/01/2011 por Bruno Carvalho
;Motivo Alteracao: Altera‡Æo para Imprimir 2x o Romaneio
;Ultima Alteracao: 28/02/2011 por Bruno Carvalho
;Motivo Alteracao: Altera‡Æo para Imprimir 1x o Romaneio  (Por Sara)
;Ultima Alteracao: 12/09/2011 por Karina Andrade
;Motivo Alteracao: Altera‡Æo para Imprimir 2x o Romaneio  (Por Sara)
;Ultima Alteracao: 17/05/2012 por Bruno Carvalho
;Motivo Alteracao: Add novo ajuste para impressÆo da destina‡Æo "ENTREGA FUTURA"
;Ultima Alteracao: 03/06/2013 por Bruno Carvalho
;Motivo Alteracao: Ajustes p/ a palavra DEVOLUCAO ser exibida quando for Nota de DEV.
;Ultima Alteracao: 21/06/2013 por Bruno Carvalho
;Motivo Alteracao: Ajustes VR TOTAL e VR DESCONTO UNITARIO 
;Ultima Alteracao: 15/06/2016 por Bruno Carvalho 
;Motivo Alteracao: Adicionado Pega_Endereco_Fatura() e ajustado dados do endere‡o
;Ultima Alteracao: 04/04/2017 por Anivel Augusto Rodrigues 
;Motivo Alteracao: Ajustes observa‡äes
;Ultima Alteracao: 31/08/2017 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes desconto item
;Ultima Alteracao: 26/06/2018 por Anivel Augusto Rodrigues                           
;Motivo Alteracao: Ajustes itens mercadoria/servico
;Ultima Alteracao: 11/10/2019 por Anivel Augusto Rodrigues                           
;Motivo Alteracao: Ajustes fones

;*******************************************************************************
;* Rotina para Impressao do Relatorio                                          *
;*******************************************************************************
Proc IMPRO()
private regdestinat, fones

;************************* IMPRESSAO DO CABECALHO *****************************
If Not IsAssigned(NOMEMPRESA)
   Then NOMEMPRESA=""
EndIf

Moveto "FaturaC"
Pega_Endereco_Fatura([Numero da OF])

fones=[FaturaC->Telefone]
getrecord "\\sistemas\\cadastro\\destinat" [FaturaC->Codigo] to regdestinat
if retval
   then if not isblank(regdestinat["Celular"])
           then fones=fones+", "+regdestinat["Celular"]
        endif
endif           

Print File ARQIMP CI_15CPP
Print File ARQIMP CI_8LPP

Print File ARQIMP "\n"

Print File ARQIMP Spaces(02)+"EMISSAO: "+Format("D13",Today())+"-"+Time()+"  "+
                  "VEND: "+Format("W21,AL",[Nome Fantasia Represent])+
                  "    NUMERO:  "+Format("W06.3,AL",NOTAFISC)+"\n"

Print File ARQIMP Spaces(02)+"CLIENTE.: "
Print File ARQIMP Format("W05,AL",[Codigo])
Print File ARQIMP Format("W40,AL",[Razao Social])+"\n"

Print File ARQIMP Spaces(02)+"AUTORIZ.: "+Format("W42,AL",[Nome do Autorizado])+Format("W20,AL",[CPF do Autorizado])+"\n"
CLIENTE=[Razao Social]
Print File ARQIMP Spaces(02)+"ENDERE€O: "+ Format("W40,AL",[Endereco])+"\n"
Print File ARQIMP Spaces(02)+"BAIRRO..: "+ Format("W20,AL",[Bairro])+
"FONES: " + fones+"\n"
Print File ARQIMP Spaces(02)+"CIDADE..: "+Format("W20,AL",[Cidade])+Spaces(30)
Print File ARQIMP "PEDIDO:  "+[Numero do Pedido]+"\n\n"

If IsBlank(VSD_E_Endereco) Then VSD_E_Endereco=[Endereco] EndIf
If IsBlank(VSD_E_Bairro)   Then VSD_E_Bairro=[Bairro]     EndIf
If IsBlank(VSD_E_Cidade)   Then VSD_E_Cidade=[Cidade]     EndIf
If IsBlank(VSD_E_CEP)      Then VSD_E_CEP=[Cep]           EndIf

Print File ARQIMP Spaces(02)+"ENTREGA.: "+Format("W33,AL",VSD_E_Endereco)+Spaces(02)+"BAIRRO: "+Format("W20,AL",VSD_E_Bairro)+"\n"
Print File ARQIMP Spaces(02)+"CIDADE DE ENTREGA: "+Format("W20,AL",VSD_E_Cidade)+Spaces(09)+"CEP: "+Format("W10,AL",VSD_E_CEP)+"\n\n"

Moveto "FaturaC"
;-- Rotina p/ ImpressÆo da Observa‡Æo ------------------------------------------
DES_OBS = "OBS.....: "+[Observacao na Nota Fiscal]                                           
tmobs=78
nlobs   =len(DES_OBS)/tmobs
if nlobs>int(nlobs)
   then nlobs=int(nlobs)+1
endif    
aux=1                     
For wi From 1 To nlobs  
  Print File ARQIMP "  "+SubStr(DES_OBS,AUX,tmobs)+"\n" 
  aux=aux+tmobs 
EndFor

;********** PARCELAS/VENCIMENTOS ********************

Print File ARQIMP Fill("-",80)+"\n"
Print File ARQIMP Spaces(09)+"PARCELA"+Spaces(05)+"ND"+Spaces(05)+"VENCIMENTO"+Spaces(07)+"VALOR"+Spaces(02)+"FP"+"\n"

Moveto "FaturaV"
Moveto [Numero da OF]
Locate [FaturaC->Numero da OF]
If RetVal
   Then While ([Numero da OF]=[FaturaC->Numero da OF])
          Print File ARQIMP Spaces(12)+AlinhM([Sequencia],2)+Spaces(05)+Format("W4",[Numero de Dias])+
                            Spaces(05)+ Format("D13",[Data])+Spaces(01)+Format("W11.2,EIC",[Valor])+Spaces(02)+Format("W2",[Forma de Pagamento])+"\n"
          Skip
          If EOT() Then QuitLoop EndIf
        EndWhile
EndIf

;******************************** IMPRESSAO DOS ITENS ********************************
Print File ARQIMP Fill("=",80)+"\n"
Print File ARQIMP " PRODUTO                                     UF      QUANT    Vr.Unit   Vr.Total"+"\n"

Moveto "FaturaI"
Moveto [Numero da OF]
Locate [FaturaC->Numero da OF]
DESCONTO  =0
DESCONTO_S=0

While [Numero da OF]=[FaturaC->Numero da OF]
   Print File ARQIMP Format("W11,AL",[Codigo do Item])
   Print File ARQIMP Format("W34,AL",[Descricao do Item])
   Print File ARQIMP Format("W03,AL",[Unidade Fiscal])
   Print File ARQIMP Format("W10.2,EIC",[Quantidade])+Spaces(01)
   Print File ARQIMP Format("W10.2,EIC",[Preco Unitario])
   Print File ARQIMP Format("W11.2,EIC",[Quantidade]*[Preco Unitario])+"\n"
         
   if [tipo do Item]="C"
      then DESCONTO_S= DESCONTO_S+[Valor Desconto Item]              ;Total Desconto Unit rio
      else DESCONTO  = DESCONTO  +[Valor Desconto Item]              ;Total Desconto Unit rio
   endif   
   Skip
   If EOT() Then QuitLoop EndIf
EndWhile

Moveto "FaturaC"
TOTD  =(([Valor Desconto        ]+DESCONTO  )*100)/([Valor Mercadoria]+DESCONTO  )
TOTD_S=(([Valor Desconto Servico]+DESCONTO_S)*100)/([Valor Servico   ]+DESCONTO_S)

Print File ARQIMP Spaces(74)+"------"+"\n"
Print File ARQIMP Spaces(69)+Format("W11.2,EIC",[Valor Mercadoria]+DESCONTO+[Valor Servico]+DESCONTO_S)+"\n"
Print File ARQIMP Fill("-",80)+"\n"

Print File ARQIMP Spaces(02)+"VR.MERCADORIAS: "+Format("W11.2,EIC",[Valor Mercadoria]+DESCONTO)+     
                  Spaces(05)+"VR.DESCTO: "+Format("W10.2,EIC",[Valor Desconto]+DESCONTO)
Print File ARQIMP Spaces(03)+"%DESCTO: "+Format("W9.2,EIC",TOTD)+"%\n"

Print File ARQIMP Spaces(02)+"VR.SERVICOS...: "+Format("W11.2,EIC",[Valor Servico   ]+DESCONTO_S)+     
                  Spaces(05)+"VR.DESCTO: "+Format("W10.2,EIC",[Valor Desconto Servico]+DESCONTO_S)
Print File ARQIMP Spaces(03)+"%DESCTO: "+Format("W9.2,EIC",TOTD_S)+"%\n"

             
Print File ARQIMP Spaces(02)+"VR.FRETE......: "+Format("W11.2,EIC",[Valor do Frete])+"\n\n"
      
Print File ARQIMP Spaces(02)+"   VR A PAGAR.: "
Print File ARQIMP CI_10CPP
Print File ARQIMP CI_IEXP
Print File ARQIMP LTrim(Format("W11.2,EIC",[Valor Nota Fiscal]))+"\n\n"
Print File ARQIMP CI_FEXP
Print File ARQIMP CI_15CPP
Print File ARQIMP Fill("-",80)+"\n\n\n\n"
Print File ARQIMP Spaces(17)+Fill("-",40)+"\n"
Print File ARQIMP Chr(27)+Chr(98)
Print File ARQIMP Spaces(17)+Format("W40,AC",CLIENTE)+"\n\n\n\n"

Print File ARQIMP CI_FEXP
Print File ARQIMP CI_FNEG
Print File ARQIMP CI_15CPP
Print File ARQIMP Fill("=",80)+"\n"
Print File ARQIMP CI_10CPP
Print File ARQIMP CI_IEXP
Print File ARQIMP CI_INEG

Switch                                                                                                           
  Case [Codigo da Destinacao]="017"                          : Print File ARQIMP "OR€AMENTO*VICO*E.F."           
  Case [Codigo da Destinacao]="005"                          : Print File ARQIMP Format("W30,AL",[Descricao da Destinacao])
  Case Search("DEVOL",[Descricao da Destinacao])>0           : Print File ARQIMP "DEVOLUCAO"
  Case Search("SIMPLES REMESSA",[Descricao da Destinacao])>0 : Print File ARQIMP "SIMPLES REMESSA"
  Case Search("VEND",[Descricao da Destinacao])>0            : Print File ARQIMP "OR€AMENTO ** VICO **"
  OtherWise                                                  : Print File ARQIMP Format("W30,AL",[Descricao da Destinacao])
EndSwitch

Print File ARQIMP CI_FEXP
Print File ARQIMP CI_FNEG
Print File ARQIMP CI_15CPP
Print File ARQIMP "\n"
Print File ARQIMP Spaces(17)+"NAO VALE COMO N.F PROCURE O CUPOM NO CAIXA"+"\n"

Print File ARQIMP Fill("=",80)+"\n"
Print File ARQIMP Spaces(17)+"         AGRADECEMOS A PREFERENCIA"+"\n"
Print File ARQIMP Spaces(17)+"         ''NAO TEMOS COBRADOR''     "+"\n"
Print File ARQIMP Spaces(17)+ "     HAVERA AUMENTO APOS O VENCIMENTO "+"\n"
Print File ARQIMP Fill("-",80)+"\n"

Print File ARQIMP CI_10CPP
Print File ARQIMP CI_6LPP
EndProc ; (IMPRO)

;*******************************************************************************
;* Rotina Principal                                                            *
;*****************+*************************************************************
ArqImp=PrivDir()+"Ro_0102.Txt"
If IsFile(ArqImp)
   Then Deleta_Arquivo(ARQIMP)
EndIf

AGUARDE("Imprimindo Romaneio -> "+NOTAFISC)

;ImpressÆo de 2 Vias de Romaneio (Alterado em 12/09/2011)
For j From 1 To 2
  If j=2 
     Then Print File ARQIMP "\n\n\n\n"
  EndIf
  IMPRO()
EndFor
Print File ARQIMP "\n\n"

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

Release Vars CLIENTE,END_ENT,BAI_ENT,CID_ENT,CEP_ENT
Release Procs IMPRO
LIMPAGUARDE()

