Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.



 Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.                                                             

  

Informações Gerais

 

Especificação

Produto

 RM

Módulo

 Fiscal

Segmento Executor

 Educacional

Projeto1

REINF Integração RM X TAF

IRM1


Requisito1

FISCAL01-3559

Subtarefa1


Chamado2


Release de Entrega Planejada

12.1.20

Réplica: 12.1.18, 12.1.19


País

(x) Brasil  (  ) Argentina  (  ) Mexico  (  ) Chile  (  ) Paraguai  (  ) Equador

(  ) USA  (  ) Colombia   (  ) Outro _____________.

Outros

<Caso necessário informe outras referências que sejam pertinentes a esta especificação. Exemplo: links de outros documentos ou subtarefas relacionadas>

Objetivo

Implementar cadastro de controle das integrações das informações do RM para o TAF para a geração da REINF

Definição da Regra de Negócio

  • As informações serão geradas através do Gerador de Saídas em layout específico para este fim.
  • Os registros serão gravados em uma tabela a ser criada que será especificada adiante neste documento.
  • A visualização dos registros será feita através de cadastro a ser desenvolvido.
    • O cadastro deverá permitir a visualização dos registro em lista na qual poderão ser selecionados um ou mais registros para a  execução do processo de integração com o TAF
    • O cadastro deverá permitira a abertura dos registros somente para a visualização. Não será permitida a edição ou inclusão de registros.
  • Os registros desta visão deverão possuir um anexo onde será armazenado o log da integração, semelhante ao existente na visão de Notas Fiscais Eletrônicas.
  • Através deste cadastro será feita a integração das informações com o TAF.
    • Execução do processo para um único registro.
    • Execução do processo para mais de um registro ao mesmo tempo. 
  • Os registro ter seu status controlados de acordo com os processos executados. Eles poderão assumir os seguintes valores:
    • 1 - Incluído: Status inicial do registro quando ele é gravado no banco de dados e que ainda não foi integrado com o TAF. 
    • 2 - Alterado: Registro pré-existente que foi gravado novamente após o registro do RM que o originou ter sofrido alguma alteração. O registro com este status ainda não foi integrado novamente.
    • 3 -Registro não integrado com erro.
    • 4 -Registro integrado com sucesso com o TAF.
    • 5- Registro integrado via banco de dados.
  • Cada registro deverá indicar sua origem conforme relação a ser criada com base nos registros do layout TAF conforme exemplo abaixo:
    • Registro TAF T001 - Complemento do Cadastro de Estabelecimentos  => Cadastro de Filiais no RM.
    • Registro TAF T013 - Cadastro de Documentos Fiscais => Lançamentos de Entrada/Saída no RM.
  • Deverá ser feito o controle dos registros do RM que já foram integrados para que no processo possa-se escolher integrar todos os registros, somente os não integrados ou somente os já integrados.
  • Para que não sejam gerados problemas de performance a tabela que armazena os registros da integração será incluída no processo de Liberação de Período.
  • O envio das informações da REINF para a receita e controle de seus recibos será feito somente pelo TAF não sendo retornadas para o TOTVS Gestão Fiscal. 
  • O TOTVS Gestão Fiscal fará somente o controle das informações integradas com o TAF para a geração da REINF.


Especificação das tabelas a serem criadas para auxiliar o processo

Nome da Tabela: DINTEGRACAOTAF

A tabela deverá ser criada com a mesma estrutura da TAFST1 para que não tenhamos de alterar o layout de integração banco X banco já existente. A  A tabela poderá ser alterada de acordo com necessidades surgidas no momento da implementação porém a existências existência destes campos é obrigatória para a comunicação com o webservice do TAF. 

Uma vez que os dados desta tabela serão a ligação entre as informações do TOTVS Gestão Fiscal e o TAF não será permitida a exclusão dos mesmo. Para solucionar um possível problema com performance deverá ser criada uma tabela espelho desta (DINTEGRACAOTAFHIST) para que os registros desta tabela sejam transferidos via processo de Liberação de Período. 

CAMPOTIPOCOMPUTEDTAMANHOPRECISÃOSCALEPERMITE NULODESCRIÇÃO
CODCOLIGADAintno-

nãoCódigo da Coligada
IDINTEGRACAOTAFintno-

nãoID de Integração RM x TAF
TAFFILvarcharno40          nosimEmpresa e Filial de integração
TAFCODMSGvarcharno1          nonãoTipo da mensagem de integração
TAFSEQvarcharno3          nosimSequencial da mensagem de integração
TAFTPREGvarcharno10          nosimTipo do Registro a ser integrado
TAFKEYvarcharno100          nosimChave do Registro a ser integrado
TAFMSGtextno16          yessimMensagem de integração
TAFSTATUSvarcharno1          noStatus do Registro
TAFIDTHRDvarcharno10          noCódigo da Thread que processou o registro
TAFTICKETvarcharno36          noCódigo do Ticket ( Lote ) em que o registro foi integrado
TAFDATAvarcharno8          noData de integração do registro
TAFHORAvarcharno8          noHora de integração do registro
D_E_L_E_T_varcharno1          noRegistro deletado
R_E_C_N_O_intno4100noSequencial do registro
R_E_C_D_E_L_intno4100noControle de registro deletado em tabela com chave única

Observação: O tipo dos campos foram espelhados nas configurações da tabela TAFST1. Poderão ser alterados de acordo com os padrões da base do RM. Se for necessário alteração na estrutura da tabela deve ser analisado se o layout TAF necessita de alteração também. O processo de integração deverá considerar os formatos exigidos pelo layout do TAF.

Índices sugeridos

NOMEDESCRICAOCHAVEDINTEGRACAO_PKclustered, unique, primary key located on PRIMARYR_E_C_N_O_DINTEGRACAO101nonclustered located on PRIMARYTAFFIL, TAFCODMSG, TAFSEQ, TAFKEY, R_E_C_N_O_, D_E_L_E_T_DINTEGRACAO102nonclustered located on PRIMARYTAFSTATUS, TAFIDTHRD, TAFKEY, TAFSEQ, R_E_C_N_O_, D_E_L_E_T_DINTEGRACAO103nonclustered located on PRIMARYTAFSTATUS, TAFCODMSG, TAFKEY, TAFSEQ, R_E_C_N_O_, D_E_L_E_T_DINTEGRACAO104nonclustered located on PRIMARYTAFSTATUS, TAFIDTHRD, TAFTPREG, TAFTICKET, TAFKEY, TAFSEQ, R_E_C_N_O_, D_E_L_E_T_DINTEGRACAO105nonclustered located on PRIMARYTAFTICKET, TAFKEY, R_E_C_N_O_, D_E_L_E_T_DINTEGRACAO106nonclustered located on PRIMARYTAFFIL, TAFSTATUS, TAFCODMSG, TAFTICKET, TAFKEY, TAFSEQ, R_E_C_N_O_, D_E_L_E_T_
simStatus do Registro

Observação: Estes índices são espelhados nas configurações da tabela TAFST1 e poderão ser alterados de acordo com os padrões da base RM.

Tabela de log da integração

Nome da Tabela: DINTEGRACAOTAFLOG

Nesta tabela devem ser gravados os registros referentes às tentativas de integração do registro RM com o TAF.

CAMPOTIPOTAMANHODESCRIÇÃO
CODCOLIGADAint

-

Código da Coligada
IDLOGint

-

Id do Log da Integração RM x TAF
DATALOGdatetime
Data do Log da Integração RM x TAF
CODIGOERROint6Código do erro na Integração RM x TAF
MENSAGEMmemo

256

Log da Integração RM x TAF
R_E_C_N_O_IDINTEGRACAOTAFint-Sequencial do registro da DINTEGRACAOTAF


Observação: Esta tabela também deverá ser incluída no processo de Liberação de Período. Os registros serão gravados por este processo na tabela DINTEGRACAOTAFLOGHIST. Esta implementação será entregue em liberações futuras.


Parametrização

Para atender ao processo de integração das informações da REINF com o TAF será necessário que sejam criados alguns parâmetros que deverão ser preenchidos pelo usuário de acordo com o seu ambiente TAF.

Localização: Processo 03.05 - Integração | 03.05.05 - TAF

Servidor:  Onde o TAF está instalado (de onde o webservice da REINF é distribuído)

Porta:  Pota na qual o webservice da REINF escuta

Usuário:  O mesmo utilizado para  login no TAF

Senha: A mesma utilizada para login no TAF

Tela

obs.: Caso na Base de Dados não seja encontrado o Script com os Parâmetros da Integração com o TAF, será visualizada uma mensagem informando a inconsistência.

O Cadastro


No menu Obrigações Fiscais | TAF, o sub-menu de nome TAF-Fiscal terá seu nome alterado para Integração RM X TAF e passara a carregar a visão de registros de integração no lugar a tela de geração da integração. Esta passará a ser carregada pelo menu de processos deste novo cadastro.


Para os registro deverá ser criado um anexo para armazenar as operações de integração e erros ocorridos.


 Os registros não poderão ser editados ou excluídos mas deverá ser criada uma tela de visualização para os mesmos conforme modelo abaixo.


A geração da integração (execução do layout TAF do gerador de saídas) poderá ser chamada pelo menu de processos do cadastro e também pelo menu Obrigações Acessórias | TAF. Avaliar a possibilidade de criação de um processo para a exportação do XML que será retornado pelo TAF.   




Descrição do processo

Menu de processos atual:



Novos processo a serem criados:

O parâmetro Nome da tabela do TAF deve ser alterado para o nome da nova tabela criada

  • Os registros de integração devem ser gerados com o layout do gerador de saídas exclusivamente criado para este processo. Esta geração poderá ser disparada de  dentro do cadastro Integração RM X TAF no menu de Processos. Esta etapa irá:
    • Gravar os registros e integração na tabela DINTEGRACAOTAF
    • Marcar os lançamentos selecionados no processo como já exportados. Para isto deverá ser utilizado o campo DLAF.STATUSEXPORTFAZ
  • Quando o usuário selecionar no menu Processos a opção Integrar Registro para o TAF: 
    • Se não houver nenhum registro selecionado na visão deverá ser aberta uma tela para que sejam informados parâmetros para que seja integrado um intervalo de registros. O filtro poderá ser por Data e Identificador por exemplo.
    • Se houver registros selecionados somente estes serão integrados.
    • Após o envio o status do registro deverá ser alterado
    • O webservice de integração com o TAF
      • Para mais informações a respeito acesse: http://tdn.totvs.com.br/pages/viewpage.action?pageId=270904682
      • Para a integração dos registros deve-se chamar o método POST do webservice : O objetivo do método é enviar informações que devem ser gravadas na tabela transacional do TAF  ( TAFST2 ), permitindo que os dados sejam submetidos aos processos de integração.
      • Para consultar o status da integração deve-se chamar o método GET do webservice: O método GET retorna os status dos registros integrados de acordo com os parâmetros (atributos) enviados na URL.
      • Para deletar um registro ou conjunto de registros deve-se chamar o método DELETE: O método DELETE permite excluir toda a cadeia de integração de um TAFTICKET; Um ticket submetido a exclusão tem seus TAFKEYS avaliados, rastreados e excluídos, desde a sua inclusão na TAFST2 e TAFXERP até o cadastro no TAF caso já tenha ocorrido o Processamento. 

 Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.