Você está na página 1de 24

Conhecendo o Projeto ACBr

Daniel Simes de Almeida


www.projetoacbr.com.br
O que o Projeto ACBr 2

um conjunto de Programas, Rotinas e Componentes


escrito em Object Pascal (Delphi/Lazarus)
Destinado a Programadores de Aplicaes de
Automao Comercial e Varejo
Simplifica o desenvolvimento e a interao com
Equipamentos e Documentos relacionados a Automao
Comercial
Desenvolvido em Cdigo Aberto, usando a licena LGPL
Multiplataforma (Windows/Linux/Mac?) e Multi IDE (Delphi/Lazarus)

www.projetoacbr.com.br
Principais objetivos 3

Criar uma comunidade de Desenvolvedores e


colaboradores em um Projeto de Cdigo Aberto de
desenvolvimento constante
(Cada um ajuda um pouco e todos ganham)

Minimizar o problema da falta de padro entre os


equipamentos semelhantes de marcas diferente
Suprir a falta de acesso (drivers) para Linux em
equipamentos de Automao Comercial
Simplificar, substantivamente o desenvolvimento de
aplicaes de A.C.

www.projetoacbr.com.br
Onde encontrar ? 4

Frum do Projeto: Suporte, SAC, Base de conhecimento,


Perguntas e Respostas
http://projetoacbr.com.br

Pgina do Projeto: Informaes gerais, download


http://acbr.sf.net
http://sourceforge.net/projects/acbr

Cdigo Fonte: SVN


svn://svn.code.sf.net/p/acbr/code/trunk

www.projetoacbr.com.br
Principais Vantagens 5

Cdigo Aberto
Gratuito, e ainda permite aos usurios estudar e
contribuir no cdigo
Baixa dependncia de bibliotecas externas
Fcil distribuio do Executvel final
Livre de problemas de diferentes verses de DLLs
Fcil portabilidade entre diferentes Marcas:
Basta ajustar o modelo no Componente
No h necessidade de escrever cdigo especfico para
cada equipamento.

www.projetoacbr.com.br
Principais Vantagens 6

Integrao com ambiente de desenvolvimento


(IDE)
Componentes drag and drop, propriedades, eventos
Multi IDE
Delphi 7 a Delphi XE6
Lazarus/FPC
Multiplataforma
Windows e Linux
Fcil instalao
ACBrInstall
www.projetoacbr.com.br
Porque cdigo aberto ? 7

Desenvolvimento cooperativo. Todos ganham com as


mudanas, por isso h um grande interesse em ajudar.
Componentes criados de acordo com a necessidade dos
desenvolvedores, pois sero usados pelos prprios
desenvolvedores
Cdigo limpo e claro. Pois lido e revisado por vrios
usurios
Ajuda nos testes dos diversos equipamentos suportados
Maior representatividade perante a Fornecedores e
associaes da Classe de Automao

www.projetoacbr.com.br
Inicio do Projeto e Motivao 8

Inicio do Projeto: 10/05/2004 (registro no sourceforge)


http://juliomarmarchetti.blogspot.com.br/2012/01/acbr-como-tudo-comecou.html

Desejo de contribuir com a comunidade. Por ser usurio de


vrios projetos de Cdigo Aberto (Ex: Firefox, FireBird, Linux,
LibreOffice, SVN, 7-Zip, SSH, etc)

Falta de padro dos Equipamentos de Automao


Falta de Suporte a Linux pelos fabricantes de Automao
Foco comercial da empresa D.J.System, no a criao de
Ferramentas para Desenvolvedores
Obter Ajuda de Programadores de todo o Brasil, no
desenvolvimento, Testes e Suporte
www.projetoacbr.com.br
Caractersticas de um Projeto 9

de Cdigo Aberto
Regulamentado por uma Licena (Ex: GPL, LGPL, MIT,
Apache) http://www.opensource.org/licenses

No democracia, meritocracia
Apenas um grupo reduzido tem acesso de escrita
no repositrio dos fontes.
Controle de Verso (CVS, SVN, GIT)
Deve possuir uma ferramenta de Suporte
comunidade (WebSite, Frum, Listas de e-mail, Blogs, etc)
www.projetoacbr.com.br
Componentes do Projeto 10

Organizado em diversos Pacotes (Packages)


Dependncia de forma hierrquica
Agrupados por assunto ou afinidade
Descrito em LEIA-ME.TXT
Componentes no visuais (em grande parte)
Faz uso de outros projetos
Synapse, SynaSer - http://www.ararat.cz/synapse
OpenSSL - https://www.openssl.org/
Projeto PCN - https://code.google.com/p/projetocooperar/
Outros: (AJBarcode, Tgif, DelphiZXIngQRCode)

www.projetoacbr.com.br
Componentes do Projeto 11

ACBrDiversos
ACBrBarCode, ACBrCalculadora, ACBrCMC7, ACBrExtenso, ACBrFala,
ACBrTroco, ACBrValidador, ACBrEnterTab, ACBrGIF

ACBrSerial
ACBrBAL, ACBrECF, ACBrETQ, ACBrGAV, ACBrCHQ, ACBrDIS, ACBrLCB

ACBrTCP
ACBrCEP, ACBrConsultaCNPJ, ACBrCotacao, ACBrIBGE, ACBrMail,
ACBrTCPServer, e outros
Arquivos Fiscais
Sintegra, SpedFiscal, SPEDContabil, SPEDFCont, SPEDPisCofins, SEF2,
PAF-ECF, LFD

www.projetoacbr.com.br
Componentes do Projeto 12

Documentos Eletrnicos
NFe2, NFC-e, CT-e, NFS-e

ACBrTEF
TEF discado, TEF dedicado, CliSiTef, Pay&Go, etc

ACBrBoleto
CNAB400 CNAB240, Arquivos de Remessa/Retorno, Impresso Boletos

ACBrSAT
Comunicao com SAT, impresso QRCode

www.projetoacbr.com.br
ACBrInstall 13

www.projetoacbr.com.br
Conceitos do Desenvolvimento 14

Programao Orientada a Objetos, Herana e


Polimorfismo
Comunicao direta com os Equipamentos
No depender de DLLs
Utiliza a classe SynaSer http://synapse.ararat.cz para acesso a
porta Serial.

Cdigo nico para vrias Plataformas (Sistemas


Operacionais) e IDEs (Integrated Development Environment)

www.projetoacbr.com.br
Relacionamento entre Classes 15

ACBrECFClass no
ACBrECF O componente
possui cdigo, apenas
principal
as assinaturas dos
Apenas empacota os
Mtodos e Wrapper
Mtodos e
Propriedades,
propriedades
que so Herdadas por ACBrECFClass de ACBrECFClass.
suas classes filhas.

Herana

ACBrECFBemateh ACBrECFDaruma ACBrECFEpson

Todo cdigo, especfico para cada modelo, est nas classes filhas.
O componente ACBrECF, instancia uma Classe filha de acordo com a sua
propriedade Modelo

www.projetoacbr.com.br
ACBrMonitor / ACBrNFeMonitor 16

Programa desenvolvido
usando os componentes
do ACBr.
Permite o uso do ACBr
por qualquer linguagem
de programao
Serve de ponte entre a
A.C. e os equipamentos.
Utiliza a troca de
arquivos TXT ou Sockets
(TCP/IP)

www.projetoacbr.com.br
Programas de Exemplo e Testes 17

Demo ACBrMail

Demo ACBrECF

www.projetoacbr.com.br
Estatsticas do Projeto 18

Downloads desde o incio do Projeto

www.projetoacbr.com.br
Estatsticas do Projeto 19

Visitas no Frum no ltimo ano

www.projetoacbr.com.br
Estatsticas do Projeto 20

Localizao de visitantes
no ltimo ano

www.projetoacbr.com.br
Estatsticas do Projeto 21

Numero de usurios no frum

www.projetoacbr.com.br
Como ajudar no projeto ? 22

Testando os Componentes: Baixe, instale, e teste o ACBr. Entre em


contato com a equipe, reporte Bugs, ou at mesmo faa elogios,
participe...
Divulgando o ACBr: Quanto mais conhecido e utilizado, mais ajuda o
projeto pode receber, e mais importncia ele ganhar.
Desenvolvendo: Adicione suporte a novos Equipamentos. Faa
correes nos fontes. Doe cdigo. Estude os fontes, e veja como voc
pode colaborar no desenvolvimento.
Documentando: Escreva manuais de ajuda e exemplos de uso.
Efetuando Suporte: Ajude no suporte novos usurios.
Emprestando Equipamentos: Fornecedores podem, doar ou
emprestar equipamentos para testes
Contrate o SAC, efetue Doaes: http://acbr.sf.net
www.projetoacbr.com.br
O que o SAC do ACBr 23

Suporte pago do ACBr


Acesso a frum privativo;
Resposta em at 1 dia til;
Disponibilizao do ACBrMonitor/ACBrNFeMonitor compilados
semanalmente;
Contribuir para que o projeto cresa de maneira sustentvel;
Programadores dedicados exclusivamente prestao de
suporte;
Maior credibilidade ao Projeto ACBr.
Sem contrato, renovao mensal, automtica
Planos para contratao do SAC - R$ 120,00 por ms, boleto
bancrio

www.projetoacbr.com.br
Conhecendo o Projeto ACBr 24

Perguntas?
http://www.projetoacbr.com.br/forum/

www.projetoacbr.com.br