Pular para o conteúdo principal

CD_MOVIMENTACAOPED - Movimentação Padrão do Pedido

Tela de configuração: MFA001 — Parâmetros de Faturamento Localização: Parâmetros → Ambos → Opção 2 Tabela: PARMFATUR.CD_MOVIMENTACAOPED Tipo: INTEGER — FK para MOVIMENTACAO (CD_MOVIMENTACAO) Valor padrão: vazio (nenhuma movimentação definida) Label na tela: "Solicita Fator" Componente: TDBEdit com busca <F9>

Descrição​

Define a movimentação padrão que será atribuída automaticamente aos itens do Pedido de Venda. Quando preenchido, ao abrir um novo pedido na tela MPD020, o sistema exibe o campo "Movimentação" no cabeçalho com este valor como sugestão. Ao confirmar o pedido, essa movimentação é replicada para todos os itens do pedido.

Se o campo ficar vazio, cada item do pedido manterá sua própria movimentação individual (comportamento padrão).

Telas impactadas​

TelaArquivoEfeito
MPD020 — Pedido de Vendasource/MPD020/UMPD020.pasExibe campo de movimentação no cabeçalho; ao salvar/atualizar replica a movimentação para todos os itens
MPD002 — Consulta de Pedidossource/MPD002/UMPD002.pasUsa o parâmetro ao duplicar pedido para definir a movimentação dos novos itens
LOR044 — Layout de Relatóriosource/LOR044/ULOR044.pasLê o campo para layouts de impressão
LPD128 — Layout de Pedidosource/LPD128/ULPD128.pasLê o campo para layouts de impressão

Campos envolvidos​

CampoTabelaDescrição
CD_MOVIMENTACAOPEDPARMFATURCódigo da movimentação padrão para pedidos (campo deste parâmetro)
DS_MOVPEDPARMFATUR (calculado)Descrição da movimentação (preenchido automaticamente pelo Validate)
CD_MOVIMENTACAOPEDIDOPEDIDOCampo equivalente no pedido individual (MPD020)
CD_MOVIMENTACAOITEMPEDIDOMovimentação de cada item do pedido
DS_MOVIMENTACAOMOVIMENTACAODescrição da movimentação cadastrada em TCB001

Opções disponíveis​

Vazio (não preenchido)​

O que fazDetalhe
Cada item mantém sua própria movimentaçãoComportamento padrão; sem interferência do parâmetro

Simulação passo a passo​

  1. Acesse MFA001 → Parâmetros → Opção 2.
  2. Deixe o campo "Solicita Fator" vazio.
  3. Salve os parâmetros (<F11> ou botão Salvar).
  4. Abra um pedido de venda na tela MPD020.
  5. Adicione produtos ao pedido — cada item usará a movimentação definida individualmente.

Resultado esperado: O campo "Movimentação" no cabeçalho do pedido fica vazio; cada item conserva sua própria movimentação.


Preenchido com código de movimentação válida​

O que fazDetalhe
Define movimentação padrãoO código informado será sugerido no cabeçalho do pedido
Replicado para todos os itensAo confirmar o pedido, a movimentação é atribuída a todos os itens
Restrição: não aceita tipo "Compra" (TP_OPERACAO = 'E')O Validate bloqueia movimentações de entrada
Restrição: movimentação deve estar ativa (ST_ATIVO = 'S')O Validate bloqueia movimentações inativas

Simulação passo a passo​

  1. Acesse MFA001 → Parâmetros → Opção 2.
  2. Posicione o cursor no campo "Solicita Fator".
  3. Pressione <F9> para abrir a lista de movimentações (cadastradas em TCB001 — Movimentação).
  4. Selecione uma movimentação do tipo Venda (ex.: código 5 — Venda de Mercadoria).
  5. O campo exibe o código e a descrição aparece ao lado (ex.: "Venda de Mercadoria").
  6. Salve os parâmetros.
  7. Abra um pedido de venda na tela MPD020.
  8. O campo "Movimentação" no cabeçalho exibe o código 5.
  9. O sistema pergunta: "A Movimentação informada será atribuída a todos os Produtos do Pedido! Deseja Continuar?" — confirme.
  10. Adicione produtos ao pedido.
  11. Salve ou atualize o pedido.

Resultado esperado: Todos os itens do pedido recebem a movimentação 5 — Venda de Mercadoria, substituindo qualquer movimentação individual.

Exceção / Importante:

  • Se o operador recusar a mensagem de confirmação no MPD020 ("Deseja Continuar?"), a movimentação é limpa do cabeçalho e não é replicada.
  • Ao duplicar um pedido (MPD002), se o parâmetro estiver preenchido, a movimentação padrão substitui a movimentação original dos itens duplicados.
  • O campo não aceita movimentações com TP_OPERACAO = 'E' (Entrada/Compra) — o sistema exibe: "O Tipo de Operação da Movimentação não pode ser de Compra!".
  • O campo não aceita movimentações inativas (ST_ATIVO = 'N') — o sistema exibe: "A Movimentação não está Ativa!".

Validações​

RegraMensagem de erro
Movimentação não cadastrada"A Movimentação não está Cadastrada [TCB001]!"
Tipo de operação igual a "E" (Compra)"O Tipo de Operação da Movimentação não pode ser de Compra!"
Movimentação inativa (ST_ATIVO = 'N')"A Movimentação não está Ativa!"

Procedures impactadas​

Rotinas Delphi com referência direta ao campo​

RotinaArquivoDescrição
dbedtCD_MOVIMENTACAOPEDKeyDownsource/MFA001/UMFA001.pasBusca <F9> da movimentação na tela de parâmetros
tabPARMFATURCD_MOVIMENTACAOPEDValidatesource/MFA001/UdmMFA001.pasValida movimentação (existe, não é compra, está ativa)
TfrmMFA001.FormKeyPresssource/MFA001/UMFA001.pasNavegação por Shift+Enter foca este campo
TfrmMFA001.PaginasChangesource/MFA001/UMFA001.pasAo mudar de aba, foca este campo
edtCD_MOVSTPEDKeyDown / edtCD_MOVPEDKeyDownsource/MFA001/UMFA001.pasOutros handlers que atribuem valor ao campo
dbCD_MOVIMENTACAOPEDIDOKeyDownsource/MPD020/UMPD020.pasBusca <F9> no cabeçalho do pedido
dbCD_MOVIMENTACAOPEDIDOExitsource/MPD020/UMPD020.pasLimpa campo se verificaMovimentacao = False
tabPEDIDOCD_MOVIMENTACAOPEDIDOValidatesource/MPD020/UdmMPD020.pasValidação e confirmação de replicação para itens
TfrmMPD020.btnAtualizarClicksource/MPD020/UMPD020.pasAo atualizar pedido, replica movimentação para itens
TfrmMPD020.btnSalvarClicksource/MPD020/UMPD020.pasAo salvar pedido, replica movimentação para itens
TfrmMPD002.btnDuplicarClicksource/MPD002/UMPD002.pasUsa o parâmetro ao duplicar pedido
ExecLayout (LOR044)source/LOR044/ULOR044.pasSeleciona campo para layout de relatório
ExecLayout (LPD128)source/LPD128/ULPD128.pasSeleciona campo para layout de pedido

Scripts SQL​

Não foi encontrada referência direta ao campo CD_MOVIMENTACAOPED em scripts SQL (Scripts/). As procedures listadas como candidatas por uso da tabela PARMFATUR não referenciam este campo especificamente — o impacto funcional está limitado às rotinas Delphi acima.