Ir para conteúdo
  • Cadastre-se

Nelson A Sousa

Membros
  • Total de ítens

    363
  • Registro em

  • Última visita

  • Days Won

    1

Tudo que Nelson A Sousa postou

  1. Olá, Fazendo uma revisão nos valores dos enumeradores, notei que mais alguns deles não são os mesmos que os utilizados pela SEFAZ no manual do contribuinte. Por exemplo: tpAmb, tpEmis, finNFe... uns começam com 0(zero) no manual do contribuinte e com 1(um) no acbr, e, vice-versa. Não seria o caso de padronizar-se com o manual do contribuinte?
  2. Ahh, ok!! Eu achava que servia pros dois, tanto configuração quanto venda. Vou fazer as correções aqui. Não sei se seria o caso, mas já que a lib é nova, não se poderia padronizar pelo do Manual do contribuinte? Valeu @Rafael Dias, muito obrigado!
  3. Nenhum deles segue o enum da AcbrLib.Core?!
  4. Vou precisar de uma ajudinha então. Estou recebendo os erros de validação abaixo na imagem. [Rejeição 252] - Estou passando o tpAmb=1 no INI da venda, e, está como Ambiente=1 também no AcbrLib.INI. Acho que estou passando corretamente, não? [Rejeição 229 e 209] - Estou passando o indIEDest=9 e está validando a IE, será que esqueci algo? ACBrLib.ini NFEVenda.INI
  5. Olá @Rafael Dias Obrigado pela resposta. O manual a que se refere é o do acbrlib ou do contribuinte?
  6. Olá, Notei que o Demo C# estava retornando o erro de validação: 252-Rejeição: Ambiente informado diverge do Ambiente de recebimento (Tipo do ambiente da NF-e difere do ambiente do Web Service) O enumerador na AcbrLib.Core consta como 0-Produção e 1-Homologação, creio que deveria ser alterado: namespace ACBrLib.Core.DFe { public enum TipoAmbiente { taProducao = 1, taHomologacao = 2 } }
  7. Olá @Daniel Simoes, Obrigado pela resposta! Acabei encontrando a solução por aqui, eu tenho um mau hábito de declarar objetos na abertura dos formulários, para uso com escopo geral dentro do form. Então eu declarei a AcbrLib no evento load e fui trabalhando com ela dentro do form. Só que ao chegar na hora de Assinar() a NFCe estava dando o erro descrito. Acabei mudando a forma de trabalhar e fiz o dispose() e recarga da lib em cada método onde era necessária. O erro acabou por cessar.
  8. Olá, pessoal, Boa tarde! Ao validar um XMl usando a AcbrLib.NFe a bibilioteca está tentando localizar a pasta de Schemas na raiz do EXE, ignorando a pasta configurada no INI. No meu INI está: PathSchemas=C:\Methodus\Gerente\Schemas\ Está retornando o erro de que não encontra o arquivo na pasta do EXE.
  9. Olá, Os fontes são totalmente liberados para os usuários do fórum. Basta acessar pelo SVN, e compilar suas dlls com o Lazarus.
  10. Ok, @Rafael Dias, Eu agradeço muito a atenção!
  11. Obrigado @Rafael Dias Quanto ao erro de salvamento do arquivo AcbrLib.INI eu descobri onde está o erro. Está na declaração/utilização dos métodos ACBrNFe.ConfigLer() e ACBrNFe.ConfigGravar(): Para que a Lib respeite a pasta da inicialização os métodos devem ser utilizados sem o parâmetro, ou com o mesmo parâmetro da inicialização. No demo existe um método intermediário que está passando um parâmetro diferente: LoadConfig(string file = "ACBrLib.ini") <--- Viu? Passando somente o nome do arquivo INI assume a pasta raiz do EXE. Dá uma conferida lá no demo pra vc ver. Acredito que o tópico possa ser encerrado...obrigado a todos!!!
  12. @Rafael Dias, O inicio de tudo isso foram as 2 classes abaixo...rsrsrs. Poderia verificar a possibilidade de acrescentá-las na AcbrLib.Core na pasta Serial? SerialBaud.cs SerialDataBits.cs
  13. Olá @Rafael Dias, Bom dia! Muito obrigado pela atenção! Segue anexo uma cópia completa: FrmMain.cs ACBrNFe.cs
  14. Olá, Dê uma olhada no manual, é "completasso"!!! https://acbr.sourceforge.io/ACBrLib/ConfiguracoesdaBiblioteca16.html
  15. Acabei refazendo os testes, SVN revision 19490. Usei o demo C# que acompanha o AcbrLib. Limpei a pasta debug. Recompilei a dll no Lazarus, estou usando a x86 - AcbrNFe32.dll. Informei minha pasta na inicialização: public FrmMain() { InitializeComponent(); ACBrNFe = new ACBrNFe(Path.Combine(@"C:\BKP", "ACBrLib.ini")); } Somente compilei, abri e fechei o demo sem efetuar alteração nenhuma. Foram criados 2 AcbrLib.INI, um na pasta de inicialização, e outro na pasta raiz do EXE, no caso a debug da demo. Voltei a compilar e efetuei apenas uma mudança nas configurações, informei um número de série qualquer de certificado. A mudança só foi efetuada no INI da pasta raiz do EXE. A única mudança que fiz no demo foi informar a inicialização conforme acima. @Rafael Dias, A alteração e leitura do INI só é efetuada na pasta correta informando-se o path em ConfigLer() e ConfigGravar().
  16. Desculpe @Rafael Dias, Mas você está se referindo à classe C# do demo? ou as alterações realizadas foram nos fontes? O SVN acusou a revisão 19490.
  17. Olá @Rafael Dias, Acabei de realizar um teste utilizando o Demo. Acho que ainda não solucionou, o path informado na inicialização não é respeitado ao se salvar as configurações. O arquivo é criado no path da inicialização, porém ao se realizar alterações e clicar no botão de salvar as configurações as configurações são salvas na pasta raiz do EXE. Mas acho que descobri onde está o "erro". Eu estava pressupondo que o path informado na inicialização, era armazenado de forma global na LIB. Isso não acontece. A solução está em se informar o path do arquivo de configurações sempre que for trabalhar com ele. Ou seja, sempre que utilizar ACBrNFe.ConfigLer("Infomar o mesmo path da inicialização"), e, também ao se utilizar ACBrNFe.ConfigGravar(Path.Combine(@"C:\SuaPasta", "ACBrLib.ini")); Resumindo, usar sempre: ACBrNFe = new ACBrNFe(Path.Combine(@"C:\SuaPasta", "ACBrLib.ini")); ACBrNFe.ConfigLer(Path.Combine(@"C:\SuaPasta", "ACBrLib.ini")); ACBrNFe.ConfigGravar(Path.Combine(@"C:\SuaPasta", "ACBrLib.ini"));
  18. Olá, Verifique se o sistema está mesmo fechando, ou, sendo enviado "para trás". Use ALT + TAB para navegar pelas janelas abertas.
  19. Olá @Daniel Simoes, Me coloco à disposição caso queiram fazer algo conjuntamente na hora de reproduzir o problema. É só escolher o meio de comunicação, Skype, WhatsApp...qualquer um, é só avisar. Skype: nelsonasousa WhatsApp: (32)98847-3655
  20. Se eu puder dar uma sugestão, Não seria melhor se evitar usar arquivos de configuração na raiz do EXE? Digo isso por causa da distribuição por ClickOnce. A cada envio de atualização a pasta raiz é modificada e as configurações em arquivos INI ou XML vão pro espaço. Por isso tenho dado preferencia para informar a pasta de inicialização, entende?
  21. Bom dia a todos! @Rafael Dias, Acabo de executar um teste com as mudanças: 1 - Limpei a pasta de inicialização , pagando todos os INIs e LOGs: _AcbrNFe = new ACBrNFe(NgGlobais.PubPastaEmpresa + @"\Dados\Logs\ACBrLib.ini"); 2 - Limpei a pasta raiz do EXE (minha pasta DEBUG): 3 - Declarei private ACBrNFe _AcbrNFe; com escopo para todo o formulário. 4 - Inicializei a lib conforme código do item 1. 5 - Verifiquei a pasta de inicialização e foi criado um ACBrLib.ini nela, bem como na pasta raiz do EXE. Porém ambos de conteúdo diferente. Segue arquivos abaixo. 6 - Alterei a impressora posprinter para Daruma e o baud pra 1200, o arquivo da pasta de inicialização não foi modificado, o da pasta raiz do EXE é que sofreu as mudanças. Veja abaixo os arquivos. Conclusão: A LIB leva em consideração a pasta que indicamos para criação do INI, porém segue trabalhando com o INI da pasta raiz do EXE. Repare que, mesmo no momento da criação do INI, o mesmo é criado com conteúdo diferente nas pastas. O da pasta de inicialização é bem maior que o da pasta EXE. Pelo que percebi devem haver 2 métodos na LIB realizando o mesmo procedimento, só que um está mais completo que o outro. Pelo menos é o que aparenta. Um abraço e obrigado pela atenção!!! ACBrLib_Raiz_EXE.ini ACBrLib_Pasta_Inicializacao.ini ACBrLib_Pasta_Inicializacao_Apos_Alteracao.ini ACBrLib_Raiz_EXE_Apos_Alteracao.ini
  22. Ok, @Rafael Dias , Vou testar amanhã cedo!
  23. ok, lá vai: 1 - Limpe tudo da raiz do EXE, no meu caso pasta DEBUG do minha IDE. 2 - Apague o AcbrLib.ini da pasta de inicialização, no meu caso NgGlobais.PubPastaEmpresa + @"\Dados\Logs\ACBrLib.ini". Você tem que informar uma pasta diferente da raiz do EXE, ok? 3 - no escopo do formulário: private ACBrNFe _AcbrNFe; 4 - no evento load do formulário: _AcbrNFe = new ACBrNFe(NgGlobais.PubPastaEmpresa + @"\Dados\Logs\ACBrLib.ini"); 5 - Apenas abra o formulário e verifique se os arquivos AcbrLib.ini foram criados na pasta da inicialização e na raiz do EXE. 6 - Verifique o conteúdo dos arquivos, no meu caso tentei efetuar a leitura da seção PosPrinter_Device e ela não foi encontrada no arquivo da pasta da inicialização.
  24. @Rafael Dias, Efetuei o primeiro teste utilizando apenas a AcbrLib.NFe, inicializei assim: No escopo do formulário: private ACBrNFe _AcbrNFe; No evento Load do formulário: _AcbrNFe = new ACBrNFe(NgGlobais.PubPastaEmpresa + @"\Dados\Logs\ACBrLib.ini"); Apenas abri o formulário para a criação e primeira carga do INI e o que aconteceu foi: Foram criados 2 AcbrLib.INI, um na pasta que informei na inicialização, e outro na raiz do EXE (pasta debug). Apesar de terem o mesmo nome AcbrLib.ini, os dois tem conteúdo diferentes. Quando faço a leitura do criado na inicialização a seção AcbrPosPrinter_Device e suas chaves não são encontradas. Porém veja que estão no INI criado na raiz do EXE. ACBrLib_Raiz_do_EXE.ini ACBrLib_Pasta_Inicializacao.ini
  25. Olá @Rafael Dias, Eu acho que já testei com apenas uma LIB inicializada, mas vou repetir o teste pra sanar a dúvida.
×
×
  • 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.