Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado

Ola, estou tentando efetuar uma venda com desconto no item mas não esta dando certo. Eu mando que é desconto e que será em % mas ele sempre me da um acrescimo em valor. O que pode estar ocorrendo.

Utilizo o ACBR no Java.

Eu não utilizo o ACBrMonitor. Eu adicionei ao meu projeto as classes que estão em \Projetos\ACBr32_DLL\JACBr\JACBr\src\jACBr e estou utilizando as dll ACBr32.dll e ACBr32_JNI.dll.

Estou mandando os parâmetros para o metodo vendeItem desta forma.

("7898501064378","TECIDO EM HELANCA","17", 1.0, 17.7, 10.0, "UND","%","D")

o método esta assim


     /**

     * Registra a venda de um item no cupom fiscal

     * @param codigo C�digo do item.

     * @param descricao Descri��o do item.

     * @param aliquotaICMS �ndice da al�quota.

     * @param qtd Quantidade

     * @param valorUnitario Valor unit�rio

     * @param descontoPorc Desconto

     * @param unidade Unidade

     * @param tipoDescontoAcrescimo Tipo de desconto: "$" para valor ou "%" para percentual.

     * @param descontoAcrescimo Desconto ou acr�scimo: "D" para desconto ou "A" para acr�scimo.

     * @throws ACBrException

     */

    public native void vendeItem(String codigo, String descricao, String aliquotaICMS, double qtd, double valorUnitario, double descontoPorc, String unidade, String tipoDescontoAcrescimo, String descontoAcrescimo) throws ACBrException;


Postado

Eu não utilizo o ACBrMonitor. Eu adicionei ao meu projeto as classes que estão em \Projetos\ACBr32_DLL\JACBr\JACBr\src\jACBr e estou utilizando as dll ACBr32.dll e ACBr32_JNI.dll.

Alô rpassos, antes de mais nada fico feliz em saber que está usando o jACBr.

Vou reproduzir o seu caso para ver onde está o problema, pode ser no JNI ou no código do jACBr mesmo.

Fique a vontade para postar dúvidas, problemas, sugestões, etc ...

Abs,

Rafael Batiati

ACBrFramework - Automação comercial para todos.

MultiClubes - Soluções para a área de clubes, parques, lazer e entretenimento.

Postado

Ola, Rafael

Primeiramente obrigado pela atenção.

Uma outra coisa, ha alguma limitação do jacbr com impressoras USB? ou com velocidade da impressora?

Postado

Uma outra coisa, ha alguma limitação do jacbr com impressoras USB? ou com velocidade da impressora?

A limitação quanto ao USB é dos componentes ACBr; O mesmo protocolo do ECF serve tanto para USB quanto para Serial, mas no caso das USBs cada fabricante utiliza um hardware diferente que exigiria o uso de um driver específico para enviar os bytes até o equipamento.

A forma elegante de resolver isso sem onerar o projeto, é utilizando o driver do próprio ECF que emula uma porta serial. Dessa forma, o driver faz o serviço específico da USB, cabendo ao ACBr enviar o protocolo como se fosse uma Serial.

Acredito que a maioria dos ECFs possuam esse driver USB capaz de criar a porta serial virtual, nesse caso o pessoal mais experiente no ACBr poderá nos ajudar na resposta.

*******

Quanto à velocidade da impressora, sim, a versão do jACBr que você está utilizando não suporta ainda definir a velocidade. Isso já foi implementado há alguns meses atrás no ACBr32.DLL e no ACBr.NET, mas por descuido meu, não fiz no jACBr.

Vou aproveitar então para evoluir o jACBr com as mesmas funções do ACBr.Net

Qualquer dúvida, fique a vontade.

Abs,

Rafael Batiati

ACBrFramework - Automação comercial para todos.

MultiClubes - Soluções para a área de clubes, parques, lazer e entretenimento.

  • 2 semanas depois ...
Postado

Alô rpassos.

Fiz uma atualização na DLL do JNI que corrige esse bug;

De uma forma muito "traiçoeira", o JRE enviava uma string UTF para o ACBr.

Ao comparar = "D" ou = "A" isso falhava pois o caracter UTF é de 2bytes.

Na runtime do .NET, o UTF de 2 bytes é preenchido com zero no byte não usado e passado assim pro Delphi; mas na runtime do Java não sei ainda porque isso não aconteceu. Pra descobrir terei que debugar o lado Java, o lado JNI e o lado Delphi.

Vou revisar se existem outros flags desse tipo no sistema pra tratar da mesma forma, e avaliar se outras strings sofrem algum problema.

Pode baixar a última versão e testar.

Abs.

Rafael Batiati

ACBrFramework - Automação comercial para todos.

MultiClubes - Soluções para a área de clubes, parques, lazer e entretenimento.

  • 1 mês depois ...
  • 5 anos depois...
Postado (editado)

Opa, estou com o mesmo problema do rpassos, tem alguma forma de resolve-lo sem precisar compilar uma nova dll do ACBr32_JNI? E se não onde posso conseguir esta dll que tem o problema consertado?

Editado por crodribeiro
  • Este tópico foi criado há 2715 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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.