Fórum Classe para acesso Direto a ECF em Linux/Windows #229474

03/05/2004

0

Ola, para todos....

Estou desenvolvendo uma Classe Multiplataforma para acesso direto a diversas Impressoras Fiscais.

Na verdade o projeto ainda está engatinhando, mas já tive sucesso em Comunicação com a Bematech em Windows e Linux. Entretanto, como muitos programadores também necessitam ou já fazem acesso a ECF, resolvi usar a ideia de tornar isso um projeto OpenSource.

P1 - Porque fazer mais uma biblioteca de acesso a ECF ?
A ideia é fazer uma Classe que possa rodar em Linux / Windows. algo que nao existe hoje.... Alem de não exigir nenhuma DLL ou SO, a fim de evitar o ´inferno das DLL´s´

P2 - Como fazer acesso aos ECFs ?
Como a classe deve rodar em Linux, fica descartado o uso de DLL´s... Todas as impressoras fiscais (pelo menos as que já programei) possuem manuais descrevendo os codigos de comandos e protocolos seriais.
Atualmente acesso as impressoras: Bematech, Daruma, Schalter, Sweda, Mecaf (e compativeis) de forma direta, em DOS, usando a linguagem CLIPPER 5.02e.+Clipper Tools... O Executável não depende de nenhum arquivo externo ou device driver no CONFIG.SYS.
A ideia é migrar as funçoes de Clipper para Delphi, usando um componente de acesso a Serial.

P3 - Qual componente fará acesso a serial ?
Dos que testei, apenas a classe SynaSer http://www.ararat.cz/synapse/ é multiplataforma (Kylix)

P4 - Porque rodar em Linux ?
Já pensou oferecer para os seus clientes uma solução de Aplicacação Comercial totalmente legalizada ? e sem pagar uma fortuna por isso ? Sem falar na estabilidade e segurança do Linux.... Qual usuário consegue apagar o sistema ? (alem do Root é claro :-)

Caracteristicas do projeto:
- Deve ser OpenSource e com a distribuição dos fontes:
- Deve ser Multi-plataforma (Windows ( CLX / VCL ) / Linux)
- Nao deve depender de nehuma DLL ou SO.
- Deve suportar as diferença entre os diversos modelos de ECF
- As Classes Filhas devem tratar de forma transparente as pequenas diferenças na programaçao de Versoes diferente do mesmo Modelo de ECF. Ex: A classe TECFBematech deve ser capaz de trabalhar com todas as versoes da Bematech FI

Vantagens do Projeto:
- Total controle da Aplicação: Já vi DLL´s que simplesmente param o processamento do programa (Quem já homologou TEF discado, sabe o que eu quero dizer...)
- Facil distribuição: Não precisa distribuir e instalar nenhuma DLL
- Livre-se do Inferno das DLL´s Quando o usuário instala outro programa que usa a mesma DLL que você usa, porém em uma versão antiga (causando Bugs no seu programa)
- Multiplataforma: Linux / Windows
- Programação Limpa e Clara. Basta criar uma classe TECF com o modelo apropriado. O Codigo fonte sempre se refere a Classe criada, sem se preocupar com o Modelo

Desvantagens do Projeto:
- Se o hardware mudar, ficamos dependendo de novas informaçoes do fabricante, ou até mesmo de um modelo do equipamento para testes...
- Geralmente as DLL´s incorporam novos Hardwares do mesmo fabricante.... Aqui teremos que implementar um novo filho da classe TECF para cada Hardware novo (somente se o novo hardware nao for compativel com o antigo)

Estou lançando a ideia para ver a aceitação...
Existe algum disposto a colaborar ? Posso enviar os fontes por e-mail para que estiver interessado...
Em breve farei uma pagina para download do projeto... (Ou se alguem estiver disposto a fazer... :-) )


A ser desenvolvido:
- Terminar a implementação da Classe TECFBematech
- Implementar as demais Classes (Daruma, Schalter, Sweda, Mecaf)
- Criar Classe para Manupilação de TEF Discado para interagir com TECF


Na verdade, nunca fiz nenhum projeto OpenSource... Gostaria de sugestões...

Duvidas:
- Como / Onde hospedar o projeto ?
- Como cordernar ?....
- Como fica a questão legal de OpenSource ? É preciso registrar isso em cartório ?


Ps: Srs Moderadores, desculpe postar essa msg em 2 áreas, mas acredito que seja do interesse...


Dopi

Dopi

Responder

Posts

04/05/2004

Alexandremarcondes

Ola, para todos.... Estou desenvolvendo uma Classe Multiplataforma para acesso direto a diversas Impressoras Fiscais. Na verdade o projeto ainda está engatinhando, mas já tive sucesso em Comunicação com a Bematech em Windows e Linux. Entretanto, como muitos programadores também necessitam ou já fazem acesso a ECF, resolvi usar a ideia de tornar isso um projeto OpenSource.


Muito boa idéia na minha opinião ...

P1 - Porque fazer mais uma biblioteca de acesso a ECF ? A ideia é fazer uma Classe que possa rodar em Linux / Windows. algo que nao existe hoje.... Alem de não exigir nenhuma DLL ou SO, a fim de evitar o ´inferno das DLL´s´


Totalmente apropriado por não ficar dependendo de DLLs

P2 - Como fazer acesso aos ECFs ? Como a classe deve rodar em Linux, fica descartado o uso de DLL´s... Todas as impressoras fiscais (pelo menos as que já programei) possuem manuais descrevendo os codigos de comandos e protocolos seriais. Atualmente acesso as impressoras: Bematech, Daruma, Schalter, Sweda, Mecaf (e compativeis) de forma direta, em DOS, usando a linguagem CLIPPER 5.02e.+Clipper Tools... O Executável não depende de nenhum arquivo externo ou device driver no CONFIG.SYS. A ideia é migrar as funçoes de Clipper para Delphi, usando um componente de acesso a Serial. P3 - Qual componente fará acesso a serial ? Dos que testei, apenas a classe SynaSer http://www.ararat.cz/synapse/ é multiplataforma (Kylix)


interessane, esta classe é OpenSOurce?

P4 - Porque rodar em Linux ? Já pensou oferecer para os seus clientes uma solução de Aplicacação Comercial totalmente legalizada ? e sem pagar uma fortuna por isso ? Sem falar na estabilidade e segurança do Linux.... Qual usuário consegue apagar o sistema ? (alem do Root é claro :-)


Exiwtem outras vantagens de se usar o Linux além dessas ... mas só o fato de ser multiplataforma, já é excelente

Caracteristicas do projeto: - Deve ser OpenSource e com a distribuição dos fontes: - Deve ser Multi-plataforma (Windows ( CLX / VCL ) / Linux) - Nao deve depender de nehuma DLL ou SO. - Deve suportar as diferença entre os diversos modelos de ECF - As Classes Filhas devem tratar de forma transparente as pequenas diferenças na programaçao de Versoes diferente do mesmo Modelo de ECF. Ex: A classe TECFBematech deve ser capaz de trabalhar com todas as versoes da Bematech FI Vantagens do Projeto: - Total controle da Aplicação: Já vi DLL´s que simplesmente param o processamento do programa (Quem já homologou TEF discado, sabe o que eu quero dizer...) - Facil distribuição: Não precisa distribuir e instalar nenhuma DLL - Livre-se do Inferno das DLL´s Quando o usuário instala outro programa que usa a mesma DLL que você usa, porém em uma versão antiga (causando Bugs no seu programa) - Multiplataforma: Linux / Windows - Programação Limpa e Clara. Basta criar uma classe TECF com o modelo apropriado. O Codigo fonte sempre se refere a Classe criada, sem se preocupar com o Modelo Desvantagens do Projeto: - Se o hardware mudar, ficamos dependendo de novas informaçoes do fabricante, ou até mesmo de um modelo do equipamento para testes... - Geralmente as DLL´s incorporam novos Hardwares do mesmo fabricante.... Aqui teremos que implementar um novo filho da classe TECF para cada Hardware novo (somente se o novo hardware nao for compativel com o antigo)

Ler Mais...



Eu acho que as vantagens superam as desvantagens. E quanto a ter de criar novas classes, se a biblioteca for boa, muita gente vai querer usar e assim cada um vai fazer uma parte, entende ... é só deixar fácil de atualizar ...

Estou lançando a ideia para ver a aceitação... Existe algum disposto a colaborar ? Posso enviar os fontes por e-mail para que estiver interessado... Em breve farei uma pagina para download do projeto... (Ou se alguem estiver disposto a fazer... :-) ) A ser desenvolvido: - Terminar a implementação da Classe TECFBematech - Implementar as demais Classes (Daruma, Schalter, Sweda, Mecaf) - Criar Classe para Manupilação de TEF Discado para interagir com TECF Na verdade, nunca fiz nenhum projeto OpenSource... Gostaria de sugestões... Duvidas: - Como / Onde hospedar o projeto ?


EU aconselho no sourceforge.net

- Como cordernar ?....



Se você quiser posso ajudar a coordenar o projeto .. eu já corrdeno um e não poderei desenvolver, mas tenho experiência em corrdenação de projetos abertos e posso te ajudar nisso ...
- Como fica a questão legal de OpenSource ? É preciso registrar isso em cartório ?


Não, não é necesário registrar em lugar algum, você vai escolher uma licença Open Source e distribuir os fontes com uma cópia desta licença ... eu aconselho a MPL (a licença do mozilla) por ser bem flexível e adequada para bibliotecas ...

Ps: Srs Moderadores, desculpe postar essa msg em 2 áreas, mas acredito que seja do interesse...


Envie-me uma MP ou um email se teiver interesse na minha ajuda ...


Responder

Gostei + 0

04/05/2004

Dopi

Ola Alexandre....

Muito obrigado pelo interesse.....

Ficaria muito grato de contar com a sua ajuda. Realmente já havia pensado em usar o Sourceforge.net, mas não fazia a menor ideia de como...

Se você poder dar cuidar da cordenação para mim ficarei muito grato...

Estou mandando no seu e-mail os fontes com um pequeno programa para Teste Feito em Delphi 7 CLX. É só compilar no Kylix...
Por favor, observe que a Classe filha TECFBematech ainda está parcialmente implementada, o que gera um monte de Warnings...

A classe SynaSer também vai junto... Por favor, verifique para mim se de acordo com Licença dela não há problemas em usa-lo no meu projeto.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar