Pular para o conteúdo principal

ST_CODIGOBARRA - Parâmetro de Código de Barras

Tela de configuração: TFA007 - Parâmetros do Restaurante
Tabela: PARMRESTAURANTE.ST_CODIGOBARRA
Valor padrão: N (Não)
Tipo: CHAR(1)

Descrição geral​

Habilita ou desabilita o uso do campo de código de barras nos processos do módulo Restaurante.
Quando ativo ('S'), o operador pode lançar itens via leitor de código de barras em vez de digitar o código do produto manualmente.

Observação importante: as rotinas do ERP que consomem este comportamento (MEQ002, MEQ008, MEQ013, MEQ014, MNF001, MCO006, etc.) consultam o campo homônimo PARMFATUR.ST_CODIGOBARRA, configurado em MFA001 — Parâmetros de Faturamento, aba Opção 2.
Não foi identificado consumo direto de PARMRESTAURANTE.ST_CODIGOBARRA no código-fonte analisado.

Telas impactadas​

  • Nenhuma tela consumidora identificada com referência direta a PARMRESTAURANTE.ST_CODIGOBARRA no código-fonte disponível.
  • O campo homônimo da tabela PARMFATUR (MFA001) afeta as seguintes rotinas:
    • MEQ002 - Ajuste de Estoque
    • MEQ008 - Transferência de Estoque
    • MEQ013 - Requisição de Material
    • MEQ014 - Conserto de Material
    • MEQ015 - Código de Barras Caixa / Embalagem
    • MNF001 - Emissão de Nota Fiscal de Entrada
    • MCO006 - Orçamento de Conserto

Campos envolvidos​

  • PARMRESTAURANTE.ST_CODIGOBARRA — flag 'S' / 'N'.
  • PARMFATUR.ST_CODIGOBARRA (configurado em MFA001 — Parâmetros de Faturamento) — flag com domínio expandido ('S', 'P', 'A', 'N').

Opções disponíveis​

S - Sim (Habilita código de barras)​

O que fazDetalhe
Exibe campo de código de barrasCampo edtCD_CODIGOBARRA fica visível nas telas de requisição/conserto/ajuste
Foco automático no leitorAo inserir novo item, o cursor vai diretamente para o campo do leitor de código de barras
Digitação manual do itemPode continuar permitida (a menos que ST_CODBARRASAPENAS = 'S' em MFA001)

Simulação passo a passo​

  1. Acesse MFA001 → aba Opção 2.
  2. Defina "Código de Barras" (ST_CODIGOBARRA) = "Sim" ('S').
  3. Salve.
  4. Abra MEQ013 (Requisição de Material).
  5. Clique em Novo (btnNovoClick).
  6. Observe que o foco vai automaticamente para o campo Código de Barras (edtCD_CODIGOBARRA) e o grid de itens já recebe um registro em branco.

Resultado esperado: O operador pode ler o código de barras do produto com o leitor, poupando a digitação manual do código.

Exceção / Importante: O efeito só ocorre se a rotina estiver consultando PARMFATUR.ST_CODIGOBARRA. Para o parâmetro de restaurante (PARMRESTAURANTE.ST_CODIGOBARRA), não foi encontrada referência direta no código analisado.

N - Não (Desabilita código de barras)​

O que fazDetalhe
Campo de código de barras ocultoedtCD_CODIGOBARRA e respectivo lblCD_CODIGOBARRA ficam invisíveis
Foco no grid de itensAo inserir novo item, o cursor posiciona-se na primeira coluna do grid (CD_ITEM)
Leitor de código de barras ignoradoO sistema não espera leitura de código de barras na entrada de itens

Simulação passo a passo​

  1. Acesse MFA001 → aba Opção 2.
  2. Defina "Código de Barras" (ST_CODIGOBARRA) = "Não" ('N').
  3. Salve.
  4. Abra MEQ014 (Conserto de Material).
  5. Clique em Novo.
  6. Observe que o foco vai para a primeira coluna do grid de itens (CD_ITEM), permitindo digitação manual.

Resultado esperado: O operador digita o código do produto diretamente no grid, sem opção de leitura por código de barras.

Exceção / Importante:

  • No MFA001, quando ST_CODIGOBARRA = 'N', o parâmetro ST_CODBARRASAPENAS (configurado em MFA001 — Parâmetros de Faturamento) é forçado para 'N' e seu combo fica desabilitado (UMFA001.pas:2198-2209).
  • Da mesma forma, o parâmetro ST_CODBARRASBALANCA (configurado em MFA001) também é afetado pela mudança de ST_CODIGOBARRA.

Regras de validação do campo​

  • O campo não aceita valores nulos (NOT NULL).
  • Valor padrão na criação do registro: 'N'.

Tabela Comparativa Resumida​

OpçãoCampo Código de BarrasFoco ao adicionar itemLeitor habilitado
SVisíveledtCD_CODIGOBARRASim
NOcultoGrid (CD_ITEM)Não

Procedures impactadas​

Rotinas Delphi com referência direta ao campo​

RotinaArquivoLinhaEvidência
iniciarsource/MEQ002/UMEQ002.pas172' SELECT ST_CODIGOBARRA ' + — consulta PARMFATUR
iniciarsource/MEQ008/UMEQ008.pas165' SELECT ST_CODIGOBARRA, TP_LISTAITEM, CD_TABPRECO ' + — consulta PARMFATUR
Busca_Parametrossource/MEQ013/UdmMEQ013.pas125'Select ... P.ST_CODIGOBARRA, ' + — PARMFATUR
TdmMEQ013.tabITEMAfterInsertsource/MEQ013/UdmMEQ013.pas456if (dmMEQ013.iST_CODIGOBARRA <> 'N') then
TfrmMEQ013.gridITEMEntersource/MEQ013/UMEQ013.pas852if(dmMEQ013.tabITEM.RecordCount = 0) and (dmMEQ013.iST_CODIGOBARRA = 'S')then
Busca_Parametrossource/MEQ014/UdmMEQ014.pas86'SELECT ... P.ST_CODIGOBARRA '+#10+ — PARMFATUR
TdmMEQ014.tabITEMAfterInsertsource/MEQ014/UdmMEQ014.pas388if (dmMEQ014.iST_CODIGOBARRA <> 'N') then
TfrmMEQ014.gridITEMEntersource/MEQ014/UMEQ014.pas848if(dmMEQ014.tabITEM.RecordCount = 0) and (dmMEQ014.iST_CODIGOBARRA = 'S')then
TdmMCO006.BuscaParametros_MCO006source/MCO006/UdmMCO006.pas2101' P.ST_CODIGOBARRA, ' + — PARMFATUR
TfrmMNF001.grpITEMNOTAEntersource/MNF001/UMNF001.pas3333if ( Pos(Trim(dmMNF001.iST_CODIGOBARRA),'SA') > 0 )
TfrmMNF001.ImportaNFesource/MNF001/UMNF001.pas4707if ( Pos(Trim(dmMNF001.iST_CODIGOBARRA),'SA') > 0 )
TfrmMFA001.cmbST_CODIGOBARRAChangesource/MFA001/UMFA001.pas2198Dispara ao alterar ST_CODIGOBARRA em MFA001
TdmMFA001.tabPARMFATURAfterInsertsource/MFA001/UdmMFA001.pas443tabPARMFATURST_CODIGOBARRA.AsString := 'N';

Scripts SQL com referência direta ao campo​

Não foram encontradas referências diretas a PARMRESTAURANTE.ST_CODIGOBARRA em scripts SQL.
O script VALIDA_CODIGOBARRA.sql (linha 21) declara a variável V_ST_CODIGOBARRABALANCA, mas não refere o campo ST_CODIGOBARRA diretamente.

Candidatas por uso da tabela (sem referência direta ao campo)​

Procedure/ViewArquivoLinhaEvidência
ATUALIZA_PESSOAScripts/ATUALIZA_PESSOA.sql297update PARMRESTAURANTE P
ENCERRA_MESAScripts/ENCERRA_MESA.sql103inner join PARMRESTAURANTE P
PROCESSA_PEDIDOSITEScripts/PROCESSA_PEDIDOSITE.sql145FROM PARMRESTAURANTE P
PRODUCAO_RESTAURANTEScripts/PRODUCAO_RESTAURANTE.sql37from PARMRESTAURANTE P
VIEW_LCM006Scripts/VIEW_LCM006.sql46INNER JOIN PARMRESTAURANTE P

Essas rotinas manipulam a tabela PARMRESTAURANTE, mas não citam o campo ST_CODIGOBARRA literalmente, portanto não foi possível confirmar impacto funcional direto.