CD_REGIAOCOMERCIAL — Região Comercial (Fretes)
Tela de configuração: TFA075 — Parâmetros de Preço de Frete
Localização: Fretes →edtCD_REGIAOCOMERCIAL
Tabela:PARMPRECOFRETE
Campo:CD_REGIAOCOMERCIAL(DOM_INTEGER NOT NULL)
Valor padrão:result.getParam(0)(código da Região Comercial selecionada no lookup)
Descrição
O campo Região Comercial vincula o registro de parâmetro de frete a uma Região Comercial específica do cadastro (REGIAOCOMERCIAL).
Cada combinação Transportadora + Região Comercial define uma regra de frete própria (valores de CTE por peso/volume, mínimos, pedágio, GRIS, TDE, TRT, etc.).
Telas impactadas
- TFA075 — Parâmetros de Preço de Frete (tela de origem).
- MCB015 — Importação de Região Comercial / Pessoas (referência em filtros e importação).
- MFA006 — Parâmetros de Tabela de Preço (
PARMTABPRECO.CD_REGIAOCOMERCIAL). - MFA007 — Parâmetros de Vendedor (
PARMVENDEDOR.CD_REGIAOCOMERCIAL). - CPD012 — Atendimentos (filtro por região comercial).
- MEQ004 / MEQ042 — Consultas e manutenção de Região Comercial.
- Relatórios diversos — Pedidos (LPD*), Orçamentos (LOR*), Romaneio (LRR*, LRT*), Notas Fiscais (RNF*), entre outros, que exibem ou filtram por
CD_REGIAOCOMERCIAL.
Campos envolvidos
| Campo | Tabela | Descrição |
|---|---|---|
CD_REGIAOCOMERCIAL | PARMPRECOFRETE | Chave estrangeira obrigatória para REGIAOCOMERCIAL |
CD_TRANSPORTADOR | PARMPRECOFRETE | Transportadora associada (obrigatório, mesma tela) |
CD_REGIAOCOMERCIAL | REGIAOCOMERCIAL | Cadastro mestre de regiões comerciais |
CD_REGIAOCOMERCIAL | ENDERECOPESSOA | Região comercial do endereço do cliente |
CD_REGIAOCOMERCIAL | PARMTABPRECO | Região comercial em parâmetros de tabela de preço |
CD_REGIAOCOMERCIAL | PARMVENDEDOR | Região comercial em parâmetros de vendedor |
Opções disponíveis
Este campo é um edit de lookup (busca). Não possui opções fixas predefinidas; o valor deve ser um código de Região Comercial válido existente no cadastro.
| O que faz | Detalhe |
|---|---|
| Editável / Bloqueado | Editável em inclusão e alteração; valida existência no cadastro REGIAOCOMERCIAL ao sair. |
| Exige preenchimento | Sim — NOT NULL na tabela PARMPRECOFRETE. |
| Restrição | Deve corresponder a um código existente em REGIAOCOMERCIAL. |
Simulação passo a passo
- Acesse TFA075 — Parâmetros de Preço de Frete.
- Clique em Incluir (
<F2>) ou selecione um registro existente para alterar. - No campo Fretes / Região Comercial (
edtCD_REGIAOCOMERCIAL), pressione<F9>ou digite o código da região desejada (ex.:5— Região Sudeste). - Caso não saiba o código, pressione
<F9>para abrir a tela de pesquisa de Região Comercial. - Selecione a região comercial desejada na grade e confirme (
<Enter>ou duplo-clique). - O sistema preenche automaticamente o código no campo.
- Preencha os demais campos obrigatórios (ex.:
CD_TRANSPORTADOR) e os valores de frete. - Pressione
<F10>para Salvar.
Resultado esperado:
O parâmetro de frete fica vinculado à região comercial informada. Ao gerar um pedido, orçamento ou nota fiscal para um cliente cujo endereço possua essa mesma CD_REGIAOCOMERCIAL, o sistema poderá localizar e aplicar as regras de frete configuradas neste registro (considerando também a transportadora e demais parâmetros).
Exceção / Importante:
- O campo
CD_TRANSPORTADOR(configurado em TFA075 — Parâmetros de Preço de Frete, mesmo campo) também é obrigatório na mesma tabela. Sem ambos preenchidos, o registro não pode ser salvo.- A
CD_REGIAOCOMERCIALdo cliente é obtida do endereço (ENDERECOPESSOA). Se o endereço não tiver região definida, os relatórios e cálculos de frete poderão classificar como "Sem Região Comercial".- Vários relatórios de pedido (LPD005, LPD006, LPD025, etc.) e nota fiscal (RNF017, RNF020) realizam
LEFT JOINcomREGIAOCOMERCIALpara exibir a descrição da região, mas não impedem a operação caso esteja em branco no endereço.
Regra Geral de Uso
- A combinação Transportadora + Região Comercial deve ser única dentro da tabela
PARMPRECOFRETE(PKNR_SEQUENCIA). - Alterar a
CD_REGIAOCOMERCIALde um parâmetro existente afeta todos os cálculos futuros de frete que utilizem esse registro. - Não é permitido excluir uma Região Comercial do cadastro mestre (
MCB015) se existirem registros vinculados emPARMPRECOFRETE(restrição de integridade referencialRPARMPRECOFRETE_REGIAOCOMERCIAL).
Tabela Comparativa Resumida
| Aspecto | Comportamento |
|---|---|
| Tipo de campo | Edit de lookup (FK) |
| Obrigatório | Sim (NOT NULL) |
| Valor padrão | Código retornado pela pesquisa (getParam(0)) |
| Tabela referenciada | REGIAOCOMERCIAL |
| Impacto funcional | Define para qual região o conjunto de regras de frete se aplica |
Procedures impactadas
Rotinas Delphi com referência direta ao campo
| Rotina | Arquivo | Linha | Evidência |
|---|---|---|---|
TfrmCPD012.btnFiltraAtendimentosClick | source/CPD012/UCPD012.pas | 391 | Filtro por CD_REGIAOCOMERCIAL |
TfrmCPD012.gridREGIAOKeyDown | source/CPD012/UCPD012.pas | 528 | Atribuição de result.getParam(0) |
tabREGIAOCD_REGIAOCOMERCIALValidate | source/CPD012/UdmCPD012.pas | 127 | Validação do campo |
TdmCPD012.tabREGIAOCD_REGIAOCOMERCIALValidate | source/CPD012/UdmCPD012.pas | 386 | Validação do campo |
Add | source/jCommon/jValidate.pas | 813 | Declaração de variável Cd_RegiaoComercial |
ValidaEnderecoPessoa | source/jCommon/jValidate.pas | 1672 | Uso de Cd_RegiaoComercial |
ValidaRegiaoComercial | source/jCommon/jValidate.pas | 5037 | Uso de Cd_RegiaoComercial |
CarregarListaPeca | source/jPesquisa/UListaPeca.pas | 103 | Parâmetro CD_REGIAOCOMERCIAL na consulta |
tabREGIAOCOMERCIALCD_REGIAOCOMERCIALValidate | source/MCB015/UdmMCB015.pas | 75 | Validação do campo |
TdmMCB015.tabREGIAOCOMERCIALCD_REGIAOCOMERCIALValidate | source/MCB015/UdmMCB015.pas | 189 | Validação do campo |
TfrmMCB015.btnImportarClick | source/MCB015/UMCB015.pas | 415 | LEFT JOIN REGIAOCOMERCIAL |
TfrmMCB015.gridRegiaoComercialKeyDown | source/MCB015/UMCB015.pas | 487 | Atribuição de result.getParam(0) |
retornaWhere | source/MCB015/UMCB015.pas | 615 | Filtro por CD_REGIAOCOMERCIAL |
TfrmMEQ004.btnSalvarClick | source/MEQ004/UMEQ004.pas | 418 | Referência a EP.CD_REGIAOCOMERCIAL |
tabREGIAOCOMERCIALCD_REGIAOCOMERCIALValidate | source/MEQ042/UdmMEQ042.pas | 99 | Validação do campo |
TdmMEQ042.tabREGIAOCOMERCIALCD_REGIAOCOMERCIALValidate | source/MEQ042/UdmMEQ042.pas | 171 | Validação do campo |
tabPARMTABPRECOCD_REGIAOCOMERCIALValidate | source/MFA006/UdmMFA006.pas | 60 | Validação do campo em PARMTABPRECO |
TdmMFA006.tabPARMTABPRECOBeforePost | source/MFA006/UdmMFA006.pas | 106 | Verificação de preenchimento |
TdmMFA006.tabPARMTABPRECOCD_REGIAOCOMERCIALValidate | source/MFA006/UdmMFA006.pas | 200 | Validação do campo |
edtCD_REGIAOCOMERCIALKeyDown / Exit | source/MFA006/UMFA006.pas | 100 / 130 | Eventos do campo em PARMTABPRECO |
ConsultaRegistro | source/MFA006/UMFA006.pas | 236 | Condição CD_REGIAOCOMERCIAL na consulta |
tabPARMVENDEDORCD_REGIAOCOMERCIALValidate | source/MFA007/UdmMFA007.pas | 39 | Validação do campo em PARMVENDEDOR |
TdmMFA007.tabPARMVENDEDORBeforePost | source/MFA007/UdmMFA007.pas | 72 | Verificação de preenchimento |
TdmMFA007.tabPARMVENDEDORCD_REGIAOCOMERCIALValidate | source/MFA007/UdmMFA007.pas | 125 | Validação do campo |
edtCD_REGIAOCOMERCIALKeyDown | source/MFA007/UMFA007.pas | 68 | Evento do campo em PARMVENDEDOR |
ConsultaRegistro | source/MFA007/UMFA007.pas | 149 | Condição CD_REGIAOCOMERCIAL na consulta |
Scripts SQL com referência direta ao campo
| Procedure / View | Arquivo |
|---|---|
EXPORTACAO_ALLABOR | Scripts/EXPORTACAO_ALLABOR.sql |
EXPORTACAO_SOVIS | Scripts/EXPORTACAO_SOVIS.sql |
GERA_COMISSAOTABPRECO | Scripts/GERA_COMISSAOTABPRECO.sql |
INSERE_ITEMPEDIDO_SERVCANALETA | Scripts/INSERE_ITEMPEDIDO_SERVCANALETA.sql |
JV_FATANULAPORREGIAOCOMERCIAL | Scripts/JV_FATANULAPORREGIAOCOMERCIAL.sql |
JV_FATURAMENTOMENSALPORREGIAO | Scripts/JV_FATURAMENTOMENSALPORREGIAO.sql |
JV_REGCOMERCIAL_SUBGRUPO | Scripts/JV_REGCOMERCIAL_SUBGRUPO.sql |
JV_REGCOMERCIAL_VENDEDORES | Scripts/JV_REGCOMERCIAL_VENDEDORES.sql |
JV_REGCOMERCIAL_VENDEDORES_ERP | Scripts/JV_REGCOMERCIAL_VENDEDORES_ERP.sql |
PROCESSA_PESSOASOVIS | Scripts/PROCESSA_PESSOASOVIS.sql |
RETORNA_DADOSCADASTRAIS | Scripts/RETORNA_DADOSCADASTRAIS.sql |
RETORNA_TABPRECO | Scripts/RETORNA_TABPRECO.sql |
RETORNA_TOTALIZADORCOLETA | Scripts/RETORNA_TOTALIZADORCOLETA.sql |
RETORNA_TROCASERVICORECAP | Scripts/RETORNA_TROCASERVICORECAP.SQL |
VERIFICA_BLOQUEIO | Scripts/VERIFICA_BLOQUEIO.sql |
VIEW_CUSTOVENDARNF006 | Scripts/VIEW_CUSTOVENDARNF006.sql |
VIEW_RNF017 | Scripts/VIEW_RNF017.sql |
VIEW_RNF017_2 | Scripts/VIEW_RNF017_2.sql |
VIEW_RNF017BAIXA | Scripts/VIEW_RNF017BAIXA.sql |
VIEW_RNF020 | Scripts/VIEW_RNF020.sql |
VIEW_RNF020_V | Scripts/VIEW_RNF020_V.sql |
VIEW_RNF029_V | Scripts/VIEW_RNF029_V.sql |
VIEW_RNF040 | Scripts/VIEW_RNF040.sql |
VIEW_RPD033_D | Scripts/VIEW_RPD033_D.sql |
Candidatas por uso da tabela PARMPRECOFRETE
As procedures/views abaixo utilizam a tabela PARMPRECOFRETE (via parâmetro I_NR_SEQUENCIAPARMPRECOFRETE), mas não citam o campo CD_REGIAOCOMERCIAL literalmente no corpo do script. Elas são impactadas indiretamente, pois operam sobre o registro de parâmetro de frete que inclui a região comercial:
| Procedure / Function | Arquivo |
|---|---|
AJUSTE_FORMACAOPRECOVENDA | Scripts/AJUSTE_FORMACAOPRECOVENDA.sql |
CALCULA_CARGAFECHADA | Scripts/CALCULA_CARGAFECHADA.sql |
CALCULA_FORMACAOPRECOVENDA | Scripts/CALCULA_FORMACAOPRECOVENDA.sql |
CALCULA_FRETE | Scripts/CALCULA_FRETE.sql |
CALCULA_FRETEGERAL | Scripts/CALCULA_FRETEGERAL.sql |
CALCULA_FRETEMINIMOTABELACAIXA | Scripts/CALCULA_FRETEMINIMOTABELACAIXA.sql |
CALCULA_FRETEMINIMOTABELAMAIOR | Scripts/CALCULA_FRETEMINIMOTABELAMAIOR.sql |
CALCULA_FRETEMINIMOTABELAPESO | Scripts/CALCULA_FRETEMINIMOTABELAPESO.sql |
CALCULA_FRETENORMALCAIXA | Scripts/CALCULA_FRETENORMALCAIXA.sql |
CALCULA_FRETENORMALPESO | Scripts/CALCULA_FRETENORMALPESO.sql |
CALCULA_FRETEPESOEXCEDENTETAB | Scripts/CALCULA_FRETEPESOEXCEDENTETAB.sql |
CALCULA_GRIS | Scripts/CALCULA_GRIS.sql |
CALCULA_PEDAGIO | Scripts/CALCULA_PEDAGIO.sql |
CALCULA_PESOADICIONAL | Scripts/CALCULA_PESOADICIONAL.sql |
CALCULA_TAXAADVALOR | Scripts/CALCULA_TAXAADVALOR.sql |
CALCULA_TDE | Scripts/CALCULA_TDE.sql |
CALCULA_TRT | Scripts/CALCULA_TRT.sql |
CALCULA_TRTMAIORVALORBASE | Scripts/CALCULA_TRTMAIORVALORBASE.sql |
CALCULA_TRTSOMBASEXMINIMO | Scripts/CALCULA_TRTSOMBASEXMINIMO.sql |
CALCULA_VALORADICIONALNOTA | Scripts/CALCULA_VALORADICIONALNOTA.sql |