Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 3174 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro
Postado

Bom dia pessoal,

Temos um cliente que a um pouco mais de 2 meses, substituiu parte dos ECFs deles adquirindo 4 Daruma MACH 2. O caixa que o cliente mais reclamou está operando a 9.600 de baudrate e o software básico é a versão 01.00.00.

Depois que subtituímos os ECFs pelos novos o cliente nos reportou que:

1) Os ECFs estão lentos em relação aos outros que não foram trocados, ou seja, o fechamento do cupom com venda normal é um pouco mais devagar e que quando ocorre emissão de fechamento com CCD o desempenho chega a ser crítico.

2) Quando efetua a emissão do espelho nos ECFs a numeração dos COO não sai em sequencial, pulando alguns.

Os itens acima foram constatados pelo cliente que a princípio utilizava a DarumaFramewok 9.0.21(32 bits).

Enviamos para manutenção um dos ECFs que não constatou problema. Efetuamos então alguns testes no cliente e o mesmo verificou que com a DarumaFramework 8.17.8(32 bits), a venda tinha uma performance melhor e a numeração do espelho ficava sequencial, não apresentando problema.

Fomos informados pelo suporte que a DarumaFramework 9.0.21(32 bits) apresentava no espelho o problema de pular os COO e que eles já haviam solicitado uma correção. Fomos então orientados a utilizar a última versão DarumaFramework 10.5.1.0(32 bits). Esta última versão o cliente reportou que apresentou uma ligeira melhora na velocidade mas constatamos que ainda pulava a numeração do COO ao emitir o espelho. Por esta razão deixamos no cliente a versão DarumaFramework 8.17.8(32 bits).

O suporte nos pediu um arquivo de auditoria para poder analisar este caso, habilitando as seguintes tags no arquivo DarumaFramework.xml:

<START>
    <LocalArquivos>.\</LocalArquivos>
....
 <ECF>
    ....
    <Auditoria>1</Auditoria>

E no caso da lentidão pediu para verificarmos a tag:

<START>
    ....
    <Produto>ECF</Produto>
...
<ECF>
    ...
    <PortaSerial>COM1</PortaSerial>
    ....
    <Velocidade>9600</Velocidade>

Com isso seria gerado o arquivo Auditoria_ECF.txt que iríamos passar para o suporte deles para conseguirmos identificar o que está ocorrendo no cliente. Habilitamos no cliente, mas o arquivo em questão não é gerado.

Os nossos questionamentos são:

1) O arquivo acima não está sendo gerado pelo fato de utilizarmos a biblioteca da ACBR?

2) Temos algum outro modo de passarmos esta informação para o suporte?

3) Alguém já enfrentou o problema de lentidão ou o fato de pular o COO na emissão do espelho conforme descrito acima?

Desde já agradeço. Gostaríamos de saber a opinião de vocês.

 

 

 

 

  • Fundadores
Postado

O componente ACBrECF não faz uso do "DarumaFramewok", ele usa a comunicação direta com os equipamentos....

Se você usa diretamente a DLL do Fabricante, então é com eles...  não há como o ACBr tomar conhecimento disso...

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

  • Membros Pro
Postado

Então, no nosso caso, o projeto é construído inteiramente utilizando o ACBr. Não fazemos chamada no AC diretamente na DLL da Daruma. Eu posso estar equivocado, mas acredito que no caso do espelho é executada uma chamada para a 'DarumaFramework'.

Na unit 'ACBrECFDaruma.pas':

1) Linha 49:

cLIB_Daruma = 'DarumaFrameWork.dll';

2) Linha 5159:

DarumaFunctionDetect('rGerarEspelhoMFD_ECF_Daruma', @xrGerarEspelhoMFD_ECF_Daruma);

3) Linha 5326:

procedure TACBrECFDaruma.EspelhoMFD_DLL(COOInicial, COOFinal: Integer;
  NomeArquivo: AnsiString; Documentos: TACBrECFTipoDocumentoSet);

procedure TACBrECFDaruma.EspelhoMFD_DLL(DataInicial, DataFinal: TDateTime;
  NomeArquivo: AnsiString; Documentos: TACBrECFTipoDocumentoSet);

Na unit 'ACBrECF.pas':

procedure TACBrECF.PafMF_MFD_Espelho(const COOInicial, COOFinal: Integer;
  const PathArquivo: String);

procedure TACBrECF.PafMF_MFD_Espelho(const DataInicial, DataFinal: TDateTime;
  const PathArquivo: String);

Posteriormente chamamos:

ecf.AcbrEcf.PafMF_MFD_Espelho(CrzInicial, CrzFinal, Path);
ecf.AcbrEcf.PafMF_MFD_Espelho(Inicio, Termino, Path);

 

  • 3 semanas depois ...
  • Membros Pro
Postado

Pessoal, boa tarde.

Eu obtive o log de um CCD em relação a lentidão reportada no tópico (1). Anexei abaixo.

Observe que o CCD abre as '22:08:29:359 hrs' e fecha '22:08:46.867 hrs', uma diferença de '17,508 s' o que faz com que os caixas reclamem muito da demora.

Será que é algum problema no ECF ou alguma configuração do nosso sistema que poderia estar ocasionando este delay?

Log_CCD_ACBr.TXT

  • Moderadores
Postado
3 horas atrás, Intelliware disse:

Pessoal, boa tarde.

Eu obtive o log de um CCD em relação a lentidão reportada no tópico (1). Anexei abaixo.

Observe que o CCD abre as '22:08:29:359 hrs' e fecha '22:08:46.867 hrs', uma diferença de '17,508 s' o que faz com que os caixas reclamem muito da demora.

Será que é algum problema no ECF ou alguma configuração do nosso sistema que poderia estar ocasionando este delay?

Log_CCD_ACBr.TXT

Por favor para uma nova dúvida abra um novo tópico.

Equipe ACBr

Régys Borges da Silveira

http://www.regys.com.br

certificacao delphicertificacao delphi
  • Membros Pro
Postado

Boa tarde Régys, eu só anexei um log referente ao tópico (1) deste mesmo tópico. Conforme abaixo:

1) Os ECFs estão lentos em relação aos outros que não foram trocados, ou seja, o fechamento do cupom com venda normal é um pouco mais devagar e que quando ocorre emissão de fechamento com CCD o desempenho chega a ser crítico.

Mas qualquer coisa, se precisar abro um novo tópico. Sem problema.

  • Moderadores
Postado

Essa lentidão vai depender de como você configurou o componente, eu tenho várias Darumas aqui no laboratório e nenhuma apresenta lentidão.

Você não configurou um tempo entre comando muito grande?

O que você configurou na propriedade "IntervalorEntreComandos"?

Equipe ACBr

Régys Borges da Silveira

http://www.regys.com.br

certificacao delphicertificacao delphi
  • Membros Pro
Postado

Realmente Régys, eu também acredito que a Daruma não seria o problema, inclusive temos uma Mach1 que a nosso ver não apresenta lentidão.

Estamos logando e repassando na ponta do lápis todos os tempos de execução das funções no frente caixa para tentar achar algo que possamos melhorar também, além de estar repassando para vocês algumas partes dos logs referente ao ECF que estamos obtendo.

Estou enviando para você um printscreen das propriedades do componente 'ACBrECF' que está setada no nosso sistema. Só algumas observações:

1) 'ControlePorta' no cliente está TRUE.

2) Conforme você perguntou, o comando 'IntervaloAposComando' está em '300'.

Desde já agradeço, Régys.

ACBrECF.png

  • Este tópico foi criado há 3174 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • 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.