Ir para conteúdo
  • Cadastre-se

Daniel Simoes

Fundadores
  • Total de ítens

    27.062
  • Registro em

  • Última visita

  • Days Won

    759

Tudo que Daniel Simoes postou

  1. Se isso estivesse errado você não teria nenhuma comunicação com o ECF... Experimente rodar o ECF em outra máquina...
  2. A dica do post anterior é para baixar o tamanho do Buffer da porta Serial, e não a velocidade... por favor verifique...
  3. Não é algum problema na Porta Serial ou na Impressora ? Notei que a resposta com falha não tem o [CR], e por isso o ACBrECF continua aguardando... Experimente abaixar o Buffer da porta Serial como mostra a figura abaixo: l
  4. Use: Procedure IdentificaPAF( NomeVersao, MD5 : String) ;
  5. O que é ConvCard ? Fale com "o pai de criança"... Aqui na região de Sorocaba-SP, existe o cartão "Sorocred"... entrei em contato com eles para saber como fazer a integração com TEF... eles possuem um G.P. próprio... A maioria usa um módulo extra, que deve ser instalado no TEF_DISC
  6. Estou usando as seguintes DLLs' with FrVenda.ACBrAAC1.IdentPAF.OutrosArquivos do begin Clear; Add( FrVenda.ACBrAAC1.IdentPAF.Paf.PrincipalExe.Nome ); Add('sqlite3.dll'); // Banco de Dados Sqlite Add('inpout32.dll'); // Acesso direto a Porta Paralela/AT Add('fbclient.dll'); // Client do FireBird Add('libeay32.dll'); // OpenSSL 0.9.8.1 Add('ssleay32.dll'); // OpenSSL 0.9.8.1 Add('msvcr71.dll'); // MSVisual C RunTime 7.1 Add('msvcr80.dll'); // MSVisual C RunTime 8.0 Add('CliSiTef32.dll'); // SiTEF Add('CliSiTef32I.dll'); // SiTEF Add('libseppemv.dll'); // SiTEF Add('BemaFI32.dll'); // ECF: Bematech Add('BemaMFD.dll'); // ECF: Bematech Add('BemaMFD2.dll'); // ECF: Bematech Add('sign_bema.dll'); // ECF: Bematech Add('BemaMFD2_MP4000THFI.dll'); // ECF: Bematech Add('swmfd.dll'); // ECF: Sweda Add('CONVECF.dll'); // ECF: Sweda Add('DarumaFrameWork.dll'); // ECF: Daruma Add('LeituraMFDBin.dll'); // ECF: Daruma Add('lebin.dll'); // ECF: Daruma Add('DLLG2.dll'); // ECF: DataRegis/TermoPrinter Add('DLLG2_Gerador.dll'); // ECF: DataRegis/TermoPrinter Add('HIME.dll'); // ECF: DataRegis/TermoPrinter ? Add('elgin.dll'); // ECF: Elgin Add('ATO17.dll'); // ECF: Elgin/Urano Add('leitura.dll'); // ECF: Elgin/Urano Add('InterfaceEpson.dll'); // ECF: Epson end ;
  7. Obrigado pela correção... aplicada no SVN...
  8. Veja o Log gerado pelo Demolog... compare com o gerado pelo ACBrECF
  9. A maioria dos ECFs limita essa informação a 1 linha apenas... Note que ela é diferente das 8 linhas disponíveis no rodapé do cupom... Você deve usar um Cupom Vinculado ou Relatório Gerencial para imprimir essa informação...
  10. Parece que o componente não está considerando a Propriedade ACBrBoletoFC.DirArqPDF_HTML:=ExtractFilePath(Application.ExeName); (Isso pode causar outros bugs)
  11. Se ocorrer um Exception na linha do GerarRemessa, as linhas debaixo serão ignoradas... ele sairá da procedure ou function...
  12. A atualização da DLL da Bematech é necessária... Os fontes do ACBrECFBematech.pas foram ajustados para a última versão da DLL
  13. Isso mesmo...segue alguns tópicos relacionados:
  14. Removi o anexo por ser exageradamente grande para uma simples tela (use formato JPG ou PNG) Tente primeiro com projeto Demo "ECFTeste"... - Verifique se a COM está realmente correta. - Se for adaptador USB-serial, verifique se ele está corretamente instalado - Verifique a velocidade da porta (tente 38.400 e 115.200)
  15. Esse ocorre quando as DLLs libeay32.dll e ssleay32.dll são de versão diferentes...
  16. Estamos em andamento.... (fim de ano sempre atrapalha)
  17. São Paulo já declarou que NUNCA irá implantar o PAF-ECF... Veja esse Mapa do PAF-ECF ( um pouco antigo ) http://www.epsonline.com.br/v2/img/techpeps/2011/techpeps_agosto.jpg
  18. É bem tranquilo... bem mais simples que o roteiro do G.P. aplicado na Seven e Sw.Express
  19. Você está sobrecarregando o Buffer da Impressora... Veja esse tópico:
  20. O próprio ECFTeste demonstra como usar o ACBrAAC... Você está lendo dados demais... não precisa ler o CRZ a cada Item... Vc irá consultar isso apenas numa tentativa de recuperação do A.A.C.
  21. Se não me engano haverá um exception quando o componente não conseguir gerar a Remessa...
  22. Será que vc não está fazendo verificações demais ? Repare no código fonte do ACBrECF... quando ele está ligado a um componente ACBrAAC, ele faz todas as verificações que o PAF-ECF solicita...
  23. Apenas por valor... Mas qual é a dificuldade de computar o valor baseado em uma Percentagem ?
  24. Acho que sei do que se trata.... você precisará ajustar seu evento OnInfoECF de acordo com o descrito no Demo... Leia esse trecho do ACBrTEFDCliSiTef.pas try Est := TACBrTEFD(Owner).EstadoECF; except Est := 'O' ; { TODO: Criar arquivo de Status da Transação Se o ECF estiver desligado, será retornado 'O', o que fará o código abaixo Cancelar Todas as Transações Pendentes, porém, pelo Roteiro do TEF dedicado, é necessário confirmar a Transação se o Cupom foi finalizado com sucesso. Criar um arquivo de Status que seja atualizado no Fim do Cupom e no inicio do CCD, de maneira que seja possível identificar o Status do Documento no ECF indepentende do mesmo estar ou não ligado Como alteranativa, é possível implementar código no Evento "OnInfoECF" para buscar o Status do Documento no Banco de dados da sua aplicação, e responder diferente de 'O', (Veja exemplo nos fontes do TEFDDemo) } end ; fpInicializado := True ; // Cupom Ficou aberto ?? Se SIM, Cancele tudo... // if (Est in ['V','P','N','O']) then CancelarTransacoesPendentesClass else // NAO, Cupom Fechado, Pode confirmar e Mandar aviso para re-imprimir // ConfirmarESolicitarImpressaoTransacoesPendentes ; E no Demo: procedure TForm1.ACBrTEFD1InfoECF(Operacao : TACBrTEFDInfoECF; var RetornoECF : String ); var ASubTotal: Double; begin try if not ACBrECF1.Ativo then ACBrECF1.Ativar ; except { Para CliSiTEF ou V&SPague aplique o IF abaixo em sua aplicação, que permite saber se o Cupom foi concluido mesmo com o ECF desligado } if (not ACBrTEFD1.TEF.Inicializado) and { Está na inicialização ? } (Operacao = ineEstadoECF) and { Quer Saber o estado do ECF ? (mas se chegou aqui é pq o ECF já está com problemas) } (ACBrTEFD1.GPAtual in [gpCliSiTef,gpVeSPague]) then begin { Leia o último Documento Gravado no seu Banco de Dados, e verifique se o Cupom já foi finalizado,ou se já foi aberto um CCD ou Gerencial... Exemplo: Documento.Le(0); if (Documento.Finalizado) or (pos(Documento.Denominacao,'CC|RG') > 0) then RetornoECF := 'R' else RetornoECF := 'O' ; } //RetornoECF := 'O'; // Executará CancelarTransacoesPendentes; RetornoECF := 'R'; // Executará ConfirmarESolicitarImpressaoTransacoesPendentes; exit ; end ; raise ; end;
  25. Qual a versão desse roteiro ? No meu aqui a informação é completamente diferente...
×
×
  • 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.