Baixe o app para aproveitar ainda mais
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
Compartilhar