CD_CONDPAGTOPED - Condição de Pagamento na Duplicação de Pedido
Tela de configuração: MFA001 — Parâmetros de Faturamento Localização: Parâmetros → Ambos → Opção 2 → seção "Duplicação de Pedido [MPD002]" Tabela:
PARMFATUR.CD_CONDPAGTOPED(INTEGER, FK →CONDPAGTO.CD_CONDPAGTO) Valor padrão: vazio (nenhuma condição pré-definida)
Telas impactadas
| Tela | Rotina | Impacto |
|---|---|---|
| MPD002 | Duplicação de Pedido | Define a condição de pagamento padrão do pedido duplicado |
| MFA001 | Parâmetros de Faturamento | Configuração do campo |
Campos envolvidos
| Campo | Tabela | Descrição |
|---|---|---|
CD_CONDPAGTOPED | PARMFATUR | Código da condição de pagamento padrão para duplicação |
CD_CONDPAGTO | PEDIDO | Condição de pagamento do pedido (sobrescrita na duplicação) |
DS_CONDPAGTOPED | PARMFATUR (campo calculado) | Descrição da condição de pagamento (via JOIN com CONDPAGTO) |
Opções disponíveis
Código de Condição de Pagamento (editável)
| O que faz | Detalhe |
|---|---|
| Define a condição de pagamento que será aplicada ao duplicar um pedido | Editável, preenchimento facultativo |
Busca via <F9> | Abre a consulta de condições de pagamento (CONDPAGTO2) |
| Validação automática | Exige que a condição exista, seja do tipo Saída e esteja Ativa |
Simulação passo a passo
- Acesse MFA001 → Parâmetros → Opção 2.
- Localize o campo "Condição de Pagamento" na seção "Duplicação de Pedido [MPD002]".
- Digite o código da condição de pagamento desejada (ex.:
1) ou pressione<F9>para abrir a lista de condições. - Selecione a condição de pagamento na lista de busca.
- Salve os parâmetros.
Resultado esperado: Ao duplicar um pedido em MPD002, o novo pedido será criado com a condição de pagamento informada neste campo, substituindo a condição do pedido original.
Campo vazio (sem condição padrão)
| O que faz | Detalhe |
|---|---|
| Mantém a condição de pagamento original do pedido ao duplicar | Comportamento padrão quando o campo fica vazio |
Simulação passo a passo
- Acesse MFA001 → Parâmetros → Opção 2.
- Localize o campo "Condição de Pagamento" na seção "Duplicação de Pedido [MPD002]".
- Deixe o campo vazio (sem preencher).
- Salve os parâmetros.
Resultado esperado: Ao duplicar um pedido em MPD002, o novo pedido manterá a mesma condição de pagamento do pedido original.
Exceção / Importante: A condição de pagamento informada deve estar cadastrada em TFC002 (Condições de Pagamento), ser do tipo Saída (não do tipo Entrada) e estar com o status Ativa. Caso contrário, ao salvar os parâmetros o sistema exibirá mensagem de erro impedindo a gravação.
Regra de validação
O evento tabPARMFATURCD_CONDPAGTOPEDValidate (em UdmMFA001.pas) executa três verificações ao preencher o campo:
- Existência: a condição de pagamento deve existir na tabela
CONDPAGTO. Se não existir, exibe: "Condição de pagamento não cadastrada [TFC002]!" - Tipo: a condição deve ser do tipo Saída (campo
retorno[3] <> 'E'). Se for tipo Entrada, exibe: "A Condição de Pagamento deve ser do tipo Saída [TFC002]!" - Status: a condição deve estar Ativa (campo
retorno[4] <> 'N'). Se estiver inativa, exibe: "A Condição de Pagamento não está Ativa [TFC002]!"
Comportamento na duplicação (MPD002)
Na rotina TfrmMPD002.btnDuplicarClick, o campo é usado para decidir a condição de pagamento do pedido duplicado:
Se(ParmFatur.Values['CD_CONDPAGTOPED'], '',
' CD_CONDPAGTO ', // mantém original
Nulo(ParmFatur.Values['CD_CONDPAGTOPED'], 'I')) // usa o padrão
| Situação | Resultado no pedido duplicado |
|---|---|
Campo preenchido (ex.: 1) | CD_CONDPAGTO recebe o valor de CD_CONDPAGTOPED (ex.: condição 1) |
| Campo vazio | CD_CONDPAGTO recebe o valor do pedido original (sem alteração) |
Relação com outros parâmetros
| Parâmetro | Descrição | Configurado em |
|---|---|---|
CD_MOVIMENTACAOPED | Movimentação padrão para duplicação de pedido | MFA001 — Opção 2, mesma seção |
CD_FORMAPAGTOPED | Forma de pagamento padrão para duplicação de pedido | MFA001 — Opção 2, mesma seção |
CD_TIPOPEDIDO | Tipo de pedido padrão para duplicação | MFA001 — Opção 2, mesma seção |
Procedures impactadas
Rotinas Delphi com referência direta ao campo
| Rotina | Arquivo | Descrição |
|---|---|---|
TfrmMFA001.edtCD_CONDPAGTOPEDKeyDown | UMFA001.pas:2091 | Busca condição de pagamento via <F9> |
TfrmMFA001.dbedtCD_CONDPAGTOPEDKeyDown | UMFA001.pas:2231 | Busca condição de pagamento via <F9> (editor inline) |
TdmMFA001.tabPARMFATURCD_CONDPAGTOPEDValidate | UdmMFA001.pas:1746 | Valida existência, tipo e status da condição |
TfrmMPD002.btnDuplicarClick | UMPD002.pas:5709 | Usa o valor ao montar INSERT do pedido duplicado |
TdmMPD002.BuscaParametros_MPD002 | UdmMPD002.pas:5749 | Carrega parâmetros de PARMFATUR para a duplicação |
Referências SQL diretas ao campo (layouts de relatório)
| Layout | Arquivo | Uso |
|---|---|---|
| LOP016 | ULOP016.dfm:93 | SELECT — relatório de ordem de produção |
| LOP027 | ULOP027.dfm:105 | SELECT — relatório de ordem de produção |
| LOP028 | ULOP028.dfm:82 | SELECT — relatório de ordem de produção |
| LOP031 | ULOP031.pas:148 | SELECT — relatório de ordem de produção |
| LOR044 | ULOR044.pas:245 | SELECT — layout de relatório genérico |
| LPD128 | ULPD128.pas:145 | SELECT — layout de pedido |
Candidatas por uso da tabela (sem referência direta ao campo)
Não foi encontrada referência direta a CD_CONDPAGTOPED em Scripts/ (procedures SQL armazenadas). As procedures que utilizam PARMFATUR acessam outros campos da tabela.