Pular para o conteúdo principal

CD_PERFILENTREGADOR — Perfil do Entregador

Tela de configuração: MFA001 — Parâmetros de Faturamento Localização: Parâmetros → Ambos → Opção 1 Tabela: PARMFATUR.CD_PERFILENTREGADOR (INTEGER, anulável) Valor padrão: nenhum (campo vazio / NULL) Componente: edtCD_PERFILENTREGADOR (TDBEdit — edição livre do código do perfil)

Resumo​

Define o código do perfil (PERFIL.CD_PERFIL) que uma Pessoa deve possuir em PESSOAPERFIL para ser selecionada como entregador em Ordens de Carregamento (MPD084) e Viagens de Entrega (MPD097). Quando preenchido, restringe o campo Entregador apenas às pessoas cadastradas com esse perfil.

Telas impactadas​

Tela / RotinaContextoEfeito
MPD084 — Liberação / Ordem de CarregamentoValidação do campo CD_ENTREGADOROFAo informar um entregador, verifica se a pessoa possui o perfil configurado. Se vazio, qualquer pessoa com ao menos um perfil é aceita (COALESCE).
MPD097 — Viagem de EntregaValidação do campo CD_ENTREGADORAo informar um entregador, verifica se a pessoa possui o perfil configurado. Se o parâmetro estiver vazio, nenhuma pessoa será aceita.

Campos envolvidos​

CampoTabelaDescrição
CD_PERFILENTREGADORPARMFATURCódigo do perfil exigido para entregadores
CD_PERFILPERFILCadastro de perfis (chave primária)
CD_PERFIL + CD_PESSOAPESSOAPERFILVínculo entre pessoa e perfil
CD_ENTREGADOROF(tabela temporária MPD084)Campo de entregador na liberação de carregamento
CD_ENTREGADOR(tabela temporária MPD097)Campo de entregador na viagem de entrega

Opções disponíveis​

Campo vazio (NULL)​

O que fazDetalhe
Libera / bloqueia entregadoresComportamento difere por tela — veja exceção abaixo

Simulação passo a passo (MPD084 — Liberação de Carregamento)​

  1. Acesse MFA001 e deixe o campo Perfil do Entregador vazio.
  2. Salve os parâmetros (<key>F9</key> ou botão Salvar).
  3. Abra uma Liberação / Ordem de Carregamento (MPD084).
  4. Informe qualquer pessoa ativa no campo Entregador.
  5. Confirme a pessoa.

Exceção / Importante: No MPD084 o código usa COALESCE(PP.CD_PERFILENTREGADOR, PF.CD_PERFIL). Com o parâmetro vazio, a condição resulta em PF.CD_PERFIL = PF.CD_PERFIL (sempre verdadeiro), liberando qualquer pessoa que possua ao menos um registro em PESSOAPERFIL.

Resultado esperado: Qualquer pessoa com perfil cadastrado pode ser selecionada como entregador.

Simulação passo a passo (MPD097 — Viagem de Entrega)​

  1. Acesse MFA001 e deixe o campo Perfil do Entregador vazio.
  2. Salve os parâmetros.
  3. Abra uma Viagem de Entrega (MPD097).
  4. Informe uma pessoa no campo Entregador.
  5. O sistema exibe a mensagem: "A Pessoa informada deve possuir o Perfil de Entregador! Verifique [TFA001/MFA001]".

Exceção / Importante: No MPD097 o INNER JOIN usa diretamente PP.CD_PERFILENTREGADOR. Se o valor for NULL, o join não retorna registros e todas as pessoas são rejeitadas. Para usar entregadores no MPD097, este parâmetro deve estar preenchido.

Resultado esperado: Nenhuma pessoa é aceita como entregador enquanto o parâmetro estiver vazio.


Código de Perfil preenchido (ex.: 5)​

O que fazDetalhe
Restringe entregadoresApenas pessoas vinculadas ao perfil informado em PESSOAPERFIL podem ser selecionadas

Simulação passo a passo​

  1. Acesse MFA001 → Parâmetros → Opção 1.
  2. No campo Perfil do Entregador, digite o código do perfil, por exemplo 5.
  3. Salve os parâmetros.
  4. No cadastro de Perfis (tela de configuração do PERFIL), certifique-se de que o perfil 5 existe (ex.: "Entregador").
  5. Na tela de Pessoas, vincule o perfil 5 ao entregador desejado via PESSOAPERFIL.
  6. Abra uma Liberação de Carregamento (MPD084) ou Viagem de Entrega (MPD097).
  7. Informe o código de uma pessoa com o perfil 5 no campo Entregador → a pessoa é aceita normalmente.
  8. Informe o código de uma pessoa sem o perfil 5 no campo Entregador → o sistema bloqueia com mensagem de erro.

Resultado esperado: Apenas pessoas que possuem o perfil 5 em PESSOAPERFIL podem ser selecionadas como entregadores em ambas as telas.

Regra geral​

CondiçãoMPD084 (Liberação)MPD097 (Viagem de Entrega)
Parâmetro vazioQualquer pessoa com perfil é aceitaNenhuma pessoa é aceita
Parâmetro preenchidoApenas pessoas com o perfil especificadoApenas pessoas com o perfil especificado
Pessoa sem o perfilBloqueia com erroBloqueia com erro

Recomendação: Para consistência entre as telas, sempre preencha este parâmetro com o código do perfil destinado a entregadores. Mantenha o cadastro de perfis e o vínculo PESSOAPERFIL atualizados.

Procedures impactadas​

Rotinas Delphi com referência direta ao campo​

RotinaArquivoDescrição
TdmMPD084.tabLIBERACAOCD_ENTREGADOROFValidatesource/MPD084/UdmMPD084.pasValida entregador na Liberação de Carregamento usando COALESCE
TdmMPD097.tabVIAGEMENTREGACD_ENTREGADORValidatesource/MPD097/UdmMPD097.pasValida entregador na Viagem de Entrega via INNER JOIN

Scripts SQL​

Não foi encontrada referência direta ao campo CD_PERFILENTREGADOR em Scripts/. As procedures listadas nas evidências (candidatas por uso da tabela PARMFATUR) não citam o campo literalmente e, portanto, não possuem impacto funcional direto neste parâmetro.