NR_LIVRO — Número do Livro Fiscal (Padrão)
Tela de configuração: MFI003 — Parâmetros Fiscais Tabela:
PARMFISCAL.NR_LIVRO(INTEGER) Valor padrão: Sem padrão definido no schema (campo anulável).
Resumo
Armazena o número do livro fiscal associado à empresa. Esse valor serve como referência para a numeração de livros de Registro de Entradas, Registro de Saídas, Apuração de ICMS/IPI, Livro Diário, Livro Razão, Lalur e Livro Caixa nos relatórios e nas gerações de arquivos SPED Contábil, ECD e MANAD.
O valor informado aqui é copiado para o cabeçalho dos relatórios fiscais e contábeis e também é utilizado pelas procedures que geram os registros de Termo de Abertura/Encerramento do SPED Contábil.
Nota: Na prática, o número do livro é frequentemente obtido diretamente da tabela
LIVRO(que armazena os números por ano e tipo), masPARMFISCAL.NR_LIVROfunciona como um parâmetro de fallback ou referência padrão quando a tabelaLIVROnão possui o período cadastrado.
Telas impactadas
| Tela | Arquivo | Uso |
|---|---|---|
| RFI003 — Registro de Entradas/Saídas | URFI003.pas / UdmRFI003.pas | Exibe o número do livro no cabeçalho do relatório; recarrega ao trocar tipo de operação (Entradas ↔ Saídas) |
| RFI004 — Apuração de ICMS/IPI | UdmRFI004.pas | Número do livro de apuração no cabeçalho |
| RFI012 — Registro de Serviços | UdmRFI012.pas | Número do livro no cabeçalho |
| RFI032 — Razão Fiscal | URFC032.pas / UdmRFC032.pas | Número do livro razão no cabeçalho |
| RCB001 — Livro Razão | URCB001.pas / UdmRCB001.pas | Cabeçalho "Contém este Livro Razão N° X" |
| RCB003 — Livro Diário | URCB003.pas / UdmRCB003.pas | Cabeçalho "Contém este Livro Diário N° X" |
| RCB012 — Livro Diário Completo | URCB012.pas / UdmRCB012.pas | Cabeçalho "Contém este Livro Diário N° X" |
| RCB013 — Livro Lalur | URCB013.pas / UdmRCB013.pas | Cabeçalho "Contém este Livro Lalur N° X" |
| RCB014 — Livro Caixa | URCB014.pas / UdmRCB014.pas | Cabeçalho "Contém este Livro Caixa N° X" |
Campos envolvidos
| Campo | Tabela | Descrição |
|---|---|---|
NR_LIVRO | PARMFISCAL | Número do livro fiscal padrão da empresa (este parâmetro) |
NR_ENTRADA | LIVRO | Número do livro de entradas no ano |
NR_SAIDA | LIVRO | Número do livro de saídas no ano |
NR_APURACAOICMS | LIVRO | Número do livro de apuração de ICMS |
NR_APURACAOIPI | LIVRO | Número do livro de apuração de IPI |
NR_DIARIO | LIVRO | Número do livro diário |
NR_RAZAO | LIVRO | Número do livro razão |
NR_LALUR | LIVRO | Número do livro Lalur |
A tabela LIVRO é indexada por CD_EMPRESA + NR_ANO, ou seja, cada empresa pode ter numerações diferentes de livro por ano fiscal.
Regras de validação
O campo possui um único validador em UdmMFI003.pas (linha 637–642):
- Não aceita valor negativo. Se o usuário digitar um número menor que zero, o sistema exibe a mensagem: "O Número do Livro não pode ser Menor que Zero!"
- Valores nulos/vazios são aceitos (campo não obrigatório no schema).
Comportamento
| O que faz | Detalhe |
|---|---|
| Tipo de dado | Inteiro, editável diretamente |
| Restrição | Não aceita valor negativo (validação Delphi) |
| Obrigatoriedade | Não obrigatório (aceita nulo) |
Relação com LIVRO | Os relatórios e procedures usam a tabela LIVRO como fonte primária; PARMFISCAL.NR_LIVRO funciona como fallback |
Simulação passo a passo
- Acesse MFI003 — Parâmetros Fiscais.
- Localize o campo Número do Livro na aba de parâmetros gerais.
- Digite o número desejado, por exemplo 3.
- Salve o registro (
<F9>ou botão Salvar). - Ao emitir relatórios como RFI003 (Registro de Entradas/Saídas) ou RCB003 (Livro Diário), o número informado será utilizado como referência para o cabeçalho do livro.
Importante: Na tela RFI003, ao trocar o tipo de operação (Entradas ↔ Saídas), o sistema recarrega automaticamente o número do livro a partir da tabela
LIVRO(colunasNR_ENTRADAouNR_SAIDAdo ano da data final). Ou seja, o sistema prioriza os números cadastrados emLIVROpor ano e tipo.
Resultado esperado: O número do livro aparece no cabeçalho de todos os relatórios fiscais e contábeis, e nos registros de Termo de Abertura/Encerramento gerados pelo SPED Contábil, ECD e MANAD.
Procedures impactadas
Referências SQL diretas ao campo
| Procedure/View | Arquivo | Uso |
|---|---|---|
RETORNA_NUMEROLIVRO | RETORNA_NUMEROLIVRO.sql | Busca o número do livro em PERIODOLIVRO ou LIVRO para uma data de lançamento |
VIEW_RFI003 | VIEW_RFI003.sql | Retorna número do livro (saída = NR_SAIDA, entrada = NR_ENTRADA) |
VIEW_RFI003MODELO_4 | VIEW_RFI003MODELO_4.sql | Mesma lógica para modelo 4 |
VIEW_RFI004 | VIEW_RFI004.sql | Retorna número do livro de apuração ICMS (NR_APURACAOICMS) ou IPI (NR_APURACAOIPI) |
VIEW_RFI012 | VIEW_RFI012.sql | Número do livro para registro de serviços |
VIEW_RFI032 | VIEW_RFI032.sql | Número do livro razão |
VIEW_RFI034MTF | VIEW_RFI034MTF.sql | Número do livro |
VIEW_RAZAOCONTABIL | VIEW_RAZAOCONTABIL.sql | Inclui O_NR_LIVRO da function RETORNA_NUMEROLIVRO |
GERA_SPEDCONTABIL | GERA_SPEDCONTABIL.sql | Busca NR_DIARIO da tabela LIVRO para registros I030 (Termo de Abertura) e J900 (Termo de Encerramento) |
GERA_MANADCONTABIL | GERA_MANADCONTABIL.sql | Busca NR_DIARIO da tabela LIVRO para geração do MANAD |
GERA_SPEDECF | GERA_SPEDECF.sql | Busca NR_DIARIO da tabela LIVRO para geração do SPED ECD |
Rotinas Delphi com referência direta
| Rotina | Arquivo | Uso |
|---|---|---|
tabPARMFISCALNR_LIVROValidate | UdmMFI003.pas | Validação: não permite valor negativo |
TfrmRCB001.btnImprimirClick | URCB001.pas | Atribui número do livro ao filtro de impressão do Livro Razão |
TdmRCB001.MemoPrint / Memo1Print | UdmRCB001.pas | Cabeçalho "Contém este Livro Razão N° X" |
TdmRCB003.MemoPrint / ppMemo1Print | UdmRCB003.pas | Cabeçalho "Contém este Livro Diário N° X" |
TdmRCB012.ppMemo1Print / ppMemo3Print | UdmRCB012.pas | Cabeçalho "Contém este Livro Diário N° X" |
TdmRCB013.MemoPrint / Memo1Print | UdmRCB013.pas | Cabeçalho "Contém este Livro Lalur N° X" |
TdmRCB014.MemoPrint / Memo1Print | UdmRCB014.pas | Cabeçalho "Contém este Livro Caixa N° X" |
TdmRFC032.MemoPrint / Memo1Print | UdmRFC032.pas | Cabeçalho "Contém este Livro Razão N° X" |
TfrmRFI003.cmbTP_NOTAChange | URFI003.pas | Ao trocar tipo (E/S), recarrega número do livro a partir de LIVRO.NR_ENTRADA ou LIVRO.NR_SAIDA |
TdmRFI003.MemoPrint / Memo1Print | UdmRFI003.pas | Cabeçalho "Contém este Livro Registro de [Tipo] N° X" |
Candidatas por uso da tabela (sem referência direta ao campo)
As procedures a seguir acessam PARMFISCAL mas não referenciam NR_LIVRO diretamente: ATUALIZA_PESSOA, CALCULA_CENTRORESULT, CONTABILIZA_IMPOSTONOTACTB, GERA_ARQUIVODIMOF, GERA_ARQUIVOMAGNETICO, GERA_DARF, GERA_GIA, GERA_INTEGRACAO, GERA_INTEGRACAOFISCAL, GERA_INTEGRACAOIMPOSTO, GERA_MOVTOCONTABIL, GERA_SPEDCONTABIL_0000, GERA_SPEDPISCOFINS, GRAVA_DEPRECIACAOGERALV2, GRAVA_DEPRECIACAOV2, GRAVA_MOVTOFISCALCTE, GRAVA_MOVTOFISCALNOTA, GRAVA_SALDOFISCAL.
Sem impacto funcional direto identificado no código quanto ao campo NR_LIVRO.