CD_HISTPRODENT — Histórico de Entrada de Produção
Tela de configuração: MEQ001 — Parâmetros de Estoque Localização: Aba Operações Padrão Tabela / Campo:
PARMESTOQUE.CD_HISTPRODENT(INTEGER, FK paraHISTORICO.CD_HISTORICO) Componente na tela:edtCD_HISPRODENT(TDBEdit, largura 50px) Campo descrição auxiliar:DS_HISTPRODENT(TStringField, originHISTORICO.DS_HISTORICO, somente leitura)
Finalidade
Define o histórico contábil/estoquista padrão aplicado em movimentações de entrada de produto no estoque durante produção. Quando uma etapa produtiva gera entrada de produto (recebimento), este código é gravado no lançamento de estoque para classificar a movimentação.
Telas impactadas
| Tela | Como utiliza |
|---|---|
| MEQ001 — Parâmetros de Estoque | Tela onde o parâmetro é configurado pelo usuário. |
| MEQ070 — Acompanhamento de Produção | TransfereItemEtapa lê CD_HISTPRODENT do dicionário parmEstoque e o utiliza como cdHistoricoEntrada na geração de estoque. Se estiver vazio, exibe erro: "Código de Histórico de Operação de Entrada não Informado! Verifique [MEQ001]". |
Campos envolvidos
| Campo | Tipo | Origem | Descrição |
|---|---|---|---|
PARMESTOQUE.CD_HISTPRODENT | DOM_INTEGER | Tabela de parâmetros | Código do histórico de entrada de produção |
PARMESTOQUEDS_HISTPRODENT | TStringField (60) | HISTORICO.DS_HISTORICO via JOIN | Descrição do histórico (somente leitura na tela) |
Comportamento na tela
| Aspecto | Detalhe |
|---|---|
| Editável | Sim — campo de edição livre ou via consulta <F9> |
| Valor padrão | Nenhum valor fixo. Preenchido via lookup <F9> ou manualmente. |
| Obrigatório | Sim — MEQ070.TransfereItemEtapa lança exceção se o campo estiver vazio. |
| Dica (Hint) | Lista de Históricos <F9> |
| Validação | Ao sair do campo, o evento OnValidate verifica as regras abaixo. |
Opções disponíveis
Este parâmetro não possui valores discretos (como S/N/A). Trata-se de um código inteiro que referencia a tabela HISTORICO. Qualquer código válido que satisfaça as regras de validação é aceito.
Regras de validação do código informado
| # | Regra | Exceção gerada |
|---|---|---|
| 1 | O código deve existir na tabela HISTORICO | "O Histórico não esta Cadastrado! Verifique [TCB003]" |
| 2 | O histórico deve estar ativo (ST_ATIVO <> 'N') | "O Histórico não está Ativo! Verifique [TCB003]" |
| 3 | O histórico deve ser do tipo Estoque (TP_HISTORICO = 'E') | "O Histórico deve ser do Tipo Estoque! Verifique [TCB003]" |
| 4 | A natureza não pode ser Perda (TP_NATUREZA <> 'P'); deve ser Recebimento ('R') | "Para Movimentação de Entrada Somente é Permitido Histórico de Recebimento!" |
Simulação passo a passo
- Acesse MEQ001 — Parâmetros de Estoque.
- Navegue até a aba Operações Padrão.
- Localize o campo Operações (
edtCD_HISPRODENT), à direita do label. - Para buscar via consulta, pressione
<F9>com o foco no campo.- O sistema abre a lista de históricos filtrando por natureza Recebimento (
TP_NATUREZA = 'R') e tipo Estoque (TP_HISTORICO = 'E'), conforme a procedureHISTORICO_POR_NATUREZA. - Selecione o histórico desejado e confirme.
- O sistema abre a lista de históricos filtrando por natureza Recebimento (
- Alternativamente, digite diretamente o código do histórico (ex.:
10). - Ao sair do campo, o sistema valida automaticamente:
- Se o código não existir ou não atender às regras, uma mensagem de erro é exibida e o campo permanece vazio.
- Se válido, o campo descrição (
DS_HISTPRODENT) é preenchido automaticamente com o nome do histórico.
- Salve o registro normalmente.
Resultado esperado: O código do histórico fica gravado em PARMESTOQUE.CD_HISTPRODENT e passa a ser usado como histórico padrão em todas as entradas de produto geradas durante a produção (MEQ070).
Exceção / Importante:
- Se este parâmetro não estiver preenchido, a tela MEQ070 (Acompanhamento de Produção) não conseguirá transferir itens entre etapas, pois
TransfereItemEtapalança a exceção "Código de Histórico de Operação de Entrada não Informado!".- O campo
CD_HISTPRODENTdeve ser configurado juntamente comCD_HISTPRODSAI(histórico de saída) eCD_OPERPRODENT(operação de entrada) para que o fluxo completo de produção funcione.
Parâmetros relacionados
| Parâmetro | Tela | Relação |
|---|---|---|
CD_HISTPRODSAI | MEQ001 — aba Operações Padrão | Histórico de saída de produção (campo irmão, logo acima) |
CD_OPERPRODENT | MEQ001 — aba Operações Padrão | Operação de entrada de produção; necessário juntamente com o histórico |
CD_OPERPRODSAI | MEQ001 — aba Operações Padrão | Operação de saída de produção |
Procedures impactadas
Rotinas Delphi com referência direta ao campo
| Rotina | Arquivo | Linha | Uso |
|---|---|---|---|
TfrmMEQ001.edtCD_HISPRODENTKeyDown | UMEQ001.pas | 1794 | Trata <F9>: busca histórico via HISTORICO_POR_NATUREZA (natureza 'R', tipo 'E') e preenche o campo |
TdmMEQ001.tabPARMESTOQUECD_HISTPRODENTValidate | UdmMEQ001.pas | 1368 | Valida existência, ativo, tipo Estoque e natureza Recebimento do código informado |
TfrmMEQ070.TransfereItemEtapa | source/MEQ070/UMEQ070.pas | 3178 | Lê CD_HISTPRODENT do dicionário parmEstoque para usar como cdHistoricoEntrada na geração de estoque da produção |
Referências SQL diretas ao campo em Scripts/
Nenhuma referência direta ao campo CD_HISTPRODENT foi encontrada em scripts SQL sob Scripts/. As procedures candidatas listadas abaixo usam a tabela PARMESTOQUE mas não citam o campo literalmente. Não há impacto funcional direto confirmado via SQL para este campo específico.