No formato de entrada via banco de dados, o mesmo conteúdo de arquivo que seria disponibilizado em um diretório no formato anterior, deve ser inserido em uma tabela pré-definida. Esta tabela pode ser criada em qualquer um dos seguintes Sistemas Gerenciadores de Bancos de Dados (SGBDs):
A tabela de entrada de dados deverá possuir, obrigatoriamente, as colunas a seguir:
idinput - Identificador único do registro. Campo auto incremento - Usar 8 bytes de armazenamento para este campo);
insertdate - Data e hora de inserção do registro na tabela; Tipo datetime (timestamp);
status - 0 - Não processada, 1 - Em processamento, 2 - Processada. - Tipo int;
filename - É o Nome do Arquivo. Tipo varchar(255);
DocumentData - É o conteudo do documento. Tipo mediumtext.
A seguir são listados os scripts de criação da estrutura padrão na plataforma MYSQL disponibilizada pela solução:
Query de criação da tabela de entrada no MYSQL:
CREATE TABLE `nfceinput` (
`idinput` int(11) NOT NULL AUTO_INCREMENT,
`insertdate` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`status` int(11) NOT NULL DEFAULT '0',
`filename` varchar(255) NOT NULL,
`documentdata` mediumtext NOT NULL,
PRIMARY KEY (`idinput`),
KEY `idx_nfceinput_status` (`status`)
) ENGINE=InnoDB AUTO_INCREMENT=3619192 DEFAULT CHARSET=latin1;
Abaixo encontra o script para realizar alteração da tabela nfcinput.
ALTER TABLE nfceinput ADD INDEX idx_nfceinput_insertdate (insertdate DESC);
Query de criação da tabela de entrada no SQL:
CREATE TABLE [DBO].[NFCEINPUT](
[IDINPUT] [BIGINT] IDENTITY(1,1) NOT NULL,
[INSERTDATE] DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
[STATUS] INT NOT NULL DEFAULT '0',
[FILENAME] [VARCHAR](255) NOT NULL,
[DOCUMENTDATA] [VARCHAR](max) NOT NULL,
CONSTRAINT [PK_NFCEINPUT] PRIMARY KEY CLUSTERED
(
[IDINPUT] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
Importante
O formato do nome do arquivo a ser enviado (coluna FileName) deverá seguir o padrão descrito no manual do e-Forms NFC-e na sessão de Entrada via Arquivo - Nomenclaturas.