01. DADOS GERAIS
Produto: | TOTVS Backoffice |
---|---|
Linha de Produto: | Linha Protheus |
Segmento: | Serviços |
Módulo: | Livros Fiscais - SIGAFIS |
Função: | DESTDA.INI DESTDA.PRW |
País: | Brasil |
Ticket: | 10012005 |
Requisito/Story/Issue (informe o requisito relacionado) : | DSERFIS1-23966 |
02. SITUAÇÃO/REQUISITO
Rotina não gera os registros 9900 (totalizadores) para cada registro do arquivo; é gerado apenas um registro 9900 e sem o campo 02 [LIN_BLC] o que gera um erro de estrutura que impede a importação do arquivo para posterior validação.
03. SOLUÇÃO
Para a correção do problema original, foram necessárias 2 intervenções:
- DESTDA.PRW: correção dos totalizadores (não estavam sendo incrementados) e criação de uma tabela temporária para armazená-los e consumi-los em DESTDA.INI;
- DESTDA.INI: criação de novas seções para totalização dos registros.
Outros problemas sinalizados na etapa de validação e suas respectivas correções:
Registro 0000
Formato do campo CPF é criticado pelo validador quando o contribuinte é PJ (na tela do Wizard é passado o valor 0 que é formatado como 00000000000). No DESTDA.INI foi adicionada uma condição ternária para passar como parâmetro apenas CPFs diferentes de 00000000000 (quando preenchido no Wizard), caso contrário, será retornada uma string vazia.
Registro 0005
Tamanho do campo END (endereço) ultrapassa o limite permitido (40 caracteres). No DESTDA.INI o valor retornado pelo Wizard será truncado em 40 caracteres pela função Left;
Função retorna o valor errado para o campo CPF. No DESTDA.INI a posição do array que armazena a informação foi corrigida.
Registro 0030
Campos para os quais o validador exige valor nulo. No DESTDA.INI foi passado como parâmetro uma string vazia.
Registros G600, G605, G620 e G625
Dado que o campo para armazenar o registro foi criado com tamanho 500, na geração do arquivo o registro é gerado com espaços em branco após o pipe final, o que impede a validação. No DESTDA.INI a forma como os delimitadores são gerados foi alterada; e no DESTDA.PRW o pipe final das strings de cada registro foi eliminado, uma vez que a rotina em DESTDA.INI o acrescenta e trunca o campo com o tamanho adequado.
Registro G605
O ato COTEPE 47 (e o validador) preconiza que o registro G605 deve ocorrer 4 vezes, uma para cada indicador de situação de diferencial de alíquota e antecipação em operações interestaduais. Então, no DESTDA.PRW uma iteração foi adicionada para gerar o número correto de ocorrências para o registro.
Registro G620
O validador preconiza que seja gerado apenas uma ocorrência do registro G620. Desta forma, no DESTDA.PRW a rotina que originalmente gerava dois registros G620 (para entradas e para saídas) foi corrigida para que apenas um registro fosse gerado.
Registro G625
O validador exige que existam ocorrências desse registro para cada combinação das UFs constantes no registro 0002 e para a UF do registro 0001 com cada um dos indicadores do tipo de valor de ST. No DESTDA.PRW foi criado um array para armazenar as UFs de ST, passadas por parâmetro para a função GERAG620 e a UF de residência; duas iterações foram adicionadas para gerar o número correto de ocorrências para o registro.
Registros 9020 e 9030
Campos obrigatórios não preenchidos. No DESTDA.INI o registro foi ignorado, pois a rotina não oferece suporte para “ARQUIVOS ASSOCIADOS”
04. DEMAIS INFORMAÇÕES
Não se aplica.
05. ASSUNTOS RELACIONADOS