;** CB_0222 ********************************************************************
;* Carta de Cobranca XIII                                                      *
;*******************************************************************************
;Autor: Visao/Vise
;Desenvolvido  em: 15/06/2012 por Bruno Carvalho
;Ultima Altera‡Æo: 25/02/2013 por Karina Andrade 
;Motivo Alteracao: Ajustes dizeres da carta (Pedido Dione)
;Ultima Altera‡Æo: 23/06/2014 por Bruno Carvalho 
;Motivo Alteracao: Ajustado para permitir impressÆo para outras empresas
;Ultima Altera‡Æo: 18/07/2014  por Luis Gustavo
;Motivo Alteracao: Implementado a op‡ao de buscar o endere‡o de cobranca

;*******************************************************************************
;* Desmembra campo endereco em Logradouro, Numero e Complemento                *
;*******************************************************************************
Proc PegaEndereco(s)
Private s,posl,posn

End_Logradouro =""
End_Numero     =""
End_Complemento=""

posl=SearchFrom(",",s,1)
If posl<2
   Then End_Logradouro =s
   Else End_Logradouro=LTrim(RTrim(SubStr(s,1,posl-1)))
       
        posn=SearchFrom(",",s,posl+1)
        If posn>1
           Then End_Numero     =LTrim(RTrim(SubStr(s,posl+1,(posn-posl)-1)))
                End_Complemento=LTrim(RTrim(SubStr(s,posn+1,40)))
           Else End_Numero     =LTrim(RTrim(SubStr(s,posl+1,40)))     
        EndIf
EndIf   

EndProc
                                                                                
;*******************************************************************************
;* Rotina para Impressao do Cabecalho da Carta                                 *
;*******************************************************************************
Proc IMPCAB_CARTA()

NFOLHA=NFOLHA+1

Print File ARQIMP "\n\n"
If SYS_CODIGO_CLIENTE = "0222"
   Then Print File ARQIMP Spaces(05)+"\27E"+Format("W69,AC","LUPUS CONFECCOES")+"\27F"
   Else Print File ARQIMP Spaces(05)+"\27E"+Format("W69,AC",EMP_NOMF)+"\27F"
EndIf   
Print File ARQIMP "\n\n\n\n"

Print File ARQIMP Spaces(05)+EMP_CID+", "+
                  StrVal(Day(Today()))+" DE "+
                  RTrim(MesExt(Month(Today())))+" DE "+
                  StrVal(Year(Today()))+"\n\n\n"

Print File ARQIMP Spaces(05)+CLI_RAZ +" - "+CODCLIANT+"\n"
Print File ARQIMP Spaces(05)+CLI_END +"\n"
Print File ARQIMP Spaces(05)+CLI_BAIR+" - "+CLI_CEP+"\n"
Print File ARQIMP Spaces(05)+Rtrim(CLI_CID)+"/"+CLI_UF+"\n\n\n"

Print File ARQIMP Spaces(05)+"   Estando na rela‡Æo de nossos bons clientes, tomamos a liberdade de"+"\n"
Print File ARQIMP Spaces(05)+"comunicar-lhe   da  existˆncia  de  d‚bito(s)  em   nosso  credi rio,"+"\n" 
Print File ARQIMP Spaces(05)+"referente  ao  seu pedido com valores e vencimentos  abaixo, que deve"+"\n"
Print File ARQIMP Spaces(05)+"ter ocorrido por esquecimento."+"\n\n" 


Print File ARQIMP Spaces(05)+"   Informamos que o prazo Maximo para pagamento nas agencias do Banco"+"\n" 
Print File ARQIMP Spaces(05)+"do  Brasil  sÆo de (09) nove dia (s) a contar do vencimento do titulo"+"\n"  
Print File ARQIMP Spaces(05)+"e  que ap¢s esta data o mesmo somente poder  ser pago em cart¢rio com"+"\n"  
Print File ARQIMP Spaces(05)+"acr‚scimo de juros e despesas cartoriais.                            "+"\n\n" 

If SYS_CODIGO_CLIENTE = "0222"
   Then Print File ARQIMP Spaces(05)+"   Em  caso  de  duvidas  favor entre em contato com o nosso setor de"+"\n" 
        Print File ARQIMP Spaces(05)+"cobran‡a     atrav‚s    do(S)    telefone(S)    "+"\27E"+"(37) 3222-8667"+"\27F"+"   e/ou"+"\n" 
        Print File ARQIMP Spaces(05)+"\27E"+"(37) 9102 5784 (TIM)"+"\27F"+"."+"\n\n"              
   Else Print File ARQIMP Spaces(05)+"   Em  caso  de  duvidas  favor entre em contato com o nosso setor de"+"\n" 
        Print File ARQIMP Spaces(05)+"cobran‡a atrav‚s do telefone "+"\27E"+EMP_FONE+"\27F"+"."+"\n\n" 
EndIf

Print File ARQIMP Spaces(05)+"   Desde  j   agradecemos pela aten‡Æo e tendo em vista que a emissÆo"+"\n" 
Print File ARQIMP Spaces(05)+"deste  aviso  ‚  autom tica,  por  computador,  caso  V.S.a  j  tenha"+"\n"  
Print File ARQIMP Spaces(05)+"efetuado   o(s)   pagamento(s)   referente   ao(s)   mesmo(s),  favor"+"\n"  
Print File ARQIMP Spaces(05)+"desconsiderar este.                                                  "+"\n\n" 

Print File ARQIMP Spaces(05)+Fill("-",69)+"\n\n"

Nl=0
EndProc

;*******************************************************************************
;* Rotina para Impressao dos Titulos da Carta                                  *
;*******************************************************************************
Proc IMPTIT_CARTA()
Private DATA,DATA_ARRAY

LINHA1=Spaces(05)+"Numero       Data            Valor   Dias  "
LINHA2=Spaces(05)+"Documento    Vencto          Titulo  Atraso"+"\n"

If Not IsBlank(Array_TitDocto[13])
   Then LINHA1=LINHA1+" | "+"Numero       Data            Valor   Dias  "
        LINHA2=LINHA2+" | "+"Documento    Vencto          Titulo  Atraso"
Endif

Print File ARQIMP LINHA1+"\n"
Print File ARQIMP LINHA2+"\n"

For Wi From 1 to 8
  If IsBlank(Array_TitDocto[wi]) Then QuitLoop Endif

  DATA=StrVal(Array_TitVencto[wi])
  If Len(DATA)=9 Then DATA="0"+DATA EndIf    
  DATA= SubStr(DATA,1,2)+"/"+SubStr(DATA,4,2)+"/"+SubStr(DATA,7,4)
  
  Print File ARQIMP Spaces(05)+Format("W13,AL",Array_TitDocto[wi])+
                               DATA+Spaces(2)+
                               Format("W10.2,EIC",Array_TitValor[wi])+
                               Format("W08,EIC",Array_TitNDias[wi])
                            
  If Not IsBlank(Array_TitDocto[wi+8])
		 Then DATA_ARRAY=StrVal(Array_TitVencto[wi])
          If Len(DATA_ARRAY)=9 Then DATA_ARRAY="0"+DATA_ARRAY EndIf    
          DATA_ARRAY= SubStr(DATA_ARRAY,1,2)+"/"+SubStr(DATA_ARRAY,4,2)+"/"+SubStr(DATA_ARRAY,7,4)
     
          Print File ARQIMP " | "+
                            Format("W10,AL",Array_TitDocto[wi+8])+
                            DATA_ARRAY+Spaces(2)+
                            Format("W10.2,EIC",Array_TitValor[wi+8])+
                            Format("W08,EIC",Array_TitNDias[wi+8])
	Endif

	Print File ARQIMP "\n"
	Nl=Nl+1
EndFor

EndProc

;*******************************************************************************
;* Rotina para Impressao do Rodape da Carta                                    *
;*******************************************************************************
Proc IMPROD_CARTA(Tipo)
  
If SYS_CODIGO_CLIENTE <> "0222"  
   Then PegaEndereco(EMP_END)
        Logradouro  = End_Logradouro
        Numero      = End_Numero
        Complemento = End_Complemento

        Switch
          Case Complemento<>"" And Numero<>"" : RUA = Logradouro+", "+Numero+" - "+Complemento
          Case Complemento<>"" And Numero=""  : RUA = Logradouro+" - "+Complemento
          Case Complemento=""  And Numero=""  : RUA = Logradouro
          OtherWise                           : RUA = Logradouro+", "+Numero
        EndSwitch    
EndIf
  
Print File ARQIMP "\n"
If Tipo="Total"
	 Then Print File ARQIMP Spaces(05)+"TOTAL ->"+CI_INEG+Format("W10.2,EIC,AL",TOTVR)+CI_FNEG+"\n"
   Else Print File ARQIMP Spaces(05)+CI_INEG+" * Continua Pr¢xima Folha -> "+StrVAl(NFOLHA+1)+CI_FNEG+"\n"
EndIf

For I From Nl To 8
 Print File ARQIMP "\n"
EndFor

If Not IsAssigned(SYS_NOME_USUARIO) Then SYS_NOME_USUARIO=""   EndIf

Print File ARQIMP Spaces(05)+Fill("-",69)+"\n\n"
                                                      

If SYS_CODIGO_CLIENTE = "0222"
   Then Print File ARQIMP Spaces(05)+"HYZ INDUSTRIA E COMERCIO LTDA"+"\n"
        Print File ARQIMP Spaces(05)+"AV. 21 DE ABRIL, 185 - CENTRO - 35.500-010"+"\n"
        Print File ARQIMP Spaces(05)+"DIVINOPOLIS/MG - 37 3222 8667"+"\n"
        Print File ARQIMP Spaces(05)+"www.lupuswear.com.br"+"\n\n\n"

        Print File ARQIMP Spaces(05)+Format("W69,AC","Setor de Cobran‡a")+"\n\n" 
        Print File ARQIMP Spaces(05)+Format("W69,AC","cobranca@lupuswear.com.br")+"\n\n" 
        Print File ARQIMP Spaces(05)+Format("W69,AC",SYS_NOME_USUARIO)
   Else Print File ARQIMP Spaces(05)+EMP_NOMF+"\n"
        Print File ARQIMP Spaces(05)+RUA+" - "+EMP_BAIR+" - "+EMP_CEP+"\n"
        Print File ARQIMP Spaces(05)+Rtrim(EMP_CID)+"/"+EMP_UF+" - "+EMP_FONE+"\n\n\n"
        ;Print File ARQIMP Spaces(05)+"www.???.com.br"+"\n\n\n"
        
        ;Print File ARQIMP Spaces(05)+Format("W69,AC","Setor de Cobran‡a")+"\n\n" 
        ;Print File ARQIMP Spaces(05)+Format("W69,AC","cobranca@???.com.br")+"\n\n" 
        ;Print File ARQIMP Spaces(05)+Format("W69,AC",SYS_NOME_USUARIO)     
EndIf        

Print File ARQIMP "\f"

EndProc

;*******************************************************************************
;* Rotina Limpa Valores                                                        *
;*******************************************************************************
Proc Zera_Array()
NTIT=0
For Wi From 1 to 24
	Array_TitDocto[wi] =""
	Array_TitVencto[wi]=BlankDate()
	Array_TitValor[wi] =0
	Array_TitNDias[wi] =0
EndFor
EndProc

;*******************************************************************************
;* Rotina Principal                                                            *
;*******************************************************************************
Seta_FilePrint("CB_0000")

If Not IsAssigned(Endereco_Cobranca)  Then Endereco_Cobranca=False  EndIf

AGUARDE("Imprimindo Carta de Cobran‡a")

VSDGCHECA="O MESMO"
Array Array_TitDocto[24]
Array Array_TitVencto[24]
Array Array_TitValor[24]
Array Array_TitNDias[24]
Zera_Array()

CODEMPANT="***"
CODCLIANT="***"
CoEdit "Answer"
Scan

  If [Codigo da Empresa]<>CODEMPANT
     Then CODEMPANT=[Codigo da Empresa]

          Moveto [Codigo da Empresa]
          If Busca_Lookup("Codigo da Empresa",[Codigo da Empresa],"SM")
             Then EMP_NOMF=REG_BUSCA_LOOKUP["Nome Fantasia Empresa"]
                  EMP_RAZ =REG_BUSCA_LOOKUP["Razao Social Empresa" ]
                  EMP_END =REG_BUSCA_LOOKUP["Endereco Empresa"     ]
                  EMP_BAIR=REG_BUSCA_LOOKUP["Bairro Empresa"       ]
                  EMP_CID =REG_BUSCA_LOOKUP["Cidade Empresa"       ]
                  EMP_UF  =REG_BUSCA_LOOKUP["UF Empresa"           ]
                  EMP_CEP =REG_BUSCA_LOOKUP["CEP Empresa"          ]
                  EMP_FONE=REG_BUSCA_LOOKUP["Telefone Empresa"     ]
          EndIf
  EndIf

  If [Codigo do Destinatario]<>CODCLIANT
     Then
          If CODCLIANT<>"***"
             Then IMPTIT_CARTA()
                  IMPROD_CARTA("Total")
          EndIf

          CODCLIANT=[Codigo do Destinatario]
          NFOLHA   =0
          TOTVR    =0
					Zera_Array()
          Moveto [Codigo do Destinatario]
          If Endereco_Cobranca
             Then GetRecord "\\Sistemas\\Cadastro\\End_cob" CODCLIANT To COD 
                  If Retval
                     Then CLI_END = COD["Endereco de Cobranca"]
                          Switch 
                             Case CLI_END <> VSDGCHECA :
                                  CLI_END = COD["Endereco de Cobranca"]
                                  CLI_BAIR= COD["Bairro de Cobranca"]
                                  CLI_CID = COD["Cidade de Cobranca"]
                                  CLI_UF  = COD["UF de Cobranca"]
                                  CLI_CEP = COD["CEP de Cobranca"]
                                  If Busca_Lookup("Codigo",[Codigo do Destinatario],"SM")
                                     Then CLI_RAZ =REG_BUSCA_LOOKUP["Razao Social"]
                                          CLI_FONE=REG_BUSCA_LOOKUP["Telefone"]
                                  EndIf
                             Case CLI_END = VSDGCHECA :     
                                  If Busca_Lookup("Codigo",[Codigo do Destinatario],"SM")
                                     Then CLI_RAZ =REG_BUSCA_LOOKUP["Razao Social"]
                                          CLI_END =REG_BUSCA_LOOKUP["Endereco"]
                                          CLI_BAIR=REG_BUSCA_LOOKUP["Bairro"]
                                          CLI_CID =REG_BUSCA_LOOKUP["Cidade"]
                                          CLI_UF  =REG_BUSCA_LOOKUP["UF"]
                                          CLI_CEP =REG_BUSCA_LOOKUP["CEP"]
                                          CLI_FONE=REG_BUSCA_LOOKUP["Telefone"]
                                     Else CLI_RAZ ="????"
                                          CLI_END =""
                                          CLI_BAIR=""
                                          CLI_CID =""
                                          CLI_UF  =""
                                          CLI_CEP =""
                                          CLI_FONE=""
                                  EndIf
                          EndSwitch
                     Else If Busca_Lookup("Codigo",[Codigo do Destinatario],"SM")
                             Then CLI_RAZ =REG_BUSCA_LOOKUP["Razao Social"]
                                  CLI_END =REG_BUSCA_LOOKUP["Endereco"]
                                  CLI_BAIR=REG_BUSCA_LOOKUP["Bairro"]
                                  CLI_CID =REG_BUSCA_LOOKUP["Cidade"]
                                  CLI_UF  =REG_BUSCA_LOOKUP["UF"]
                                  CLI_CEP =REG_BUSCA_LOOKUP["CEP"]
                                  CLI_FONE=REG_BUSCA_LOOKUP["Telefone"]
                             Else CLI_RAZ ="????"
                                  CLI_END =""
                                  CLI_BAIR=""
                                  CLI_CID =""
                                  CLI_UF  =""
                                  CLI_CEP =""
                                  CLI_FONE=""
                          EndIf             
                  EndIf
             Else If Busca_Lookup("Codigo",[Codigo do Destinatario],"SM")
                     Then CLI_RAZ =REG_BUSCA_LOOKUP["Razao Social"]
                          CLI_END =REG_BUSCA_LOOKUP["Endereco"]
                          CLI_BAIR=REG_BUSCA_LOOKUP["Bairro"]
                          CLI_CID =REG_BUSCA_LOOKUP["Cidade"]
                          CLI_UF  =REG_BUSCA_LOOKUP["UF"]
                          CLI_CEP =REG_BUSCA_LOOKUP["CEP"]
                          CLI_FONE=REG_BUSCA_LOOKUP["Telefone"]
                     Else CLI_RAZ ="????"
                          CLI_END =""
                          CLI_BAIR=""
                          CLI_CID =""
                          CLI_UF  =""
                          CLI_CEP =""
                          CLI_FONE=""
                  EndIf
          EndIf                             
          IMPCAB_CARTA()
  EndIf

	If NTIT=8
     Then IMPTIT_CARTA()
          IMPROD_CARTA("SubTotal")
          IMPCAB_CARTA()
					Zera_Array()
  EndIf

	NTIT=NTIT+1
	Array_TitDocto[NTIT] =[Numero do Documento]
	Array_TitVencto[NTIT]=[Data de Vencimento ]
	Array_TitValor[NTIT] =[Saldo do Documento ]
	Array_TitNDias[NTIT] =Today()-[Data de Vencimento]

	TOTVR=TOTVR+[Saldo do Documento]

EndScan
IMPTIT_CARTA()
IMPROD_CARTA("Total")
Do_It!
ClearAll

ImpriArq(ARQIMP)

LIMPAGUARDE()
Release Vars NL,NTIT,TOTVR,Endereco_Cobranca,ENDERECO_COB,VSDGCHECA
Release Procs IMPCAB_Carta,IMPTit_Carta, ImpRod_Carta
