CD_LAYRECEITA - Layout de Impressão da Receita Agronômica
Tela de configuração: MFA001 - Parâmetros de Faturamento Localização: Parâmetros → aba &Layouts → campo "Receita" Tabela:
PARMFATUR.CD_LAYRECEITATipo:DOM_VARCHAR6(código alfanumérico, até 6 caracteres) Valor padrão: Nenhum (vazio)
Descrição
Define o código do layout de impressão utilizado para imprimir a Receita Agronômica (receituário) após o faturamento de uma nota fiscal. Esse layout é carregado pela rotina CarregaLayout e enviado para o motor de impressão do sistema.
O campo só produz efeito quando o parâmetro ST_RECEITA está ativo.
Dependência obrigatória:
ST_RECEITA(configurado em MFA001 → Parâmetros → Faturamento → Opção 1 → "Receita Agronômica"). SeST_RECEITAfor diferente deS, o valor deCD_LAYRECEITAé ignorado.
Telas impactadas
| Tela | Rotina | Efeito |
|---|---|---|
| MNF002 | Imprime_Receita | Após gravar/imprimir a NF, imprime automaticamente a receita usando o layout informado |
| MNF008 | Imprime_Receita | Mesmo comportamento do MNF002 (faturamento via pedido/orçamento) |
| CNF001 | btnImpReceitaClick | Botão de reimpressão manual da receita na consulta de notas fiscais |
| MCO006 | BuscaParametros_MCO006 | Carrega o parâmetro para uso na movimentação de consulta |
Campos envolvidos
| Campo | Tabela | Descrição |
|---|---|---|
CD_LAYRECEITA | PARMFATUR | Código do layout de impressão da receita agronômica |
ST_RECEITA | PARMFATUR | Flag (S/N) que habilita o fluxo de receituário agronômico |
CD_CULTURA | ITEMNOTA | Cultura agrícola preenchida ao incluir item com receita |
CD_ITEM | ITEMRECEITA / tabReceita | Item da receita utilizado na verificação de impressão |
Opções disponíveis
Preenchido (código de layout válido)
| O que faz | Detalhe |
|---|---|
| Define qual layout imprimir | O código informado é passado como parâmetro iParametros[0] para CarregaLayout |
Exige ST_RECEITA = 'S' | Sem essa flag ativa, o layout é ignorado |
| Editável | Campo de digitação livre (TDBEdit, ecUpperCase) |
Simulação passo a passo
- Acesse MFA001 → Parâmetros → aba Layouts.
- No campo Receita, digite o código do layout cadastrado (ex.:
REC001). - Certifique-se de que
ST_RECEITAesteja configurado comoS. - Salve os parâmetros.
- No faturamento (MNF002 ou MNF008), inclua uma NF com produto que possua receita agronômica.
- Após imprimir a nota e duplicatas, o sistema imprime automaticamente a Receita Agronômica usando o layout
REC001.
Resultado esperado: A receita agronômica é impressa automaticamente após o processamento da nota fiscal.
Exceção / Importante: Se o produto possuir mais de uma cultura/diagnóstico em
ITEMRECEITA, o sistema abrirá a lista de seleção (Lista_Receita) para que o usuário escolha a cultura e o diagnóstico antes de continuar o faturamento.
Vazio (não preenchido)
| O que faz | Detalhe |
|---|---|
| Nenhuma receita é impressa | A rotina Imprime_Receita testa Trim(CD_LAYRECEITA) <> '' e silenciosamente ignora a impressão |
| Coleta de cultura ainda funciona | Os campos ITEMNOTA.CD_CULTURA etc. continuam sendo preenchidos se ST_RECEITA = 'S' |
Simulação passo a passo
- Acesse MFA001 → Parâmetros → aba Layouts.
- Deixe o campo Receita vazio.
- Configure
ST_RECEITAcomoS. - No faturamento, inclua uma NF com produto de receita agronômica.
- A coleta de cultura/diagnóstico funciona normalmente na inclusão dos itens.
- Após imprimir a NF, nenhuma receita agronômica é impressa — o fluxo é ignorado silenciosamente.
Resultado esperado: O faturamento conclui normalmente, mas a receita agronômica não é impressa.
Exceção / Importante: A reimpressão manual (botão btnImpReceita em CNF001) também consulta
CD_LAYRECEITAdaPARMFATURda empresa da nota. Se o campo estiver vazio, a reimpressão não ocorre.
ST_RECEITA diferente de 'S' (layout ignorado)
| O que faz | Detalhe |
|---|---|
| Layout irrelevante | Mesmo preenchido, o layout não é utilizado quando ST_RECEITA <> 'S' |
| Sem impressão de receita | A rotina Imprime_Receita falha na primeira condição e a impressão é ignorada |
Simulação passo a passo
- Acesse MFA001 → Parâmetros → aba Layouts.
- Preencha o campo Receita com um layout válido (ex.:
REC001). - Configure
ST_RECEITAcomoN. - No faturamento, inclua e imprima uma NF.
- Nenhuma receita agronômica será impressa — o layout é ignorado.
Resultado esperado: A nota é faturada normalmente sem nenhuma impressão de receita agronômica.
Regra Geral
A impressão da receita agronômica depende de duas condições simultâneas:
PARMFATUR.ST_RECEITA = 'S'Trim(PARMFATUR.CD_LAYRECEITA) <> ''(layout configurado e não vazio)
Se qualquer uma das condições falhar, a impressão da receita é silenciosamente ignorada (sem mensagem de erro ou aviso ao usuário).
Tabela Comparativa Resumida
ST_RECEITA | CD_LAYRECEITA | Coleta cultura/diagnóstico | Impressão da receita |
|---|---|---|---|
| S | Preenchido | Sim | Sim |
| S | Vazio | Sim | Não (ignorado) |
| N | Qualquer | Não | Não (ignorado) |
Procedures impactadas
Rotinas Delphi com referência direta ao campo
| Rotina | Arquivo | Descrição |
|---|---|---|
Imprime_Receita | source/MNF002/UMNF002.pas | Verifica ST_RECEITA = 'S' e CD_LAYRECEITA preenchido; carrega layout e imprime receita após NF |
Imprime_Receita | source/MNF008/UMNF008.pas | Mesmo comportamento no faturamento via MNF008 |
TfrmCNF001.btnImpReceitaClick | source/CNF001/UCNF001.pas | Reimpressão manual — consulta CD_LAYRECEITA da PARMFATUR da empresa |
TdmMNF002.BuscaParametros_MNF002 | source/MNF002/UdmMNF002.pas | Carrega parâmetros de faturamento incluindo CD_LAYRECEITA |
Busca_Parametros | source/MNF008/UdmMNF008.pas | Carrega parâmetros incluindo CD_LAYRECEITA para o módulo MNF008 |
TdmMNF008.BuscaParametros_MNF008 | source/MNF008/UdmMNF008.pas | Carrega parâmetros para relatórios/movimentação |
TdmMCO006.BuscaParametros_MCO006 | source/MCO006/UdmMCO006.pas | Carrega parâmetros para consulta MCO006 |
MontaScript e variantes | source/FER002/UFER002.pas | Lista de exclusão de auditoria — CD_LAYRECEITA é ignorado na geração de triggers de auditoria |
Referências SQL diretas ao campo
Não foram encontradas referências diretas ao campo CD_LAYRECEITA em Scripts/ (procedures/views SQL). As procedures que utilizam a tabela PARMFATUR acessam o campo indiretamente via SELECT * ou listas de colunas, sem referência explícita a CD_LAYRECEITA.