;** ET_Z051A *******************************************************************
;* Monta Etiqueta p/ Impressora Termica - Zebra - EAN13 com Pre‡o              *
;*******************************************************************************
;Autor           : Vise Informatica (VISERP)
;Desenvolvido    : 18/04/2018 por Bruno Carvalho
;Ultima Alteracao: 23/04/2018 por Bruno Carvalho
;Motivo Alteracao: Altera‡Æo na vari vel COR_TM_REF_PR p/ ser impresso o [Codigo da Cor_Tecido] e nÆo a SIGLA  
;Ultima Alteracao: 27/04/2018 por Bruno Carvalho
;Motivo Alteracao: Ajustes p/ incluir o tamanho na frente da cor_tecido 

;*******************************************************************************
Proc Monta_Etiqueta()
Moveto "Answer"

Print File Arquivo "O\n"
Print File Arquivo "N\n"
Print File Arquivo "q720\n"
Print File Arquivo "Q184,24+\n"
Print File Arquivo "S2\n"
Print File Arquivo "D8\n"
Print File Arquivo "ZT\n"     
                 
If Not IsBlank(CDBAR[1])
   Then Print File Arquivo "A40,02,0,3,1,1,N,\""+DESC_ITEM[1]+"\"\n"
        Print File Arquivo "B70,35,0,1,2,30,70,B,\""+CDBAR[1]+"\"\n" 
        Print File Arquivo "A40,148,0,2,1,1,N,\""+REF[1]+"\"\n"
EndIf   
If Not IsBlank(CDBAR[2])
   Then Print File Arquivo "A378,02,0,3,1,1,N,\""+DESC_ITEM[2]+"\"\n"
        Print File Arquivo "B405,35,0,1,2,30,70,B,\""+CDBAR[2]+"\"\n" 
        Print File Arquivo "A378,148,0,2,1,1,N,\""+REF[2]+"\"\n"
EndIf

If CDBAR[1]=CDBAR[2]
   Then Print File Arquivo "P"+StrVal(CR)+"\n"
        ce=ce+((CR-1)*3)
   Else Print File Arquivo "P1\n"
EndIf

ne=2

EndProc ;Monta_Etiqueta()

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

Release Vars CDBAR,REF,DESC_ITEM
Array  DESC_ITEM[2]
Array        REF[2]
Array      CDBAR[2]

Arquivo="ET_Z051A.ejf"
Deleta_Arquivo(Arquivo)
       
ne=2   
Coedit "Answer"
Scan
  te=[Quantidade]
  
  PRECO1="0000"
  PRECO2="0000"
  
  CodItem=[Codigo do Item]
  CodItemRaiz=PegaCodigoRaiz(CodItem)
  
  GetRecord "\\Sistemas\\Estoque\\Itens" CodItem To REG_ITEM

  ;---- Pre‡o de Venda 1 -------------------------------------------------------
  GetRecord "\\Sistemas\\Vendas\\TbPrIte" VSDGTABELA,CodItem To REG_PRECO1
  If RetVal
     Then PRECO1=REG_PRECO1["Preco Unitario"]
     Else GetRecord "\\Sistemas\\Vendas\\TbPrIte" VSDGTABELA,CodItemRaiz To REG_PRECO1
          If RetVal
             Then PRECO1=Tira_CharNum(REG_PRECO1["Preco Unitario"])
          EndIf 
  EndIf

  ;---- Pre‡o de Venda 2 -------------------------------------------------------
  GetRecord "\\Sistemas\\Vendas\\TbPrIte" VSDGTABELA3,CodItem To REG_PRECO2
  If RetVal
     Then PRECO2=REG_PRECO2["Preco Unitario"]
     Else GetRecord "\\Sistemas\\Vendas\\TbPrIte" VSDGTABELA3,CodItemRaiz To REG_PRECO2
          If RetVal
             Then PRECO2=Tira_CharNum(REG_PRECO2["Preco Unitario"])
          EndIf 
  EndIf
  
  ;---- Montando o Pre‡o -------------------------------------------------------
  AUX_PR = "6" + PRECO1 + "6" + PRECO2
  
  ;Foi alterado para ser impresso o codigo da cor do tecido e nÆo a SIGLA 
  ;COR_TM_REF_PR =  Format("W7",SubStr(REG_ITEM["Descricao do Item"],24,7))
  
  COR_TM_REF_PR =  Format("W7",REG_ITEM["Codigo da Cor_Tecido"]+" "+REG_ITEM["DTamanho"])
  Switch
    Case Rtrim(COR_TM_REF_PR)<>"" And REG_ITEM["Referencia"]<>"" : COR_TM_REF_PR=COR_TM_REF_PR + " " + Format("W5",REG_ITEM["Referencia"])
    Case Rtrim(COR_TM_REF_PR)=""  And REG_ITEM["Referencia"]<>"" : COR_TM_REF_PR=Spaces(8)+ Format("W5",REG_ITEM["Referencia"])
    Case Rtrim(COR_TM_REF_PR)=""  And REG_ITEM["Referencia"]=""  : COR_TM_REF_PR=Spaces(13)
  EndSwitch
  COR_TM_REF_PR = COR_TM_REF_PR + " " + AUX_PR 
  
  If (te-(2-ne))>2
     Then CR=Int((te-(2-ne))/2)
     Else CR=1
  EndIf
  ce=0
  While True
    ce=ce+1
    ne=ne+1
    If ne=3
       Then For i From 1 To 2
              DESC_ITEM[i]=""
                    REF[i]=""
                  CDBAR[i]=""
            EndFor
            ne=1
    EndIf
    DESC_ITEM[ne] = Rtrim(SubStr(REG_ITEM["Descricao do Item"],1,30))
          REF[ne] = COR_TM_REF_PR      
        CDBAR[ne] = [Codigo de Barras]
    If ne=2   Then Monta_Etiqueta() EndIf
    If ce>=te Then QuitLoop         EndIf
  EndWhile
EndScan
If ne<2 Then Monta_Etiqueta() EndIf
Do_It!
ClearAll
ImpriArq(Arquivo)

Sleep 700
Deleta_Arquivo(Arquivo)
ClearAll
EndProc

Monta_Comandos()
Release Procs Monta_Etiqueta,Monta_Comandos
