Criação do servidor de aplicações
Atendendo a solicitações da comunidade, nesta semana vamos falar um pouco sobre a criação de um servidor de aplicação. Criaremos uma aplicação servidora que pode ser responsável por todos os métodos e regras implementados com relação ao acesso e manipulação de dados referente ao projeto. Aqui utilizaremos tecnologia COM+ na MiddleWare do Servidor de Aplicação, DBExpress e MIDAS no acesso a dados. Utilizaremos InterBase/FireBird como SGBD.
Vale ressaltar as vantagens de uma aplicação distribuída: aumento de poder de processamento, quebra da tranca tecnológica do fornecedor do SGBD, subutilização do Hardware do SGBD, que é o mais caro, proporcionando um prolongamento da sua vida útil até que se tenha lentidão em seus processos e seja necessário investimento em melhoria no seu hardware. Este tipo de aplicação também aumenta a escalabilidade e proporciona criação de várias interfaces, em tecnologias distintas acessando um mesmo cerne de acesso a dados e regras de negócios. Um ponto que se deve ter cuidado nesta arquitetura é a rede que deve ser rápida, pois o número de nós até a informação chegar no banco, ou do banco chegar no cliente, aumenta.
Existe muito a falar sobre esse assunto e possibilidades de uso,bem como sua melhor aplicação e utilização de seus recursos e tecnologias. Mas não fique desapontado se não deu para explorar tudo, fique ligado no ClubeDelphi TechDay, inscreva-se já, será uma ótima oportunidade para aprender mais sobre o assunto. Outra opção é nos treinamentos do ClubeDelphi, e se você não mora no Rio ou São Paulo, não fique triste, entre em contato conosco que vamos até você. Bom chega de comercial e vamos ao nosso exemplo.
Nosso projeto consistirá apenas em um pequeno cadastro de produtos. Eis a nossa tabela de produtos:
Id_Produto - Inteiro – Chave Primária
Descricao – Caracter Variável de 60 posições
Quantidade – Inteiro
PrecoCompra – Decimal de 15 posições e precisão de duas casas
Para criarmos a aplicação servidora siga os passos no menu do Delphi: File >New >Othe > Multitier >Transactional Data Module e siga as configurações abaixo.
Figura01
Figura02
O nome do projeto é AppServer e o nome da unidade é UClasseDados. No DataModulo criaremos a conexão com o banco e os DataStes de manipulação de dados, todos componentes DBExpress.
Figura03
Componentes:
Tipo: SqlConnection
Nome: SqlConnection
LoginPrompt: False
Observação: Responsável pela conexão com o banco de Dados. Para configura-lo, basta aplicar um duplo clique sobre o componente, clicar no botão “+” dar um nome para a conexão e fornecer o tipo do banco de dados a ser acessado. Veja o exemplo abaixo:
Figura04
Tipo: SqlDataSet
Nome: SqlProdutos
SqlConnection: SqlConnection
CommandText: Select * From PRODUTOS
Where DESCRICAO LIKE :DESCRICAO
Order by DESCRICAO
Params: DESCRICAO – DataType: ftString
Observação: Componente responsável por acessar e disponibilizar os dados da tabela de Produtos.
Tipo: DataSetProvider
Nome: DspProdutos
DataSet: SqlProdutos
Observação: Componente responsável por disponibilizar o conteúdo do dataset a ele conectado, server, basicamente, para fazer a interface da aplicação cliente com um dataset na aplicação servidora e prover o ambiente para operação com os dados deste dataset em conjunto com o ClientDataSet, que neste caso estará na aplicação cliente.
Depois de criada e compilada a aplicação que será o nosso servidor de aplicação, devemos registra-lo, para o tempo de desenvolvimento, localmente na nossa máquina. Isso pode ser feito executando o comando ‘regsvr32.exe “caminho_físico\nome_da_aplicação.dll” ’, ou no menu View do Delphi, opção Type Library, clique no botão Register Type Library.
Figura05
Em seguida você receberá a seguinte mensagem:
Figura06
Agora estamos prontos para criar o cliente deste Servidor de Aplicação, mas esta etapa fica para a próxima semana.
Ainda em tempo, obrigado por todos os e-mails que aos amigos delphianos tem me mandado, espero poder continuar ajudando e sendo ajudado, repartindo para conquistar!
Continuem a mandar e-mails com críticas, dúvidas e sugestões.
Um grande abraço e até semana que vem.