CD_OPERADORA - Operadora Padrão
Tela de configuração: MFA001 — Parâmetros de Faturamento Localização: Operação 2 → Movimentos e Operações Padrão Tabela:
PARMFATUR.CD_OPERADORA(DOM_INTEGER, nullable) Valor padrão: Nenhum (campo vazio)
Resumo
Armazena o código da pessoa cadastrada como Operadora (pessoa do tipo Operadora/Vendedora especial). Esse código é utilizado como vendedor padrão em processos de avaria (locação) e está associado ao fluxo de desconto de operadora em notas fiscais.
Telas impactadas
| Tela | Descrição | Impacto |
|---|---|---|
| MFA001 | Parâmetros de Faturamento | Tela de configuração do campo |
| CPD009 | Cópia/Replicação de PARMFATUR | Inclui CD_OPERADORA no SELECT/INSERT/UPDATE da réplica |
| MPD046 | Movimento de Locação | Usa CD_OPERADORA como vendedor de avaria ao confirmar |
Campos envolvidos
| Campo | Tabela | Tipo | Descrição |
|---|---|---|---|
CD_OPERADORA | PARMFATUR | INTEGER | Código da pessoa operadora (FK → PESSOA.CD_PESSOA) |
NM_OPERADORA | Campo calculado (JOIN) | VARCHAR | Nome da operadora, exibido ao lado do campo (read-only) |
CD_MOVOPERADORA | PARMFATUR | INTEGER | Movimentação de estoque vinculada à operadora (FK → MOVIMENTACAO.CD_MOVIMENTACAO) |
ST_OPERADORA | PARMFATUR | CHAR(1) | Tipo da operadora: T (Tim) ou V (Vivo) — controla visibilidade do desconto no popup de celular |
Opções disponíveis
O campo é um TDBEdit de código inteiro, livremente editável. Não possui opções fixas — aceita qualquer código de pessoa válido e ativo.
Preenchimento do campo
| O que faz | Detalhe |
|---|---|
| Aceita qualquer código de pessoa | O código deve existir na tabela PESSOA e estar com ST_ATIVA = 'S' |
| Editável | Campo de digitação livre com busca via <F9> |
| Obrigatório | Não — pode ficar vazio |
Simulação passo a passo
- Acesse MFA001 → Parâmetros de Faturamento.
- Navegue até a aba Operação 2.
- Digite o código da pessoa operadora no campo Operadora ou pressione
<F9>para abrir a janela de pesquisa de pessoas. - Na janela de pesquisa, selecione a pessoa desejada e confirme.
- O nome da pessoa será exibido automaticamente no campo adjacente (somente leitura).
- Salve os parâmetros.
Resultado esperado: A operadora fica vinculada à empresa corrente. Em processos de avaria (MPD046), esse código será usado como vendedor padrão. Nos scripts de geração de nota fiscal, o código é lido junto com CD_MOVOPERADORA para compor a lógica de operadora.
Exceção / Importante: Se o código informado não existir na tabela
PESSOA, o sistema exibe a mensagem "A Operadora não está Cadastrada [TFA001]!" e bloqueia a saída. Se a pessoa existir mas estiver inativa (ST_ATIVA = 'N'), o sistema exibe o erro "E-0032" e impede a gravação.
Regras de validação
| Regra | Comportamento |
|---|---|
| Pessoa inexistente | Mensagem: "A Operadora não está Cadastrada [TFA001]!" — bloqueia |
Pessoa inativa (ST_ATIVA = 'N') | Mensagem: erro E-0032 — bloqueia |
| Campo vazio | Aceito — limpa o nome da operadora (NM_OPERADORA) |
Relacionamento com outros parâmetros
| Parâmetro | Tela | Relação |
|---|---|---|
ST_OPERADORA (configurado em MFA001 — Parâmetros de Faturamento) | Define o tipo de operadora (T = Tim, V = Vivo) e controla a visibilidade do campo VL_DESCOPERADORA no popup de celular nas notas fiscais | |
CD_MOVOPERADORA (configurado em MFA001 — Parâmetros de Faturamento) | Código da movimentação de estoque associada à operadora, usada em conjunto com CD_OPERADORA na geração de notas fiscais |
Procedures impactadas
Rotinas Delphi com referência direta
| Rotina | Arquivo | Descrição |
|---|---|---|
edtCD_OPERADORAKeyDown | source/MFA001/UMFA001.pas:1585 | Abre pesquisa de pessoa (<F9>) filtrando pessoas para seleção da operadora |
tabPARMFATURCD_OPERADORAValidate | source/MFA001/UdmMFA001.pas:1271 | Valida se o código existe em PESSOA, se está ativo e preenche NM_OPERADORA |
TfrmMPD046.Confirma | source/MPD046/UMPD046.pas:2111 | Lê CD_OPERADORA de PARMFATUR para usar como vendedor no processo de avaria em locação |
Referências SQL diretas ao campo
| Procedure | Arquivo | Linha | Uso |
|---|---|---|---|
GERA_NOTAFISCAL | Scripts/GERA_NOTAFISCAL.sql | 109, 258, 266 | Declara variável I_CD_OPERADORA e lê de PARMFATUR.CD_OPERADORA |
GERA_ESTOQUE_NOTAFISCAL | Scripts/GERA_ESTOQUE_NOTAFISCAL.sql | 130, 172, 178 | Declara variável I_CD_OPERADORA e lê de PARMFATUR.CD_OPERADORA |
Nota: As procedures
GERA_NOTAFISCALeGERA_ESTOQUE_NOTAFISCALcarregamCD_OPERADORAem variável local, mas não foram encontradas ramificações condicionais utilizando essa variável no trecho analisado. O valor é lido junto comCD_MOVOPERADORApara compor os dados de contexto da operadora.
Candidatas por uso da tabela
As seguintes procedures utilizam PARMFATUR mas não referenciam CD_OPERADORA diretamente: ATUALIZA_PESSOA, ATUALIZA_PRECOVENDA, BUSCAPRECORECAP, CALCULA_CENTRORESULT, CALCULA_CENTRORESULTITEM, CALCULA_COMISSAO, CALCULA_COMISSAO_V2, CALCULA_JUROVENDA, CANCELA_MESTRA, CANCELA_NOTAFISCAL, CONFIRMA_ORDEMSERVICO, CONFIRMA_ORDEMSERVICOMETAL, CONSOME_LOTEMATERIAPRIMA, CREDITOPERIODICO_AI0, CREDITOPERIODICOGRUPO_AI0, EXPORTACAO_ALLABOR, EXPORTACAO_DOMINIOCADASTROS, EXPORTACAO_DOMINIOCUPOM. Sem impacto direto identificado no código.