ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

2-3 Camadas no mesmo aplicativo. Ajuda...

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
douglasdallacqua
Novato
Novato


Registrado: Terça-Feira, 31 de Março de 2009
Mensagens: 7

MensagemEnviada: Sex Ago 13, 2010 2:56 am    Assunto: 2-3 Camadas no mesmo aplicativo. Ajuda... Responder com Citação

Pessoal,

Comecei desbravar o mundo multi-camadas no Delphi 2010, estou lendo alguns
artigos sobre o assunto na net e na Active Delphi(71/72 Fabricio Kawata)...
(74/75/76 Bruno Lichot)... Ótimos por sinal. A grande questão é a seguinte: Hoje
meus aplicativos são todos 2 camadas, basicamente utilizo(no mesmo aplicativo):

1 DataModule(dmServer) c/ SQLConnection, SQLDataSet e DataSetProvider e o
componente LocalConnection(assim meu dmClient enxerga os componentes neste
modulo mesmo estando em 2 camadas)
1 DataModule(dmClient) c/ meus ClientDataSets.

bom, a primeira coisa que fiz foi refazer alguns pontos no código; coloquei
todos os métodos em dmServer e em dmClient adicionei rotinas que consomem os
métodos que estão em dmServer... Exemplo

dmServer -> CurvaABC
dmClient -> ConsomeCurvaABC

até ai tudo tranquilo... mas lembrando que continuo operando em 2 camadas. A
minhas maiores dúvidas são as seguintes.

Preciso consumir métodos em dmServer em 2 hipóteses

- 2 camadas - aqui é tranquilo, pois dmClient enxerga dmServer(cláusula uses / LocalConnection)
- 3 camadas - aqui o bixo pega, pois preciso acessar através do componente
TSQLServerMethods o método no servidor DataSnap, então pensei no seguinte:

em dmClient

se 2 camadas
Result := CurvaABC(par1, par2, etc...)
else // 3 camadas
aqui instancio o componente TSQLServerMethod(ligado a um SQLConenction
conectado ao server DataSnap)
defino os parametros
consumo a funcao
end

claro que terei de utilizar uma rotina para varrer o dmClient e definir os
providers dos ClientDataSets conforme a situacao... 2 ou 3 camadas.

Outra questão é o dmServer, pois queria compartilhar essa unit pelo meu
Aplicativo e também pelo meu servidor DataSnap, sendo assim as alterações
refletiriam nos dois. Aqui minha dúvida foi quanto a classe utilizada... minha
aplicação utiliza um TDatamodule e o servidor DataSnap utiliza um
TDSServerModule... fiz um teste na minha aplicacao e defini dmServer como
TDSServerModule e funcionou perfeitamente... posso proceder assim? ou fazer o
contrário, TDataModule no Servidor DataSnap ?

se alguém puder me ajuda agradeço muito... ja revirei a internet, mas não
encontrei algo que oriente nesse respeito...

resumindo, quero que minha aplicação(2 camadas) seja através apenas de uma
configuração, habilitada p uso em 3 camadas.

qualquer sugestão será muito bem vinda.

Douglas
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB