GARANTIR DESCONTO

Fórum Modularização! Vamos debater? #292669

22/08/2005

0

Olá amigos do clube, tentei procurar e não achei em nenhuma lugar informações para a modularização de um sistema. Pois bem, queria debater com os nobres amigos, esta questão, para que outros amigos com dúvidas possam ter um tópico sobre isso o qual podem sanar as dúvidas..

Bem, eu estive pensando... eu queria fazer um sistema, com módulos, no estilo do Protheus, da microsiga, alguém conhece? Pois bem, ele parece ter um compilador incluso no próprio sistema, o qual o usuário programa as telas e conexoes e tals, compila, e ele grava isso em um ´banco de dados´ de módulos, o qual poderá ser chamado posteriormente... a questão da compilação a gente poderia usar um compilador for win32 gratuito como o freepascal, que inclusive tem o lazarus (que podemos tirar como exemplo), mas a questao eh: como vincular os novos ´modulos´, ao sistema principal? como usar a conexao com o banco de dados, do sistema principal, vendo que me parece ser em 3 camadas....

Bem, pensei nesta possíbilidade, mas poderia ser somente um módulo mesmo, em dll, ou até em bpl, sei lá.. mas que eu faça acesso pelo módulo principal...

Bem, é isso... estou aberto a quaisquer sugestões...

[]s


Titanius

Titanius

Responder

Posts

22/08/2005

Lucianobarreto

Nem pensei nessa sua possibilidade de ter um compilador, mas eu acharia bem complicado de fazer. Em recente pesquisa aqui no clube achei mais fácil modularizar por executáveis, uma vez que esses somente são executados se chamados pelo programa principal. Por enquanto está indo bem legal.


Responder

Gostei + 0

22/08/2005

Titanius

Certo amigo Luciano, porém a intencao eh utilizar o mesmo executavel, ou seja, o executavel principal, eh MDI Form, e os modulos seriam DMI Child... ou poderia ser varios executaveis -como o seu, deste que ao chama-los, deveriam aparecer como um Frame, ou seja, o ´executavel-modulo´, ficaria ´preso´ ao executavel principal...

Mas como vc fez com a conexao ao banco? cada ´executavel-modulo´ seu tem uma?



[]s


Responder

Gostei + 0

22/08/2005

Lucianobarreto

Certo amigo Luciano, porém a intencao eh utilizar o mesmo executavel,

É, realmente esse não é o caso do meu sistema, eu estou fazendo cada módulo separado, que são eles(Cadastro, Vendas, Estoque, Produção, Relatórios, ...), que são chamados por um Principal.

ou seja, o executavel principal, eh MDI Form, e os modulos seriam DMI Child...


O meu executavel principal fica preso, uma vez que você só consegue fechar o mesmo se não existir nenhum módulo aberto. O Principal verifica se existe modulo aberto e o modulo verifica se existe principal.

Mas como vc fez com a conexao ao banco? cada ´executavel-modulo´ seu tem uma?


Sim, cada executável tem uma conexão, sendo que o principal tem conexão também, mas somente com as tabelas de controle de acesso.


Responder

Gostei + 0

22/08/2005

Adriano Santos

Nem pensei nessa sua possibilidade de ter um compilador, mas eu acharia bem complicado de fazer. Em recente pesquisa aqui no clube achei mais fácil modularizar por executáveis, uma vez que esses somente são executados se chamados pelo programa principal. Por enquanto está indo bem legal.


Acredito que seja bastante complicada implementação de um sistema como o exemplo do Protheus. Além do mais precisaríamos fazer um treinamento bem detalhado do sistema depois de pronto, para que o usuário consiga configurar tudo sozinho e tals.

A modularização conforme o [b:b066cfc110]Luciano Barreto[/b:b066cfc110] mencionou, com executáveis separados, pra mim é mais viável. Eu já trabalhei com um sistema assim e funciona perfeitamente. Quanto a conexão com o banco, cada executável tem a sua.

É muito mais simples, com certeza.


Responder

Gostei + 0

22/08/2005

Nerdex

Saindo um pouco do assunto principal - use o Pascal Script™ 3.0 para criar o teu compilador. É o que deu origem ao Inno Setup.
O melhor instalador de softwares da atualidade.

[url]http://www.remobjects.com/page.asp?id={9A30A672-62C8-4131-BA89-EEBBE7E302E6}[/url]


Responder

Gostei + 0

23/08/2005

Titanius

Certo amigos, porém gostaria mesmo de apenas uma conexão, pois no meu caso, a empresa tem 50 computadores.... e o sistema terá no mínimo uns 10 módulos principais, só aí seriam 100 conexões... no caso do PasclScript, pensei nele tbm, porem tem como ele fazer algum tipo de conexao com o banco de dados? Teria algum exemplo mais fundo dele?


[]s


Responder

Gostei + 0

23/08/2005

Lucianobarreto

Bom.. Ai para o seu caso ainda daria pra fazer da forma dos executáveis, porém o PRINCIPAL teria que servir de camada de acesso ao banco. Mas mesmo que o seu sistema tenha vários módulos e usuários, as conexões vão se únicas, pois o cara não vai acessar todos os módulos ao mesmo tempo, ou vai? Caso sim realmente eu acho que não seja muito bom para o lado do servidor...


Responder

Gostei + 0

23/08/2005

Titanius

eh justamente isso q eu to querendo :d, que o principal, seja a camada de acesso aos dados, ou seja, sem ele os ´modulos´ nao funcionariam, poderia até ser varios executaveis, desde que eles usem a conexao do principal... e com isso, daria até pra fazer do jeito de compilador e tals.. :d, mas isso eh outra historia... :d

Mas como eu faria pra ter acesso dos modulos ao principal?

Nota.: Meu sistema está usando ClientDataSet, via ConnetionBroker e Socket pra conectar ao servidor...



[]s


Responder

Gostei + 0

23/08/2005

Lucianobarreto

Cara, eu nunca fiz esse tipo de coisa, mas de uma olhada no link abaixo que creio poder te ajudar.
http://www.clubedelphi.net/novo/colunistas/LaercioQueiroz/02.asp


Responder

Gostei + 0

23/08/2005

Titanius

Não seria isso não.. :(

No caso eu teria no meu principal o ConnectionBroker, que conecta com o servidor, e os ClientDataSets dos ´modulos´ teria q ligar no CB do principal... como sera q se faz isso?


[]s


Responder

Gostei + 0

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

Aceitar