Pular para o conteúdo principal

CD_REGIAOCOMERCIAL — Região Comercial

Tela de configuração: MFA006 — Parâmetros de Tabela de Preço Tabela: PARMTABPRECO.CD_REGIAOCOMERCIAL Tipo: INTEGER (opcional) Valor padrão: sem valor (campo fica em branco) Cadastro master: TFA014 — Região Comercial (REGIAOCOMERCIAL)

Visão geral​

O campo CD_REGIAOCOMERCIAL define, dentro de um registro de parâmetro de tabela de preço, a região comercial à qual o preço se aplica. Quando preenchido, o sistema filtra/associa preços apenas para endereços de clientes pertencentes àquela região comercial. Quando deixado em branco, o parâmetro não é restringido por região.

A região comercial é um agrupamento geográfico de municípios (tabela MUNICIPIOREGIAOCOMERCIAL) vinculado a um vendedor e área comercial, usado para segmentar precificação e logística.

Telas impactadas​

TelaDescrição
MFA006Parâmetros de Tabela de Preço — tela principal deste parâmetro
MFA007Parâmetros de Vendedor — campo CD_REGIAOCOMERCIAL em PARMVENDEDOR
CPD012Consulta de atendimentos — filtro por região comercial
MCB015Importação de dados — filtro e vinculação por região comercial
MEQ042Parâmetros de equipamentos — validação de região comercial
MNF002Nota Fiscal — busca região comercial do endereço do cliente

Campos envolvidos​

CampoTabelaTipoDescrição
CD_REGIAOCOMERCIALPARMTABPRECOINTEGERCódigo da região comercial (FK para REGIAOCOMERCIAL)
DS_REGIAOCOMERCIALPARMTABPRECO—Campo virtual exibido na tela (descrição da região)
CD_REGIAOCOMERCIALREGIAOCOMERCIALINTEGERChave primária da tabela de regiões comerciais
DS_REGIAOCOMERCIALREGIAOCOMERCIALVARCHAR(60)Nome/descrição da região comercial

Opções disponíveis​

O campo CD_REGIAOCOMERCIAL não possui lista fixa de opções (não é combo/radio). Trata-se de um campo editável do tipo lookup, onde o usuário digita um código ou pesquisa via <F9>.

Comportamento: Preenchido com código válido​

O que fazDetalhe
Restringe o parâmetro de preçoO registro de PARMTABPRECO passa a se aplicar apenas a clientes/endereços associados à região comercial informada
EditávelSim, campo de edição livre
ExigeCódigo válido existente na tabela REGIAOCOMERCIAL
RestriçãoSe o código não existir, o sistema exibe erro: "A Região Comercial não está Cadastrada [TFA014]!"

Simulação passo a passo​

  1. Acesse MFA006 — Parâmetros de Tabela de Preço.
  2. Crie ou edite um registro de parâmetro.
  3. No campo Região Comercial, digite um código válido (ex: 10).
  4. Saia do campo (pressione <Tab> ou clique em outro campo).
  5. O sistema consulta a tabela REGIAOCOMERCIAL e exibe a descrição ao lado (ex: "SUL").
  6. Preencha os demais campos obrigatórios (tabela de preço, etc.) e salve.

Resultado esperado: O registro é salvo. Ao gerar pedidos/notas para clientes cujo endereço pertence à região comercial 10, o sistema utiliza este parâmetro de preço.

Comportamento: Deixado em branco (nulo)​

O que fazDetalhe
Não restringe por regiãoO parâmetro se aplica independentemente da região comercial do cliente
EditávelSim
ExigeNenhum (campo opcional)
RestriçãoPelo menos um campo do grupo de filtros deve estar preenchido (ver seção Validação)

Simulação passo a passo​

  1. Acesse MFA006 — Parâmetros de Tabela de Preço.
  2. Crie ou edite um registro de parâmetro.
  3. Deixe o campo Região Comercial em branco.
  4. Preencha pelo menos outro campo do grupo (ex: Empresa, Estado, Vendedor, Pessoa, Produto, Grupo, etc.).
  5. Preencha a Tabela de Preço e salve.

Resultado esperado: O registro é salvo sem restrição de região comercial. Ele se aplica a qualquer cliente/endereço, respeitando os demais filtros preenchidos.

Comportamento: Pesquisa via <F9>​

O que fazDetalhe
Abre janela de pesquisaLista todas as regiões comerciais cadastradas
Colunas exibidasDescrição (DS_REGIAOCOMERCIAL) e Código (CD_REGIAOCOMERCIAL)
EditávelO usuário seleciona um registro da lista

Simulação passo a passo​

  1. Acesse MFA006 — Parâmetros de Tabela de Preço.
  2. Posicione o cursor no campo Região Comercial.
  3. Pressione <F9>.
  4. Na janela de pesquisa, localize a região desejada (ex: digite "NORTE" no filtro).
  5. Selecione o registro desejado e confirme.
  6. O código é preenchido automaticamente no campo.

Resultado esperado: O campo é preenchido com o código da região selecionada e a descrição é exibida ao lado.

Regras de validação​

Validade do código (Field Validate)​

Ao sair do campo com valor preenchido, o sistema executa:

SELECT DS_REGIAOCOMERCIAL
FROM REGIAOCOMERCIAL
WHERE CD_REGIAOCOMERCIAL = :codigo_informado
  • Se encontrado: preenche o campo virtual DS_REGIAOCOMERCIAL com a descrição.
  • Se não encontrado: dispara exceção "A Região Comercial não está Cadastrada [TFA014]!".

Validação BeforePost — Pelo menos um filtro obrigatório​

Ao salvar o registro (BeforePost), o sistema verifica se todos os campos de filtro estão vazios simultaneamente. Se estiverem, exibe:

"É Obrigatório informar a Condição de Pagamento, Empresa, Estado, Vendedor, Região Comercial, Tipo de Pessoa, Pessoa, Produto, Grupo, Sub Grupo ou Quantidade de Produtos!"

O campo CD_REGIAOCOMERCIAL faz parte deste grupo. Portanto, se for o único campo preenchido (além da tabela de preço), o registro é válido.

Consulta de duplicidade (ConsultaRegistro)​

Ao sair do campo, se o dataset estiver em modo de inserção/edição, o sistema monta uma consulta em PARMTABPRECO comparando todos os campos de filtro preenchidos (incluindo CD_REGIAOCOMERCIAL) para verificar se já existe um registro idêntico. Se existir, carrega o registro existente para edição.

Procedures impactadas​

Rotinas Delphi com referência direta ao campo​

RotinaArquivoLinhaComportamento
TfrmMFA006.edtCD_REGIAOCOMERCIALKeyDownUMFA006.pas439Trata <F9> para abrir pesquisa de regiões comerciais
TfrmMFA006.edtCD_REGIAOCOMERCIALExitUMFA006.pas709Dispara ConsultaRegistro ao sair do campo (se preenchido)
TdmMFA006.tabPARMTABPRECOCD_REGIAOCOMERCIALValidateUdmMFA006.pas200Valida o código contra REGIAOCOMERCIAL e preenche descrição
TdmMFA006.tabPARMTABPRECOBeforePostUdmMFA006.pas106Verifica se pelo menos um filtro está preenchido
ConsultaRegistroUMFA006.pas236Monta WHERE incluindo CD_REGIAOCOMERCIAL para checar duplicidade

Referências SQL diretas ao campo em Scripts/​

Procedure/ViewArquivoLinhaObservação
RETORNA_TABPRECORETORNA_TABPRECO.sql8Parâmetro I_CD_REGIAOCOMERCIAL — função que retorna preço considerando região
GERA_COMISSAOTABPRECOGERA_COMISSAOTABPRECO.sql90Filtra registros com CD_REGIAOCOMERCIAL IS NULL
INSERE_ITEMPEDIDO_SERVCANALETAINSERE_ITEMPEDIDO_SERVCANALETA.sql80Usa COALESCE(P.CD_REGIAOCOMERCIAL, -1) como critério de prioridade
VERIFICA_BLOQUEIOVERIFICA_BLOQUEIO.sql1121Verifica CD_REGIAOCOMERCIAL IS NULL
EXPORTACAO_ALLABOREXPORTACAO_ALLABOR.sql54Declara variável V_CD_REGIAOCOMERCIAL
EXPORTACAO_SOVISEXPORTACAO_SOVIS.sql55Declara variável V_CD_REGIAOCOMERCIAL
PROCESSA_PESSOASOVISPROCESSA_PESSOASOVIS.sql303Seleciona CD_REGIAOCOMERCIAL
JV_FATANULAPORREGIAOCOMERCIALJV_FATANULAPORREGIAOCOMERCIAL.sql41JOIN em REGIAOCOMERCIAL por região comercial
JV_FATURAMENTOMENSALPORREGIAOJV_FATURAMENTOMENSALPORREGIAO.sql35JOIN em REGIAOCOMERCIAL para relatório
JV_REGCOMERCIAL_SUBGRUPOJV_REGCOMERCIAL_SUBGRUPO.sql77Usa CD_REGIAOCOMERCIAL como código de agrupamento
JV_REGCOMERCIAL_VENDEDORESJV_REGCOMERCIAL_VENDEDORES.sql45Usa CD_REGIAOCOMERCIAL como código de agrupamento
VIEW_RNF020VIEW_RNF020.sql143Concatena descrição e código da região comercial

Candidatas por uso da tabela PARMTABPRECO​

Estas procedures/views referenciam a tabela PARMTABPRECO mas não citam o campo CD_REGIAOCOMERCIAL diretamente. Podem ser impactadas indiretamente quando a região comercial influencia o filtro de preço.

Procedure/ViewArquivoObservação
ATUALIZA_PESSOAATUALIZA_PESSOA.sqlUPDATE em PARMTABPRECO
ATUALIZA_PRECOVENDAATUALIZA_PRECOVENDA.sqlSELECT em PARMTABPRECO
CALCULA_MAQUINACALCULA_MAQUINA.sqlSELECT em PARMTABPRECO
RETORNA_PRECOITEMRETORNA_PRECOITEM.sqlSELECT em PARMTABPRECO
TRGAD_PARMTABPRECOTRGAD_PARMTABPRECO.sqlTrigger de exclusão em PARMTABPRECO

Exceções e observações importantes​

Exceção / Importante: O campo é opcional individualmente, mas pelo menos um dos campos do grupo de filtros (Condição de Pagamento, Empresa, Estado, Vendedor, Região Comercial, Tipo de Pessoa, Pessoa, Produto, Grupo, Subgrupo, Quantidade, Seção, Perfil) deve estar preenchido para que o registro possa ser salvo.

Exceção / Importante: A região comercial cadastrada deve existir na tabela REGIAOCOMERCIAL (gerenciada pela tela TFA014). O sistema valida o código digitado e rejeita valores inexistentes.

Exceção / Importante: A região comercial do cliente/endereço é definida no cadastro de endereço da pessoa (ENDERECOPESSOA.CD_REGIAOCOMERCIAL), e não neste parâmetro. Este campo aqui define para qual região o preço se aplica, não onde o cliente está localizado.