CD_MOVORDEM - Movimentação de Acerto de Ordem de Carregamento
Tela de configuração: MFA001 — Parâmetros de Faturamento Localização: Aba Operação 1 → campo "Movimentos e Operações Padrão" Tabela:
PARMFATUR.CD_MOVORDEM(INTEGER) FK:MOVIMENTACAO (CD_MOVIMENTACAO)— constraintRPARMFATUR_MOVACERTOORDEMValor padrão: nenhum (campo opcional)
Descrição
Define o código de movimentação utilizado como padrão no acerto/confirmação de Ordem de Carregamento. Quando preenchido, o sistema usa essa movimentação para gerar o lançamento financeiro/estoque ao confirmar a ordem.
Campos envolvidos
| Campo | Tabela | Tipo | Descrição |
|---|---|---|---|
CD_MOVORDEM | PARMFATUR | INTEGER | Código da movimentação de acerto de ordem de carregamento |
DS_MOVORDEM | PARMFATUR | VARCHAR | Descrição da movimentação (preenchida automaticamente via JOIN) |
CD_MOVIMENTACAO | MOVIMENTACAO | INTEGER | Código da movimentação (tabela de referência) |
DS_MOVIMENTACAO | MOVIMENTACAO | VARCHAR | Descrição da movimentação |
TP_OPERACAO | MOVIMENTACAO | CHAR(1) | Tipo de operação — deve ser E (Entrada) |
ST_ATIVO | MOVIMENTACAO | CHAR(1) | Situação — deve ser S (Ativo) |
Telas impactadas
| Tela | Rotina | Uso |
|---|---|---|
| MPD013 — Ordem de Carregamento | Busca_Parametros | Lê CD_MOVORDEM de PARMFATUR e armazena em variável interna para uso na confirmação da ordem |
| MFA001 — Parâmetros de Faturamento | edtCD_MOVORDEMKeyDown | Permite seleção da movimentação via pesquisa (<F9>) |
| MFA001 — Parâmetros de Faturamento | tabPARMFATURCD_MOVORDEMValidate | Valida a movimentação informada |
| CPD009 — Reorganização/Empresa | SQL genérico | Lê e grava CD_MOVORDEM como parte dos campos de PARMFATUR |
Regras de validação
Ao informar um código de movimentação no campo, o sistema executa as seguintes verificações:
| Regra | Condição | Efeito |
|---|---|---|
| Movimentação deve existir | CD_MOVIMENTACAO não encontrado | Erro: "A Movimentação não está Cadastrada [TCB001]!" |
| Operação não pode ser de Saída | TP_OPERACAO = 'S' | Erro: "A Operação da Movimentação não pode ser de Saída!" |
| Movimentação deve estar ativa | ST_ATIVO = 'N' | Erro: "A Movimentação não está Ativa!" |
| Campo vazio é permitido | CD_MOVORDEM em branco | Limpa a descrição automaticamente |
Opções disponíveis
O campo aceita qualquer código de movimentação válido (inteiro) cadastrado na tabela MOVIMENTACAO, desde que atenda às regras de validação acima. Não é um campo com opções fixas (como S/N), mas sim um campo de busca livre com restrições.
Pesquisa (<F9>)
| O que faz | Detalhe |
|---|---|
| Abre tela de pesquisa de movimentações | Filtra apenas movimentações com ST_ATIVO = 'S' e TP_OPERACAO = 'E' (Entrada) |
| Permite digitar código manualmente | Sim — ao sair do campo, dispara validação |
Simulação passo a passo
- Acesse a tela MFA001 — Parâmetros de Faturamento.
- Posicione o cursor no campo Movimentos e Operações Padrão (aba Operação 1).
- Pressione
<F9>para abrir a janela de pesquisa de movimentações. - Selecione a movimentação desejada na lista (apenas movimentações ativas e de entrada são exibidas).
- O código é preenchido automaticamente e a descrição aparece ao lado.
Resultado esperado: O campo é preenchido com o código da movimentação selecionada e a descrição é exibida. Na confirmação de Ordens de Carregamento (tela MPD013), essa movimentação será usada como padrão para o acerto.
Exceção / Importante: Se o campo for deixado em branco, o sistema não define uma movimentação padrão para o acerto de ordem de carregamento. O comportamento ao confirmar uma ordem sem movimentação configurada depende da tela MPD013 — verifique a rotina de confirmação daquela tela.
Exceção / Importante: A digitação manual de um código inválido (inexistente, inativo ou de saída) será rejeitada imediatamente ao sair do campo, exibindo a mensagem de erro correspondente.
Procedures impactadas
Rotinas Delphi com referência direta ao campo
| Rotina | Arquivo | Descrição |
|---|---|---|
TfrmMFA001.edtCD_MOVORDEMKeyDown | source/MFA001/UMFA001.pas:1494 | Abre pesquisa de movimentação ao pressionar <F9> |
TdmMFA001.tabPARMFATURCD_MOVORDEMValidate | source/MFA001/UdmMFA001.pas:1182 | Valida existência, tipo de operação e situação ativa |
Busca_Parametros | source/MPD013/UdmMPD013.pas:341 | Lê CD_MOVORDEM para uso na tela de Ordem de Carregamento |
Referências SQL diretas ao campo
| Contexto | Arquivo | Linha |
|---|---|---|
| SELECT com JOIN para descrição | source/MFA001/UdmMFA001.dfm | 67, 2947 |
| INSERT em PARMFATUR | source/MFA001/UdmMFA001.dfm | 2513 |
| UPDATE em PARMFATUR | source/MFA001/UdmMFA001.dfm | 2676 |
| SELECT com JOIN (CPD009) | source/CPD009/UdmCPD009.dfm | 521 |
| INSERT (CPD009) | source/CPD009/UdmCPD009.dfm | 348 |
| UPDATE (CPD009) | source/CPD009/UdmCPD009.dfm | 422 |
| SELECT (RCA006) | source/RCA006/UdmRCA006.dfm | 3034 |
Candidatas por uso da tabela (sem referência direta ao campo)
As procedures abaixo utilizam a tabela PARMFATUR, mas não referenciam CD_MOVORDEM diretamente em seu código. 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.
Nenhuma referência direta a CD_MOVORDEM foi encontrada nos scripts SQL da pasta Scripts/.
Tabela comparativa resumida
| Situação | Comportamento |
|---|---|
| Campo preenchido com movimentação válida (Entrada + Ativa) | Movimentação usada como padrão no acerto de ordens de carregamento (MPD013) |
| Campo vazio | Nenhuma movimentação padrão definida para acerto de ordem |
Movimentação de Saída (TP_OPERACAO = 'S') | Rejeitada na validação |
Movimentação inativa (ST_ATIVO = 'N') | Rejeitada na validação |
| Código inexistente | Rejeitado na validação |