Pular para o conteúdo principal

TP_NOTA - Tipo de Nota Fiscal (Entrada / Saída)

Tela de configuração: MFA002 — Parâmetros de Nota Fiscal por Série Tabela: PARMNOTA.TP_NOTA (CHAR(1) NOT NULL) Campo: Chave primária junto com CD_EMPRESA e CD_SERIE Valor padrão: E (Entrada)

Descrição​

Define se a série de nota fiscal está configurada para Entrada ou Saída. Esse valor é gravado na chave primária de PARMNOTA e não pode ser alterado após o registro ser salvo (o campo cmbTP_NOTA passa para ReadOnly = True).

Campos envolvidos​

CampoTabelaTipoObservação
TP_NOTAPARMNOTACHAR(1) NOT NULLChave primária
CD_SERIEPARMNOTAVARCHAR(4) NOT NULLChave primária (série da NF)
CD_EMPRESAPARMNOTAINTEGER NOT NULLChave primária

Opções disponíveis​

E - Entrada​

O que fazDetalhe
Configura a série para notas fiscais de entradaValor padrão ao incluir novo registro
Editável apenas na inclusãoApós salvar, o campo é bloqueado (ReadOnly = True)

Simulação passo a passo​

  1. Acesse a tela MFA002 — Parâmetros de Nota Fiscal por Série.
  2. Clique em Novo para incluir um registro.
  3. No campo Tipo de Nota, selecione Entrada.
  4. Preencha a Série e a Espécie obrigatórias.
  5. Complete os demais parâmetros desejados.
  6. Clique em Salvar (<Ctrl+F2>).

Resultado esperado: A série fica registrada como entrada (TP_NOTA = 'E') e o tipo de nota não pode mais ser alterado neste registro.


S - Saída​

O que fazDetalhe
Configura a série para notas fiscais de saídaUtilizado em rotinas de faturamento, frete e comissão
Editável apenas na inclusãoApós salvar, o campo é bloqueado (ReadOnly = True)

Simulação passo a passo​

  1. Acesse a tela MFA002 — Parâmetros de Nota Fiscal por Série.
  2. Clique em Novo para incluir um registro.
  3. No campo Tipo de Nota, selecione Saída.
  4. Preencha a Série e a Espécie obrigatórias.
  5. Complete os demais parâmetros desejados.
  6. Clique em Salvar (<Ctrl+F2>).

Resultado esperado: A série fica registrada como saída (TP_NOTA = 'S') e o tipo de nota não pode mais ser alterado neste registro.

Exceção / Importante: O campo TP_NOTA só é editável durante a inclusão do registro. Após AfterPost, AfterOpen ou AfterCancel, o combo cmbTP_NOTA é automaticamente bloqueado (ReadOnly = True). Para alterar o tipo de nota de uma série já cadastrada, é necessário excluir o registro e incluí-lo novamente.

Regra de bloqueio do campo​

EventoEstado do campo cmbTP_NOTA
AfterInsert (novo registro)ReadOnly = False (editável)
AfterOpen (abertura/edição)ReadOnly = True (bloqueado)
AfterPost (após salvar)ReadOnly = True (bloqueado)
AfterCancel (após cancelar)ReadOnly = True (bloqueado)

Telas impactadas​

O TP_NOTA da PARMNOTA é utilizado como filtro para determinar quais séries de nota são de entrada ou saída em diversas rotinas:

Tela / RotinaUso
MNF002 — Nota FiscalFiltra PARMNOTA.TP_NOTA = 'S' para identificar séries de saída na emissão de NF
ADM023 / ADM024 — Configuração PortalFiltra PN.TP_NOTA = 'S' ao validar série de nota do portal
CNF001 — Consulta NFPermite filtrar notas por tipo (Entrada/Saída/Todos)
CFC001 / CFC004 / CFC006 / CFC008 / CFC011 — Financeiro FreteReferencia TP_NOTA para associação de notas a contas e comissões
CFI004 — Financeiro IndustrialFiltra nota por tipo para consulta
CEQ001 / CEQ004 / CEQ005 / CEQ009 — EstoqueUsa TP_NOTA para vincular movimento de estoque à nota fiscal

Procedures impactadas​

Rotinas Delphi com referência direta​

RotinaArquivoObservação
TdmMFA002.tabPARMNOTAAfterInsertUdmMFA002.pasDefine padrão 'E' e libera edição do combo
TdmMFA002.tabPARMNOTAAfterOpen/Post/CancelUdmMFA002.pasBloqueia cmbTP_NOTA.ReadOnly := True
TdmADM023.tabSERIENOTAPORTALBeforePostUdmADM023.pasFiltra PN.TP_NOTA = 'S'
TdmADM024.tabSERIENOTAPORTALBeforePostUdmADM024.pasFiltra PN.TP_NOTA = 'S'
TfrmCFC001.btnNovoClickUCFC001.pasInicializa filtro como 'T' (Todos)
TdmCFC001.tabFILTROAfterEditUdmCFC001.pasReinicia filtro para 'T'

Scripts SQL com referência direta ao campo​

Diversas stored procedures recebem TP_NOTA como parâmetro de entrada (I_TP_NOTA) ou variável interna (V_TP_NOTA) para operações como cálculo de impostos, cancelamento de notas, geração de NF-e e comissões. Principais:

ProcedureArquivoContexto
CALCULA_IMPOSTONOTAScripts/CALCULA_IMPOSTONOTA.sqlParâmetro V_TP_NOTA para cálculo de impostos
GERA_NOTAFISCALScripts/GERA_NOTAFISCAL.sqlLê PARMNOTA para gerar a nota fiscal
GERA_NFEScripts/GERA_NFE.sqlLê PARMNOTA para geração de NF-e
CANCELA_NOTAFISCALScripts/CANCELA_NOTAFISCAL.sqlParâmetro V_TP_NOTA no cancelamento
CALCULA_COMISSAO / CALCULA_COMISSAO_V2Scripts/CALCULA_COMISSAO*.sqlFiltra itens por TP_NOTA para comissão
ATUALIZA_NOTACTBScripts/ATUALIZA_NOTACTB.sqlParâmetro I_TP_NOTA para atualização contábil
GERA_ESTOQUE_NOTAFISCALScripts/GERA_ESTOQUE_NOTAFISCAL.sqlLê PARMNOTA para movimentação de estoque

Candidatas por uso da tabela PARMNOTA​

Estas procedures leem a tabela PARMNOTA mas não referenciam TP_NOTA diretamente no código visível:

ProcedureArquivo
EXPORTACAO_SOVIS_COMPLEMENTOScripts/EXPORTACAO_SOVIS_COMPLEMENTO.sql
FECHA_CONTRATOLEITE / _V2Scripts/FECHA_CONTRATOLEITE*.sql
GERA_CHAVEACESSONFEScripts/GERA_CHAVEACESSONFE.sql
GERA_IMPOSTONOTA / _INDIVIDUALScripts/GERA_IMPOSTONOTA*.sql
GERA_NOTAPEDIDOScripts/GERA_NOTAPEDIDO.sql
GRAVA_NOTACTEScripts/GRAVA_NOTACTE.sql
RETORNA_NFSEQUENCIAScripts/RETORNA_NFSEQUENCIA.sql
RETORNA_IMPRESSORAUSUARIOScripts/RETORNA_IMPRESSORAUSUARIO.sql
VIEW_LIVROFISCALScripts/VIEW_LIVROFISCAL.sql

Tabela comparativa resumida​

ValorDescriçãoRestrição
EEntradaPadrão. Editável somente na inclusão do registro
SSaídaEditável somente na inclusão do registro