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. Obrigado pelo Bug Report... Estou preparando algumas alterações na ACBrUtil que devem agilizar essa transformação de valor... Veja: {----------------------------------------------------------------------------- Converte um Double para string, semelhante a FloatToStr(), porém garante que não haverá sepeador de Milhar e o Separador Decimal será igual a "SeparadorDecimal" ( o default é .(ponto)) ---------------------------------------------------------------------------- } function FloatToString(const AValue: Double; SeparadorDecimal: Char; AFormat: String): String; var DS, TS: Char; begin if EstaVazio(AFormat) then Result := FloatToStr(AValue) else Result := FormatFloat(AFormat, AValue); DS := {$IFDEF DELPHI15_UP}FormatSettings.{$ENDIF}DecimalSeparator; TS := {$IFDEF DELPHI15_UP}FormatSettings.{$ENDIF}ThousandSeparator; // Removendo Separador de milhar // Result := StringReplace(Result, TS, '', [rfReplaceAll]); // Verificando se precisa mudar Separador decimal // if DS <> SeparadorDecimal then Result := StringReplace(Result, DS, SeparadorDecimal, [rfReplaceAll]); end; Com ela, poderíamos chamar: FloatToString( Valor, '.', '0.00')
  2. Você precisa anexar um arquivo "ZIPado" O Retorno está correto... "20150306130226", o seu Debug confirma isso... Experimente essa nova versão de StoD() {----------------------------------------------------------------------------- Converte uma String no formato YYYYMMDDhhnnss para TDateTime ---------------------------------------------------------------------------- } function StoD( YYYYMMDDhhnnss: String) : TDateTime; begin YYYYMMDDhhnnss := trim( YYYYMMDDhhnnss ) ; Result := EncodeDateTime( StrToIntDef(copy(YYYYMMDDhhnnss, 1,4),0), // YYYY StrToIntDef(copy(YYYYMMDDhhnnss, 5,2),0), // MM StrToIntDef(copy(YYYYMMDDhhnnss, 7,2),0), // DD StrToIntDef(copy(YYYYMMDDhhnnss, 9,2),0), // hh StrToIntDef(copy(YYYYMMDDhhnnss,11,2),0), // nn StrToIntDef(copy(YYYYMMDDhhnnss,13,2),0), // ss 0 ); end;
  3. Realmente a modificação faz mais sentido com o IF... Não sei porque foi removida... pode até mesmo ser uma falha no Merge... Em todo caso, vou retornar com o IF conforme sugerido
  4. Aqui funciona normal... não temos relato de problema semelhante... Teste em outro ambiente.. pode ser algo na sua máquina, como por exemplo o AntiVirus
  5. Os Logs apontam que o ECF está recusando o comando enviado (NACK)... provavelmente algo está se corrompendo na transmissão... RX <- ACK = 6 Falha: 1 O problema não está relacionado com o Post da Bematech.... (lá era um erro de interpretação da resposta do ECF) Experimente baixar os buffers da porta serial
  6. Ola... obrigado pela colaboração... Analisando, percebi que poderíamos aplicar uma abordagem mais simples function TACBrECFEscECF.GetNumUltimoItem: Integer; begin try Result := RespostasComando.FieldByName('NumUltItem').AsInteger; except Result := 0; end ; end; Por favor verifique se funciona a contento... (nos meus testes deram certo)
  7. Ok, realmente o comando se aplica a todos os modelos superior a FS600... já enviei a correção para o SVN, muito obrigado...
  8. Não ajuda muito... preciso descobrir o que consta em "fsResposta.RetornoLst[17]" por favor anexe o LOG solicitado
  9. Realmente parece ser um problema de falha na comunicação com a Serial... Experimente trocar o cabo... ou ainda trocar o ECF de Lugar... Se os problema persistirem no ECF, o problema pode estar nele... Se persistirem no computador, podem estrar na Placa / Driver / PC
  10. Por favor anexe o LOG gerado pelo SATTeste.exe... Mostre um exemplo do seu retorno... Tenho o Delphi XE7, para testes... poste o passo a passo para a reprodução do problema
  11. Não acho uma boa (por enquanto)... a especificação SAT é padrão.. todos os fabricantes deveriam segui-la... Até o momento foi necessário poucos "workarounds"... um com a Kryptus e outro com o emulador do Fisco... Prevejo que no futuro, teremos, muitos equipamentos de SAT (muito mais do que fabricantes de ECF), e isso obrigaria a revisão dos fontes constantemente... Seria ideal, se no retorno da Consulta de Status, houvesse um campo que retorna o Fabricante e Modelo do SAT
  12. Verifique se você tem as DLLs mais atuais... https://www.softwareexpress.com.br/distri/aplicativos/clisitefwin32.zip
  13. Aguardando um posicionamento da Kryptus... http://satcfe.com.br/forums/topic/cancelamento-do-ultimo-cupom-nao-e-processado/#post-476
  14. Continuo sem compreender o que você quer dizer... Fiz um teste com o emulador de SAT do fisco, e o retorno foi correto... Veja: -- 08:59:45:720 - numeroSessao: 504263 - Comando: ConsultarStatusOperacional NumeroSessao: 504263 - Resposta:504263|10000|Resposta com Sucesso.|||123456789|DHCP|127.127.127.100|22:d9:d0:45:17:02|255.255.000.000|127.127.127.100|127.127.127.100|127.127.127.100|CONECTADO|ALTO|1000.00|10.00|20150306085945|00.00.03|0.06|35150211111111111111591234567890000042166394|35150211111111111111591234567890000017356193|20150306085945|20150306085945|20150203|20170123|0 NSERIE.........: 123456789 LAN_MAC........: 22:d9:d0:45:17:02 STATUS_LAN.....: CONECTADO NIVEL_BATERIA..: ALTO MT_TOTAL.......: 1000.00 MT_USADA.......: 10.00 DH_ATUAL.......: 06/03/2015 08:59:45 VER_SB.........: 00.00.03 VER_LAYOUT.....: 0.06 ULTIMO_CFe.....: 35150211111111111111591234567890000042166394 LISTA_INICIAL..: 35150211111111111111591234567890000017356193 LISTA_FINAL....: DH_CFe.........: 06/03/2015 08:59:45 DH_ULTIMA......: 06/03/2015 08:59:45 CERT_EMISSAO...: 03/02/2015 CERT_VENCIMENTO: 23/01/2017 ESTADO_OPERACAO: DESBLOQUEADO
  15. Não é o caso... ambas as DLLs são necessárias... além as DLLs do PinPad: libemv.dll, libseppemv.dll
  16. Dependendo do WebService que você usar, é necessário informar uma "ChaveDeAcesso" que pode ser obtida com o provedor do WebService (O webservices do correios não precisa dessa chave)
  17. Gabiarra não... Workaround... Vou pensar a respeito, e ver a melhor maneira de implementar...
  18. Talvez você possa comparar se o último CCF é igual ao ultimo COO... isso significaria que o que está aberto É um cupom fiscal (não testei)
  19. Verifique como ficou o XML gerado...
  20. Tenha certeza que o CliSiTef.ini está na mesma pasta da CliSiTef32.dll Observe se você não tem outras CliSiTef32.dll no Path da sua máquina (deixe somente uma)
  21. Não dá pra compreender o que vc precisa... por favor seja mais específico...
  22. De qual linha dos fontes você está falando ? Verifique que StoD, recebe um String... pode ser que o método chamador esteja passando uma variável "AnsiString" para ela
  23. Nem todas as finalidades, foram implementadas, para todos os ECFs... Verifique se seus fontes estão atualizados... Se SIM, Teste com os mesmos fontes no Windows
  24. Bacana...não sabia que o S.F. tinha esse recurso....
  25. Essa função só existe na DLL da Dimep... (não é descrita na Especificação Técnica do SAT) Se os demais fabricantes implementarem algo semelhante, poderíamos inseri-la no ACBrSAT
×
×
  • 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.