Outra forma de realizar a integração dos retornos da SEFAZ é utilizando um banco de dados. Esta integração pode ser utilizada com qualquer um dos seguintes SGBD’s:
A tabela de saída de dados deverá possuir, obrigatoriamente, as colunas a seguir:
•idoutput - Identificador único do registro. Tipo int (auto incremento);
•insertdate - Data e hora de inserção do registro na tabela; Tipo datetime (timestamp);
•filename - É o Nome do Arquivo. Tipo varchar(255);
•DocumentData - É o conteudo do documento. Tipo varbinary(MAX);
•documentkey - Chave do documento - Tipo texto com 44 dígitos - Deverá ser lido do documento conforme regra abaixo;
•protocol - Protocolo de autorização;
•documentkey1 - Chave do documento - Tipo inteiro com os primeiros 18 digitos da chave;
•documentkey2 - Chave do documento - Tipo inteiro contendo do digito 19 ao digito 36 da chave do documento;
•documentkey3 - Chave do documento - Tipo inteiro com os ultimos 8 dígitos da chave;
•codreturn - Código de retorno da SEFAZ;
•msgreturn - Mensagem de retorno da SEFAZ;
•contingency - Valor 0 para processamento normal e valor 1 para processamento em contingência;
•idinput - Valor do input da tabela de entrada a qual este registro faz referência;
•status - Valor 0 para não lido e 1 para lido
Query de criação da tabela de saida no MYSQL:
CREATE TABLE `nfceoutput` ( `idoutput` int(11) NOT NULL AUTO_INCREMENT, `insertdate` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, `filename` varchar(100) NOT NULL, `documentdata` mediumtext NOT NULL, `documentkey` varchar(44) NOT NULL, `protocol` varchar(50) NOT NULL, `documentkey1` bigint(20) DEFAULT NULL, `documentkey2` bigint(20) DEFAULT NULL, `documentkey3` bigint(20) DEFAULT NULL, `codreturn` int(11) NOT NULL, `msgreturn` text NOT NULL, `contingency` int(11) NOT NULL COMMENT 'Valor zero para processamento normal e valor 1 para contingencia', `idinput` int(11) NOT NULL COMMENT 'valor do idinput da tabela de entrada a qual este registro faz referencia.', `status` int(11) NOT NULL COMMENT 'valor zero para não lido e um para lido.', PRIMARY KEY (`idoutput`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=latin1; |
Nota: •O formato do nome do arquivo a ser retornado, deverá seguir o padrão descrito no manual do e-Forms NFC-e na sessão de Arquivos de Integração. |