Variáveis de Impressão de Produto

Esta página detalha todas as variáveis disponíveis no contexto de Produto, extraídas diretamente das classes IntfEtiquetaProduto e IntfEtiquetaPrintWriter, com explicações, exemplos práticos de uso e protótipos visuais de etiquetas impressas.


Identificação e código do produto

VariávelDescriçãoExemplo de valorExemplo no modelo
SKUCódigo do produto na loja (mesmo valor de CODIGO_PROD).102030^FDRef: @SKU@^FS
CODIGO_PRODCódigo do produto na loja (mesmo valor de SKU).102030^FDItem: @CODIGO_PROD@^FS
CODIGOCódigo RuB composto no formato :p:<codigo>:d:<codPreco>.:p:102030:d:01^FD@CODIGO@^FS
COD_PRECOCódigo da tabela de preço aplicada ao produto.01^FDTabela: @COD_PRECO@^FS
CODIGO_SIZEQuantidade de caracteres do texto contido em CODIGO.15^FDTam: @CODIGO_SIZE@^FS
CODIGO_SIZE_CHARQuantidade de caracteres de CODIGO convertida em caractere de controle.Caractere ASCII 15Usado em códigos especiais
CODIGO_PRODUTO_LIDOCódigo de barras exato lido no dispositivo móvel na solicitação.7891000123456^FD@CODIGO_PRODUTO_LIDO@^FS
CODIGO_PRODUTO_LIDO_13Código lido completado com zeros à esquerda até 13 dígitos.07891000123456^FD@CODIGO_PRODUTO_LIDO_13@^FS

Descrição e complemento

VariávelDescriçãoExemplo de valorExemplo no modelo
DESCPRODUTODescrição do produto. Quando o produto pertence a uma cadeia (e ImprimirCadeiaDoProduto está ativo), recebe o nome da cadeia; caso contrário, recebe a descrição cadastrada do produto.SABÃO EM PÓ BRILHO 1KG^FD@DESCPRODUTO@^FS
COMPLEMENTOComplemento do produto. Preenchido apenas quando o produto não utiliza cadeia.FRAGRÂNCIA LAVANDA^FD@COMPLEMENTO@^FS

Loja e fornecedor

VariávelDescriçãoExemplo de valorExemplo no modelo
ID_LOJACódigo da loja convertido de RuB para o identificador do ERP.101^FDLoja: @ID_LOJA@^FS
LOJAIdentificador da loja convertido para ERP (mesmo valor de ID_LOJA).101^FDFilial: @LOJA@^FS
FORNECEDOR_CODIGOCódigo do fornecedor principal associado ao produto.9080^FDFornecedor: @FORNECEDOR_CODIGO@^FS
FORNECEDOR_NOMERazão social ou nome fantasia do fornecedor.QUÍMICA BRASIL S/A^FD@FORNECEDOR_NOME@^FS
DT_ULTIMA_ENTRADAData da última compra/entrada do produto no formato padrão da loja.24/08/2026^FDEntrada: @DT_ULTIMA_ENTRADA@^FS

Variáveis de preço e embalagens

No RuB, os preços e códigos de barras são organizados e acessados através das embalagens cadastradas para o produto (EmbalagemLoja). Para permitir a criação de layouts tanto fixos quanto dinâmicos e genéricos, o RuB disponibiliza 4 tipos de <PREFIXO> de embalagem:

1. Tipos de prefixos de embalagem disponíveis

graph TD
    subgraph Produto Exemplo: Refrigerante 350ml
        E1[Embalagem 1: Unidade - Qtd 1 - R$ 4,50]
        E2[Embalagem 2: Fardo - Qtd 12 - R$ 48,00]
    end

    subgraph Acesso por Quantidade Fixa: EMB[qtd]
        E1 -->|Quantidade = 1| Q1[EMB1_VALUE = 4,50]
        E2 -->|Quantidade = 12| Q2[EMB12_VALUE = 4,00<br>EMB12_TOTAL = 48,00]
    end

    subgraph Acesso por Ordem / Uso Ordinal: EMB_[n]O
        E1 -->|1ª Menor Embalagem| O1[EMB_1O_VALUE = 4,50<br>EMB_1O_QTD = 1]
        E2 -->|2ª Menor Embalagem| O2[EMB_2O_VALUE = 4,00<br>EMB_2O_TOTAL = 48,00<br>EMB_2O_QTD = 12]
    end

    subgraph Acesso Direto aos Extremos
        E1 -->|Menor Embalagem| M1[MENOR_EMB_VALUE = 4,50]
        E2 -->|Maior Embalagem| M2[MAIOR_EMB_VALUE = 4,00<br>MAIOR_EMB_TOTAL = 48,00]
    end

A. Embalagem por Quantidade Fixa (EMB<qtd>)

  • O prefixo é composto pelo texto EMB seguido diretamente pela quantidade exata de itens (emb.getQtd()), por exemplo: EMB1, EMB6, EMB12, EMB24.
  • Quando usar: quando o layout da etiqueta foi desenhado especificamente para um tipo de exibição fixo (ex: uma etiqueta de gôndola que possui um campo fixo exclusivo para "Caixa com 6").
  • Limitação: se o produto tiver caixa com 10 unidades em vez de 6, a variável EMB6_* ficará vazia para esse produto.

B. Embalagem Ordenada / Uso Ordinal (EMB_<n>O)

  • O índice n representa a ordem crescente de quantidade das embalagens cadastradas no produto (1ª menor, 2ª menor, 3ª menor, etc.).
  • A letra O representa a designação Ordinal (1º, 2º, 3º).
    • EMB_1O: sempre a 1ª menor embalagem do produto (geralmente a unidade ou fração mínima).
    • EMB_2O: sempre a 2ª menor embalagem cadastrada (ex: pack promocional, display, caixa ou fardo), independente de conter 4, 6, 10 ou 12 unidades.
    • EMB_3O: a 3ª menor embalagem cadastrada (ex: caixa máster ou pallet).
  • Vantagem: permite criar modelos genéricos de atacarejo / atacado, onde o mesmo template atende refrigerantes (fardo com 12), biscoitos (display com 20) ou sabonetes (pack com 4), sem precisar de um template para cada quantidade!

C. Menor Embalagem (MENOR_EMB)

  • Aponta diretamente para a embalagem com a menor quantidade cadastrada para o item.
  • Quando o produto é de peso variável e corresponde à menor embalagem, seus valores de preço são automaticamente ajustados conforme a configuração de exibição de estoque (ConfigGeral.EXIBICAO_ESTOQUES) ou a embalagem unitária.

D. Maior Embalagem (MAIOR_EMB)

  • Aponta diretamente para a embalagem com a maior quantidade cadastrada para o produto (ex: caixa master ou fardo principal).

2. Sufixos gerados para cada <PREFIXO>

Ao definir qualquer um dos prefixos acima (EMB1, EMB_1O, EMB_2O, MENOR_EMB, MAIOR_EMB), o RuB gera automaticamente as seguintes variáveis sufixadas:

SufixoExemplo com PrefixoDescriçãoExemplo de valor
_VALUEEMB_1O_VALUEPreço unitário formatado da embalagem (mesmo valor de _UNID).4,50
_UNIDEMB_1O_UNIDPreço unitário formatado da embalagem.4,50
_TOTALEMB_2O_TOTALPreço total formatado da embalagem (preço unitário multiplicado pela quantidade).48,00
_QTDEMB_2O_QTDQuantidade de itens contidos na embalagem.12
_DESCEMB_2O_DESCDescrição da embalagem cadastrada.FARDO C/ 12
_CODIGO_1MENOR_EMB_CODIGO_1Código de barras mais recente cadastrado para a embalagem (ordenado por modtime).7894900011517
_CODIGOMENOR_EMB_CODIGOLista de todos os códigos de barras da embalagem separados por vírgula.7894900011517,7894900011524

3. Exemplo prático de modelo com Embalagem Ordinal e Fixa

Exemplo no Script de Impressão RUB:

^XA
^FO40,30^A0N,30,30^FD@DESCPRODUTO@^FS

#// Preco da Unidade (1a menor embalagem)
^FO40,80^A0N,25,25^FDPreco Unitario: R$ @EMB_1O_VALUE@^FS

#// Preco Atacado da 2a embalagem (seja caixa com 6, 12, 24, etc.)
#IF EMB_2O_VALUE != "" && NUM(EMB_2O_VALUE) > 0
^FO40,120^A0N,25,25^FD@EMB_2O_DESC@ (@EMB_2O_QTD@ UN): R$ @EMB_2O_TOTAL@^FS
^FO40,150^A0N,22,22^FDNesta embalagem a unidade sai por: R$ @EMB_2O_VALUE@^FS
#END

^FO40,190^BY2^BCN,50,Y,N,N^FD@EMB_1O_CODIGO_1@^FS
^XZ

Protótipo visual da etiqueta impressa (Uso Ordinal):

+-----------------------------------------------------------+
| REFRIGERANTE COLA LATA 350ML                              |
| Preço Unitário: R$ 4,50                                   |
| FARDO C/ 12 (12 UN): R$ 48,00                             |
| Nesta embalagem a unidade sai por: R$ 4,00                |
|                                                           |
| |||||| |||||||||||||| |||||||||||| |||||||                |
| 7894900011517                                             |
+-----------------------------------------------------------+

Embalagem do código lido no dispositivo

Quando a solicitação de impressão é disparada pela leitura de um código de barras específico no coletor ou smartphone, as variáveis EMBALAGEM_LIDA_* são preenchidas com os dados da embalagem correspondente àquele código:

VariávelDescriçãoExemplo de valor
EMBALAGEM_LIDA_UNPreço unitário formatado da embalagem do código lido.4,00
EMBALAGEM_LIDA_EMBPreço total formatado da embalagem lida.48,00
EMBALAGEM_LIDA_QTDQuantidade de itens da embalagem lida.12
EMBALAGEM_LIDA_DESCDescrição da embalagem lida.FARDO C/ 12

Propriedades dinâmicas e extras (PROP_<NOME>)

O RuB carrega automaticamente todas as propriedades cadastradas no produto (ProdutoPropriedade) e na empresa (ProdutoEmpresaPropriedade). Elas são expostas para o template nos seguintes formatos:

  1. PROP_<NOME_DA_PROPRIEDADE>: valor formatado da propriedade para exibição humana.
  2. PROP_PLAIN_<NOME_DA_PROPRIEDADE>: valor bruto/plano da propriedade sem formatações adicionais.

Exemplos comuns de propriedades extras

Propriedade no RuBVariável formatadaVariável planaExemplo de valor formatado
Marca do produtoPROP_MARCAPROP_PLAIN_MARCANESTLÉ
Voltagem / TensãoPROP_VOLTAGEMPROP_PLAIN_VOLTAGEM220V
Cor / AcabamentoPROP_CORPROP_PLAIN_CORAZUL MARINHO
Origem / FabricaçãoPROP_ORIGEMPROP_PLAIN_ORIGEMNACIONAL
Linha / ColeçãoPROP_LINHAPROP_PLAIN_LINHAPREMIUM GOURMET
Prazo de ValidadePROP_VALIDADE_DIASPROP_PLAIN_VALIDADE_DIAS90 DIAS

Exemplo de uso de propriedades extras no Script de Impressão RUB:

^XA
^FO40,30^A0N,30,30^FD@DESCPRODUTO@^FS

#// Exibicao condicional de Marca e Linha
#IF PROP_MARCA != ""
^FO40,70^A0N,22,22^FDMarca: @PROP_MARCA@^FS
#END
#IF PROP_LINHA != ""
^FO250,70^A0N,22,22^FDLinha: @PROP_LINHA@^FS
#END

#// Exibicao de caracteristicas tecnicas (Eletrodomesticos)
#IF PROP_VOLTAGEM != ""
^FO40,105^A0N,22,22^FDTensao: @PROP_VOLTAGEM@^FS
#END
#IF PROP_COR != ""
^FO250,105^A0N,22,22^FDCor: @PROP_COR@^FS
#END

^FO40,145^A0N,45,45^FDR$ @MENOR_EMB_VALUE@^FS
^FO40,200^BY2^BCN,45,Y,N,N^FD@MENOR_EMB_CODIGO_1@^FS
^XZ

Protótipo visual da etiqueta impressa com propriedades extras:

+-----------------------------------------------------------+
| LIQUIDIFICADOR TURBO POWER 5 VELOCIDADES                  |
| Marca: MONDIAL         Linha: PREMIUM INOX                |
| Tensão: 220V           Cor: VERMELHO METÁLICO             |
|                                                           |
| R$ 189,90                                                 |
|                                                           |
| |||||| |||||||||||||| |||||||||||| |||||||                |
| 7899882211443                                             |
+-----------------------------------------------------------+

Data e hora do sistema

VariávelDescriçãoExemplo de valor
DT_ATUALData corrente do sistema no formato de data configurado no RuB.24/08/2026
DTH_ATUALData e hora correntes no formato completo do RuB.24/08/2026 18:30:00