Árvore de páginas

Versões comparadas

Chave

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

Não publicar esta página

Este material deve ser usado pelos times de desenvolvimento do Automação Fiscal, tanto na etapa de desenvolvimento, quanto no CODE REVIEW, teste unitário e teste integrado.

ESCOPO E-SOCIAL

Cadastro MVC

  • Inclusão de todos os campos do cadastro validando gatilho e consulta padrão, inclusive para as GRIDs ( filhos, netos, etc.. ), sendo que cada GRID deve ter ao menos 3 linhas de registro incluído;
  • Integração do XML gerado na linha acima pela TAFST2, validando se todas as informações foram integradas corretamente;
  • Preencher ao menos um campo de cada GRID existente no cadastro, realizar a geração do XML e validar Schema transmitindo com o TSS;

Eventos de Tabela

  • Integracao/Cadastro do evento com Inclusão utilizando uma vigência diferente da anterior, o sistema deve acatar a Integracao e não realizar o versionamento.
  • Integracao/Cadastro do evento como alteracao utilizando a mesma vigência, o sistema deve criar uma nova versão do evento se o mesmo estiver transmitido (status 4), caso contrario deve realizar a alteracao direta.

Eventos Não Periódicos

S- 2230

  • Integração de Fim de afastamento informando o TAFKEY do predecessor
  • Integração de retificação do fim de afastamento informando o TAFKEY do predecessor

Eventos Periódicos


S-1200:

  • Validar a Integração e Transmisão de uma folha com multiplos vinculos na mesma filial
  • Validar a Integração e Transmisão de uma folha com multiplos vinculos em filiais diferentes
  • Validar a Integração e Transmissão de uma folha agluitnada
  • Validar a Integração e Transmissão de uma folha agluitnada após a transmissão do primeiro vinculo.
  • Validar a Integração de uma folha para um trabalhador autônomo RPA (infocomplem)

S-1210 

  • Validar a Integração e Transmisão de um pagamento  com multiplos vinculos na mesma filial
  • Validar a Integração e Transmisão de um pagamento  com multiplos vinculos em filiais diferentes
  • Validar a Integração e Transmissão de um pagamento  agluitnad
  • Validar a Integração e Transmissão de uma folha agluitnada após a transmissão do primeiro vinculo.

Painel INSS / Relatório INSS

Painel FGTS

Painel Transmissão eSocial

ESCOPO TAF FISCAL

Cadastro MVC

Cadastro Movimento

  • Inclusão de todos os campos do cadastro validando gatilho e consulta padrão, inclusive para as GRIDs ( filhos, netos, etc.. ), sendo que cada GRID deve ter ao menos 3 linhas de registro incluído;
  • Alteração do registro incluído na linha acima, colocando mais 1 registro em cada GRID e mudando 3 campos do cabeçalho do cadastro;
  • Exclusão do item alterado acima;

Cadastro Espelho

  • Gerar XML do evento através da opção "Gerar XML / Gerar XML em lote";
  • Excluir evento não transmitido;
  • Excluir evento transmitido e validar a geração do evento R-9000;

PAINEL REINF

Eventos de Tabela

  • R-1000 
    • (Automatizado ? ) Validar a remoção do contribuinte no ambiente de testes da Receita 
     
    • Validar a inclusão e transmissão de um evento R-1000 preenchendo todos os campos da C1E.
     
    • Validar a inclusão e transmissão de um evento R-1000 deixando um campo obrigatório em branco (validação de erros retornados pelo RET)
     
    • Enviar uma alteração de evento R-1000
  • R-1070
    • Validar a inclusão e transmissão de um evento de processo referenciado (R-1070)
    • Validar a inclusão e transmissão de um evento de processo referenciado com erro de transmissão pelo RET
    • Enviar uma alteração de evento R-1070

Eventos Periódicos

  • R-2010
    • Validar e transmitir um evento R-2010 com processo referenciado
    • Validar e transmitir um evento R-2010 com um documento fiscal que possua CNO, deve preencher o campo T95_INDCPR = 1
    • Validar e transmitir um evento R-2010 com um documento fiscal que não possua CNO, deve preencher o campo T95_INDCPR = 0
    • Validar e transmitir um evento R-2010 que seja rejeitado pelo RET.
    • Excluir um evento R-2010 que não foi transmitido
    • Excluir um evento R-2010 que já foi transmitido (Gerar e transmitir R-9000).
    • Enviar uma retificação de um evento R-2010
  • R-2020
    • Validar e transmitir um evento R-2020 com processo referenciado
    • Validar e transmitir um evento R-2020 com retenção adicional
    • Validar e transmitir um evento R-2020 que seja rejeitado pelo RET.
    • Excluir um evento R-2020 que não foi transmitido
    • Excluir um evento R-2020 que já foi transmitido (Gerar e transmitir R-9000).
    • Enviar uma retificação de um evento R-2020
  • R-2030
    • Validar e transmitir um evento R-2030 com processo referenciado
    • Validar e transmitir um evento R-2030 configurado para apurar pela baixa
    • Validar e transmitir um evento R-2030 configurado para apurar pela emissão
    • Validar e transmitir um evento R-2030 que seja rejeitado pelo RET.
    • Excluir um evento R-2030 que não foi transmitido
    • Excluir um evento R-2030 que já foi transmitido (Gerar e transmitir R-9000).
    • Enviar uma retificação de um evento R-2030
  • R-2040
    • Validar e transmitir um evento R-2040 com processo referenciado
    • Validar e transmitir um evento R-2040 configurado para apurar pela baixa
    • Validar e transmitir um evento R-2040 configurado para apurar pela emissão
    • Validar e transmitir um evento R-2040 que seja rejeitado pelo RET.
    • Excluir um evento R-2040 que não foi transmitido
    • Excluir um evento R-2040 que já foi transmitido (Gerar e transmitir R-9000).
    • Enviar uma retificação de um evento R-2040
  • R-2050
    • Validar e transmitir um evento R-2050 com processo referenciado
    • Validar e transmitir um evento R-2050 sem processo referenciado
    • Validar e transmitir um evento R-2050 que seja rejeitado pelo RET.
    • Excluir um evento R-2050 que não foi transmitido
    • Excluir um evento R-2050 que já foi transmitido (Gerar e transmitir R-9000).
    • Enviar uma retificação de um evento R-2050
  • R-2055
    • Validar e transmitir um evento R-2055 com processo referenciado
    • Validar e transmitir um evento R-2055 sem processo referenciado
    • Validar e transmitir um evento R-2055 que seja rejeitado pelo RET.
    • Excluir um evento R-2055 que não foi transmitido
    • Excluir um evento R-2055 que já foi transmitido (Gerar e transmitir R-9000).
    • Enviar uma retificação de um evento R-2055
    • Validar e transmitir um evento R-2055 com notas fiscais de 2 fornecedores diferentes em filiais diferentes
    • Validar e transmitir um evento R-2055 com participante optante pela folha de pagamento (o campo V5S_INDCP deve estar com 2 e o R-5001 não deverá ter valores a recolher)
  • R-2060
    • Validar e transmitir um evento R-2060 com processo referenciado
    • Validar e transmitir um evento R-2060 sem processo referenciado
    • Validar e transmitir um evento R-2060 que seja rejeitado pelo RET.
    • Excluir um evento R-2060 que não foi transmitido
    • Excluir um evento R-2060 que já foi transmitido (Gerar e transmitir R-9000).
    • Enviar uma retificação de um evento R-2060
    • Validar e transmitir eventos R-2060 com códigos de atividade diferentes (será gerado uma linha na V0T para cada código e os valores da V0S devem ser iguais a soma dos valores da V0V).

Eventos de fechamento

  • Realizar o fechamento (R-2099), a reabertura (R-2098) e um novo fechamento (R-2099). Avaliar a gravação do totalizador R-5011, para identificar se apenas o ultimo fechamento fica como válido nas tabelas de retorno
  • Realizar o fechamento de um período que já se encontra fechado no RET (Simular via APSDU como se o fechamento tivesse sido efetuado pelo eCac). Avaliar se as mensagens de erro de transmissão são apresentadas no PO UI.

Relatórios

  • Gerar o relatório de todos os eventos transmitidos e comparar com o valor apresentado na tabela espelho
  • Gerar o relatório dos totalizadores.

ECF

Apuração LALUR/LACS


GIA

  • Integrar documentos fiscais de entrada e saída com cálculo de ICMS Próprio, ICMS ST, notas fiscais de transporte com código de DIPAM B (SPDIPAM23), Notas fiscais de transferência de crédito/débito e notas fiscais de venda para zona franca de Manaus. A integração destes documentos deverá ser realizada via TSI.
  • Integrar apurações de ICMS com códigos de ajustes (subitem) necessários para gerar os registros CR=20, CR=25 e CR=28. Realizar a integração via TSI.
  • Gerar arquivo da GIA e validá-lo no programa de validação da GIA-SP. Devem ser gerados os registros CR=05, CR=10, CR=14, CR=18, CR=20, CR=25, CR=28 e CR=30. Apenas o CR=28 pode apresentar erro de validação (numero do protocolo de autenticação inválido).
  • Integrar documentos fiscais de entrada e saída com cálculo de ICMS Próprio, ICMS ST, notas fiscais de transporte com código de DIPAM B (SPDIPAM23), Notas fiscais de transferência de crédito/débito e notas fiscais de venda para zona franca de Manaus. A integração destes documentos deverá ser realizada via extrator fiscal (banco a banco e via txt).
  • Integrar apurações de ICMS com códigos de ajustes (subitem) necessários para gerar os registros CR=20, CR=25 e CR=28. Realizar a integração via Extrator fiscal (banco a banco e txt).
  • Gerar arquivo da GIA e validá-lo no programa de validação da GIA-SP. Devem ser gerados os registros CR=05, CR=10, CR=14, CR=18, CR=20, CR=25, CR=28 e CR=30. Apenas o CR=28 pode apresentar erro de validação (numero do protocolo de autenticação inválido).

VALIDAÇÕES OBRIGATÓRIAS

  • SONARQUBE - Obrigatório utilizar o PLUG IN do link a seguir para expedição da issue ( https://code.engpro.totvs.com.br/engpro/vscode-engpro-extension/wiki/Sonar-%28PT-BR%29 );
  • QueryAnalyzer - Quando existir query submeter a mesma e corrigir os erros encontrados ( https://esp.engpro.totvs.com.br/menu/query-analyzer );
  • Robô de Automação - Obrigatório executar o robô de automação para a rotina que foi alterada e corrigir as quebras que forem apresentadas ( mesmo quando já for um erro pré-existente);
  • Issues x Cobertura 
  • Proteção de chamada de função externa ( Não seja de domínio do TAF, como por exemplo - LIB, outros módulos, etc.. );
  • Proteção de dicionário de dados quando criado campo, índice, gatilho, consulta padrão, tabela;
  • Atualização da documentação da rotina em questão com o novo incremento que foi feito ( deve ser aplicado quando não for apenas ajuste/correção de erro );

PONTOS DE ATENÇÃO NA CODIFICAÇÃO

  • Quando criado um laço que alimenta uma STRING ( por exemplo, montar o "IN" de uma query ) deve-se avaliar o tamanho máximo que aquela STRING pode chegar, evitando assim o erro de "String Size Overflow"/"query greater than", etc...
  • Proteger o acesso direto a um índice do array/objeto pois pode ocorrer daquela posição/método não existir naquele contexto, precisa estar protegido para evitar o famoso erro "array out of bounds";



Índice