Pular para o conteúdo principal

CD_OPERESTOQUEENT - Operação Padrão de Entrada de Estoque

Tela de configuração: MEQ001 — Parâmetros de Estoque Aba: Tipo Tabela: PARMESTOQUE.CD_OPERESTOQUEENT Componente: edtCD_OPERESTOQUEENT (TDBEdit) Tipo: INTEGER (FK → OPERACAO.CD_OPERACAO) Rótulo na tela: "Operação de Saída" (nota: o rótulo é enganoso; o campo define operação de Entrada)

Descrição​

Define a operação de estoque de entrada padrão que será utilizada em rotinas que geram movimentação de entrada de estoque para a empresa parametrizada. O valor informado deve ser o código de uma operação cadastrada na tabela OPERACAO com:

  • TP_OPERACAO = 'E' (tipo Entrada)
  • ST_ATIVO = 'S'
  • ST_PRECOMEDIO = 'N' (não utiliza preço médio)

Telas impactadas​

TelaDescriçãoComo é usado
MEQ001Parâmetros de EstoqueCampo direto para configuração
MEQ013Ajuste de Saldo de EstoqueLê o parâmetro para definir a operação de entrada nos itens ajustados

Campos envolvidos​

CampoTabelaTipoFK
CD_OPERESTOQUEENTPARMESTOQUEINTEGEROPERACAO(CD_OPERACAO)
DS_OPERACAOOPERACAOVARCHAR(60)Descrição — exibida como lookup

Comportamento do campo​

O que fazDetalhe
EditávelSim — campo livre com busca por <F9>.
ValidaçãoAo digitar código e sair do campo, valida se a operação existe, é do tipo 'E' (Entrada), está ativa (ST_ATIVO = 'S') e não é preço médio (ST_PRECOMEDIO = 'N').
Busca F9Abre pesquisa listando DS_OPERACAO e CD_OPERACAO da tabela OPERACAO filtrando TP_OPERACAO = 'E' e ST_PRECOMEDIO = 'N'.
Descrição autoApós validação, preenche automaticamente o campo descritivo DS_OPERESTOQUEENT na tela.
FK obrigatóriaO código deve existir na tabela OPERACAO (constraint FK_PARMESTOQUE_1).

Simulação passo a passo​

  1. Acesse a tela MEQ001 — Parâmetros de Estoque.
  2. Abra a aba Tipo.
  3. Localize o campo "Operação de Saída" (campo CD_OPERESTOQUEENT).
  4. Pressione <F9> no campo (ou digite o código diretamente).
  5. Selecione uma operação na lista de operações de entrada (ex: 1 — "Entrada de Mercadoria", 10 — "Devolução de Venda").
  6. Salve o registro.

Resultado esperado: O código da operação selecionada (ex: 1) é salvo em PARMESTOQUE.CD_OPERESTOQUEENT para a empresa, e a descrição é exibida automaticamente ao lado (ex: "Entrada de Mercadoria").

Exceção / Importante: O rótulo do campo na tela diz "Operação de Saída", mas o comportamento é de operação de Entrada (TP_OPERACAO = 'E'). O campo de saída correspondente é CD_OPERESTOQUESAI (mesma aba). Não confunda os dois.

Validação: Se o código informado apontar para uma operação inativa, do tipo 'S' (Saída), ou com ST_PRECOMEDIO = 'S', o sistema rejeitará o valor via rotina ValidaOperacao.

Uso na tela MEQ013 (Ajuste de Saldo de Estoque)​

Quando um operador realiza ajuste de saldo de entrada na tela MEQ013, o sistema busca o parâmetro CD_OPERESTOQUEENT para definir automaticamente a operação de entrada do item ajustado:

O que fazDetalhe
LeituraBusca_Parametros recupera E.CD_OPERESTOQUEENT de PARMESTOQUE.
AtribuiçãoO valor é atribuído ao campo CD_OPERESTOQUEENT da grid de itens.
ValidaçãoSe o valor estiver vazio e houver um fallback (iCD_OPERDEV), este é usado. Caso contrário, a validação exige que o campo esteja preenchido — erro E-0000 com mensagem "A Operação não está Cadastrada. Verifique! [TEQ001]".

Simulação passo a passo (MEQ013)​

  1. Configure CD_OPERESTOQUEENT na MEQ001 (ex: operação 1 — "Entrada de Mercadoria").
  2. Abra a tela MEQ013 — Ajuste de Saldo de Estoque.
  3. Insira um novo item para ajuste de entrada.
  4. Informe o código do item e a quantidade de ajuste.
  5. Observe que o campo CD_OPERESTOQUEENT é preenchido automaticamente com o valor da MEQ001.
  6. Salve o ajuste.

Resultado esperado: O registro de estoque gerado utiliza a operação configurada em CD_OPERESTOQUEENT como operação de entrada, sem que o usuário precise informá-la manualmente.

Importante: Se CD_OPERESTOQUEENT não estiver configurado na MEQ001 (valor nulo/vazio) e não houver fallback (iCD_OPERDEV), o sistema exibirá erro ao validar o item na MEQ013.

Procedures impactadas​

Rotinas Delphi com referência direta ao campo​

RotinaArquivoImpacto
edtCD_OPERESTOQUEENTKeyDownsource/MEQ001/UMEQ001.pas:2027Pesquisa <F9> de operações de entrada (TP_OPERACAO = 'E').
tabPARMESTOQUECD_OPERESTOQUEENTValidatesource/MEQ001/UdmMEQ001.pas:1673Valida operação com Tp_Operacao = 'E' e St_PrecoMedio = 'N'.
tabITEMCD_OPERESTOQUEENTValidatesource/MEQ013/UdmMEQ013.pas:760Valida existência da operação na tabela OPERACAO (MEQ013).
tabITEMCD_ITEMValidatesource/MEQ013/UdmMEQ013.pas:386Atribui CD_OPERESTOQUEENT do parâmetro ao item; usa fallback iCD_OPERDEV se vazio.
btnSalvarClicksource/MEQ013/UMEQ013.pas:341Lê CD_OPERESTOQUEENT do item para processar a operação de grade.
Busca_Parametrossource/MEQ013/UdmMEQ013.pas:125Consulta E.CD_OPERESTOQUEENT FROM PARMESTOQUE E.

Referências SQL diretas ao campo​

Não foram encontradas referências diretas ao campo CD_OPERESTOQUEENT nos scripts SQL da base de conhecimento.

Candidatas por uso da tabela PARMESTOQUE​

As procedures abaixo usam a tabela PARMESTOQUE mas não citam o campo CD_OPERESTOQUEENT literalmente. Devem ser validadas caso a caso para confirmar se leem o campo via ORM/ClientDataset:

AJUSTA_ORDEMPRODPEDANTECIPADO, ALTERACAO_BANDA, ATUALIZA_CONSUMOMEDIO, ATUALIZA_ESTOQUEDIAPESSOA, CALCULA_FORMACAOPRECOVENDA, CANCELA_ESTOQUE, CONFIRMA_ORDEMSERVICO, CONFIRMA_ORDEMSERVICOMETAL, GERA_ESTOQUE, GERA_ESTOQUE_NOTAFISCAL, GERA_ESTOQUEPSALT, GERA_NOTAFISCALESTOQUE, GERA_ORDEMPRODUCAO, GERA_PRODENVELOPAMENTO, GERA_PRODLOTEPRODUCAO, GERA_PRODMONTAGEMRECAP, GERA_PRODVULCANIZACAO, GERA_SPEDBLOCOL, GERA_SPEDECFBLOCOL, GRAVA_AVISOS.

Referências cruzadas​

  • Campo de saída correspondente: CD_OPERESTOQUESAI (configurado na mesma tela MEQ001, aba Tipo) — operação padrão para saídas de estoque (TP_OPERACAO = 'S').
  • Tabela de operações: OPERACAO — consulte os registros com TP_OPERACAO = 'E' para opções válidas.
  • Parâmetro relacionado: CD_OPERDEV (verificar tabela PARMESTOQUE ou configuração equivalente) — pode servir como fallback em telas de ajuste.