Pular para o conteúdo principal

ST_OBRIGACADPROD - Obrigatoriedades no Cadastro de Produto

Tela de configuração: ADM010 — Parâmetros do Sistema Localização: aba Configurações → campo Configurações Tabela: PARMSISTEMA.ST_OBRIGACADPROD (CHAR(1), NOT NULL) Valor padrão: N (Nenhum)


Telas impactadas​

TelaRotinaEfeito
TPO001 — Cadastro de Produtosiniciar / tabITEMBeforePostValida obrigatoriedade de Perfil, Local de Armazenagem e/ou Código de Barras ao salvar o produto
TOF007 — Orçamento/ PedidoactionIncluirExecute / tabITEMBeforePostDestaca visualmente (negrito) o label de Código de Barras ao incluir item; exige código de barras preenchido ao gravar

Campos envolvidos​

CampoTabelaDescrição
CD_PERFILPERFILPerfil do produto
CD_TIPOLOCAL / CD_LOCALITEMLOCALTipo e código do local de armazenagem do produto
CD_CODIGOBARRAITEMCódigo de barras do produto

Opções disponíveis​

N - Nenhum​

O que fazDetalhe
Sem obrigatoriedade extraCadastro de produto segue regras padrão do sistema; Perfil, Local de Armazenagem e Código de Barras continuam opcionais

Simulação passo a passo​

  1. Acesse TPO001 — Cadastro de Produtos.
  2. Inclua um novo produto preenchendo apenas os campos mínimos (descrição, unidade, etc.).
  3. Salve o produto sem informar Perfil, Local de Armazenagem ou Código de Barras.
  4. O produto é gravado normalmente.

Resultado esperado: Nenhum campo adicional é exigido no cadastro do produto.


P - Cadastro de Perfil​

O que fazDetalhe
Exige Perfil preenchidoAo salvar um novo produto, o sistema verifica se existe pelo menos um perfil vinculado; se não houver, exibe erro e direciona para a aba Perfil

Simulação passo a passo​

  1. Acesse TPO001 — Cadastro de Produtos.
  2. Inclua um novo produto e preencha os campos básicos.
  3. Tente salvar sem cadastrar um perfil na aba Perfil.
  4. O sistema exibe a mensagem "É Obrigatório informar um Perfil para o Produto!" e posiciona o foco na grade de perfis.

Resultado esperado: O produto só é salvo após vincular ao menos um perfil.


L - Local de Armazenagem​

O que fazDetalhe
Exige Local de Armazenagem preenchidoAo salvar um novo produto, o sistema verifica se existe pelo menos um local de armazenagem (Tipo + Local) vinculado; se não houver, exibe erro e direciona para a aba de locais

Simulação passo a passo​

  1. Acesse TPO001 — Cadastro de Produtos.
  2. Inclua um novo produto e preencha os campos básicos.
  3. Tente salvar sem cadastrar um local de armazenagem na aba Local de Armazenagem.
  4. O sistema exibe a mensagem "É Obrigatório informar um Local para Armazenagem para o Produto!" e posiciona o foco no campo de tipo de local.

Resultado esperado: O produto só é salvo após vincular ao menos um local de armazenagem.


A - Perfil e Local de Armazenagem​

O que fazDetalhe
Exige ambos: Perfil e Local de ArmazenagemCombina as validações das opções P e L; ao salvar, verifica primeiro o perfil e depois o local de armazenagem

Simulação passo a passo​

  1. Acesse TPO001 — Cadastro de Produtos.
  2. Inclua um novo produto e preencha os campos básicos.
  3. Tente salvar sem perfil → o sistema bloqueia com "É Obrigatório informar um Perfil para o Produto!".
  4. Cadastre um perfil e tente salvar novamente sem local de armazenagem → o sistema bloqueia com "É Obrigatório informar um Local para Armazenagem para o Produto!".
  5. Cadastre também um local de armazenagem e salve.

Resultado esperado: O produto só é salvo quando ambos (Perfil e Local de Armazenagem) estiverem preenchidos.


C - Código de Barras​

O que fazDetalhe
Exige Código de Barras preenchidoAo salvar o produto (TPO001 ou TOF007), verifica se o campo Código de Barras está preenchido; o label do campo é exibido em negrito na tela

Simulação passo a passo​

  1. Acesse TPO001 — Cadastro de Produtos.
  2. Observe que o label Código de Barras aparece em negrito.
  3. Inclua um novo produto e preencha os campos básicos.
  4. Tente salvar sem informar o Código de Barras.
  5. O sistema exibe "É obrigatório informar um código de barras para o Produto!".

Resultado esperado: O produto só é salvo após informar o Código de Barras.

Exceção / Importante: No TPO001, se stCodBarras = false (produto não possui código de barras registrado), a validação é ignorada mesmo com a opção C ativa.


B - Local Armazenagem e Código de Barra​

O que fazDetalhe
Exige Local de Armazenagem e Código de BarrasCombina as validações de L e C; o label de Código de Barras aparece em negrito e ambas as validações são aplicadas ao salvar

Simulação passo a passo​

  1. Acesse TPO001 — Cadastro de Produtos.
  2. Observe que o label Código de Barras aparece em negrito.
  3. Inclua um novo produto e preencha os campos básicos.
  4. Tente salvar sem Código de Barras → bloqueio com mensagem de obrigatoriedade.
  5. Informe o Código de Barras e tente salvar sem local de armazenagem → bloqueio com "É Obrigatório informar um Local para Armazenagem para o Produto!".
  6. Cadastre o local de armazenagem e salve.

Resultado esperado: O produto só é salvo quando Local de Armazenagem e Código de Barras estiverem preenchidos.

Exceção / Importante: No TPO001, a validação de código de barras é bypassada se stCodBarras = false.


Tabela Comparativa Resumida​

ValorDescriçãoPerfilLocal ArmazenagemCódigo de BarrasLabel em negrito
NNenhum————
PCadastro de Perfil✅———
LLocal de Armazenagem—✅——
APerfil e Local de Armazenagem✅✅——
CCódigo de Barras——✅✅ (Código de Barras)
BLocal Armazenagem e Código de Barra—✅✅✅ (Código de Barras)

Procedures impactadas​

Rotinas Delphi com referência direta ao campo​

RotinaArquivoEfeito
TdmADM010.tabPARMSISTEMAAfterInsertUdmADM010.pas:207Atribui valor padrão 'N' ao incluir novo registro em PARMSISTEMA
TfrmTOF007.actionIncluirExecuteUTOF007.pas:457Se C, aplica negrito ao label de Código de Barras ao abrir tela de inclusão de item
TdmTOF007.tabITEMBeforePostUdmTOF007.pas:1068Se C, exige Código de Barras preenchido ao gravar item do orçamento/pedido
TfrmTPO001.iniciarUTPO001.pas:943Carrega o valor do parâmetro na variável ist_cadProduto; se C ou B, aplica negrito ao label de Código de Barras
TdmTPO001.tabITEMBeforePostUdmTPO001.pas:1108Se C ou B, exige Código de Barras preenchido ao gravar produto
TfrmTPO001 (pós-post)UTPO001.pas:1537-1591Valida Perfil (P, A) e/ou Local de Armazenagem (L, A, B) ao concluir cadastro de novo produto

Referências SQL diretas ao campo​

Nenhuma stored procedure ou view em Scripts/ referencia diretamente o campo ST_OBRIGACADPROD. As procedures listadas na seção de candidatas acessam a tabela PARMSISTEMA para outros fins (ex.: TP_PLANOCONTABIL, dados contábeis, SPED).