Histórico da Página
Melhorias no Processo de Agendamento na Importação NF-e
Características do Requisito
Linha de Produto: | SARA |
Segmento: |
Logística | |
Módulo: | SARA Portal Web |
Rotinas: | ImportadorDocEntrada DllImportaNFe |
Rotina:
ImportadorDocEntrada
DllImportaNFe
Parâmetro(s):
Chamados relacionados
Parâmetros: | Com Agendamento: DIRETORIO_PADRAO_PROTHEUS = Diretório padrão do Protheus para gravação de arquivos. DIRETORIO_INTEGRACAO_DOCUMENTOS_UPLOAD = Diretório de destino do upload de documentos do Portal Web. DOC_ENTRADA_DIRETORIO_LOG = Diretório onde serão gerados os logs para depuração de erros da importação de arquivos XML NF-e. DIRETORIO_ARQUIVO_REJEITADO = Diretório onde serão copiados os arquivos da nota fiscal rejeitados durante a importação. DIRETORIO_ARQUIVO_PROCESSADO = Diretório onde serão copiados os arquivos da nota fiscal importados com sucesso pelo sistema Sem Agendamento: DIRETORIO_IMPORTAR_NFE = Diretório de onde serão buscados os arquivos a serm importados no processo de leitura de arquivos que não vieram do PortalWeb DIRETORIO_NFE_PROCESSADO = Diretório par aonde serão movidos os aquivos processados com sucesso vindos do diretorio de DIRETORIO_IMPORTAR_NFE . DIRETORIO_NFE_REJEITADO = Diretório para onde serão movidos os arquivos que forem processados e rejeitados pelo sistema. |
Requisito (ISSUE): | PCREQ-4605 |
Tabelas |
Utilizadas: | tab_ |
ocorrencias_nfe tab_documentos_import tab_documentos_upload rel_tipo_cliente tab_cli_endereco | |
Versões/Release: | 12.1.16 |
Procedures Utilizadas | proc_diu_clientes proc_diu_tmp_doc_ent_comp proc_diu_tmp_doc_entrada proc_diu_tab_tmp_lote proc_diu_tmp_loteitem |
Descrição
Implementada melhoria para permitir que os clientes do terminal possam enviar um arquivo XML de NF-e versão 3.1 por intermédio do Portal de agendamento, bem como, realizar a importação automática destas informações para o pré-cadastro de documentos SARA.
Foi adicionada a possibilidade de importação de XML de NFe, sem a necessidade dos arquivos serem enviados pelo Portal Web.
Desenvolvido o programa "Importa_documento_entrada.exe", o qual realizará o serviço importador de NF-e. No momento do agendamento do Portal Web do SARA será anexado um arquivo XML de NF-e para upload. O sistema gravará este arquivo no diretório definido no parâmetro DIRETORIO_PADRAO_PROTHEUS, concatenado do parâmetro DIRETORIO_INTEGRACAO_DOCUMENTOS_UPLOAD.
Desenvolvida a DLL "dllImportaNFE.dll" para realizar
Descrição
Criado uma DLL e um serviço para fazer importação de XML de NF-e inseridos através do portal de agendamento.
via Portal de agendamento. Essa DLL efetuará a leitura do arquivo, a separação de acordo com seu processamento e a gravação das informações.
Para a gravação dos arquivos, serão criados dois diretórios:
- Diretório de arquivos rejeitados ou desconhecidos. “REJEITADOS\”.
Os arquivos rejeitados, que depois de gravados manterão o nome original do arquivo. - Diretório de arquivos processados corretamente. “PROCESSADOS\”.
Este diretório será separado internamente por data de emissão do arquivos XML (YYYY-MM-DD).
Grava o arquivo no seguinte formato NF-e + chave da nota + .xml.
Procedimento para Implantação
Para efetuar o processo completo de importação do XML da NF-e no processo de agendamento do SARA, é necessária a instalação e configuração do ambiente Protheus, assim como a configuração do ambiente de agendamento via Portal RFB Web.
Pré-requisitos:
- Instalar o Protheus.
- Instalar Smartclienthtml
- Executar a criação de sinônimos no banco de dados.
- Configurar parâmetros para Portal de agendamento.
Procedimento para Configuração
Procedimento para Implantação
Copiar o executável e a DLL contidos neste pacote para uma pasta local, navegar até a pasta via prompt de comando e executar o comando ImportadorDocEntrada.
Execute o comando Importa_documento_entrada.exe -install.
Depois da Após a instalação do serviço, será necessário configuraconfigurá-lo.
Ainda , ainda no prompt de comando digite regedit, acesse HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\ImportaNFe
Atualizações do Compatibilizador
(Apenas para Microsiga Protheus, versões anteriores à versão 12)
- Criação ou Alteração de Perguntas no arquivo SX1 – Cadastro de Perguntes:
Pergunte | (X1_PERGUNT) |
Nome |
|
Grupo | (X1_GRUPO) |
Ordem | (X1_ORDEM) |
Tipo | (X1_TIPO) |
Tamanho | (X1_TAMANHO) |
2. Criação ou Alteração de tabela no arquivo SX2– Tabelas:
Chave | Nome | Modo | PYME |
B04 (X2_CHAVE) | Dente/Região (X2_NOME) | C (X2_MODO) | N (X2_PYME) |
3. Criação ou Alteração de Tabelas Genéricas no arquivo SX5 – Tabelas Genéricas:
Chave | Ex.: AR |
Descrição | Ex.: Tabela de IR de Aplicações Financeiras |
4. Criação ou Alteração (mantenha somente a instrução correspondente) de Campos no arquivo SX3 – Campos:
- Tabela BGD - Prod x Cob x Proc x Co-Part:
Campo | (X3_CAMPO) |
Tipo | (X3_TIPO) |
Tamanho | (X3_TAMANHO) |
Decimal | (X3_DECIMAL) |
Formato | (X3_PICTURE) |
Título | (X3_TITULO) |
Descrição | (X3_DESCRIC) |
Nível | (X3_NÍVEL) |
Usado | (X3_USADO) Informe Sim ou Não |
Obrigatório | (X3_OBRIGAT) Informe Sim ou Não |
Browse | (X3_BROWSE) Informe Sim ou Não |
Opções | (X3_CBOX) |
When | (X3_WHEN) |
Relação | (X3_RELACAO) |
Val. Sistema | (X3_VALID) |
Help | Descreva o conteúdo informado para Help de Campo no ATUSX |
Importante:
O tamanho dos campos que possuem grupo pode variar conforme ambiente em uso.
5. Criação ou Alteração de Consulta Padrão no arquivo SXB – Consulta Padrão:
- Pesquisa B05PLS:
Alias | (XB_ALIAS) |
Tipo | (XB_TIPO) |
Sequência | (XB_SEQ) |
Coluna | (XB_COLUNA) |
Descrição | (XB_DESCRI) |
Contém | (XB_CONTEM) |
6. Criação ou Alteração de Índices no arquivo SIX – Índices:
Índice | AA1 |
Ordem | 6 |
Chave | AA1_FILIAL+AA1_CODVEN |
Descrição | Cod. Vendedor |
Proprietário | S |
7. Criação ou Alteração de Parâmetros no arquivo SX6 – Parâmetros:
Nome da Variável | (X6_VAR) |
Tipo | (X6_TIPO) |
Descrição | (X6_DESCRIC + X6_DESC1 + X6_DESC2) |
Valor Padrão | (X6_CONTEUD) |
8. Criação ou Alteração (mantenha somente a instrução correspondente) de Gatilhos no arquivo SX7 – Gatilhos:
- Tabela BD5 – Contas Médicas:
Campo | Informe o conteúdo do (X7_CAMPO) |
Sequência | Informe o conteúdo do (X7_SEQUENC) |
Campo Domínio | Informe o conteúdo do (X7_CDOMIN) |
Tipo | Informe o conteúdo do (X7_TIPO) |
Regra | Informe o conteúdo do (X7_REGRA) |
Posiciona? | Informe o conteúdo do (X7_SEEK) |
Chave | Informe o conteúdo do (X7_CHAVE) |
Condição | Informe o conteúdo do (X7_CONDIC) |
Proprietário | Informe o conteúdo do (X7_PROPRI) |
Procedimento para Configuração
(Estes procedimentos devem ser feitos quando for necessário configurar parâmetros e/ou rotinas no menu).
CONFIGURAÇÃO DE PARÂMETROS
- No Configurador (SIGACFG), acesse Ambientes/Cadastros/Parâmetros (CFGX017). Crie/configure (mantenha somente a instrução correspondente) o(s) parâmetro(s) a seguir:
(É necessário criar uma tabela para cada parâmetro descrito no item Parâmetro(s), da tabela Características do Requisito)
Itens/Pastas | Descrição |
Nome: |
|
Tipo: | Informe o Tipo do parâmetro |
Cont. Por.: | Informe o Conteúdo padrão |
Descrição: |
|
CONFIGURAÇÃO DE MENUS
2. No Configurador (SIGACFG), acesse Ambientes/Cadastro/Menu (CFGX013). Informe a nova opção de menu do informe o nome do módulo, conforme instruções a seguir:
Menu | Informe o Menu em que estará localizada a rotina |
Submenu | Informe o Submenu em que estará localizada a rotina |
Nome da Rotina | Informe o Título da rotina |
Programa | Informe o Fonte da rotina |
Módulo | Informe o Nome do(s) produto(s) a ser utilizado ou “Todos” |
Tipo | Informe a Função |
Procedimento para Utilização
- Descreva os procedimentos, passo a passo (caso de uso), que serão realizados pelos usuários para que a melhoria seja visualizada identificando as seguintes informações:
- Localização da rotina no menu;
- Localização dos novos campos e/ou perguntas e respectivas pastas de cadastro que são visualizadas pelo usuário;
- Caso seja necessário ter algum cadastro feito previamente, faça uma observação.
Exemplo:
1. No Plano de Saúde (SIGAPLS), acesse Atualizações / Produto Saúde / Produto Saúde (PLSA800).
O sistema apresenta a janela de produtos cadastrados.
2. Posicione o cursor em um produto e clique em Alterar.
3. Na pasta Cobertura/Carências selecione a subpasta Tipo de Prestador.
4. Dê duplo clique no campo TP Prestador (BCW_TIPPRE).
O sistema apresenta a janela Tipo de Prestador – Coparticipação – Alterar.
5. Informe os dados conforme orientação do help de campo e observe o preenchimento do novo campo:
Som. p/Compra (BCW_SOMCOM): selecione Sim para indicar se a coparticipação cadastrada será válida somente para efeito de compra de procedimentos ou Não, caso contrário.
6. Confira os dados e confirme.
Vídeo
- Vídeo hospedado no youtube e inserido no template por meio da macro Widget Connector.
** Canal do youtube e software de vídeoem definição.
Título do Vídeo: | Disponibilizado pelo Marketing. |
Introdução: | Disponibilizado pelo Marketing. |
Passo a Passo: | Capturar diretamente do sistema. |
Finalização: | Disponibilizado pelo Marketing. |
Importa_documento_entrada.
Modifique as chaves:
- Pathiniconexão: caminho + nome do arquivo ini de conexão do SARA.
- Usuário: usuário com acesso aos sistemas SARA.
- Senha: senha para acesso deste usuário.
- Intervalo: tempo em milésimo de segundos que os sistema realizará a leitura da pasta de arquivos de XML.
Acesse o módulo sistema e configure os parâmetros abaixo:
- Parâmetros para o portal de agendamento.
- DIRETORIO_ARQUIVO_REJEITADO - Diretório onde serão movidos os arquivos que forem rejeitados durante o processamento.
- DIRETORIO_ARQUIVO_PROCESSADO - Diretório onde serão movidos os arquivos que forem processados com sucesso.
- DIRETORIO_PADRAO_PROTHEUS - Diretório protheusdata dentro da instalação do protheus.
- DOC_ENTRADA_DIRETORIO_LOG - Diretório + nome do arquivo onde serão salvos os logs dos processamentos.
- DIRETORIO_INTEGRACAO_DOCUMENTOS_UPLOAD - Diretório a partir da pasta protheusdata dentro do protheus onde serão colocados os arquivos inseridos no portalweb.
- Parâmetros para a importação de arquivos sem agendamento.
- DIRETORIO_IMPORTAR_NFE = Diretório de onde serão buscados os arquivos a serm importados no processo de leitura de arquivos que não vieram do PortalWeb
- DIRETORIO_NFE_PROCESSADO = Diretório par aonde serão movidos os aquivos processados com sucesso vindos do diretorio de DIRETORIO_IMPORTAR_NFE .
- DIRETORIO_NFE_REJEITADO = Diretório para onde serão movidos os arquivos que forem processados e rejeitados pelo sistema.
No prompt de comando digite services.msc, e inicie o serviço SARA - IMPORTA DOCUMENTO ENTRADA
Depois de iniciado o serviço os arquivos inseridos pelo Portal de agendamento serão processados e movidos para pasta de processados ou rejeitados de acordo com evento ocorrido pelo arquivo.
Importante!
- Para depuração de erros de conexão será criado um arquivo de log na mesma pasta do executável ImportadorDocEnt.log, que conterá o registro das conexões e respectivos erros.
- Para depuração dos arquivos processados existe dois arquivos de log distintos o dos arquivos processados, oriundos do portal de agendamento que ficam no diretório configurado no parâmetro DOC_ENTRADA_DIRETORIO_LOG, e o arquivo de log dos arquivos processados não oriundos do portal de agendamento, que será criado na mesma pasta que foram incluídos os arquivos .
Será criado um arquivo de log para o dia respectivo da execução. Este arquivo conterá os registros das execução das leituras dos arquivos, e seus respectivos erros de processamento.
Observação:
Este documento foi atualizado contento o processo completo aos dois processos de importação de arquivos de NFe, ficando então o documento de complemento a este processo desatualizado.
Link do documento anterior: DT_Importacao_XML_NFe_Sem_Portal
Ponto de Entrada
Descrição: | Informe o Menu em que estará localizada a rotina | ||||||||||||||||
Localização: | Informe o Submenu em que estará localizada a rotina | ||||||||||||||||
Eventos: | Informe o Título da rotina | ||||||||||||||||
Programa Fonte: | Informe o Fonte da rotina | ||||||||||||||||
Função: | Informe o Nome do(s) produto(s) a ser utilizado ou “Todos” | ||||||||||||||||
Retorno: |
|
Exemplo:
#Include 'Protheus.ch'
User Function CN120ALT()
Local aCab:= PARAMIXB[1]
Local cTipo:= PARAMIXB[2]
If cTipo == '1'
aCab[4][2]:= 'NF' //Validações do usuário
EndIf
Return aCab