rael
Membros-
Total de ítens
6 -
Registro em
-
Última visita
rael's Achievements
-
Só para deixar claro , Estou usando o Demo "ACBrLib\Demos\C#\ACBr.API\ACBr.API" , pois como vocês já deixaram claro em vários tópicos é mais fácil de vocês ajudarem. Peguei uma máquina zerada para não ter referências de outras libs, dicas de vocÊs mesmo. Eu consigo gerar os pdf's normalmente, só quando é ao mesmo tempo , que esses erros começam a acontecer na realidade. O erro vai mudando de acordo com o momento que o acesso é feito ao mesmo tempo: , ("System.ApplicationException: Division by zero" outras vezes "Accesses Violation")
-
Obrigado pela rápida atenção! Sim entendi essa parte de ser um valor divido por zero. Mas gostaria que você atentasse para as seguintes informações: Estou usando a API de exemplo de vcs, essa mesma do vídeo do tutorial "Nova demonstração da ACBrLib utilizando API em C#", Se eu fizer várias chamadas só que não ao mesmo tempo,uma em sequência da outra, ela gera todos os PDFs sem problemas.Só quando faço duas chamadas ao mesmo tempo é que tenho esse problema. Então acredito que não seja nenhum valor de preenchimento , mas sim por está tentando gerar dois PDFs ao mesmo tempo, por algum motivo quando é ao mesmo tempo está dando esse erro. Estou usando o Postman acessando a Api de exemplos de vcs.
-
Boa tarde, peço desculpas pelo tópico aberto acima, peço para desconsiderar, mas acabei achando o log na pasta raiz do ISS. E nele possui o erro de quanto tento gerar ao mesmo tempo mais de um pdf, com a dll multithreading. "System.ApplicationException: Division by zero" ACBrLibNFE-20230113.log
-
Estou conseguindo gerar apenas o Log simples, que não serve nesse caso para nada. Ainda não consegui fazer gerar os logNormal, logCompleto, logParanoico. Sem esse log não consigo prosseguir com erro que realmente , gostaria de ajuda.kkk Estou usando o exemplo de C# Api de vcs do SVN configurado em "Memory".Mudei o código como exemplo abaixo, para que fosse salvo o log completo ou Paranoico mas não resolveu: var codigo = Guid.NewGuid(); var path = "C:\\FolderHANDpaper\\NFe\\"; var nomeArquivo = $@"{codigo}.pdf"; nfe.ConfigGravarValor(ACBrLib.Core.ACBrSessao.Principal, "LogNivel", 4); nfe.ConfigGravarValor(ACBrLib.Core.ACBrSessao.Principal, "LogPath", path); nfe.ConfigGravarValor(ACBrLib.Core.ACBrSessao.DANFE, "MostraSetup", false); nfe.ConfigGravarValor(ACBrLib.Core.ACBrSessao.DANFE, "MostraPreview", false); nfe.ConfigGravarValor(ACBrLib.Core.ACBrSessao.DANFE, "MostraStatus", false); nfe.ConfigGravarValor(ACBrLib.Core.ACBrSessao.DANFE, "PathPDF", path); nfe.ConfigGravarValor(ACBrLib.Core.ACBrSessao.DANFE, "NomeDocumento", nomeArquivo); nfe.ConfigGravarValor(ACBrLib.Core.ACBrSessao.DANFE, "MargemDireita", 1); nfe.ConfigGravarValor(ACBrLib.Core.ACBrSessao.Principal, "TipoResposta", ACBrLib.Core.TipoResposta.fmtINI); nfe.ConfigGravarValor(ACBrLib.Core.ACBrSessao.Principal, "CodificacaoResposta", ACBrLib.Core.CodResposta.UTF8); nfe.Config.PathSchemas = "C:\\FolderHANDpaper\\NFe"; nfe.ConfigGravar($"C:\\FolderHANDpaper\\NFe\\{codigo}.ini"); nfe.ConfigLer($"C:\\FolderHANDpaper\\NFe\\{codigo}.ini"); nfe.CarregarXML(await stream.ReadToEndAsync()); nfe.ImprimirPDF();
-
Bom dia, Obrigado pela atenção. 1º) Referente ao tópico que você me sugeriu, é por esse tópico e pelo vídeo https://www.youtube.com/watch?v=SuZ46PWW31U "Nova demonstração da ACBrLib utilizando API em C#" que já estou me orientando: 2º) Referente ao log, estou conseguindo gerar apenas o logSimples os outros tipos de logs não estão gerando. Estou utilizando o código de vocês do exemplo "ACBrLib\Demos\C#\ACBr.API\ACBr.API" com "Memory" e não .ini. Como no exemplo de vocês não tinha o caminho do log adicionei no código. Coloquei o logSimples em anexo, mas acredito que não vai ajudar muito para descobrir o problema de "Access violation" .Se tiver uma dica de como gerar os outros logs nesse exemplo de vcs de API C# com multithread, agradeço muito. Como está atualmente meu código no Exemplo de vocês da API C#: public async Task<IActionResult> GerarPdf([FromServices] ACBrNFe nfe, IFormFile xmlNFe) { if (!xmlNFe.FileName.EndsWith(".xml")) return BadRequest(); using var stream = new StreamReader(xmlNFe.OpenReadStream()); nfe.CarregarXML(await stream.ReadToEndAsync()); var codigo = Guid.NewGuid(); var path = Path.GetTempPath(); var nomeArquivo = $@"{codigo}.pdf"; nfe.Config.Principal.TipoResposta = ACBrLib.Core.TipoResposta.fmtJSON; nfe.Config.Principal.CodificacaoResposta = ACBrLib.Core.CodResposta.UTF8; nfe.Config.Principal.LogNivel = ACBrLib.Core.NivelLog.logSimples; nfe.Config.Principal.LogPath = "C:\\Dados\\AcbrApi\\"; nfe.Config.DANFe.MostraSetup = false; nfe.Config.DANFe.MostraPreview = false; nfe.Config.DANFe.MostraStatus = false; nfe.Config.DANFe.PathPDF = path; nfe.Config.DANFe.NomeDocumento = nomeArquivo; nfe.ImprimirPDF(); var fs = new FileStream(Path.Combine(path, nomeArquivo), FileMode.Open); ACBrLibNFE-20221209.log
-
Bom dia, Estou tendo o seguinte problema ao utilizar o projero "Projetos\ACBrLib\Demos\C#\ACBr.API". Baixei o projeto do svn , segui os passos do vídeo https://www.youtube.com/watch?v=SuZ46PWW31U "Nova demonstração da ACBrLib utilizando API em C#". Baixei a "ACBrLibNFeDemo-0.4.6.199". Aqui vou focar na opção NFeController/GerarPdf que realmente é a que preciso. Quando chamado o método apenas uma vez ele funciona perfeito. Mas quando chamado várias vezes ao mesmo tempo, que seria para isso a função multithreading começamos a ter alguns erros: Access violation em ACBrLib.Core.ACBrLibHandle.CheckResult(Int32 ret) em C:\Projetos\ACBRDiretoSVNdeles\Projetos\ACBrLib\Demos\C#\Shared\ACBrLib.Core\ACBrLibHandle.cs:linha 277 em ACBrLib.NFe.ACBrNFe.FinalizeLib() em C:\Projetos\ACBRDiretoSVNdeles\Projetos\ACBrLib\Demos\C#\NFe\Imports\Dinamico\MT\ACBrNFe.cs:linha 616 em ACBrLib.Core.ACBrLibHandle.ReleaseHandle() em C:\Projetos\ACBRDiretoSVNdeles\Projetos\ACBrLib\Demos\C#\Shared\ACBrLib.Core\ACBrLibHandle.cs:linha 127 em System.Runtime.InteropServices.SafeHandle.InternalRelease(Boolean disposeOrFinalizeOperation) em System.Runtime.InteropServices.SafeHandle.Dispose() em Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceProviderEngineScope.DisposeAsync() Outras vezes : rlVenda (Division by Zero) No vídeo não vi o teste do postman sendo feito com várias requisições ao mesmo tempo.Acredito que tenham feito com certeza. Alguém com alguma dica do que pode ser. OBS: Temos a versão compilada no Lazarus.Mas como estava com o mesmo problema, resolvi ver se com Demo seria diferente.