Diogo Loff Postado 9 Janeiro Compartilhar Postado 9 Janeiro Boa tarde, já tem mais de um ano que a Prefeitura de Morro da Fumaça / SC, trocou o sistema da Betha pelo IPM. Sempre que realizo a atualização do acbr tenho que atualizar o arquivo ACBrNFSeXServicos.ini. Segue as informações corretas da cidade. Nome=Morro da Fumaca UF=SC Provedor=IPM Versao=1.01 ProRecepcionar=https://morrodafumaca.atende.net/?pg=rest&service=WNERestServiceNFSe HomRecepcionar=https://morrodafumaca.atende.net/?pg=rest&service=WNERestServiceNFSe Além disto sempre tem duas correções que são necessárias fazer no componente. Componente atualizado 09/01/2024 e ainda permance a situação. Correção 1: IPM.GravarXML.pas function TNFSeW_IPM.GerarXml: Boolean; Apartir da linha 132, precisa de um identificador diferente para quando esta em homologação, como sabemos o IPM não tem homologação em alguns municípios, e é obrigatório usar o ambiente de produção, ocorre que a além da tag nfse_teste que deve ser informada, é ideal que a tag do identidicador seja diferente do produção, porque? Vou dar o exemplo do Morro da Fumaça, eles não permitem usar uma série diferente da de produção, então se você realiza testes com o identificador igual ao de produção, a numeração da nota de teste com a nota de produção começa conflitar, e o cliente perde a sequencia da NF. Como sugestão aqui eu fixei quando esta em testes para que o identificado seja "'nfseh_' + NFSe.IdentificacaoRps.Numero + '.' + NFSe.IdentificacaoRps.Serie", e isto tem me permitido realizar os testes sem bagunçar os dados do cliente lá na prefeitura. Aqui esta o bloco alterado: if (VersaoNFSe in [ve100, ve101]) and (Ambiente = taHomologacao) then begin if not FpNaoGerarGrupoRps then NFSeNode.AppendChild(AddNode(tcStr, '#2', 'identificador', 1, 80, 0, 'nfseh_' + NFSe.IdentificacaoRps.Numero + '.' + NFSe.IdentificacaoRps.Serie, '')); NFSeNode.AppendChild(AddNode(tcStr, '#3', 'nfse_teste', 1, 1, 1, '1', '')); end else begin if not FpNaoGerarGrupoRps then NFSeNode.AppendChild(AddNode(tcStr, '#2', 'identificador', 1, 80, 0, 'nfse_' + NFSe.IdentificacaoRps.Numero + '.' + NFSe.IdentificacaoRps.Serie, '')); end; Correção 2: IPM.LerXml.pas procedure TNFSeR_IPM.LerNota(const ANode: TACBrXmlNode); Não esta alimentando a competencia que vem automático pela prefeitura. Adicionar no corpo do procedimento: Competencia := StrToDateDef(ObterConteudo(AuxNode.Childrens.FindAnyNs('data_fato'), tcStr), 0); Agradeço se puderem implementar estas questões, pois a cada atualização que realizo do Acbr acabo tendo que sempre conferir estes itens e ajustar. Link para o comentário Compartilhar em outros sites More sharing options...
Consultores Alexandre de Paula Postado 9 Janeiro Consultores Compartilhar Postado 9 Janeiro Boa tarde, Poderia anexar os arquivos alterados para avaliação? Obrigado. Alexandre de Paula Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (15)99790-2976. Discord Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil Link para o comentário Compartilhar em outros sites More sharing options...
Solution Diogo Loff Postado 9 Janeiro Autor Solution Compartilhar Postado 9 Janeiro Segue: IPM.LerXml.pas IPM.GravarXml.pas Link para o comentário Compartilhar em outros sites More sharing options...
Consultores Alexandre de Paula Postado 9 Janeiro Consultores Compartilhar Postado 9 Janeiro Boa tarde, Criada a TK-4960 para avaliação. Obrigado pela contribuição. 1 Alexandre de Paula Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (15)99790-2976. Discord Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil Link para o comentário Compartilhar em outros sites More sharing options...
Consultores Italo Giurizzato Junior Postado 10 Janeiro Consultores Compartilhar Postado 10 Janeiro Boa tarde Diogo, Esta correta a ordem das tags? No caso de homologação a tag <nfse_teste> vem depois da tag <identificador> (antes estava o inverso) ? Abaixo temos um fragmento do manual que mostra a tag <nfse_teste> mas infelizmente não mostra a tag <identificador>. Italo Giurizzato Junior Ajude o Projeto ACBr crescer - Assine o SAC Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP Araraquara - A era dos Trólebus Link para o comentário Compartilhar em outros sites More sharing options...
Diogo Loff Postado 10 Janeiro Autor Compartilhar Postado 10 Janeiro 4 horas atrás, Italo Giurizzato Junior disse: Boa tarde Diogo, Esta correta a ordem das tags? No caso de homologação a tag <nfse_teste> vem depois da tag <identificador> (antes estava o inverso) ? Abaixo temos um fragmento do manual que mostra a tag <nfse_teste> mas infelizmente não mostra a tag <identificador>. Oi Italo, na realidade ali a ordem não interfere, o idendificador pode vir depois não tem problema. A questão mesmo é que o identificador precisa ser diferente se não acaba misturando numeração com a oficial do cliente. Como coloquei ali eu adicionei um "h" no identificador para distinguir o teste, pois eles não aceitam a série diferente, em fim vai entender. O IPM é precario em documentação, diria um dos mais, e tem questões que depois de muito tempo bater cabeça com o suporte deles você acaba resolvendo. Mas em fim isto já ta rodando a bastante tempo, e não tenho tido problemas, aqui esta o print de como fica no envio o RPS e depois como Retorna deles. Se por acaso você envia em testes com o mesmo identificador do produção, começa misturar notas com do cliente, um exemplo. Digamos que eu na minha base de testes esteja com numeração inferior a do cliente, quando eu gero meu teste e o identificador é o mesmo de produção, acaba dando problema de RPS já informado e se consulta vem a nota que o cliente emitiu lá em produção anteriormente. Agora ao contrário, se por acaso você esta com númeração acima do cliente e faz o teste ai o pepino é maior, porque quando o cliente atinge o mesmo número ele não consegue mais seguir, trava a sequencia, e só ligando para prefeitura e IPM para resolver. Agora se no teste você também gera com um indentificador diferente ai este problema fica resolvido. Segue anexo os prints de como fica. Link para o comentário Compartilhar em outros sites More sharing options...
Consultores Italo Giurizzato Junior Postado 11 Janeiro Consultores Compartilhar Postado 11 Janeiro Bom dia Diogo, Já esta no SVN. 1 Italo Giurizzato Junior Ajude o Projeto ACBr crescer - Assine o SAC Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP Araraquara - A era dos Trólebus Link para o comentário Compartilhar em outros sites More sharing options...
Diogo Loff Postado 11 Janeiro Autor Compartilhar Postado 11 Janeiro Valeu, fechou! Link para o comentário Compartilhar em outros sites More sharing options...
Consultores Italo Giurizzato Junior Postado 11 Janeiro Consultores Compartilhar Postado 11 Janeiro Obrigado por reportar. Fechando. Para novas dúvidas, criar um novo tópico. Italo Giurizzato Junior Ajude o Projeto ACBr crescer - Assine o SAC Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP Araraquara - A era dos Trólebus Link para o comentário Compartilhar em outros sites More sharing options...
Recommended Posts