Em Janeiro/2017 o Sped passou a validar as informações do "Documento Referenciado" localizado no programa CD4035. Tivemos alguns problemas sobre esse assunto que foram tratados via manutenção, apenas para liberar os clientes, pois barrava o Sped. O objetivo dessa especificação é refazer a parte que carrega as informações do "Documento Referenciado" para as notas de Devolução de Cliente, tratando todos os campos (o que não ocorre atualmente no sistema, pois existem campos que não tem tratamento) e também todas as formas de lançamento da nota: Recebimento Físico, Recebimento Fiscal e via Conversor de Entrada. Dessa forma, o objetivo é unificar toda a criação do Documento Referenciado em uma única API e, de acordo com o tipo de documento, considerar apenas a procedure dessa API. Atualmente a criação é separada por tipo de documento, e dependendo de onde ocorre a criação, se no Recebimento Físico, Fiscal ou Conversor. Com essa alteração, a criação do documento referenciado será igual, independente do programa que criou a nota. 1. Campos que precisam ser preenchidos no lançamento do Documento Referenciado: Ao lançar uma nota de devolução de cliente, que seja informado o documento de origem, os dados do Documento Referenciado devem ser criados automaticamente no CD4035, após ter sido informada a nota fiscal de origem. Para criar a tt-nota-fisc-adc, deverá ser verificado o seguinte: 1.1 Dados do Cabeçalho Esses campos devem ser preenchidos com os dados da nota de Devolução (que foi lançada no RE1001): tt-nota-fisc-adc.cod-estab: Código do Estabelecimento da nota de Devolução; tt-nota-fisc-adc.cod-serie: Código da série da nota de Devolução; tt-nota-fisc-adc.cod-nota-fisc: Número da Nota Fiscal de Devolução; tt-nota-fisc-adc.cdn-emitente: Código do Emitente da nota de Devolução; tt-nota-fisc-adc.cod-natur-operac: Natureza de Operação da nota de Devolução (da nota de entrada, informado no RE1001); 1.2 Dados do Documento Referenciado
Esses campos devem ser preenchidos com os dados da nota de venda (saída): tt-nota-fisc-adc.idi-tip-dado = 3 tt-nota-fisc-adc.cod-ser-docto-referado = Código da série do Documento de Venda(it-nota-fisc.serie); tt-nota-fisc-adc.cod-docto-referado = Número da Nota Fiscal de Venda (saída) (it-nota-fisc.nr-nota-fis); tt-nota-fisc-adc.cdn-emit-docto-referado = Código do Emitente da nota venda (saída) (it-nota-fisc.cd-emitente). 1.3 Chave e Modelo
Para preencher o modelo e a chave, deve ser buscado se a nota de venda teve chave. Se sim, busca-se o modelo da própria chave. Se não, busca-se o modelo da natureza de operação da nota de venda. OVERLAY(tt-nota-fisc-adc.cod-livre-2,1,60) = NOTA-FISCAL.COD-CHAVE-ACES-NF-ELETRO tt-nota-fisc-adc.cod-model-docto-referado = substring(NOTA-FISCAL.COD-CHAVE-ACES-NF-ELETRO,21,2). Se a informação da NOTA-FISCAL.COD-CHAVE-ACES-NF-ELETRO for igual a branca, o campo chave de acesso (OVERLAY(tt-nota-fisc-adc.cod-livre-2,1,60)) deve ficar igual a branco e o modelo deve ter o mesmo modelo da natureza (NATUR-OPER.COD-MODEL-NF-ELETRO). 1.4 Data de Emissão do Documento
Esta é a data de emissão do documento de venda: tt-nota-fisc-adc.dat-docto-referado = it-nota-fisc.dt-emis-nota 1.5 Indicador do Tipo de Operação
Como nesse caso é referenciada uma nota de venda (saída), o Indicador do Tipo de Operação deve ser "Saída/Prestação): tt-nota-fisc-adc.idi-tip-docto-referado = 2 1.6 Indicador do Emitente do Título
A lógica para informar o "Indicador do emitente do Título", se é "Emissão Própria" ou "Terceiros" deve-se buscar no cadastro do Estabelecimento, o mesmo estabelecimento da nota fiscal e comparar o CNPJ do estabelecimento com o CNPJ da chave de acesso. Se for o mesmo CNPJ, o emitente é próprio. Se não, é terceiros. FIND FIRST estabelec WHERE estabelec.cod-estabel = nota-fisc-adc.cod-estab NO-LOCK NO-ERROR. IF AVAIL estabelec THEN DO: IF estabelec.cgc = SUBSTRING(nota-fisc-adc.cod-livre-2,7,14) THEN ASSIGN nota-fisc-adc.idi-tip-emit = 1. ELSE ASSIGN nota-fisc-adc.idi-tip-emit = 2. END. Esses são os campos que precisam ser informados no lançamento do Documento Referenciado. 2. Quando o lançamento da Nota de Devolução for feita direto pelo RE1001 Atualmente, a lógica para criação do documento referenciado quando o documento de devolução de cliente é lançado direto pelo RE1001, está no próprio re1001e2.w na PROCEDURE notaFiscAdic. Será preciso remover a lógica desse programa e transferir a criação da temp-table pra uma API para centralizar todas as criações do documento referenciado em um só lugar (a criação da API é sugestão). Para a devolução de cliente, a lógica para criar o Documento Referenciado está apenas nesse ponto, não é necessário reavaliar na boin176.m21. Então, em vez de buscar a PROCEDURE notaFiscAdic, deverá ser buscada a nova procedure. É preciso garantir que, após a atualização da nota, os dados do Documento Referenciado fiquem disponíveis no CD4035, aberto a partir do RE0701 e também no OF0311. 3. Quando o lançamento da nota de Devolução for feita pelo RE2001 e depois atualizada para o RE1001 Quando a nota é lançada no Físico e depois atualizada para o fiscal, a criação do Documento Referenciado é feita na boin090.m15. Nesse caso, terá que ser feito um tratamento para que, quando for apenas nota de Devolução de Cliente, não efetue a lógica que já faz atualmente e que seja considerada a nova procedure para a criação do Documento Referenciado. Por se tratar de nota de Devolução de Cliente, é necessário realizar essa validação. Posteriormente, quando todas as notas tiverem sido tratadas, será necessário validar o tipo de nota e chamar a sua devida procedure. Essa criação ocorrerá no momento em que for buscada a nota do Recebimento Físico para o Fiscal. Também precisará ser garantido que, após a atualização da nota, os dados do Documento Referenciado estarão disponíveis no CD4035, aberto a partir do RE0701 e também no OF0311. 4. Quando o lançamento da nota de Devolução for feita via conversor gerando recebimento fiscal Quando a nota for lançada via conversor de entrada, a criação da tt-nota-fisc-adc ocorre na boin847.m1 (procedure reprocessaNota). Neste caso, é preciso incluir uma validação para quando for devolução de cliente, chame a mesma procedure que será criada. Dessa forma, todos os meios de criar o Documento Referenciado para devolução de Cliente serão centralizados no mesmo lugar. Como os demais tipos de nota não serão tratados ainda, a criação deve continuar da mesma forma, só mudará para a devolução de cliente. Da mesma forma que os demais programas, precisará ser garantido que, após a atualização da nota, os dados do Documento Referenciado estarão disponíveis no CD4035, aberto a partir do RE0701 e também no OF0311. 5. Quando o lançamento da nota de Devolução for feita via conversor gerando recebimento Físico e depois Fiscal Nesse contexto, a criação do documento referenciado é igual ao item 3 (a criação do Documento Referenciado é feita na boin090.m15). Será preciso apenas garantir que quando lançada a nota via Recebimento Físico e depois atualizado no Fiscal, quando a nota entra pelo Conversor, seja criado os campos do Documento Referenciado corretamente. |