;** RO_0058 ********************************************************************
;** Impressao de Itens c/ Nota Promissoria             ** Domar Couros **      *
;*******************************************************************************
;Autor           : Vise Informatica (VISERP)
;Desenvolvido  em: 24/01/2006 por Anivel Augusto Rodrigues
;Alterado em     : 31/01/2006 por Nikolas M. Mateus
;Motivo Alteracao: Ajustes
;Alterado em     : 20/06/2006 por Antonio Marcelo Alves
;Motivo Alteracao: Inclusao ImpriArq()
;Ultima Alteracao: 13/09/2018 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes modo ordem da duplicata numero/letra

;**** Teste da Impressora ****
Moveto "FaturaC"
AGUARDE("Imprimindo itens c/ nota promissoria")

ShowPopup " Op‡”es da Promissoria " CENTERED
  "~Banco"    : " Envio para Banco "  :" 01-BC",
  "~Carteira" : " Mantem em Carteira" :"      "
EndMenu
To MSGBANCO
If Not RetVal
   Then MSGBANCO="      "
EndIf

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

Print File ARQIMP CI_6LPP
Print File ARQIMP CI_15CPP

;********* Monta Vencimentos *********
Array dia[12]
Array mes[12]
Array ano[12]

For I From 1 To 12
    dtvencto[i]=BlankDate()
    valorven[i]=BlankNum()
    dia[i] =""
    mes[i] =""
    ano[i] =""
EndFor

Moveto "FaturaV"
Moveto [Numero da OF]
Locate [FaturaC->Numero da OF]
If RetVal
   Then i=0
        While [Numero da OF] = [FaturaC->Numero da OF]
          i=i+1
          dtvencto[i] = [Data ]
          valorven[i] = [Valor]
          dia[i]      = Day([Data])
          mes[i]      = MESEXT(Month([Data]))
          ano[i]      = Year([Data])
          Skip
          If EOT()
             Then QuitLoop
          Endif
        EndWhile
Endif

;********* Monta Itens *********
Array Litens[7]
For I From 1 To 7
    litens[i] =""
EndFor

Moveto "FaturaI"
Moveto [Numero da OF]
Locate [FaturaC->Numero da OF]
If RetVal
   Then i=0
        While [Numero da OF] = [FaturaC->Numero da OF] And i<=7
          i=i+1
          If [Tipo do Item]<>"C"
             Then LItens[i] = Spaces(02)+Format("W10.02,EIC",[Quantidade])
                  LItens[i] = LItens[i] + Format("W09,AC",[Unidade Fiscal])
                  LItens[i] = LItens[i] + Format("W81,AL",[Descricao do Item])
                  LItens[i] = LItens[i] + Format("W10,AL",[Codigo do Item])
                  LItens[i] = LItens[i] + Format("W11.2,EIC",[Preco Unitario])
                  LItens[i] = LItens[i] + Format("W14.2,EIC",[Preco Total])
          EndIf
          Skip
          If EOT() Then QuitLoop EndIf
        EndWhile
EndIf

Moveto "FaturaC"
Moveto [Codigo da Empresa]
Ativa_Lookup()
Locate [FaturaC->Codigo da Empresa]
If RetVal
   Then NP_NOME_EMPRESA=[Razao Social Empresa]
        NP_CNPJ_EMPRESA=[CGC Empresa]
        NP_CIDA_EMPRESA=[Cidade Empresa]
   Else NP_NOME_EMPRESA=""
        NP_CNPJ_EMPRESA=""
        NP_CIDA_EMPRESA=""
EndIf
KeyPress "ESC"


COD_AREA=""
Moveto [Codigo]
Ativa_Lookup()
Moveto [Codigo]
Locate [Faturac->Codigo]
If RetVal
   Then COD_AREA=[Codigo da Area]
EndIf
KeyPress "ESC"

UnLockRecord

getsys_modo_ordemdup()

i=1
While valorven[i] <> BlankNum()

  Print File ARQIMP "\n"
  
  switch
    case sys_modo_ordemdup="N":
      If Not IsBlank(dtvencto[2])
         Then Print File ARQIMP Spaces(02)+Format("W100,AL",[Codigo]+"-"+[Razao Social])+NOTAFISC+"/"+strval(i)+Spaces(18)+[Codigo do Representante]+"\n\n"
         Else Print File ARQIMP Spaces(02)+Format("W100,AL",[Codigo]+"-"+[Razao Social])+NOTAFISC+"  "+Spaces(18)+[Codigo do Representante]+"\n\n"
      EndIf
    
    otherwise                 :
      If Not IsBlank(dtvencto[2])
         Then Print File ARQIMP Spaces(02)+Format("W100,AL",[Codigo]+"-"+[Razao Social])+NOTAFISC+"/"+CHR(65+i-1)+Spaces(18)+[Codigo do Representante]+"\n\n"
         Else Print File ARQIMP Spaces(02)+Format("W100,AL",[Codigo]+"-"+[Razao Social])+NOTAFISC+"  "+Spaces(18)+[Codigo do Representante]+"\n\n"
      EndIf
  
  endswitch


  For ii From 1 to 7
    Print File ARQIMP LItens[ii]+"\n"
  EndFor

  Print File ARQIMP "\n"
  Print File ARQIMP Spaces(08)+Format("D13",[Data de Emissao])+Spaces(10)+
                    Format("W40,AL",[Descricao CondPagto])+"Vr. Parc. "+
                    Format("W11.2,EIC",valorven[i])+Spaces(10)+
                    Format("D13",dtvencto[i])+Spaces(16)+
                    Format("W12.2,EIC",[Valor Nota Fiscal])+"\n\n"

  Print File ARQIMP Spaces(95)+Format("W11,AL",(dia[i]))+Format("W25,AL",(mes[i]))+Format("W10,AL",(ano[i]))+"\n"

  switch
    case sys_modo_ordemdup="N":
      If Not IsBlank(dtvencto[2])
         Then Print File ARQIMP Spaces(35)+Format("W12,AR",(NOTAFISC+"/"+strval(i)))+Spaces(05)+"R= "+[Codigo do Representante]+MSGBANCO+Spaces(02)+COD_AREA+
                                Spaces(45)+Format("W20.2,EIC",valorven[i])+"\n"
         Else Print File ARQIMP Spaces(35)+Format("W12,AR",(NOTAFISC+"  "))+Spaces(05)+"R= "+[Codigo do Representante]+MSGBANCO+Spaces(02)+COD_AREA+
         Spaces(45)+Format("W20.2,EIC",valorven[i])+"\n"
      EndIF
    
    otherwise                 :
      If Not IsBlank(dtvencto[2])
         Then Print File ARQIMP Spaces(35)+Format("W12,AR",(NOTAFISC+"/"+CHR(65+i-1)))+Spaces(05)+"R= "+[Codigo do Representante]+MSGBANCO+Spaces(02)+COD_AREA+
                                Spaces(45)+Format("W20.2,EIC",valorven[i])+"\n"
         Else Print File ARQIMP Spaces(35)+Format("W12,AR",(NOTAFISC+"  "))+Spaces(05)+"R= "+[Codigo do Representante]+MSGBANCO+Spaces(02)+COD_AREA+
         Spaces(45)+Format("W20.2,EIC",valorven[i])+"\n"
      EndIF
  
  endswitch
  
;***** Extenso p/ Data ********************************************************
; dtextenso=""
; EscExt(NumVal(Dia[i]))
; dtextenso=SubStr(Extenso,1,SearchFrom(" CENT",extenso,1))
;
; dtextenso=dtextenso+"DO MES DE "+Mes[i]
;
; EscExt(NumVal(SubStr(StrVal(NumVal(ano[i])),1,1))*1000000)
; dtextenso=dtextenso+"DO ANO DE"+SubStr(Extenso,1,SearchFrom(" REA",extenso,1))
;
; If NumVal(SubStr(StrVal(NumVal(ano[i])),2,3))>0
;    Then dtextenso=dtextenso+"E"
;         EscExt(NumVal(SubStr(StrVal(NumVal(ano[i])),2,3))*1000)
;         dtextenso=dtextenso+SubStr(Extenso,1,SearchFrom(" REA",extenso,1))
; EndIf
;
; Print File ARQIMP "\n"
; Print File ARQIMP Spaces(37)+SubStr(dtextenso,01,90)+"\n\n"
; Print File ARQIMP Spaces(32)+Completa(SubStr(dtextenso,91,20),33," ")+"rei\n\n"
;
; Print File ARQIMP Spaces(35)+Completa(NP_NOME_EMPRESA,75," ")+NP_CNPJ_EMPRESA+"\n\n"
;
;******************************************************************************

  Print File ARQIMP "\n\n\n\n\n\n\n"

  ESCEXT(valorven[i])
  Print File ARQIMP Spaces(47)+SubStr(EXTENSO,001,90)+"\n\n"
  Print File ARQIMP Spaces(32)+SubStr(EXTENSO,091,80)+"\n\n"

  Print File ARQIMP Spaces(92)+Completa(NP_CIDA_EMPRESA,30," ")+
                    Completa(StrVal(Day([Data de Emissao])),7," ")+
                    Completa(StrVal(Month([Data de Emissao])),4," ")+
                    StrVal(Year([Data de Emissao]))+"\n"

  Print File ARQIMP Spaces(45)+Format("W40,Al",[Codigo]+ " - "+[Razao Social])+"\n"

  Print File ARQIMP Spaces(45)+Format("W18,AL",[CGC])+"\n"

  Print File ARQIMP Spaces(45)+[Endereco]+" - "+ [Cidade]+"\n"

  Print File ARQIMP "\n\n"

  i=i+1
EndWhile

Print File ARQIMP CI_10CPP
Print File ARQIMP CI_6LPP


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


LIMPAGUARDE()

Release Vars i,ii,dia,mes,ano,Litens

