Ir para conteúdo
  • Cadastre-se

douglas_k

Membros
  • Total de ítens

    181
  • Registro em

  • Última visita

  • Days Won

    1

Tudo que douglas_k postou

  1. Efetuei os testes com as configurações e SSLCryptLib := cryWinCrypt; SSLHttpLib := httpWinLNet; SSLXmlSignLib := xsMsXml; SSLLib := LibCustom; Não obtive mais nenhuma problema. Agora com a configuração abaixo continuo tento problemas nos envio de notas com bastante itens. Se alguém que teve o problema conseguiu solucionar, se possível repasse o que foi feito. SSLCryptLib := cryWinCrypt; SSLHttpLib := httpWinHttp; SSLXmlSignLib := xsMsXml; SSLLib := LibWinCrypt; Até mais.
  2. Fiz um programa em que o erro também ocorre, carreguei todas as configurações no próprio ACBrNFe. Configurar diretório dos schemas, série e senha certificado, csc e id. Carreguei o mesmo xml enviado em outro post para envio. demoNFCe.zip
  3. Realmente assim consegui o envio da NFC-e com um grande numero de itens. Da mesma forma que com essa configuração: SSLCryptLib := cryWinCrypt; SSLHttpLib := httpWinLNet; SSLXmlSignLib := xsMsXml; SSLLib := LibCustom; Fiz os testes adicionando essa linha André, mais o erro continuou.
  4. Bom dia André, na verdade seria qualquer xml com um número grande de itens, eu identifiquei com mais de 55 itens no meu caso. Fiz diversas NFC-e diferentes e sempre ocorre o mesmo erro com notas com bastante itens. Até 50 itens não obtive problema, emite normal. Como comentei, isso só ocorre com a primeira configuração, na segunda indiferente do número de itens vai sem problemas. O teste seria criar uma NFC-e com bastante itens e tentar fazer o envio utilizando a primeira configuração. Em anexo um dos xmls 43170303470626004902650010000050931211732171-nfe.xml
  5. Simulei no ACBrNFe_demo importando o xml gerado pelo meu PDV e tentando fazer o envio, ocorreu o mesmo problema.
  6. Boa tarde Pessoal, Boa tarde Pessoal, Atualizei o ACBr hoje e verifiquei a questão do refactoring nas Units de ACBrDFeSSL e suas derivadas.. fiz as alterações necessárias e iniciei os testes... Utilizando a configuração: SSLCryptLib := cryWinCrypt; SSLHttpLib := httpWinHttp; SSLXmlSignLib := xsMsXml; SSLLib := LibWinCrypt; Tive problemas no envio de NFC-e com um numero grande de itens, e o retorno foi: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN""http://www.w3.org/TR/html4/strict.dtd"> <HTML><HEAD><TITLE>Bad Request</TITLE> <META HTTP-EQUIV="Content-Type" Content="text/html; charset=us-ascii"></HEAD> <BODY><h2>Bad Request - Request Too Long</h2> <hr><p>HTTP Error 400. The size of the request headers is too long.</p> </BODY></HTML> Utilizando a configuração: SSLCryptLib := cryWinCrypt; SSLHttpLib := httpWinLNet; SSLXmlSignLib := xsMsXml; SSLLib := LibCustom; Não tive problema, enviou sem problemas. Pelo que vi no post, http://www.projetoacbr.com.br/forum/topic/35727-bye-bye-capicom/ essa segunda configuração continuaria tendo a dependência de configurações do I.E. Já na primeira não seria necessário configurações do I.E mais ai tenho esse problema no envio de NFC-e com um numero grande de itens. Tem alguma configuração adicional a ser efetuado.
  7. Show de bola Daniel, agora esta 100 %. Obrigado.
  8. Para não depender da Bematech, acabei fazendo como outros colegas também devem ter feito para contornar o problema. Capturo os dados normalmente com ACBrECF1.DadosReducaoZ e depois da redução z apenas para o modelo MP 4200 faço o ACBrECF1.DadosUltimaReducaoZ pegando os dados das alíquotas corretamente.
  9. Sem problemas Daniel, fico na aguardo. Obrigado.
  10. Bom dia Daniel, Sobre a situação que esta ocorrendo nesse caso, pode ser adicionado a alteração que sugeri aos fontes? Ou vocês pensam em contornar o erro de outra maneira? Obrigado.
  11. Boa tarde Daniel, Apesar de mudar a ordem de fpCupom.LoadFromINI(Ini); não resolveu. Quando chega nesse teste if (fpAliquotasCupom.Find(ItemCupom.AliqPos).Tipo = 'S') then continua com o acess violation. Só para recapitular, o problema só ocorre quando é feito o registro de dois itens com tributações diferentes e vc cancela um deles. Nesse momento se vc tiver que ativar a ECF por algum motivo, acontece o exception. Abaixo como fiz o teste, registrei dois itens com tributações isento e substituição e cancelei o ultimo que é o abacaxi. Ele deleta o [Cupom_Aliquotas] do .ini e deixou o item no [Cupom_Items]. Quando ele executa a function TACBrECFVirtualClassAliquotasCupom.Find no ativar, ele não encontra a alíquota do item cancelado, o que gera a exception. [Cupom_Items] 000=1|3483428|A1 STANDART 50L|1|87,27|0|UN|-1|0| 001=2|1113|ABACAXI PEROLA UNIDADE|0|5,8|0|UN|-1|1| [Cupom_Aliquotas] 00=0|0|87,27|0|T|
  12. Tem uma forma simples de ser contornada, mais não sei se é a melhor. No ACBrECFVirtual na procedure procedure TACBrECFVirtualClassCupom.LoadFromINI(AIni: TCustomIniFile); no seguinte trecho S := 'Cupom_Items'; I := 0 ; while True do begin T := AIni.ReadString(S, IntToStrZero(I, 3), '*FIM*'); if T = '*FIM*' then Break; ItemCupom := fpItensCupom.New(Self); ItemCupom.AsString := T; if fpAliquotasCupom.Count > 0 then begin if (fpAliquotasCupom.Find(ItemCupom.AliqPos).Tipo = 'S') then fpSubtotalISSQN := fpSubtotalISSQN + ItemCupom.TotalLiquido else fpSubtotalICMS := fpSubtotalICMS + ItemCupom.TotalLiquido; end; Inc(I); end; O erro ocorre pelo fato do find aliquota não encontrar nenhuma alíquota para determinado item que já foi cancelado, conforme exemplo que passei no primeiro tópico, dessa forma o .tipo não esta carregado e acaba retornando o access violation. Como esse teste em vermelho é só para determinar se o valor vai ser somado em total de icms ou total de issqn e como o item em que da acess violation não precisa mais ser considerado seria só colocar um try except. try if (fpAliquotasCupom.Find(ItemCupom.AliqPos).Tipo = 'S') then fpSubtotalISSQN := fpSubtotalISSQN + ItemCupom.TotalLiquido else fpSubtotalICMS := fpSubtotalICMS + ItemCupom.TotalLiquido; except // end; Alterei o fonte e fiz testes e a principio não ocorreu mais erros. Anexei a unit ACBrECFVirtual.pas
  13. Boa tarde Pessoal, Tenho um PDV homologado para trabalhar com PAF-ECF e que também faz emissão de NFC-e. Depois da ultima atualização do ACBr começou acontecer um problema onde utilizo NFC-e. Quando vou fazer o ACBrECF.Ativar, utilizando ACBr Virtual tenho um retorno de acess violation em algumas situações. Debugando o código cheguei a seguinte conclusão. Abro uma venda e faço o registro de dois itens, com tributações diferentes, um isento e um substituição, por exemplo. Depois disso faço o cancelamento de um dos itens. Se abrir o .ini da ecf virtual dentro dele tenho dois grupos de informações 'Cupom_items e Cupom_aliquotas'. Veja que o item cancelado continua aparecendo já a alíquota foi excluída. Digamos que essa maquina se desligou e vou para abrir o PDV novamente, no momento que vou fazer o ACBrECF.Ativar é retornado o acess violation. Isso ocorre na unit ACBrECFVirtual na procedure LoadFromINI(AIni: TCustomIniFile); na linha 1274 -> if (fpAliquotasCupom.Find(ItemCupom.AliqPos).Tipo = 'S') then. No momento que ele vai executar a function TACBrECFVirtualClassAliquotasCupom.Find(APos: Integer): TACBrECFVirtualClassAliquotaCupom; ele não encontra a alíquota do item cancelado e retorna o acess violation. {Trecho do .ini da ECF Virtual} [Cupom_Items] 000=1|4466|ABACATE KG|0|4,2|0|KG|-1|1| 001=2|3483428|A1 STANDART 50L|1|87,27|0|UN|-1|0| [Cupom_Aliquotas] 00=0|0|87,27|0|T| {Quando faz a linha ACBrECF.Ativar o erro é retornado} ACBrECF.Desativar; ACBrECF.ECFVirtual := frmPrincipal.ACBrECFVirtualNaoFiscal; ACBrECF.Porta := portaNFCe; ACBrECF.Ativar;
  14. uhum... estava algum tempo pesquizando e não havia conseguido, agora encontrei NodeEstoque := VXMLDoc.AddChild('Estoque'); NodeEstoque.Attributes['Versao'] := '1.0'; Obrigado.
  15. Bom dia Anderson, Estou utilizando o TXMLDocument para criar o XML do arquivo de estoques no bloco x. Estou com dificuldade na tag <Estoque Versao="1.0"> para colocar o conteudo versao="1.0" na tag. Você sabe como faz?
  16. uhum, realmente estava lendo outro tópico aqui relacionado a isso. Bom então vamos lá, fazer pesquisas para montar ele na mão. Obrigado.
  17. Boa tarde Anderson, Desde já agradeço pela ajuda. Vocês esta montando o XML utilizando o componente do ACBr mesmo, ou esta montando o xml de outra forma? Eu to usando o ACBr e ele tem o campo alíquota como Double, então não consigo passar vazio. Copiei uma parte do código abaixo só para exemplificar. Provavelmente precisa ser efetuado uma modificação na hora que faz a montagem do XML para quando for determinada situação tributária não informa a tag alíquota. with ACBrBlocoX do begin with Estoque do begin Produtos.Clear; ... ... ... with Produtos.Add do begin ... ... ... if dmSupervisor.cldsProdutos.FieldByName('aliquota_pdprod').AsFloat <> 0 then Aliquota := dmSupervisor.cldsProdutos.FieldByName('aliquota_pdprod').AsFloat; end; end; end;
  18. Fiz a atualização pelo SVN e agora esta ok. Obrigado.
  19. Bom dia Daniel, O modelo que estou utilizando para testes é uma Bematech 4200 TH FI II. Em produção peguei o problema em uma EPSON TM-T900F, as duas utilizam o modelo EscEcf para comunicar. Coloquei em anexo o log do acbr das tentativas com duas compilações diferentes do ECFTeste uma com uma versão mais antiga que é retornado as aliquotas e outra dessa ultima versão que tenho problema. Nas duas percebi que o CarregaAliquotas retorna certinho os valores o problema ta mesmo nesse teste que é um pouco abaixo do CarregaAliquotas { Deve desconsiderar alíquotas zeradas e índice FF, II, NN (ECFVirtual) } if (fpAliquotas.Aliquota <= 0) or (not StrIsNumber(fpAliquotas.Indice)) then Continue; Sobre ter alíquotas de ICMS com % 0 não possuo. O fpAliquotas.Indice vem carregado com T01, T02, T03... acbrlog-correto.txt acbrlog-erro.txt
  20. Bom dia Pessoal, Atualizei o ACBr recentemente e no comando DadosReducaoZ parou de retornar os dados da alíquotas do ICMS. O que reparei debugando é que um teste foi alterado na function TACBrECFClass.GetDadosReducaoZ: String; da unit ACBrECFClass. Atualmente: { Deve desconsiderar alíquotas zeradas e índice FF, II, NN (ECFVirtual) } if (fpAliquotas.Aliquota <= 0) or (not StrIsNumber(fpAliquotas.Indice)) then Continue; Versão que possuía anteriormente: { Deve desconsiderar alíquotas zeradas e índice FF, II, NN (ECFVirtual) } if (fpAliquotas.Aliquota <= 0) and (StrIsAlpha(fpAliquotas.Indice)) then Continue; Alguém já teve esse problema? Fiz testes com o ECFTeste com as duas versões. Com a anterior as alíquotas são retornadas e com a versão atual não. Outro problema que estou tendo é para atualizar o ACBr, quando vou fazer um SVN Update retorna erro, conforme a imagem em anexo.
  21. Exato, acredito também que isso deve ser alguma falha nas validações deles. Alguém já teve esse erro retornado? Sobre o outro erro 'Quando situação tributária for não tributado ou isento, alíquota precisa estar em branco', você teve Anderson?
  22. Boa tarde Pessoal, Estou fazendo testes no envio do arquivo de estoques no blocox e me deparei com a seguinte situação: - Gero o xml e faço o envio sem erros, quando vou consultar a situação do recibo é retornado o seguinte erro: 'Certificado digital sem CNPJ ou com diferente do estabelecimento'. Ocorre o seguinte, hoje temos um cliente que tem 1 certificado digital e vários estabelecimentos com CNPJ diferentes, por exemplo, 11.111.111/0000-11, 11.111.111/0000-22, 11.111.111/0000-33, para emissão de NF-e, com o mesmo certificado emitimos notas para todos estabelecimentos, agora para o envio do bloco X esta me retornando esse erro. Se eu alterar as informações do CNPJ do arquivo de estoque na mão, colocando o da matriz ai não ocorre o erro. Será que cada estabelecimento terá que ter seu certificado próprio? O nosso certificado é o A1. Outro retorno de erro que tenho, quando consulto o recibo de envio do arquivo de estoque do bloco x é: 'Quando situação tributária for não tributado ou isento, alíquota precisa estar em branco'. Verificando o xml vi que mesmo quando é isento ele esta indo com alíquota '0,00', na especificação do arquivo comenta que nessa situação deve ir vazio. Obrigado a todos.
  23. Bom dia, Só para conhecimento, não encontrei configuração para alterar essa situação, então utilizei a função RecodeMilliSecond(hora, 0); da unit DateUtils que dessa forma passo como zero o valor dos millisegundos e ajusta meu problema.
  24. Boa tarde Juliomar, Fiz um programa de testes para verificar o caso da gravação dos campos time no postgres utilizando os componentes do Firedac (FDConnection, FDQuery, FDTransaction) e continuou gravando com milissegundos. Fiz o teste passando os dados da seguinte forma FDQuery1.FieldByName('hora').AsDateTime := time; e ele grava no formato '10:17:22.708'. Se eu passar como string FDQuery1.FieldByName('hora').AsString e fazer um FormatDateTime('hh:nn:ss', now); ai ele grava certo. Pelo que vc já comentou não teve esse problema, talvez saiba como contornar isso, talvez tenha alguma configuração que eu ainda não tenha encontrado nos componentes Firedac. Desde já agradeço.
×
×
  • 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...