;** EV_0376  *******************************************************************
;* Monta Etiqueta p/ Impressora Termica - Zebra                                *
;*******************************************************************************
;Autor           : Vise Informatica (VISERP)
;Desenvolvido    : 05/06/2018 por Bruno Carvalho
;Ultima Alteracao: 08/04/2020 por Bruno Carvalho                
;Motivo Alteracao: Ajustes p/ verificar Volume no NotaC e FaturaC 

;*******************************************************************************
;* Rotina                                                                      *
;*******************************************************************************
Proc Pega_Endereco(PARAM)
Private PARAM

VSD_E_Endereco=""
VSD_E_Bairro  =""
VSD_E_CEP     =""
VSD_E_Cidade  =""
VSD_E_UF      =""

VSD_C_Endereco=""
VSD_C_Bairro  =""
VSD_C_CEP     =""
VSD_C_Cidade  =""
VSD_C_UF      =""    

GetRecord "\\Sistemas\\Vendas\\FaturaCC" PARAM To REG_ENTCOB
If RetVal
   Then VSD_E_Endereco=REG_ENTCOB["Endereco de Entrega"]
        VSD_E_Bairro  =REG_ENTCOB["Bairro de Entrega"]
        VSD_E_CEP     =REG_ENTCOB["CEP de Entrega"]
        VSD_E_Cidade  =REG_ENTCOB["Cidade de Entrega"]
        VSD_E_UF      =REG_ENTCOB["UF de Entrega"]

        VSD_C_Endereco=REG_ENTCOB["Endereco de Cobranca"]
        VSD_C_Bairro  =REG_ENTCOB["Bairro de Cobranca"]
        VSD_C_CEP     =REG_ENTCOB["CEP de Cobranca"]
        VSD_C_Cidade  =REG_ENTCOB["Cidade de Cobranca"]
        VSD_C_UF      =REG_ENTCOB["UF de Cobranca"] 
EndIf   
 
EndProc ;Pega_Endereco()
 
;*******************************************************************************
;* Rotina                                                                      *
;*******************************************************************************
Proc Monta_Etiqueta()


Print File Arquivo "q1272\n"        ;DOT a 12 por mm
Print File Arquivo "Q400,032\n"     ;DOT a  8 por mm
Print File Arquivo "rN\n"
Print File Arquivo "S3\n"
Print File Arquivo "D7\n"
Print File Arquivo "ZT\n"
Print File Arquivo "JF\n"
Print File Arquivo "O\n"
Print File Arquivo "N\n"

Print File Arquivo "A40,010,0,4,1,2,N,\""+CLIENTE1+"\"\n"
Print File Arquivo "A40,070,0,4,1,2,N,\""+CLIENTE2+"\"\n"
Print File Arquivo "A40,130,0,4,1,2,N,\""+CIDADE+"\"\n"
Print File Arquivo "A40,190,0,4,1,2,N,\""+VOLUME+"\"\n"
Print File Arquivo "A40,250,0,4,1,2,N,\""+NOTAFISC+"\"\n"
Print File Arquivo "A40,320,0,4,1,1,N,\""+EMPRE1+"\"\n"
Print File Arquivo "A40,350,0,4,1,1,N,\""+EMPRE2+"\"\n"
  
Print File Arquivo "P1\n"

EndProc                                         

;*******************************************************************************
;* Monta Comandos p/ Impressora Termica                                        *
;*******************************************************************************
Proc Monta_Comandos()

Verifica=False
RAZTRA = ""

Arquivo="EV_0008.EJF"
Deleta_Arquivo(Arquivo)

Fim=False
CoEdit "Answer"
Moveto [Sequencia]
Scan                       
  RAZAOSOCIAL = ""
  ENDERECO    = ""
  BAIRRO      = ""
  CIDADE      = ""
  ESTADO      = ""
  CEP         = ""
  ENDENT      = ""
  BAIENT      = ""
  CIDENT      = ""
  ESTENT      = ""  
  CEPENT      = ""
  RAZTRA      = ""
  VOL         = ""
  EMPRE1      = ""
  EMPRE2      = ""
  
  GetRecord "\\Sistemas\\Cadastro\\Empresas" "0001" To REG_EMP
  If RetVal
     Then EMPRE1 = Format("W49,AC",REG_EMP["Nome Fantasia Empresa"] + " - " + REG_EMP["CGC Empresa"])
          EMPRE2 = Format("W49,AC",Rtrim(REG_EMP["Cidade Empresa"]) + "-" + 
                                   Rtrim(REG_EMP["UF Empresa"]))
  EndIf        
  
  GetRecord "\\Sistemas\\Cadastro\\Destinat" [Codigo] To REG_CLIENTE 
  If ReTval
     Then RAZAOSOCIAL = REG_CLIENTE["Razao Social"]
          ENDERECO    = REG_CLIENTE["Endereco"]
          BAIRRO      = REG_CLIENTE["Bairro"]
          CIDADE      = REG_CLIENTE["Cidade"]
          ESTADO      = REG_CLIENTE["UF"]
          CEP         = REG_CLIENTE["CEP"]    
  EndIf
  
  VOL          = 1
  ACHOU_VOLUME = False
  
  ;Pesquisa Volume no NotaC
  GetRecord "\\Sistemas\\Vendas\\FaturaC" [Numero da OF] To REG_FATURAC
  If RetVal
     Then GetRecord "\\Sistemas\\Vendas\\NotaC" [Codigo da Empresa],REG_FATURAC["Numero Nota Gerada"],REG_FATURAC["Serie Nota Gerada"] To REG_NOTAC
          If RetVal
             Then ACHOU_VOLUME=True
                  VOL = NumVal(StrVal(REG_NOTAC["Numero de Volumes"]))
                  If Type(VOL)<>"N"
                     Then VOL = 1
                  EndIf
          EndIf 
  EndIf
  
  ;Pesquisa Volume no FaturaC
  If Not ACHOU_VOLUME
     Then GetRecord "\\Sistemas\\Vendas\\FaturaC" [Numero da OF] To REG_FATURAC
          If RetVal
             Then VOL = NumVal(StrVal(REG_FATURAC["Numero de Volumes"]))       
          EndIf
          If Type(VOL)<>"N"
             Then VOL = 1
          EndIf
  EndIf
  
  GetRecord "\\Sistemas\\Vendas\\FaturaCC" [Numero da OF] To REG_FATURACC
  If RetVal
    Then Pega_Endereco(REG_FATURACC["Numero da OF"])
         ENDENT = VSD_E_Endereco
          
         If ENDENT <> "O MESMO" And ENDENT <> ""
            Then ENDERECO = ENDENT
                 BAIRRO   = VSD_E_Bairro
                 CIDADE   = VSD_E_Cidade
                 ESTADO   = VSD_E_UF  
                 CEP      = VSD_E_CEP
                 If IsAssigned(REG_FATURAC)
                    Then RAZTRA = REG_FATURAC["Razao Social Transport"]
                 EndIf 
         EndIf        
  EndIf
    
  NUMPED = [Numero do Pedido]
  NUMNOT = [Numero do Documento]
  NCOP   = [NCopias]    
  FIM    = ALINHM(StrVal(VOL),3)
  
  ;---- Formata‡Æo da Etiqueta -------------------------------------------------
  CLIENTE1 = Format("W49"," CLIENTE: "+SubStr(RAZAOSOCIAL,01,30))
  CLIENTE2 = Format("W49","          "+SubStr(RAZAOSOCIAL,31,30))
  CIDADE   = Format("W49",Format("W32","  CIDADE: "+Rtrim(CIDADE))+"  UF: "+ESTADO)                                      
  
  For wi From 1 To VOL
   INI = ALINHM(StrVal(wi),3)
   VOLUME   = Format("W49","  VOLUME: "+INI+"/"+FIM)
   NOTAFISC = Format("W49","      NF: "+NUMNOT)
   Monta_Etiqueta()
  EndFor  
EndScan
Do_It!
ClearAll

ImpriArq(Arquivo)

Sleep 1000
Deleta_Arquivo(Arquivo)

EndProc

Monta_Comandos()
Release Procs Monta_Etiqueta,Monta_Comandos
