Ir para conteúdo
  • Cadastre-se

Diogo Loff

Membros
  • Total de ítens

    177
  • Registro em

  • Última visita

  • Days Won

    1

Tudo que Diogo Loff postou

  1. Estou tentando implementar baixar o danfe PDF da IPM, mas esta dificil para mim, ontem fiquei inclusive até madrugada mas pouco sucesso. Vocês tem um passo a passo ou exemplo dos requisitos que preciso implementar para ter isto? Ontem testando o da Betha ele já faz, estou tentando me guiar por lá, mas as classes não estão casando. Estou com dificuldade em compreender que procedimentos tenho que ter. Estou perdido entre PrepararObterDANFSE TratarRetornoObterDANFSE ObterDANFSE CriarServiceClient A classe do IPM para a TACBrNFSeProviderIPM101 Eu já vi que tem estas rotinas envolvidas, mas esta dificil sem conhecer bem a base do componentes. Com um passo a passo eu consigo implementar isto, e disponibilizar aqui.
  2. Value @Juliomar Marchetti, tirando a questão do encoding ali, todo o passo a passo seu resolveu o problema da Betha, agora tenho a NFSe e a Impressão no formato Nacional.
  3. Creio que resolvi o problema de forma definitiva, se possivel verifiquem o post que fiz em uma questão da Betha.
  4. Fiz uma correção no provider, e creio que definitva, inclusive resolvi definitivamente outro problema da consulta do nacional quando o ambiente é direto, que inclusive tem um tópico só sobre ele aqui no forum, e que vocês estariam tentando soluções possiveis sobre o problema do encoding. Eu usei uma técnica que já uso em outras funções de integrações com outros sistemas no meu ERP, quando tem arquivos com problema de encoding que nunca se resolvem. Arquivo alterado "PadraoNacional.Provider" procedure TACBrNFSeProviderPadraoNacional.TratarRetornoConsultaNFSeporChave Linha 595 if NFSeXml <> '' then begin NFSeXmlFile := DeCompress(DecodeBase64(NFSeXml)); if IsUTF8String(NFSeXmlFile) then NFSeXml := UTF8ToAnsi(NFSeXmlFile) else NFSeXml := NFSeXmlFile; end; O que estou fazendo! O arquivo estou recebendo como esta, então para isto criei um atributo NFSeXmlFile, este uso somente para DocumentXml.LoadFromXml(NFSeXmlFile); já que irá usar como espelho para salvar o arquivo. E a variavel para fazer os tratamentos necessários continuo usando a que estava ali, mas só converto se realmente o que veio no arquivo for UTF8, a função IsUTF8String vem da uses WideStrUtils. Segue anexo o arquivo fonte. PadraoNacional.Provider.pas
  5. Descomentei uma linha em ACBrXmlDocument.pas procedure TACBrXmlDocument.LoadFromXml(AXmlDocument: string); // a linha abaixo foi comentada pois segundo o DSA consome muito a CPU e causa lentidão AXmlDocument := NativeStringToUTF8(AXmlDocument); Linha 1364 Esta linha estava comentada, eu descomentei e funcionou, mas não vou manter descomentado, pois não sei que impactos podem ter já que pelo que vi é um procedimento usado de forma ampla pelo componente.
  6. Valeu Julio, estou já testando aqui. Esta dando erro. Estou fazendo a consulta por Chave depois de pegar a situação. Na linha DocumentXml.LoadFromXml(NFSeXml); em procedure TACBrNFSeProviderPadraoNacional.TratarRetornoConsultaNFSeporChave Aparentemente os dados estão vindo certos quando estou debugando, não sei porque esta dando erro de encoding.
  7. Ola Deixei esta semana para resolver o problema da Betha no meu sistema devido a muitas incosistencias que estavam acontecendo. Pelo que testei esta funcionando já de uma forma minima viavel. O que eu me deparei. 1 - Não estão mais retornando a NFSe 2 - Não temos mais a impressão, pois era baseada na NFSe, por acaso tem algum modo de impressão baseado somente no RPS? 3 - Como estão fazendo a impressão se não tiver algo pronto, e também o envio de email pelo sistema? Quem estiver trabalhando com a Betha e puder compartilhar a estratégia feita, agradeço. Eu agora somente estou conseguindo enviar o RPS, e ler a situação.
  8. Sim justamente tentei esta função ali, e não consegui, mesmo forçando os parâmetros aqui, fica dando que não foi implementado, é uma mensagem genérica.
  9. Tenho duvidas quanto aos Danfes de Serviço relativo as prefeituras com continuam com sistemas diferentes do nacional. Mantenho as impressões como estão? Terá que ser feito mudanças de momento? Outra questão, tenho um exemplo aqui a IPM esta retornando a chave do nacional no XML deles, existe alguma possibilidade de baixar o PDF do Nacional pelo componente?, até tentei aqui mas não tive sucesso. Se não tem, existe algum padrão que será pensado, neste sentido?
  10. Ola, segue uma melhoria que fiz na leitura da NFSe da IPM, eles estão retornando a tag do nacional. Como a chave da IPM já retornava no atributo "CodigoVerificacao", eu adicionei na linha 258 do arquivo "IPM.LerXml" a leitura da tag <chave_acesso_nfse_nacional> para o atributo "ChaveAcesso", assim consigo ter no sistema tando a chave da prefeitura como a do nacional. Agradeço se puderem incluir esta melhoria nos fontes. Segue anexo o fonte. IPM.LerXml.pas
  11. É justamente o que tem acontecido, graças a Deus a grande maioria dos clientes aqui foram pro Nacional, e fora outros provedores que tenho aqui não tenho tido problemas, tipo IPM esta estavel.
  12. Francisco, estou na mesma aqui. Neste post tem alguns ajustes necessários, eu fiz no meu conforme a pessoa que postou e consegui enviar, porem não consigo consultar, e as notas estão todas ficando presas no fly, creio que a Betha esta inconsistente a forma como eles estão processando x os manuais deles. Se conseguir alguma coisa me avisa, estou com mesmo problema em 2 municípios. Até relatei no post, esta ficando tudo preso lá no fly com um erro interno deles.
  13. Bronca em.... Eu em uns municipios pequenos que é o Fly ta dando erros que não sei como resolver. Vou ter que esperar estabilizar, talvez esperar uns dias.
  14. A função de consulta, é a mesma chamada de antes, eu sinceramente não to conseguindo validar neste modelo pela Betha, tipo a nota é enviada, mas não consigo consultar e pegar ela novamente, para setar como enviada ou por exemplo imprimir. Se tento reenviar da erro dizendo que a DPS já existe, então ela foi. Só que se consulta lá no Fly os lotes aparecem com erro estranho, parece problema da Betha, se consulta as NFSe também não aparece nada no portal. Componente esta atualizado e não sei o que esta errado. Já os municípios que migraram diretamente pro nacional estou emitindo sem problema algum.
  15. Bom para mim atendeu perfeitamente, mesmo só com endereço envio sempre Código da Obra = 0. Acabei de atualizar os fontes e esta correto obrigado @Juliomar Marchetti
  16. Atualizei os fontes e as cidades de Cordilheira Alta e Xanxere ainda estão como Betha no arquivo, estas já são PadraoNacional. Acrescento mais uma que configuramos hoje pela manha que também já é PadraoNacional [4219705] Nome=Xaxim UF=SC Provedor=PadraoNacional
  17. Pessoal sobre estas gambiarras dos provedores, tipo como da Betha por exemplo (pra mim pelo menos é uma gambiarra), isto de passar pelo deles e eles enviarem ao nacional é palhativio devido não ter dado tempo de todas as migrações, quero dizer todas as prefeituras vão migrar nativamente ao nacional? Ou estes provedores vão permanecer existindo em alguns municipio? Pergunto pois semana passada estavamos na correria para resolver um cliente, resolvemos no padrão Betha (gambiarra), e hoje já esta no Nacional.
  18. Não porque quando se coloca endereço mesmo não tendo obra, o campo NFSe.ConstrucaoCivil.CodigoObra se torna obrigatório, a questão é que o layout não é nada explicativo neste bloco de obras. Valeu obrigado, segunda já vou atualizar.
  19. Sim segunda vou atualizar valeu, o post saiu duplicado porque postei em outro lugar errado. Value.
  20. Esta foi uma resposta que dei em um tópico que esta em um forum errado que não é destinado a NFSe. Contexto esta acontecendo erros com relação a obras onde não esta gerando o bloco corretamente pois esta condicionando ao campo "inscImobFisc". Porem existem várias situações que o serviço se enquadra como obra, mas não existem dados imobiliarios, exemplo disto colocação de ar condicionado, reparos, entre outros. Os dados imobiliarios só são pertinentes quando é uma obra realmente, digamos vou contrsuir um prédio por exemplo. Fiz os seguintes ajustes listados abaixo (Fonte esta anexo e foi utiliza um fonte atualizado hoje a tarde) Ajustado a rotina de condição para gerar o bloco. function TNFSeW_PadraoNacional.DevoGerarXMLObra: Boolean; begin Result := (NFSe.ConstrucaoCivil.inscImobFisc <> '') or (NFSe.ConstrucaoCivil.CodigoObra <> '') or (NFSE.ConstrucaoCivil.Cib > 0); end; Ajustado o bloco onde gera function TNFSeW_PadraoNacional.GerarXMLObra: TACBrXmlNode; begin Result := CreateElement('obra'); if NFSe.ConstrucaoCivil.inscImobFisc <> '' then begin Result.AppendChild(AddNode(tcStr, '#1', 'inscImobFisc', 1, 30, 1, NFSe.ConstrucaoCivil.inscImobFisc, '')); end; if NFSe.ConstrucaoCivil.CodigoObra <> '' then begin Result.AppendChild(AddNode(tcStr, '#1', 'cObra', 1, 30, 1, NFSe.ConstrucaoCivil.CodigoObra, '')); end; if NFSE.ConstrucaoCivil.Cib > 0 then begin Result.AppendChild(AddNode(tcStr, '#1', 'cCIB', 1, 8, 1, Poem_Zeros(NFSe.ConstrucaoCivil.Cib, 8))); end; if (NFSe.ConstrucaoCivil.Endereco.CEP <> '') or (NFSe.ConstrucaoCivil.Endereco.Endereco <> '') then begin Result.AppendChild(GerarXMLEnderecoObra); end; end; Rotina testada e validada. PadraoNacional.GravarXml.pas
  21. Segue municipios que tive que atualizar o INI em virtude das mudanças. [4202800] Nome=Braco do Norte UF=SC Provedor=PadraoNacional [4204251] Nome=Cocal do Sul UF=SC Provedor=PadraoNacional [4204350] Nome=Cordilheira Alta UF=SC Provedor=PadraoNacional [4219507] Nome=Xanxere UF=SC Provedor=PadraoNacional Todos estes testados e validados. Anexo o INI atualizado. Havia colocado no forum errado, desconsiderar lá do geral. ACBrNFSeXServicos.ini
  22. Agora que vi coloquei no forum errado, desculpe. Devo ter clicado errado na hora da busca.
  23. Segue municipios que tive que atualizar o INI em virtude das mudanças. [4202800] Nome=Braco do Norte UF=SC Provedor=PadraoNacional [4204251] Nome=Cocal do Sul UF=SC Provedor=PadraoNacional [4204350] Nome=Cordilheira Alta UF=SC Provedor=PadraoNacional [4219507] Nome=Xanxere UF=SC Provedor=PadraoNacional Todos estes testados e validados. Anexo o INI atualizado. ACBrNFSeXServicos.ini
  24. Ola mesmo problema aqui, tenho vários clientes que o serviço é da familia de obras. Acontece que tem vários casos que a obra não é uma obra em si, então não tem dados como "inscImobFisc", acontece que no ACBr esta fixiando esta condição para gerar o bloco de obra. Fiz os seguintes ajustes listados abaixo (Fonte esta anexo e foi utiliza um fonte atualizado hoje a tarde) Ajustado a rotina de condição para gerar o bloco. function TNFSeW_PadraoNacional.DevoGerarXMLObra: Boolean; begin Result := (NFSe.ConstrucaoCivil.inscImobFisc <> '') or (NFSe.ConstrucaoCivil.CodigoObra <> '') or (NFSE.ConstrucaoCivil.Cib > 0); end; Ajustado o bloco onde gera function TNFSeW_PadraoNacional.GerarXMLObra: TACBrXmlNode; begin Result := CreateElement('obra'); if NFSe.ConstrucaoCivil.inscImobFisc <> '' then begin Result.AppendChild(AddNode(tcStr, '#1', 'inscImobFisc', 1, 30, 1, NFSe.ConstrucaoCivil.inscImobFisc, '')); end; if NFSe.ConstrucaoCivil.CodigoObra <> '' then begin Result.AppendChild(AddNode(tcStr, '#1', 'cObra', 1, 30, 1, NFSe.ConstrucaoCivil.CodigoObra, '')); end; if NFSE.ConstrucaoCivil.Cib > 0 then begin Result.AppendChild(AddNode(tcStr, '#1', 'cCIB', 1, 8, 1, Poem_Zeros(NFSe.ConstrucaoCivil.Cib, 8))); end; if (NFSe.ConstrucaoCivil.Endereco.CEP <> '') or (NFSe.ConstrucaoCivil.Endereco.Endereco <> '') then begin Result.AppendChild(GerarXMLEnderecoObra); end; end; Rotina testada e validada. PadraoNacional.GravarXml.pas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...