ST_ALTERA_DT_MFC004 - Permite Alterar Data de Pagamento/Cheque nas Telas de Baixa
Tela de configuracao: FNC001 — Parametros Financeiros
Tabela:PARMFINANC.ST_ALTERA_DT_MFC004
Valor padrao:S
Componente:cmbST_ALTERA_DT_MFC004(Combobox) — Aba "Financeiro 1"
Tipo:CHAR(1)— ColunaST_ALTERA_DT_MFC004 DOM_CHAR1 DEFAULT 'S' NOT NULL
Opcoes:S(Sim),N(Nao)
Telas impactadas
| Tela | Descricao | Efeito do parametro |
|---|---|---|
| MFC004 | Baixa de contas a receber | Campo Data de Pagamento fica somente leitura quando N |
| MFC013 | Baixa de contas a pagar (cheque) | Campo Data do Cheque fica somente leitura quando N |
| MFC025 | Baixa de contas a receber | Campo de data da baixa fica somente leitura quando N |
Campos envolvidos
| Tela | Campo UI | Campo dataset | Comportamento |
|---|---|---|---|
| MFC004 | edtDT_PAGAMENTO | tabFILTRO.DT_PAGAMENTO | ReadOnly := True quando ST_ALTERA_DT_MFC004 = 'N' |
| MFC013 | edtDT_CHEQUE | tabFILTRO.DT_CHEQUE | ReadOnly := True quando ST_ALTERA_DT_MFC004 = 'N' |
| MFC025 | (campo de data da baixa) | tabFILTRO | ReadOnly := True quando ST_ALTERA_DT_MFC004 = 'N' |
Opcoes disponiveis
S - Permite alterar a data de pagamento
| O que faz | Detalhe |
|---|---|
| Habilita edicao | O campo de data de pagamento fica editavel (nao travado). |
| Preenchimento padrao | A data e preenchida com a data atual (Now) se nao houver caixa ativo. |
| Sem restricao | O usuario pode digitar qualquer data no campo. |
Simulacao passo a passo
- Acesse a tela
FNC001— Parametros Financeiros. - Localize a aba "Financeiro 1" e o campo "Dados do Parametro" (
ST_ALTERA_DT_MFC004). - Selecione a opcao
S(Sim). - Salve o registro.
- Abra a tela
MFC004(Baixa de Contas a Receber). - Clique no botao "Novo" para criar uma nova baixa.
- Verifique que o campo "Data de Pagamento" esta editavel — clique nele e altere a data para um valor diferente de hoje.
- Prossiga com a baixa normalmente.
Resultado esperado: O usuario consegue alterar a data de pagamento para qualquer valor manualmente.
N - Nao permite alterar a data de pagamento
| O que faz | Detalhe |
|---|---|
| Bloqueia edicao | O campo de data de pagamento fica somente leitura (ReadOnly = True). |
| Preenchimento automatico | Se houver caixa aberto (dtCaixa <> ''), o campo e preenchido com a data do caixa. Caso contrario, usa a data atual (Now). |
| Combina com caixa | A condicao e: caixa aberto OU ST_ALTERA_DT_MFC004 = 'N'. Basta uma condicao verdadeira para bloquear. |
Simulacao passo a passo
- Acesse a tela
FNC001— Parametros Financeiros. - Localize a aba "Financeiro 1" e o campo "Dados do Parametro" (
ST_ALTERA_DT_MFC004). - Selecione a opcao
N(Nao). - Salve o registro.
- Abra a tela
MFC004(Baixa de Contas a Receber). - Clique no botao "Novo" para criar uma nova baixa.
- Verifique que o campo "Data de Pagamento" esta travado (somente leitura) — voce nao consegue clicar nem digitar nele.
- Observe que o campo ja esta preenchido automaticamente com a data do caixa (se existir caixa aberto) ou com a data atual.
Resultado esperado: O usuario nao consegue alterar a data de pagamento. Ela e definida automaticamente pelo sistema.
Excecao / Importante: A condicao de bloqueio e composta — o campo fica travado quando caixa esta aberto (
dtCaixa <> '') OU quandoST_ALTERA_DT_MFC004 = 'N'. Isso significa que, mesmo com o parametro emS, se houver um caixa aberto na empresa, a data de pagamento sera fixada com a data do caixa e o campo ficara somente leitura.
Excecao / Importante: Este parametro nao exige usuario autorizador especifico. Ele funciona como uma configuracao global por empresa.
Tabela Comparativa Resumida
| Valor | Editavel? | Preenchimento | Bloqueia edicao |
|---|---|---|---|
S | Sim | Now (data atual), se sem caixa | Nao |
N | Nao | Data do caixa ou Now | Sim |
Procedures impactadas
Rotinas Delphi com referencia direta ao parametro
| Rotina | Arquivo | Comportamento |
|---|---|---|
TdmFNC001.tabPARMFINANCBeforePost | source/FNC001/UdmFNC001.pas | Define valor padrao 'S' se o campo estiver vazio no BeforePost. |
iniciar | source/MFC004/UMFC004.pas | Na inicializacao da tela MFC004, bloqueia o campo edtDT_PAGAMENTO se ST_ALTERA_DT_MFC004 = 'N' ou caixa aberto. |
TfrmMFC004.btnNovoClick | source/MFC004/UMFC004.pas | Ao clicar em "Novo" na MFC004, aplica o mesmo bloqueio ao campo de data de pagamento. |
TfrmMFC013.btnNovoClick | source/MFC013/UMFC013.pas | Ao clicar em "Novo" na MFC013, bloqueia o campo edtDT_CHEQUE se ST_ALTERA_DT_MFC004 = 'N' ou caixa aberto. |
TfrmMFC025.btnNovoClick | source/MFC025/UMFC025.pas | Ao clicar em "Novo" na MFC025, aplica o mesmo comportamento de bloqueio ao campo de data. |
Candidatas por uso da tabela
As seguintes procedures SQL utilizam a tabela PARMFINANC, mas nao referenciam diretamente o campo ST_ALTERA_DT_MFC004. Nao ha impacto funcional direto identificado nestas rotinas — o parametro atua exclusivamente no comportamento de UI das telas de baixa.
Referencias SQL diretas ao campo: nenhuma encontrada em Scripts/.
Nota: O impacto deste parametro e exclusivamente na interface das telas de baixa (Delphi). Ele nao afeta calculos de juro, desconto ou procedures SQL que utilizam
PARMFINANC.