Jump to content

Edevair Viesa Junior

Usuários SAC
  • Content Count

    242
  • Joined

  • Last visited

Community Reputation

35 Excellent

1 Follower

About Edevair Viesa Junior

  • Rank
    Membro
  • Birthday 08/16/1977

Profile Information

  • Sexo
    Masculino
  • Localização
    : São Caetano do Sul - SP

Recent Profile Visitors

920 profile views
  1. 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 !
  2. 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 !!!
  3. 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 !!
  4. 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 ??
  5. Na mosca... Rsssss Exatamente isso,muito Obrigado @Daniel Simoes !! Funcionou perfeito.. @EMBarbosa onde mudo a configuração do timeout ???
  6. 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
  7. 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
  8. 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 !
  9. @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 !
  10. 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 !!
  11. Putz cara que bobeira a minha, o problema na cara e eu não ví, foi mal, vou corrigir. Muito Obrigado !
  12. 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
×
×
  • Create New...