Ir para conteúdo
  • Cadastre-se

Edevair Viesa Junior

Membros
  • Total de ítens

    377
  • Registro em

  • Última visita

Tudo que Edevair Viesa Junior postou

  1. Hummm.. Acho que a informação não procede.... Se usar truncamento neste caso que citei acima, os valores ficam diferentes também... o problemas está neste arredondamento : Produto A - Valor Unitário R$ 14,90 - Qtd 1,550 Kg = R$ 23,095 O RoundABNT arredonda para R$ 23,09 ficando igual ao trunc porém no sat o valor calculado fica R$ 23,10 conforme imagem do comprovante em anexo. Fiz um teste informando R$ 0,01 a mais na forma de pagamento e o cupom foi gerado !!!
  2. Boa tarde. Pessoal estou passando por um problema que parece não ter fim, toda hora uma situação diferente e meus clientes reclamando muito com estes erros, é o seguinte, eu uso a função RounABNT do ACBr para gravar informações no banco de dados e gerar o XML do sat. Eu tenho um exemplo que está acontecendo neste momento (lembrando que é um BD de testes) Tenho 2 produtos diferentes na venda : Produto A - Valor Unitário R$ 14,90 - Qtd 1,550 Kg = R$ 23,095 Produto B - Valor Unitário R$ 34,90 - Qtd 2,168 Kg = R$ 75,6632 Usando o RoundABNT os valores arredondados para duas casas decimais ficam respectivamente R$ 23,09 e R$ 75,66 e totalizando R$ 98,75 Pois bem, porém quando eu gero o XML, quem calcula os subtotais e total é o sat e no sat os valores são respectivamente R$ 23,10 e R$ 75,66 e totalizando R$ 98,76, conforme xml em anexo. Ao validar o xml retorna o erro : Porém como a soma no sistema ficou R$ 98,75 o valor informado pago fica com R$ 0,01 menor e gera o erro. Como resolvo esta situação ? Erro retorno do sat (no log gerado pelo sat) : Alguém ja passou por isso ?? Muito Obrigado ! 000000000002028.xml
  3. Boa tarde. Estou gerando um relatório com um campo RLDBMemo numa band do tipo btDetail, é um contrato , onde ficaria gravado o Texto em um Campo Blob Textual , porém os Fortes se perde na hora de imprimir, alguém já fez algo parecido e que possa me ajudar ? Ele justamente se perde na hora de imprimir as folhas adicionais , tipo quando o Blob estoura mais que uma folha, ele só imprime a primeira, não criando uma segunda folha para impressão. Desde já agradeço !!
  4. @José M. S. Junior bom dia.. Deu tudo certo !!! Eu descobri onde errei, deu erro pq eu estava fazendo testes com toRemessaBaixar também, aí na hora de gerar a remessa foi errado a sequencia, assim : 1 - toRemessaBaixar 2 - toRemessaAlterarVencimento 3 - toRemessaAlterarValorTitulo Aí como o tipo de ocorrência inicial era o baixar, a rejeição ocorria na segunda linha, quando tentava alterar o vencimento de um titulo baixado, aí foi só arrumar a sequencia na hora de gerar a remessa que deu tudo certinho, alterou o valor e alterou o vencimento e depois baixou, perfeito ! Muito Obrigado pela ajuda...
  5. OK. Muito Obrigado ! Eu fiz o teste e deu erro, porém posso ter feito algo errado, vou verificar toda a rotina e enviar novamente e retorno com o resultado. Muito Obrigado !
  6. Esta é a gambiarra que mencionei, vou ter que gerar 2 remessas com as alterações, uma onde envio as alterações pro vencimento e outra para os valores ou vice versa..
  7. Na verdade eu já testei e dá erro na remessa, o problema é que tem um cliente que faz parcelamento grande com seus produtos, tudo no boleto em 18X aí gera os boletos e envia pro cliente dele e remessa pro banco, se no caso precisar mudar o valor do boleto ou vencimentos, se for cancelar todos os boletos sai em média R$ 58,00 sendo que pra alteração o banco não cobra nada.. O problema não está sendo atualizar o boleto e imprimir, isso eu já faço, o problema realmente é informar o banco destas alterações... Pq a validação ocorre linha a linha, se mando uma remessa com toRemessaAlterarVencimento e tiver alterado as duas coisas, dá erro e o mesmo acontece com toRemessaAlterarValorTitulo Complicado de resolver sem gambiarra....
  8. Ok @Italo Jurisato Junior, muito obrigado por responder, então você sabe me dizer pra que servem as ocorrências abaixo : Titulo.OcorrenciaOriginal.Tipo := toRemessaAlterarVencimento; Titulo.OcorrenciaOriginal.Tipo := toRemessaAlterarValorTitulo;
  9. Bom dia... Estou com esta dúvida, acredito que ainda não tenha sido respondida (procurei e não achei)... No caso de alterações do vencimento e do valor em um boleto já enviado em remessa pro banco, devo mandar duas instruções no mesmo arquivo ? Se não, como faço pra enviar e qual ocorrência devo utilizar ? Se sim, envio duas vezes o mesmo título cada um com sua devida ocorrência ? Se não, como devo proceder ? Muito Obrigado !
  10. Ok mas como o componente dá um raised não tenho como dominar a mensagem, ela vai aparecer para o usuário, vou alterar direto no componente então, acheiq ue pudesse ter um método para verificar esta informação. Muito Obrigado !
  11. Boa tarde. Gostaria de saber se é possível verificar antes do comando ativar se a porta serial onde a ESC POS estiver configurada, está acessível. Estou tendo problemas com o erro : communication error 9997 timeout during operation Em outro post descobri que é por que a porta serial não está acessível e o ACBrPosPrinter me retorna este erro, porém quero criar uma solução para verificar antes do envio para impressão se a porta está acessível, afim de instruir o usuário no procedimento para liberar a porta e armazenar a impressão para imprimir futuramente se der erro. Existe alguma forma de verificar isso ? tentei achar nos fontes, sem sucesso !!!
  12. Ok @Daniel Simoes, muito obrigado por responder. Porém, uma última dúvida, antes de enviar o comando de imprimir tenho como verificar se a porta está acessível ou não ?? Se sim, como faço isso ? Pois aí posso colocar uma rotina para verificação da porta antes do envio e ficar tentando acessar durante um tempo e retornar o erro se não conseguir !! Muito Obrigado !!
  13. OK. Deu certo a impressão, agora funcionando muito bem, porém é aleatório o erro : Mesmo alterando o timeout, e é aleatório, o problema é que ficar dando estes erros no cliente é complicado, os caras são brasileiros, já reclamam de tudo, mesmo com tudo tinindo, se ficar dando erro então, aí é dureza.. Segue o trecho do log quando gera o erro : O erro ocorre também usando o componente ACBrExtratoSatEscPos, também aleatório... O que eu estou fazendo errado pra gerar este erro ??
  14. Na mosca... Rsssss Exatamente isso,muito Obrigado @Daniel Simoes !! Funcionou perfeito.. @EMBarbosa onde mudo a configuração do timeout ???
  15. Perfeito @EMBarbosa usando o log descobri que o problema não eram as aspas simples... Foi coincidência.. O que ocorre é que conforme o meu código, o ativar, envio do buffer e impressão estavam ocorrendo muito próximos um do outro.. Bastou colocar 2 sleeps conforme código abaixo entre as operações para funcionar.. MD.ACBrPosPrinterNaoFiscal.Ativar; sleep(500); MD.ACBrPosPrinterNaoFiscal.Buffer.Add(l_texto); sleep(500); MD.ACBrPosPrinterNaoFiscal.Imprimir; Como no PosPrinterTeste você clica no botão ativar, este tempo não é necessário.. Foi simplesmente incluir o sleep para funcionar, e só percebí isso pq no log os comandos paravam no maio : Muito obrigado a todos pela ajuda... Abs
  16. Acho que descobri o problema, só não sei como resolver.. Eu tentei unir as duas coisas, pra ver onde está o meu problema. Então eu peguei o conteúdo v_teste := MD.ACBrPosPrinterNaoFiscal.Buffer.Text; para ver o que estava sendo enviado a impressora e o resultado foi : '</zera>'#$D#$A'</ce><a>Comprovante de Compra Cliente Fidelidade</a>'#$D#$A'</pular_linhas>'#$D#$A'</linha_simples>'#$D#$A'</pular_linhas>'#$D#$A'</fn></ae>Caixa : Caixa 1'#$D#$A'</pular_linhas>'#$D#$A'Operador : Programador'#$D#$A'</pular_linhas>'#$D#$A'Num. do Fechamento : 000000000000074'#$D#$A'</pular_linhas>'#$D#$A'</linha_simples>'#$D#$A'</pular_linhas>'#$D#$A'<n>Dados do Cliente</n>'#$D#$A'</pular_linhas>'#$D#$A'</pular_linhas>'#$D#$A'Nome : Rhovanion Comercio e Servicos de Informatica Ltda'#$D#$A'</pular_linhas>'#$D#$A'RG / Inscr. Est. : 636.352.640.116'#$D#$A'</pular_linhas>'#$D#$A'</linha_simples>'#$D#$A'</pular_linhas>'#$D#$A'<n>Dados da Venda</n>'#$D#$A'</pular_linhas>'#$D#$A'</pular_linhas>'#$D#$A'Valor da Venda : R$ 25.00'#$D#$A'</pular_linhas>'#$D#$A'Número da Venda : 000000000001901'#$D#$A'</pular_linhas>'#$D#$A'</linha_simples>'#$D#$A'</pular_linhas>'#$D#$A#$D#$A'</pular_linhas>'#$D#$A'</pular_linhas>'#$D#$A'</pular_linhas>'#$D#$A'</pular_linhas>'#$D#$A'</corte>'#$D#$A Peguei exatamente esta string e usei no PosPrinterTeste no TMemo e deu o mesmo erro... O que eu fiz, eu alterei #$D#$A para branco e tamém ' para branco, ficando assim : </zera></ce><a>Comprovante de Compra Cliente Fidelidade</a></pular_linhas></linha_simples></pular_linhas></fn></ae>Caixa : Caixa 1</pular_linhas>Operador : Programador</pular_linhas>Num. do Fechamento : 000000000000074</pular_linhas></linha_simples></pular_linhas><n>Dados do Cliente</n></pular_linhas></pular_linhas>Nome : Rhovanion Comercio e Servicos de Informatica Ltda</pular_linhas>RG / Inscr. Est. : 636.352.640.116</pular_linhas></linha_simples></pular_linhas><n>Dados da Venda</n></pular_linhas></pular_linhas>Valor da Venda : R$ 25.00</pular_linhas>Número da Venda : 000000000001901</pular_linhas></linha_simples></pular_linhas></pular_linhas></pular_linhas></pular_linhas></pular_linhas></corte> Funcionou perfeitamente.... Então na verdade era so dar um string replace e voilá.. Mas não... Mesmo com o string replace fica assim : '</zera></ce><a>Comprovante de Compra Cliente Fidelidade</a></pular_linhas></linha_simples></pular_linhas></fn></ae>Caixa : Caixa 1</pular_linhas>Operador : Programador</pular_linhas>Num. do Fechamento : 000000000000074</pular_linhas></linha_simples></pular_linhas><n>Dados do Cliente</n></pular_linhas></pular_linhas>Nome : Rhovanion Comercio e Servicos de Informatica Ltda</pular_linhas>RG / Inscr. Est. : 636.352.640.116</pular_linhas></linha_simples></pular_linhas><n>Dados da Venda</n></pular_linhas></pular_linhas>Valor da Venda : R$ 25.00</pular_linhas>Número da Venda : 000000000001901</pular_linhas></linha_simples></pular_linhas></pular_linhas></pular_linhas></pular_linhas></pular_linhas></corte>' Com as duas aspas simples, no início e no fim e isso também deu erro no PosPrinterTeste Como faço pra tirar este raio de aspas simples e enviar como no TMemo do PosPrinterTeste
  17. A porta é existente (COM6 conforme imagem abaixo), pois é a mesma que uso pra emitir o ExtratoSatEscPos, é também a mesma que usei no teste PosPrinterTeste e este funciona perfeitamente, porém coloquei no meu projeto exatamente como está no código acima e não funciona dá erro !
  18. @Daniel Simoes obrigado por responder.. Imaginei que seria este o caminho e ter que refazer os relatórios em ESC POS Porém usando o componente, não consigo sequer fazer um relatório simples funionar, estou testando em 3 impressoras diferente : daruma DR800, Elgin I7 e Epson TMT20 As três instaladas com porta srial virtual, conectadas na USB Dá erro de timeout, conforme imagem abaixo .. Segue o código que estou usando : MD.ACBrPosPrinterNaoFiscal.Modelo := TACBrPosPrinterModelo(g_modelo_esc_pos_sat_nao_fiscal); MD.ACBrPosPrinterNaoFiscal.Porta := g_porta_esc_pos_sat_nao_fiscal; MD.ACBrPosPrinterNaoFiscal.PaginaDeCodigo := TACBrPosPaginaCodigo(g_pag_cod_esc_pos_nao_fiscal); MD.ACBrPosPrinterNaoFiscal.PularLinhas(4); MD.ACBrPosPrinterNaoFiscal.Ativar; with MD.ACBrPosPrinterNaoFiscal.Buffer do begin Add('</zera>'); Add('</ce><a>Comprovante de Compra Cliente Fidelidade</a>'); Add('</pular_linhas>'); Add('</linha_simples>'); Add('</pular_linhas>'); Add('</fn></ae>Caixa : '+g_desc_caixa); Add('</pular_linhas>'); Add('Operador : '+g_nome_operador); Add('</pular_linhas>'); Add('Num. do Fechamento : '+l_num_fechamento); Add('</pular_linhas>'); Add('</linha_simples>'); Add('</pular_linhas>'); Add('<n>Dados do Cliente</n>'); Add('</pular_linhas>'); Add('</pular_linhas>'); Add('Nome : '+v_client_CC0100.FieldByName('C_NOME_CLIENTE').AsString); Add('</pular_linhas>'); Add('RG / Inscr. Est. : '+v_client_CC0100.FieldByName('C_INS_RG_CLIENTE').AsString); Add('</pular_linhas>'); Add('</linha_simples>'); Add('</pular_linhas>'); Add('<n>Dados da Venda</n>'); Add('</pular_linhas>'); Add('</pular_linhas>'); Add('Valor da Venda : R$ ' + FormatFloat(F_Formato_String_Valor, l_valor_venda)); Add('</pular_linhas>'); Add('Número da Venda : ' +l_cod_venda); Add('</pular_linhas>'); Add('</linha_simples>'); Add('</pular_linhas>'); Add(v_mensagem); Add('</pular_linhas>'); Add('</pular_linhas>'); Add('</pular_linhas>'); Add('</pular_linhas>'); Add('</corte>'); end; MD.ACBrPosPrinterNaoFiscal.Imprimir; MD.ACBrPosPrinterNaoFiscal.Desativar; O pior de tudo é que no exemplo do POS Printer funciona... Não sei o que está errado !
  19. Boa tarde. Gostaria de saber pra que serve o componente ACBrECFVirtual ? Eu tentei seguir com o exemplo do ACBrECF porém ainda não ficou claro. Eu estou com o seguinte problema, tenho 3 ou 4 relatórios que uso no sistema não fiscal, todos eles feitos em FortesReport, porém como pesquisei bastante e concluí que FortesReport está diretamente ligado ao uso do spool de impressão do windows, e por isso, fico dependente do SO para o sistema "funcionar" bem (o cliente não entende que os problemas de não imprimir o cupom é do windows, já que não controle isso) e já perdemos 2 clientes por este motivo e estamos em vias de perder o terceiro, pois bem, preciso usar uma forma que não dependa do spool, pesquisei bastante e conclui que o melhor jeito é a impressão direta, usando EscPosPrinter, mas realmente não consegui usar, fica tudo desconfigurado e realmente vai demandar muito tempo de desenvolvimento para uma coisa tão simples e a empresa optou por não fazer. Lí em algumas mensagens aqui no site do acbr que usam este componente, mas tentei entender como funciona e não ficou nada claro, já que é necessário usar um componente ACBrECF ligado a ele, e isto não é que eu preciso, enfim, este componente pode ser usado para amissão não fiscal, de um cupom completo de venda ? Se não for, qual componente uso pra resolver o meu problema ?? Muito Obrigado !!
  20. Putz cara que bobeira a minha, o problema na cara e eu não ví, foi mal, vou corrigir. Muito Obrigado !
  21. Bom dia... Estou com problemas em um único cliente, que está informando um CNPJ num CFe e o SAT retorna erro de validação de conteúdo 6010, nos detalhes o erro é 1237 Porém consultando o CNPJ informado o mesmo é válido e consta tanto na receita como ativo, quanto no sintegra. testamos com outro CNPJ para ver se o problema estava em meu sistema, mas passou normal, parece ser um problema específico com este CNPJ e o mais interessante é que o retorno é referente ao CPF !!! Se fosse CNPJ retornaria 1235... Ambiente do cliente SAT Dimep Windows 7 Data da DLL : 20-07-2017 CNPJ : 06540085000187 Log segue em anexo... Log SAT Dimep 09-03-2019.txt
×
×
  • 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...