Carga/Descarga PDV via Banco de Dados NT 0241/2026
Resumo da Nota Técnica
Foi implementado o processo de carga e descarga de PDV via banco de dados no sistema FACILITE Comércio, mantendo a compatibilidade com o fluxo legado por arquivos. A alteração permite que os conteúdos de carga, descarga e XML fiscal sejam registrados na tabela CARGADESCARGA_PDV, com controle de status, reprocessamento e rastreabilidade entre o Integrado, Monitor PDV, Balcão PDV e Orçamento.
Detalhes da Nota Técnica
A partir desta versão, o sistema passa a disponibilizar um modelo híbrido para a sincronização de informações entre o servidor e os PDVs. O transporte e o controle dos arquivos deixam de depender exclusivamente das pastas CargaPDV e DescargaPDV, passando também a utilizar registros persistidos no banco Firebird, por meio da tabela CARGADESCARGA_PDV.
O objetivo da alteração é aumentar a segurança operacional do processo, melhorar a rastreabilidade das movimentações, permitir reprocessamento de pendências e reduzir problemas relacionados a falhas de rede, concorrência de arquivos ou ausência de controle centralizado sobre os conteúdos trafegados.
O fluxo de negócio existente foi preservado. Mesmo com a nova parametrização ativa, a aplicação continua materializando arquivos físicos nas pastas utilizadas pelo processo legado, garantindo compatibilidade com as rotinas já existentes de importação de carga, descarga de vendas e tratamento de documentos fiscais. O controle da funcionalidade é realizado pelo parâmetro global 4.18.791 - UTILIZAR CARGA/DESCARGA PDV VIA BANCO. Quando configurado como Sim, o banco de dados passa a ser o canal principal de transporte e controle. Quando configurado como Não, o sistema mantém integralmente o comportamento anterior, trabalhando apenas com as pastas de carga e descarga.
A tabela CARGADESCARGA_PDV deve existir tanto no banco central, utilizado pelo Integrado e pelo Monitor PDV, quanto em cada banco local de PDV. A criação da estrutura é feita pelo script CARGADESCARGA_PDV_OS012423.sql. No processo de carga, identificado pelo tipo CAR, o Integrado gera a fila de alteração normalmente.
O Monitor PDV monta o conteúdo de carga, grava o registro pendente no banco central e envia a informação para o banco local de cada PDV configurado. No Balcão ou Orçamento, a carga é materializada novamente em arquivo para que o processamento legado aplique os dados normalmente.
No processo de descarga, identificado pelo tipo DES, o Balcão ou Orçamento gera o arquivo de venda e, após o fechamento completo do arquivo, grava seu conteúdo no banco local do PDV. O Monitor PDV lê as pendências do PDV, replica o conteúdo para o banco central, materializa o arquivo na pasta de descarga e executa a importação pelo fluxo já existente. Após a importação com sucesso, os registros são marcados como concluídos no PDV e no servidor. Para documentos fiscais, identificados pelo tipo XML, o Balcão grava os XMLs autorizados ou cancelados no banco local do PDV. O Monitor PDV materializa esses arquivos na pasta DescargaPDV\XML e também nas pastas dos emissores correspondentes, como Arquivos Emissor NFCe\XMLs ou Arquivos Emissor NFe\XMLs, conforme o modelo do documento fiscal.
A solução também contempla tratamento de erro e reprocessamento. Os registros utilizam os status P para pendente, C para concluído e E para erro. Registros pendentes ou com erro podem ser reprocessados, enquanto registros já concluídos não são duplicados, respeitando a regra de idempotência implementada.
Estrutura Técnica
Foi criada e utilizada a tabela CARGADESCARGA_PDV, responsável por armazenar o conteúdo integral dos arquivos trafegados, o PDV de origem ou destino, o nome lógico do arquivo, o tipo do arquivo, a data e hora de geração, o status e a mensagem de erro quando houver falha no processamento.
Campo Descrição
CDPDV_ID -> Identificador único do registro. CDPDV_PDV -> Número do PDV relacionado ao registro. CDPDV_NOMEARQUIVO -> Nome lógico do arquivo de carga, descarga ou XML. CDPDV_TIPOARQUIVO -> Tipo do arquivo: CAR, DES ou XML. CDPDV_DATAHORAGERACAO -> Data e hora de geração do conteúdo. CDPDV_STATUS -> Status do processamento: P, C ou E. CDPDV_MENSAGEMERRO -> Mensagem gravada quando ocorrer erro. CDPDV_CONTEUDOARQUIVO -> Conteúdo integral do arquivo armazenado em BLOB TEXT.
Fluxo Operacional
Carga - CAR: o Integrado alimenta a fila de carga; o Monitor PDV gera o conteúdo e grava no banco central; o Monitor envia a carga para o banco do PDV; o Balcão ou Orçamento materializa o arquivo na pasta de carga e executa o processamento legado.
Descarga - DES: o PDV gera o arquivo de descarga após a venda; o conteúdo é gravado no banco local; o Monitor replica para o banco central, materializa o arquivo na pasta de descarga e executa a importação pelo processo existente.
XML Fiscal: após a autorização ou cancelamento, o XML é gravado no banco local do PDV; o Monitor materializa o arquivo na pasta XML e nas pastas dos emissores NFC-e ou NF-e; em caso de sucesso, o registro é concluído; em caso de falha, é marcado como erro para reprocessamento.
Parâmetros Envolvidos
Através do aplicativo FACILITE Comércio - Integrado, menu Utilitários, submenu Parâmetros do Sistema, aba Parâmetros Gerais.
- "4.18.001 - PDV' ATIVOS", deve estar com o valor do status igual ou maior que "1".
- "4.18.405 - TRATA ARQUIVOS DE CARGA/DESCARGA PDV ON-LINE", deve estar com o valor do status igual a "Sim".
- "4.18.704 - TRATA ARQUIVOS DE CARGA/DESCARGA POR PDV", deve estar com o valor do status igual a "Não".
- "4.18.727 - BUSCA DE ARQUIVOS DE DESCARGA PELO MONIT", deve estar com o valor do status igual a "Sim".
- "4.18.791 - UTILIZAR CARGA/DESCARGA PDV VIA BANCO", deve estar com o valor do status igual a "Sim".