Inquiridor
Open Source Projeto ACBR (todas as impressoras fiscais)

Discussão Geral
-
Saudações,
Todos sabem que desenvolver um projeto comercial compativel com "Todas" as impressoras fiscais disponiveis no mercado e uma tarefa ardua. No entanto gostaria de compartilhar um projeto Open Source que visa minimizar esse problema. Ainda não utilizei em produção, mas tenho boas referencias de quem utiliza. No momento estou em fase de teste com Bematech e posteriormente com a Daruma. Até o momento os testes estão 100%.
E como funciona. Deve instalar o programa ACBR monitor onde vc se comunica com o monitor por via arquivo texto ou socket e o ACBR que se comunica com as ECF, impressora de cheques, gavetas e etc. Então basta uma unica programação no seu aplicativo, configurar o ACBR e vc teria todas as impressoras disponivies no seu projeto.
Esse projeto ACBR foi desenvolvido em DELPHI e tem a possibilidade de consumir a DLL sem a necessidade do programa monitor. No entanto a dll compilada não esta disponivel no site e teria que compilar pelo Delphi. Não sei se funciona com a dll usando o .Net. Então partir para o programa monitor via socket.
O programa ficou simples. Fiz uma interface com todas as funções ECF. O frente de caixa sempre utiliza as funções da interface. Implementei então essa interface para ACBR. Dessa forma se futuramente tiver problemas com o ACBR posso tranquilamente desenvolver uma nova classe para uma ECF especifica.
Quem tiver interesse segue o link http://acbr.sourceforge.net/wiki/index.php/P%E1gina_principal
Gostaria também aproveitar e convidar quem tiver interesse em juntar um grupo para implementar esse projeto em C#
Todas as Respostas
-
Alô Renato,
Eu também estou tentando migrar uma aplicação para o ACBr. Esta aplicação é desenvolvida em FlagShip - Linux e utiliza o Observer2 da Daruma, o que me obriga a ter uma cópia do sistema em cada estação.
Com o Acbr, via socket eu consigo ter o sistema somente no servidor e o ACBr nas estações.
Na maioria das funções o ACBr funciona bem com a Daruma, porem as funções que eu normalmente utilizava para dados da ultima redução z, estou penando. A Daruma tem uma série de funções que facilitam a vida, além de um retorno limpo. O Acbr por sua complexidade, ou seja, utilizar somente o que é comum a todas as impressoras, me engessa um pouco.
Outro pequeno problema é que os retornos são cheio de textos desnecessarios e as vezes sem padrão de formatação.
Um exemplo é o retorno de ecf.DadosUltimaReducaoZ() : veja os valores em VendaBruta, Aliquota...
OK: DataMovimento = 22/11/07
NumSerie = DR0207BR000000107559
NumLoja = 001
NumCOOInicial = 011172
NumCOO = 011189
NumCRZ = 0118
NumCRO = 0001
VendaBruta = 28,5899999999965
GrandeTotal = 129086,34
TotalDescontos = 0,33
TotalCancelamentos = 3,35
TotalAcrescimos = 0
Aliquota 01 T 1700 = 11,7
Aliquota 02 T 2500 = 3,35
TotalSubstituicaoTributaria = 9,86
TotalNaoTributado = 0
TotalIsencao = 0 -
-
Galera tambem quero participar sou voluntario tenho tempo disponivel para ser utilizado em um projeto assim...
Ailton Branco
Campo Grande - MS
ailtonbrc -
-
Pessoal, bom dia.
O problema do ACBrECF é justamente não estar acessível em sua totalidade para outras linguagens de programação, como C# ou VB.NET.
Pensando nisso, desenvolvemos o ACBrX, que é um ActiveX que permite instanciar o objeto ACBrECF diretamente em seus fontes, após importar a referência COM para o projeto.
A partir disso, todos os recursos do ACBrECF poderão ser acessados diretamente pelo completador de código do ambiente de desenvolvimento. Com certeza, vale a pena conferir.
A versão de avaliação pode ser baixada em: http://easysoftware.net.br/downloads/ACBrX.rar
Qualquer dúvida, estamos a disposição.
EasyTEF Team
-
Acho estas iniciativas fantasticas. e contribuem para Automacao comercial e para os programadores.
Apoiamos o projeto OpenSouce para comunicacao com impressoras fiscias, tanto que contratamos um parceiro para deixar o ACBR redondinho com a impressora Daruma, com todas as vantagens que a impressora possui,
Voces podem acessar ao repositorio do ACBR e baixar um fonte completo que esta disponibilziado, tem um video explicando estas implementacoes http://www.youtube.com/watch?v=mNMqaRqVo4c&list=UUuDKjfqaaWS9rknvYja8lFw&index=22&feature=plcp
http://www.youtube.com/watch?v=wC0kRrQ4rh0&list=UUuDKjfqaaWS9rknvYja8lFw&index=29&feature=plcp
Porem vale acrescentar que já passou da hora de ter esta iniciativa pra .NET ne? demoro! quem desejar fazer to dentro e apoio.
Já pensou? uma Camada .NEt padrao pra todas as impressoras?? Cara seria otimo!!! Quem desejar to dentro, apoiamos incondicionalmente. :)
Claudenir - .NET Rocks!!! :)
-
Pessoal,
Segue aqui o código para instanciar o ACBrECF em C#. O arquivo ACBrX.chm (help), que acompanha o pacote ACBrX, lista todos as propriedades, métodos e delegates do objeto ACBrX.ACBrECF, mas além disso, o visual studio também lista tudo pelo completador de código do objeto.
using ACBrX; using System.Runtime.InteropServices.ComTypes; public partial class Main : Form, IACBrECFEvents // reparar na implementação da interface IACBrECFEvents private ACBrX.ACBrECF ACBrECF; // variáveis para configuração de eventos private int cookie = -1; private IConnectionPoint icp = null; private void CarregarACBrX() { // instancia o objeto ACBrECF ACBrECF = new ACBrECF(); // configuração de eventos // lembrando que é necessário implementar a interdace IACBrECFEvents junto ao form IConnectionPointContainer icpc = (IConnectionPointContainer)ACBrECF; Guid guid = typeof(IACBrECFEvents).GUID; icpc.FindConnectionPoint(ref guid, out icp); icp.Advise(this, out cookie); } private void Main_Load(object sender, EventArgs e) { CarregarACBrX(); } private void Main_FormClosing(object sender, FormClosingEventArgs e) { icp.Unadvise(cookie); ACBrECF = null; }
EasyTEF Team
-
Como vai Claudenir, tudo bem?
Estamos em andamento adiantado deste projeto em .Net que será Open Soure para se comunicar com diversas impressoras e se pudermos contar com a Daruma seria muito importante e interessante.
Grande abraço,
Kerler
-
Show de bola!! Conte com nossa Ajuda! nossa ideia é sempre apoiar a comunidade, sempre, sem restricoes.
Apoiamos no CAso do ACBR que é basicamente DEPHI (por natureza) e podemos apoiar a iniciativa em C# sim.
Quem sai ganhando é a comunidade. o pessoal aqi do forum de automacao sem duvida podera tambem ajudar e apoiar com sugetsoes.
Show! se desejar me enviar um email em private claudenir@daruma.com.br com o que voce necessita, me fale que já começo a correr atras.
Claudenir C. Andrade
-
Bom dia !!
Quanto a utilização do AcbrX alguem utiliza, recomenda???
O que vocês podem falar a respeito por favor?
-> Vantagens
-> Politica de Atualização
-> Já tiveram algum problema na utilização
Estou tentando contato com a Empresa Easy Software para esclarecimento de dúvida e não estou conseguindo...
Muito obrigado!!
Jairo
-
-
-
olá pessoal.
preciso de um programador com experiência
com o projeto acbr para me ajudar a homologar meu software de restaurantes.
meu sistema ja esta sendo comercializado de forma fiscal.
porem uso o PDV de uma empresa.
tive que criar um layout de exportação
para que o PDV desta empresas importe o cupom.
quero meu proprio sistema fazendo isso.
posuimos vários módulos
BALÇÃO
MESAS
DELIVERY
CASAS NOTURNAS
SEF SERVICE
TODOS POSSUEM FUNÇÃO DE FECHAMENTO DE CONTA
E IMPRESSÃO DE CUPOM NÃO FISCAL
JÁ CONFIGURADO.
O SISTEMA POSSUI FUNÇÕES FISCAIS POR DLLS
MAIS A MAIORIA ESTA INOPERANTE.
EM FIM
meu contato
ml@softwarerestaurante.com.br
Atenciosamente
-
olá pessoal.
preciso de um programador com experiência
com o projeto acbr para me ajudar a homologar meu software de restaurantes.
meu sistema ja esta sendo comercializado de forma fiscal.
porem uso o PDV de uma empresa.
tive que criar um layout de exportação
para que o PDV desta empresas importe o cupom.
quero meu proprio sistema fazendo isso.
posuimos vários módulos
BALÇÃO
MESAS
DELIVERY
CASAS NOTURNAS
SEF SERVICE
TODOS POSSUEM FUNÇÃO DE FECHAMENTO DE CONTA
E IMPRESSÃO DE CUPOM NÃO FISCAL
JÁ CONFIGURADO.
O SISTEMA POSSUI FUNÇÕES FISCAIS POR DLLS
MAIS A MAIORIA ESTA INOPERANTE.
EM FIM
meu contato
ml@softwarerestaurante.com.br
Atenciosamente