;* ;** Et_Z0345E ***************************************************************
;* Monta Etiqueta p/ Imp. T‚rmica - Bematech - Interno      ** Vitoria Textil **
;*******************************************************************************
;Autor           : Vise Informatica (VISERP)
;Desenvolvido    : 02/02/2017 por Bruno Carvalho
;Ultima Alteracao: 08/02/2017 por Kamila Gomes                   
;Motivo Alteracao: Incluida rotina de carregar imagens na impressora Bematech         
;Ultima Alteracao: 09/02/2017 por Bruno Carvalho                   
;Motivo Alteracao: Adi‡Ćo de novas simbologias
;Ultima Alteracao: 14/02/2017 por Bruno Carvalho                 
;Motivo Alteracao: Adicionado processo para ZEBRA
;Ultima Alteracao: 20/02/2018 por Anivel Augusto Rodrigues
;Motivo Alteracao: Adicionado novas simbologias textil
;Ultima Alteracao: 12/09/2018 por Bruno Carvalho
;Motivo Alteracao: Ajustes QUANTIDADE p/ 3 casas decimais
;Ultima Alteracao: 02/01/2019 por Bruno Carvalho                           
;Motivo Alteracao: Adicionado simbologia ALV_42

;* Apenas para Expedic2

;*******************************************************************************
;Imprime a Simbologia                                                          ;
;*******************************************************************************
Proc Imprime_Simbologia_Bematech()

;Imagens aramzenadas na mem˘ria da impressora (exporta‡Ćo das imagens pelo "DiagTool_V1.54")

POSICAO  = "50"
EXTENSAO = ".BMP"
For i From 1 To DynArraySize(SIMBOL)
  Switch 
    ;---- Lavagem --------------------------------------------------------------
    Case SIMBOL[i]="001" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LAV_00"+EXTENSAO+"\""+"\n" ;LAV_00
    Case SIMBOL[i]="002" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LAV_01"+EXTENSAO+"\""+"\n" ;LAV_01 
    Case SIMBOL[i]="003" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LAV_02"+EXTENSAO+"\""+"\n" ;LAV_02
    Case SIMBOL[i]="004" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LAV_03"+EXTENSAO+"\""+"\n" ;LAV_03
    Case SIMBOL[i]="005" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LAV_04"+EXTENSAO+"\""+"\n" ;LAV_04
    ;Adicionados  em 09/02/2017
    Case SIMBOL[i]="026" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LAV_25"+EXTENSAO+"\""+"\n" ;LAV_25     
    Case SIMBOL[i]="027" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LAV_26"+EXTENSAO+"\""+"\n" ;LAV_26     
    Case SIMBOL[i]="028" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LAV_27"+EXTENSAO+"\""+"\n" ;LAV_27    
    Case SIMBOL[i]="029" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LAV_28"+EXTENSAO+"\""+"\n" ;LAV_28     
    Case SIMBOL[i]="030" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LAV_29"+EXTENSAO+"\""+"\n" ;LAV_29     
    Case SIMBOL[i]="031" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LAV_30"+EXTENSAO+"\""+"\n" ;LAV_30     
    Case SIMBOL[i]="032" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LAV_31"+EXTENSAO+"\""+"\n" ;LAV_31     
    Case SIMBOL[i]="033" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LAV_32"+EXTENSAO+"\""+"\n" ;LAV_32     
    Case SIMBOL[i]="034" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LAV_33"+EXTENSAO+"\""+"\n" ;LAV_33    
    Case SIMBOL[i]="035" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LAV_34"+EXTENSAO+"\""+"\n" ;LAV_34     
    Case SIMBOL[i]="036" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LAV_35"+EXTENSAO+"\""+"\n" ;LAV_35
    Case SIMBOL[i]="037" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LAV_36"+EXTENSAO+"\""+"\n" ;LAV_36     
    
    ;---- Alvejamento ---------------------------------------------------------- 
    Case SIMBOL[i]="006" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"ALV_05"+EXTENSAO+"\""+"\n" ;ALV_05
    Case SIMBOL[i]="007" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"ALV_06"+EXTENSAO+"\""+"\n" ;ALV_06
    Case SIMBOL[i]="008" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"ALV_07"+EXTENSAO+"\""+"\n" ;ALV_07
    ;---- Secagem --------------------------------------------------------------
    Case SIMBOL[i]="009" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"SEC_08"+EXTENSAO+"\""+"\n" ;SEC_08
    Case SIMBOL[i]="010" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"SEC_09"+EXTENSAO+"\""+"\n" ;SEC_09
    Case SIMBOL[i]="011" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"SEC_10"+EXTENSAO+"\""+"\n" ;SEC_10
    Case SIMBOL[i]="012" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"SEC_11"+EXTENSAO+"\""+"\n" ;SEC_11
    Case SIMBOL[i]="013" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"SEC_12"+EXTENSAO+"\""+"\n" ;SEC_12
    Case SIMBOL[i]="014" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"SEC_13"+EXTENSAO+"\""+"\n" ;SEC_13
    Case SIMBOL[i]="015" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"SEC_14"+EXTENSAO+"\""+"\n" ;SEC_14
    ;---- Passadora ------------------------------------------------------------
    Case SIMBOL[i]="016" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"PAS_15"+EXTENSAO+"\""+"\n" ;PAS_15
    Case SIMBOL[i]="017" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"PAS_16"+EXTENSAO+"\""+"\n" ;PAS_16
    Case SIMBOL[i]="018" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"PAS_17"+EXTENSAO+"\""+"\n" ;PAS_17
    Case SIMBOL[i]="019" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"PAS_18"+EXTENSAO+"\""+"\n" ;PAS_18
    ;---- Limpeza a Seco -------------------------------------------------------
    Case SIMBOL[i]="020" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LIMP_19"+EXTENSAO+"\""+"\n" ;LIMP_19
    Case SIMBOL[i]="021" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LIMP_20"+EXTENSAO+"\""+"\n" ;LIMP_20
    Case SIMBOL[i]="022" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LIMP_21"+EXTENSAO+"\""+"\n" ;LIMP_21
    Case SIMBOL[i]="023" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LIMP_22"+EXTENSAO+"\""+"\n" ;LIMP_22
    Case SIMBOL[i]="024" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LIMP_23"+EXTENSAO+"\""+"\n" ;LIMP_23
    Case SIMBOL[i]="025" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LIMP_24"+EXTENSAO+"\""+"\n" ;LIMP_24
    ;Adicionados  em 09/02/2017
    Case SIMBOL[i]="038" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LIMP_37"+EXTENSAO+"\""+"\n" ;LIMP_37
    Case SIMBOL[i]="039" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LIMP_38"+EXTENSAO+"\""+"\n" ;LIMP_38
    Case SIMBOL[i]="040" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+",300,\"LIMP_39"+EXTENSAO+"\""+"\n" ;LIMP_39
    
    ;Adicionados  em 20/02/2018
    Case SIMBOL[i]="041" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+","+LINHA+",\"ALV_41"+EXTENSAO+"\""+"\n" ;ALV_41
    Case SIMBOL[i]="042" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+","+LINHA+",\"SEC_42"+EXTENSAO+"\""+"\n" ;SEC_42
    Case SIMBOL[i]="043" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+","+LINHA+",\"SEC_43"+EXTENSAO+"\""+"\n" ;SEC_43
    Case SIMBOL[i]="044" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+","+LINHA+",\"SEC_44"+EXTENSAO+"\""+"\n" ;SEC_44
    Case SIMBOL[i]="045" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+","+LINHA+",\"SEC_45"+EXTENSAO+"\""+"\n" ;SEC_45
    Case SIMBOL[i]="046" : Print File Arquivo "PUT"+SubStR(EXTENSAO,2,3)+" "+POSICAO+","+LINHA+",\"ALV_42"+EXTENSAO+"\""+"\n" ;ALV_42
    
    OtherWise            : POSICAO = Strval(NumVal(POSICAO)-80)                                                          ;Simbologia Inv lida
  EndSwitch  
  POSICAO = Strval(NumVal(POSICAO)+90)
EndFor

EndProc ;Imprime_Simbologia_Bematech()
          
;*******************************************************************************
;Monta Etiqueta                                                                ;
;*******************************************************************************
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,1,N,\""+EMPRE+"\"\n"
Print File Arquivo "A40,060,0,4,1,1,N,\""+DITEA+"\"\n"
Print File Arquivo "A40,090,0,4,1,1,N,\""+DITEB+"\"\n"
Print File Arquivo "A40,120,0,4,1,1,N,\""+DITEC+"\"\n"
Print File Arquivo "A40,150,0,4,1,1,N,\""+DITED+"\"\n"
Print File Arquivo "A40,180,0,4,1,1,N,\""+DITEE+"\"\n"
Print File Arquivo "A40,240,0,4,1,2,N,\""+DITEF+"\"\n"

Imprime_Simbologia_Bematech() 

Print File Arquivo "P1\n"

EndProc                 

;*******************************************************************************
;* Monta Comandos p/ Impressora Termica                                        *
;*******************************************************************************
Proc Monta_Comandos()
If IsAssigned(DITEA) Then Release Vars DITEA, LOCAL, CITEM, DESCM EndIf
If Not IsAssigned(TIPO_IMPRESSORA) Then TIPO_IMPRESSORA = "ZEBRA" EndIf

If SYS_CODIGO_CLIENTE="0345" Then TIPO_IMPRESSORA = "BEMATECH"    EndIf         ;Impressora BEMATECH

DATA = Format("D13",Today())

Arquivo = "Et_Z345e.txt"
Deleta_Arquivo(Arquivo)

AUX_CODIGO_ITEM = [Codigo do Item]
GetRecord "\\Sistemas\\Estoque\\Itens" AUX_CODIGO_ITEM To ITEM
If RetVal
   Then DESC_ITEM               = ITEM["Descricao do Item"]
        DESC_COMPLEMENTAR       = ITEM["Descricao Complementar"]
        PAIS                    = ITEM["Pais"]
        COR                     = ITEM["Codigo da Cor_Tecido"]
        UNIDADE                 = ITEM["Unidade Fiscal"]
        VSD_I_Codigo_Cor_Tecido = ITEM["Codigo da Cor_Tecido"]
   Else DESC_ITEM               = ""
        DESC_COMPLEMENTAR       = ""
        PAIS                    = ""
        COR                     = ""
        UNIDADE                 = ""
        VSD_I_Codigo_Cor_Tecido = ""   
EndIf   

GetRecord "\\Sistemas\\Estoque\\Iten_tec" AUX_CODIGO_ITEM To REG_TECIDO
If RetVal
   Then ARTIGO     = REG_TECIDO["Artigo"]
        COMPOSICAO = REG_TECIDO["Composicao"]
        PECA       = REG_TECIDO["Peca"]
        LARGURA    = REG_TECIDO["Largura"]
        GRAMATURA  = REG_TECIDO["Gramatura"]
        RENDIMENTO = REG_TECIDO["Rendimento"]
        SIMBOLOGIA = REG_TECIDO["Simbologia_Impressao"]
   Else ARTIGO     = ""
        COMPOSICAO = ""
        PECA       = ""
        LARGURA    = ""
        GRAMATURA  = ""
        RENDIMENTO = ""
        SIMBOLOGIA = "" 
EndIf   

CONT_SIMBOL=0
DynArray SIMBOL[]
If SIMBOLOGIA<>""
   Then PosI = Search("-",SIMBOLOGIA)
        If PosI>0
           Then While PosI>0
                  CONT_SIMBOL         = CONT_SIMBOL +1
                  SIMBOL[CONT_SIMBOL] = SubStr(SIMBOLOGIA,1,PosI-1)
                  SIMBOLOGIA = SubStr(SIMBOLOGIA,PosI+1,Len(SIMBOLOGIA))
                  PosI = Search("-",SIMBOLOGIA)
                  If PosI=0
                     Then CONT_SIMBOL         = CONT_SIMBOL +1
                          SIMBOL[CONT_SIMBOL] = SIMBOLOGIA
                          QuitLoop
                  EndIf   
                EndWhile
           Else SIMBOL[1]=SIMBOLOGIA
        EndIf
   Else SIMBOL[1]=""
EndIf  
 
CITEM = AUX_CODIGO_ITEM
For i from 1 To 10
   If SubStr(CITEM,1,1)="0"
      Then CITEM = SubStr(CITEM,2,Len(CITEM))
      Else QuitLoop
   EndIf                               
EndFor
If SYS_CODIGO_CLIENTE="0345"
   Then ARTIGO = CITEM
EndIf

GetRecord "\\Sistemas\\Cadastro\\Empresas" "0001" To REG_EMP
If RetVal
   Then EMPRE = Format("W49,AC",REG_EMP["Nome Fantasia Empresa"]+" - "+REG_EMP["CGC Empresa"])
   Else EMPRE = ""
EndIf 

te=1
ce=0
While True            
  ce=ce+1
  DITEA = "     ARTIGO: "+Format("W10,AL",ARTIGO)+Spaces(9)+"COR: "+VSD_I_Codigo_Cor_Tecido
  DITEB = "  DESCRICAO: "+DESC_ITEM
  DITEC = " COMPOSICAO: "+SubStr(COMPOSICAO,1,38)
  DITED = "    LARGURA: "+Format("W12",LARGURA)   +" GRAMATURA: "+Format("W10",GRAMATURA)
  DITEE = " RENDIMENTO: "+Format("W12",RENDIMENTO)+"      PAIS: "+PAIS
  If [Quantidade_Expedida] - Int([Quantidade_Expedida]) > 0
     Then DITEF = " QUANTIDADE: "+Rtrim(Ltrim(Format("W12.3,AR",[Quantidade_Expedida])))+Spaces(1)+UNIDADE
     Else DITEF = " QUANTIDADE: "+Rtrim(Ltrim(Format("W12,AR",[Quantidade_Expedida])))+Spaces(1)+UNIDADE
  EndIf
  Monta_Etiqueta()
  If ce>=te Then QuitLoop EndIf
EndWhile
  
ImpriArq(Arquivo)

Sleep 700
Deleta_Arquivo(Arquivo)
ClearAll
EndProc

Monta_Comandos()
Release Procs Monta_Etiqueta,Monta_Comandos
