Buscar

WebServices em Delphi7

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 3, do total de 6 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 6, do total de 6 páginas

Prévia do material em texto

WebServices em Delphi 7.0 – By AdeN
Criando o Módulo Servidor:
Inicie um novo projeto no Delphi: Vá ao menu principal e escolha FILE/NEW/Other. Na paleta WebServices, dê um clique duplo em SOAP Server Application:
Na próxima caixa de diálogo, selecione “CGI Stand-Alone Executable”.
Responda não para a pergunta sobre a criação da Interface for Soap Module. Não há a necessidade de se criar a interface SOAP, pois estamos desenvolvendo uma aplicação independente e não um objeto SOAP.
Será criado um Web Module com os componentes abaixo:
Clique em File/Save All para salvar o Web Module. Dê o nome de UwebModule para a Unit e Server para o projeto.
Vamos criar então o Data Module para configurar os objetos de acesso ao banco de dados. Clique em File/New/Other, Paleta WebServices e dê um clique duplo em SOAP Server Data Módule. Digite o nome DM para a Classe, conforme abaixo:
Salve essa Unit com o nome de UdataModule.
�
Vá á paleta ADO do Delphi, e coloque no DataModule um objeto do tipo ADOConnection e outro do tipo ADOTable. Configure o conforme abaixo:
ADOConnection
Name: 		cnAccess
ConnectionString: 	Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=C:\Webservice\clientes.mdb;
LoginPrompt: 	False
ADOTable
Name: 		tbClientes
Connection:	 	cnAccess
TableName:	 	Clientes
Veja que estou usando um banco de dados no padrão MS Access
Vá a Paleta Data Access e coloque um objeto DatasetProvider no Datamodule com as configurações abaixo:
DatasetProvider
Name: 		dspClientes
Dataset:	 	tbClientes
Salve seu projeto e compile-o (CTRL+F9). Será gerado um arquivo executável no padrão CGI. Esse executavel será utilizado pelo módulo cliente.
Para testá-lo, abra o navegador e digite o seguinte endereço:
http://127.0.0.1/webservice/server.exe
Obs: 
O endereço IP poderá ser trocado pelo endereço do seu servidor Internet/Intranet.
O alias “webservice” é o nome do diretório virtual onde o server.exe foi configurado para acesso remoto (configure o IIS ou PWS antes de realizar esse teste).
�
Ao acionar o endereço no navegador, você deverá obter a seguinte página de resposta:
Isso significa que o servidor já está em modo stand-by. Vamos então criar o módulo cliente.
�
Construindo o modulo Cliente.
Escolha no meu principal do Delphi: File/New/Application. Salve o formulário com o nome de Uform e o Projeto como Cliente.DPR.
Coloque no formulario um componente SoapConnection da Paleta Webservices. Configure-o conforme abaixo:
Veja que na URL do servidor, foi acrescentado o parâmetro /soap/IappServer ao seu final. A propriedade Active foi configurada para True.
Coloque um objeto ClientDataset e um DataSource (Paleta Data Access) no formulário e configure as propriedades conforme abaixo:
ClientDataset
RemoteServer:	SOAPConnection1
ProviderName:	dspClientes
Active:			True
DataSource
Dataset:		ClientDataset1
�
Coloque um DBNavigator, um DBGrid e configure sua propriedade DataSource para buscar o DataSource1. Você verá então os registros do banco de dados sendo acessados pelo módulo cliente.
Para que as alterações realizadas no módulo cliente possam ser registradas no banco de dados do servidor é necessário executar o comando “ApplyUpdates”. Veja como fazê-lo:
No Evento OnAfterPost e OnAfterDelete do ClientDataset1 escreva o código abaixo:
ClientDataSet1.ApplyUpdates(0);
Sugiro ainda colocar o código abaixo no evento OnDestroy do form para evitar perda de dados na saida da aplicação:
procedure TForm1.FormDestroy(Sender: TObject);
begin
 if ClientDataset1.ChangeCount > 0 Then ClientDataset1.ApplyUpdates(0);
end;
Se você for rodar o Modulo Cliente em outro computador, não esqueça de levar junto com o executável o arquivo MIDAS.DLL. Não será necessário a instalação de nenhum driver de banco de dados na máquina cliente.
Dica: Se não quiser distribuir a MIDAS.DLL, acrescente a unit MidasLib à cláusula Uses do projeto cliente. O executável ficará um pouco maior, mas pode compensar o fato de ter de distribuir apenas o arquivo executável.
Tutorial by Adenilton Rodrigues
aden@aden.com.br
Belo Horizonte/MG

Outros materiais