Pular para o conteúdo principal

CD_EMPRESA - Empresa da Tabela de Preço

Tela de configuração: MFA006 - Parâmetros de Tabela de Preço
Tabela: PARMTABPRECO.CD_EMPRESA
Tipo: DOM_INTEGER (INTEGER)
Componente: edtCD_EMPRESA (TDBEdit)
Obrigatório: Não (permite NULL)

Descrição​

Campo opcional que vincula a regra de preço a uma empresa específica. Quando preenchido, a tabela de preço só será aplicada para a empresa informada. Quando vazio (NULL), a regra se aplica a todas as empresas.

Campos envolvidos​

CampoTabelaTipoDescrição
CD_EMPRESAPARMTABPRECODOM_INTEGERCódigo da empresa (FK para EMPRESA)
NM_EMPRESAEMPRESAVARCHARNome da empresa (exibido no campo auxiliar edtNM_EMPRESA)

Opções disponíveis​

O campo aceita dois estados:

  • Vazio (NULL): a regra de preço se aplica a todas as empresas.
  • Código válido de empresa: a regra de preço se aplica apenas àquela empresa.

Preenchimento com código de empresa​

O que fazDetalhe
Vincula a regra a uma empresa específicaEditável, opcional, sem validação automática no OnExit
Pesquisa com <F9>Abre lista de empresas cadastradas (Select NM_EMPRESA, CD_EMPRESA From EMPRESA)

Simulação passo a passo​

  1. Acesse MFA006 (Parâmetros de Tabela de Preço).
  2. Clique em Novo ou selecione um registro existente para edição.
  3. Preencha os demais campos da regra de preço (Tabela de Preço, Condição de Pagamento, etc.).
  4. No campo Empresa (edtCD_EMPRESA):
    • Opção A — digitação direta: digite o código da empresa (ex: 1).
    • Opção B — pesquisa: pressione <F9>, a janela "Selecione a Empresa" será exibida com as colunas Descrição e Código. Encontre a empresa desejada e pressione OK.
  5. O campo auxiliar edtNM_EMPRESA será preenchido automaticamente com o nome da empresa.
  6. Clique em Salvar.

Resultado esperado: O registro é salvo com CD_EMPRESA igual ao código informado. Nas rotinas de busca de preço (RETORNA_PRECOITEM, RETORNA_TABPRECO), a regra será considerada apenas para pedidos/notas daquela empresa.


Deixar vazio (todas as empresas)​

O que fazDetalhe
Aplica a regra globalmente, sem restrição de empresaO campo fica vazio (NULL) no banco de dados

Simulação passo a passo​

  1. Acesse MFA006 (Parâmetros de Tabela de Preço).
  2. Clique em Novo.
  3. Preencha os campos obrigatórios da regra (Tabela de Preço, etc.).
  4. No campo Empresa, não preencha nada — deixe-o vazio.
  5. Clique em Salvar.

Resultado esperado: O registro é salvo com CD_EMPRESA = NULL. A regra de preço será aplicada independentemente da empresa do pedido ou nota fiscal.

Excecao / Importante: O campo CD_EMPRESA integra a combinação de filtros validada pela rotina ConsultaRegistro, que verifica duplicidade considerando todos os campos preenchidos (incluindo CD_TABPRECO, CD_PESSOA, CD_CONDPAGTO, CD_ITEM, CD_EMPRESA, etc.). Se já existir um registro com a mesma combinação, o sistema navegará para ele em vez de permitir duplicata.

Procedures impactadas​

Rotinas Delphi com referência direta ao campo​

RotinaArquivoLinhaEvidência
TfrmMFA006.edtCD_EMPRESAKeyDownsource/MFA006/UMFA006.pas596Abre pesquisa de empresas ao pressionar <F9>
ConsultaRegistrosource/MFA006/UMFA006.pas244Inclui CD_EMPRESA no filtro de verificação de duplicidade

Scripts SQL com referência direta ao campo​

Nenhuma referência direta ao campo CD_EMPRESA da tabela PARMTABPRECO foi encontrada em scripts SQL. As referências globais a CD_EMPRESA em outros scripts dizem respeito a tabelas distintas (EMPRESA, PEDIDO, NOTA, etc.).

Candidatas por uso da tabela​

Estas procedures/views acessam a tabela PARMTABPRECO mas não citam o campo CD_EMPRESA diretamente. Validar antes de afirmar impacto funcional direto sobre o campo.

Procedure/ViewArquivoLinhaEvidência
RETORNA_PRECOITEMScripts/RETORNA_PRECOITEM.sql104FROM PARMTABPRECO P
RETORNA_TABPRECOScripts/RETORNA_TABPRECO.sql51FROM PARMTABPRECO P
VERIFICA_BLOQUEIOScripts/VERIFICA_BLOQUEIO.sql1115FROM PARMTABPRECO P
VIEW_TFA006Scripts/VIEW_TFA006.sql84INNER JOIN PARMTABPRECO PT
GERA_COMISSAOTABPRECOScripts/GERA_COMISSAOTABPRECO.sql84from PARMTABPRECO
TRGAD_PARMTABPRECOScripts/TRGAD_PARMTABPRECO.sql5Trigger AFTER DELETE na tabela
CALCULA_MAQUINAScripts/CALCULA_MAQUINA.sql81FROM PARMTABPRECO P
CALCULA_MAQUINAFICHAScripts/CALCULA_MAQUINAFICHA.sql79FROM PARMTABPRECO P
INSERE_ITEMPEDIDO_SERVCANALETAScripts/INSERE_ITEMPEDIDO_SERVCANALETA.sql58FROM PARMTABPRECO P

Observações​

  • O campo é alimentado exclusivamente por pesquisa (<F9>), que consulta a tabela EMPRESA e retorna CD_EMPRESA como código e NM_EMPRESA como descrição.
  • O campo edtNM_EMPRESA ao lado é apenas visual — o valor persistido é o inteiro em CD_EMPRESA.
  • Não há restrição de FK declarada no DDL entre PARMTABPRECO.CD_EMPRESA e EMPRESA.CD_EMPRESA, mas a pesquisa garante que apenas códigos válidos sejam selecionados.
  • A tabela PARMTABPRECO usa NR_SEQUENCIA como chave primária; CD_EMPRESA é um campo de filtro, não parte da PK.