CD_FORMAPAGTOPED - Forma de Pagamento Padrão na Duplicação de Pedido
Tela de configuração: MFA001 — Parâmetros de Faturamento Localização: Parâmetros → Ambos → Opção 2 → Duplicação de Pedido [MPD002] Tabela:
PARMFATUR.CD_FORMAPAGTOPEDTipo:VARCHAR(2)— Chave estrangeira paraFORMAPAGTO(CD_FORMAPAGTO)Valor padrão: Vazio (nenhuma forma de pagamento padrão definida)
Telas impactadas
| Tela | Rotina | Impacto |
|---|---|---|
| MPD002 — Pedidos | TfrmMPD002.btnDuplicarClick | Usa o valor como forma de pagamento padrão ao gravar parcelas do pedido duplicado |
| RPD001 — Impressão de Pedidos | TfrmRPD001.btnImprimirClick | Exibe a forma de pagamento na impressão do pedido |
| LOR044 — Layout de Ordem de Serviço | ExecLayout | Repassa o campo para o layout de impressão |
| LPD128 — Layout de Pedido | ExecLayout | Repassa o campo para o layout de impressão |
Campos envolvidos
| Campo | Tabela | Tipo | Descrição |
|---|---|---|---|
CD_FORMAPAGTOPED | PARMFATUR | VARCHAR(2) | Código da forma de pagamento padrão para duplicação de pedidos |
DS_FORMAPAGTOPED | (lookup) | VARCHAR | Descrição da forma de pagamento, preenchida via validação |
CD_FORMAPAGTO | FORMAPAGTO | VARCHAR(2) | Tabela mestre de formas de pagamento (destino da FK) |
Descrição funcional
Define a forma de pagamento padrão que será atribuída às parcelas quando um pedido for duplicado pela rotina de duplicação do MPD002. O valor informado aqui é gravado no campo CD_FORMAPAGTO da tabela PARCELAPEDIDO de cada parcela gerada na duplicação.
Opções disponíveis
| O que faz | Detalhe |
|---|---|
| Código de forma de pagamento cadastrada | Campo editável. Tecle <F9> para abrir a consulta de formas de pagamento (FORMAPAGTO). O valor precisa existir no cadastro de formas de pagamento (tabela FORMAPAGTO). Se deixado vazio, nenhuma forma de pagamento padrão será sugerida na duplicação. |
Preenchimento do campo
Simulação passo a passo
- Acesse MFA001 — Parâmetros de Faturamento.
- Vá para a aba Opção 2.
- Localize o grupo Duplicação de Pedido [MPD002].
- No campo ao lado do rótulo "Forma de Pagto", posicione o cursor e pressione
<F9>. - Na janela de consulta que se abre, selecione a forma de pagamento desejada (ex.: "01 — Dinheiro", "02 — Cartão Crédito").
- O campo será preenchido com o código e a descrição aparecerá ao lado.
- Salve os parâmetros.
Resultado esperado: Ao duplicar um pedido na tela MPD002, todas as parcelas geradas receberão automaticamente essa forma de pagamento no campo CD_FORMAPAGTO da tabela PARCELAPEDIDO.
Exceção / Importante: Se o campo ficar vazio, o sistema não definirá uma forma de pagamento padrão para as parcelas do pedido duplicado — o valor dependerá de como a duplicação trata esse cenário internamente. Se um código inválido for digitado (sem usar
<F9>), a validação rejeitará com a mensagem "A Forma de Pagamento não está Cadastrada [TFC001]!".
Validação
O evento tabPARMFATURCD_FORMAPAGTOPEDValidate executa automaticamente ao alterar o campo:
- Se o valor não for vazio, consulta
SELECT DS_FORMAPAGTO FROM FORMAPAGTO WHERE CD_FORMAPAGTO = <valor>. - Se encontrado, preenche
DS_FORMAPAGTOPEDcom a descrição. - Se não encontrado, exibe erro: "A Forma de Pagamento não está Cadastrada [TFC001]!".
Parâmetros relacionados
CD_CONDPAGTOPED(configurado em MFA001 — Parâmetros de Faturamento, aba Opção 2) — Condição de pagamento padrão sugerida ao abrir um pedido.
Procedures impactadas
Rotinas Delphi com referência direta ao campo
| Rotina | Arquivo | Descrição |
|---|---|---|
TfrmMFA001.edtCD_FORMAPAGTOPEDKeyDown | source/MFA001/UMFA001.pas | Lookup <F9> na tela de edição |
TfrmMFA001.dbedtCD_FORMAPAGTOPEDKeyDown | source/MFA001/UMFA001.pas | Lookup <F9> no campo de exibição |
TdmMFA001.tabPARMFATURCD_FORMAPAGTOPEDValidate | source/MFA001/UdmMFA001.pas | Validação do código na tabela FORMAPAGTO |
TfrmMPD002.btnDuplicarClick | source/MPD002/UMPD002.pas | Usa o valor como CD_FORMAPAGTO padrão nas parcelas do pedido duplicado |
TdmMPD002.BuscaParametros_MPD002 | source/MPD002/UdmMPD002.pas | Carrega parâmetros de faturamento para a duplicação |
ExecLayout (LOR044) | source/LOR044/ULOR044.pas | Repassa o campo ao layout de ordem de serviço |
ExecLayout (LPD128) | source/LPD128/ULPD128.pas | Repassa o campo ao layout de pedido |
TfrmRPD001.btnImprimirClick | source/RPD001/URPD001.pas | Exibe forma de pagamento na impressão |
Referências SQL diretas ao campo
| Arquivo | Linha | Evidência |
|---|---|---|
source/LOR044/ULOR044.pas | 245 | P.CD_FORMAPAGTOPED no SELECT do layout |
source/LPD128/ULPD128.pas | 145 | P.CD_FORMAPAGTOPED no SELECT do layout |
source/RPD001/URPD001.pas | 944 | `PD.CD_FORMAPAGTO |
Candidatas por uso da tabela
As procedures abaixo referenciam a tabela PARMFATUR mas não citam o campo CD_FORMAPAGTOPED diretamente. Impacto funcional não confirmado:
ATUALIZA_PESSOA, ATUALIZA_PRECOVENDA, BUSCAPRECORECAP, CALCULA_CENTRORESULT, CALCULA_CENTRORESULTITEM, CALCULA_COMISSAO, CALCULA_COMISSAO_V2, CALCULA_JUROVENDA, CALCULA_MAQUINA, CALCULA_MAQUINAFICHA, CANCELA_MESTRA, CANCELA_NOTAFISCAL, CONFIRMA_ORDEMSERVICO, CONFIRMA_ORDEMSERVICOMETAL, CONSOME_LOTEMATERIAPRIMA, CREDITOPERIODICO_AI0, CREDITOPERIODICOGRUPO_AI0, EXPORTACAO_ALLABOR, EXPORTACAO_DOMINIOCADASTROS, EXPORTACAO_DOMINIOCUPOM.