Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

  • Fundadores
Postado

Recentemente a Bematech modificou sua DLL, implementando algo que a muito tempo faltava... Fazer Download da MFD por CRZ..

 

O ACBrECFBematech até o momento se valeu de um engenhoso código para computar o COO Inicial e Final, dadas o CRZ Inicial e Final realizado na procedure CRZToCOO(const ACRZIni, ACRZFim: Integer; var ACOOIni, ACOOFim: Integer);

 

Entretanto com as novas modificações da DLL isso não é mais necessário:

    *** versão 6.1.1.6 ***

. Implementada a função Bematech_FI_VerificaZPendente.
. Implementada a função Bematech_FI_ArquivoMFDPath.
. Atualizada a função Bematech_FI_ArquivoMFD para geração do AC1704 por intervalor de RZ.

                *** versão 6.1.2.0 ***

. Melhorias na geração do arquivo .rfd para as impressoras matriciais.
. Melhorias na geração do retorno da função Bematech_FI_DataHoraGravacaoUsuarioSwBasicoMFAdicional
. Melhorias na função Bematech_FI_VerificaZPendente no pacote Bematech.jar.
. Melhorias na função Bematech_FI_FechamentoDoDia.
. Melhorias na função Bematech_FI_ArquivoMFD.
. Melhorias na função  Bematech_FI_GeraRelatorioSintegraMFD.
. Criada funções para acesso direto.                   

 

        

 

Pensei em adicionar o seguinte código em procedure TACBrECFBematech.LoadDLLFunctions para obrigar o uso da versão 6.1.1.6 ou superior....  Alguém acredita que isso seja um problema ?

 cLIB_VersaoMinima = '6.1.1.6';
...
   BematechFunctionDetect( 'Bematech_FI_VersaoDll',@xBematech_FI_VersaoDll );
   VersaoAtual := StringOfChar(' ',10) ;
   Resp := xBematech_FI_VersaoDll( VersaoAtual ) ;
   if Resp = 1 then
   begin
     VersaoAtual := StringReplace( Trim(VersaoAtual), ',', '.', [rfReplaceAll] ) ;
     if CompareVersions(VersaoAtual, cLIB_VersaoMinima) < 0 then
        raise Exception.Create( ACBrStr('A versão de '+cLIB_Bema+' é: '+VersaoAtual+sLineBreak+
                                        'Você deve atualizar para no mímimo: '+cLIB_VersaoMinima)   );
   end;

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.

  • Moderadores
Postado

Concordo, penso o mesmo que o Juliomar, precisamos acertar o código para que os usuários não usem dlls antigas, seria interessante inclusive tentarmos fazer algo no sentido de checar para todas, evitaríamos muitos posts por conta de dlls desatualizadas.

  • Curtir 1

Equipe ACBr

Régys Borges da Silveira

http://www.regys.com.br

certificacao delphicertificacao delphi
  • Consultores
Postado

Também concordo. A mensagem é clara, torna a instalação mais fácil e manutenção mais simples.

 

Apenas mudaria o tipo da Exception para o nosso tipo EACBrECFErro, continuando com o padrão que temos usado no ACBrECF

  • Curtir 2

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

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

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
  • 1 mês depois ...
  • Moderadores
Postado

[Error] ACBrECFBematech.pas(3402): Undeclared identifier: 'CompareVersions'

 

Verificou se não tem nenhum arquivo seu em vermelho ou amarelo e se o ACBr está totalmente atualizado?

Porque o Daniel enviou a alteração em 08/11 e já atualizei aqui diversas vezes depois disso e não ocorre o erro que você informa, está tudo ok.

Equipe ACBr

Régys Borges da Silveira

http://www.regys.com.br

certificacao delphicertificacao delphi
Postado (editado)

Tentei o instalador do ACBR, e agora mesmo tentando compilar o pacote AcbrSerial.dpk isolado me retorna esse erro. Ainda uso o Delphi 7.

Sim, meu fonte do ACBR totalmente verde...

Onde fica essa funcção CompareVersions?

Editado por Fabiano Bok
  • 5 meses depois ...
Postado

Obrigado Juliomar, por favor desculpe o inconveniente. 

Na verdade eu estava pesquisando sobre o erro que o nosso amigo Fabiano Ribeiro mencionou em um post acima, referindo-se a instalação do pacote AcbrSerial: "'[Error] ACBrECFBematech.pas(3402): Undeclared identifier: 'CompareVersions"

Achei que eu pudesse estar usando o repositório antigo, mas olhando nos post do Daniel está conforme indicado lá. Por favor me desculpe, realmente deveria ter pesquisado. :oops:

Mas enfim, ao tentar instalar o pacote AcbrSerial, dá esse erro com essa função (CompareVersions). Eu uso Delphi 7. Os fontes estão todos atualizados conforme o repositório atual (svn://svn.code.sf.net/p/acbr/code).

A algum tempo eu já uso o ACBrNfe2 e estou iniciando o projeto para o PAF-ECF. Mantenho os fontes sempre atualizados pois pelo contrário já teria tido problemas rsss.

Fiz também a instalação pelo instalador e não aparece erro algum, mas se tento abrir o exemplo da pasta ACBrECF dá o erro que não encontrou a classe TACBrECF e TACBrFD classes essas que estão no pacote ACBrSerial. Por favor me corrijam se eu estiver errado.

Parabéns para a equipe do ACBr pelo excelente trabalho e um abraço!

  • 2 semanas depois ...
  • Este tópico foi criado há 3836 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.