Ir para conteúdo
  • Cadastre-se

Daniel Simoes

Fundadores
  • Total de ítens

    27.061
  • Registro em

  • Última visita

  • Days Won

    759

Tudo que Daniel Simoes postou

  1. Porque você está usando a DLL de 64 bits ? Isso só é válido se você estiver compilando o seu .EXE em um compilador 64 bits
  2. Fique a vontade para propor Patchs de melhorias nos fontes
  3. Notei que a consulta não tem CAPTCHA (o que é bom)... mas consultei o meu CNPJ e obtive poucas informações... (sem endereço, sem CNAE) https://www.sefaz.rs.gov.br/NFE/NFE-CCC.aspx?
  4. Esse post está em uma área do SAC.. portanto está disponível apenas para usuários do SAC
  5. Sua ligação parece correta... Use o ACBrECF como de costume, para gerar os documentos citados... Ou seja, não manipule diretamente os demais componentes... isso é feito pelo ECFVirtual
  6. Veja esse post:
  7. Todos os filhos de ACBrECFVirtualPrinter, imprimem, LeituraX, CCD, Comprovante Não Fiscal, etc...
  8. Não sei bem em qual versão do Delphi essa Unit passou a ser distribuída... (No D7 não existe) Alternativas: - Use uma Unit de terceiros que permita ao Delphi 7 ler PNG - Use o exemplo em Lazarus
  9. Conclusão em:
  10. Ok.. subi para o SVN modificações que devem resolver o problema... Aparentemente o site de consulta da Receita para o CPF, modificou totalmente a forma de obter o Captcha Com a ajuda do "FireBug" fui capaz de interpretar as chamadas GET e POST necessárias...
  11. Eita... só agora vi que se tratava do ACBrConsultaCPF... Vou tentar analisar...
  12. Não o Saque é uma Forma de Pagamento com o valor superior... e com isso o proprio ECF volta o Saque como TROCO Exemplo: Total do Cupom = R$ 50,00 A operação CRT fez um saque de R$ 10,00 Será impresso no Pagamento: CARTAO R$ 60,00 O proprio ECF irá imprimir o Troco de R$ 10,00
  13. Acabei de fazer um teste e a consulta foi realizada com sucesso... Não há nada de errado com o componente...
  14. O ACBr já tem.. nas units da Synapse: synacode.pas {:Decode string from base64 format.} function DecodeBase64(const Value: AnsiString): AnsiString; {:Encodes a string to base64 format.} function EncodeBase64(const Value: AnsiString): AnsiString;
  15. O Nome é informado no parâmetro da DLL... Veja o código... nenhum processamento de arquivo é feito pelo ACBr... procedure TACBrECFEpson.ArquivoMFD_DLL(DataInicial, DataFinal: TDateTime; NomeArquivo: AnsiString; Documentos: TACBrECFTipoDocumentoSet; Finalidade: TACBrECFFinalizaArqMFD); Var Resp, Tipo, Sintegra : Integer ; ArqTmp, DiaIni, DiaFim : AnsiString ; OldAtivo : Boolean ; begin LoadDLLFunctions ; ArqTmp := ExtractFilePath( NomeArquivo ) + 'ACBr' ; DeleteFiles( ArqTmp + '_???.txt' ) ; Tipo := FinalidadeParaTipo( Finalidade ); Sintegra := FinalidadeParaSintegra( Finalidade ); OldAtivo := Ativo ; try AbrePortaSerialDLL ; DiaIni := FormatDateTime('ddmmyyyy',DataInicial) ; DiaFim := FormatDateTime('ddmmyyyy',DataFinal) ; GravaLog( ' xEPSON_Obter_Dados_MF_MFD' ); Resp := xEPSON_Obter_Dados_MF_MFD( DiaIni, DiaFim, 0, // 0 = Faixa em Datas 0, // 0 = Sem Espelhos Tipo, Sintegra, ArqTmp ); if (Resp <> 0) then raise EACBrECFERRO.Create( ACBrStr( 'Erro ao executar EPSON_Obter_Dados_MF_MFD.'+sLineBreak+ 'Cod.: '+IntToStr(Resp) )) finally FechaPortaSerialDLL(OldAtivo); end ; if FileExists( ArqTmp + '_CTP.txt' ) then begin if not CopyFileTo( ArqTmp + '_CTP.txt', NomeArquivo ) then raise EACBrECFERRO.Create( ACBrStr( 'Erro ao copiar: '+sLineBreak+ ArqTmp + '_CTP.txt'+sLineBreak+ 'para'+sLineBreak+NomeArquivo )) end else raise EACBrECFERRO.Create( ACBrStr( 'Erro na execução de EPSON_Obter_Dados_MF_MFD.'+sLineBreak+ 'Arquivo: '+ArqTmp + '_CTP.txt não gerado' )) end;
  16. A geração do arquivo é toda feita pela DLL... Somente o suporte da Epson poderia responder: https://epsonstars.com/v3/php/ Quanto aos demais arquivos gerados... eles provavelmente são criados pela DLL como arquivos temporários... A limpeza deveria ser feita por eles... Se tivermos informações precisas de como os temporários são criados, poderíamos apagá-los após a geração do arquivo...
  17. Isso pode ocorrer, quando não há itens do ECF... O comando de cancelamento parte do próprio Sw.Básico do ECF... ou seja, o ACBrECF nunca comanda cancelamento de ACBrECF.SubTotalizaCupom();
  18. Segue uma prévia... (em anexo) Notei que no caso da Epson, existe um método específico para informar os dados do registro 10 e 11... Não sei bem como poderíamos passar essas informações pro ACBrECF, de dentro do ACBrMonitor function EPSON_Config_Dados_Sintegra(pszRazaoSocial:PChar; pszLogradouro:PChar; pszNumero:PChar; pszComplemento:PChar; pszBairro:PChar; pszMunicipio:PChar; pszCEP:PChar; pszUF:PChar; pszFax:PChar; pszFone:PChar; pszNomeContato:PChar):Integer;StdCall;External 'InterfaceEpson.dll'; ACBrMonitor.zip
  19. Notei que os fontes da Epson não levam em conta o parâmetro "finSintegra"... vou tentar ajustar...
  20. Parece haver um bug no seu exemplo... botões 2 e 3 apontam pro mesmo texto (2) Porém ambos funcionam... veja a foto em anexo:
  21. verifique se a DLL é a correta... se não existe uma cópia antiga dela em Windows\System32...
  22. Obrigado pela ajuda Rafael...
  23. Esse comando não depende das DLLs, usa a comunicação direta com a Serial O Fabricante retorna essas informações que você quer ?? (verifique no manual do equipamento) Nem todos os ECFs retornam todas as informações do arquivo INI de DadosUltimaReducaoZ
  24. Não consigo reproduzir o problema... Experimente apagar os fontes da sua pasta ACBrSerial e baixá-los novamente
  25. Fiz o teste proposto e não consegui reproduzir o mesmo erro... Testei no Emulador e no ECF real... Você tem certeza que está com a última versão dos fontes ?
×
×
  • 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.