Cenário de persistência do conjunto de registros do XML
Aplica-se ao: Access 2013, Office 2013
Neste cenário, você criará um aplicativo ASP (Active Server Pages) que salva o conteúdo de um objeto Recordset diretamente no objeto Response ASP.
Observação
[!OBSERVAçãO] Este cenário exige que seu servidor tenha o IIS 5.0 (Internet Information Server) ou posterior instalado.
O Recordset retornado é exibido no Internet Explorer usando um RDS.DataControl.
As seguintes etapas são necessárias para criar este cenário:
- Configurar o aplicativo.
- Obter os dados.
- Enviar os dados.
- Receber e exibir os dados.
Passo 1: Configurar a aplicação
Crie um diretório virtual do IIS com o nome XMLPersist com permissões de script.
Crie dois novos ficheiros de texto na pasta para a qual o diretório virtual aponta, um com o nome XMLResponse.asp e o outro com o nome Default.htm.
Passo 2: Obter os dados
Nesta etapa, você gravará o código para abrir um Recordset ADO e preparar para enviá-lo ao cliente.
Abra o arquivo XMLResponse.asp com um editor de texto, como o Bloco de Notas do Windows, e insira o seguinte código:
<%@ language="VBScript" %> <!-- #include file='adovbs.inc' --> <% Dim strSQL, strCon Dim adoRec Dim adoCon Dim xmlDoc ' You will need to change "slqServer" below to the name of the SQL ' server machine to which you want to connect. strCon = "Provider=sqloledb;Data Source=sqlServer;Initial Catalog=Pubs;Integrated Security=SSPI;" Set adoCon = server.createObject("ADODB.Connection") adoCon.Open strCon strSQL = "SELECT Title, Price FROM Titles ORDER BY Price" Set adoRec = Server.CreateObject("ADODB.Recordset") adoRec.Open strSQL, adoCon, adOpenStatic, adLockOptimistic, adCmdText
Certifique-se de que altera o valor do parâmetro Origem de Dados em strCon para o nome do computador do Microsoft SQL Server.
Mantenha o arquivo aberto e vá para a próxima etapa.
Passo 3: enviar os dados
Agora que você tem um Recorset, você precisa enviá-lo ao cliente, salvando-o como XML no objeto Response ASP.
Adicione o seguinte código na parte inferior do XMLResponse.asp:
Response.ContentType = "text/xml" Response.Expires = 0 Response.Buffer = False Response.Write "<?xml version='1.0'?>" & vbNewLine adoRec.save Response, adPersistXML adoRec.Close Set adoRec=Nothing %>
Observe que o objeto Response ASP é especificado como o destino para o método Save do Recordset. O destino do método Save pode ser qualquer objeto que ofereça suporte à interface IStream, como um objeto Stream ADO ou um nome de arquivo que inclui o caminho completo no qual o Recordset deve ser salvo.
Salve e feche o arquivo XMLResponse.asp antes de ir para a próxima etapa. Copie também o arquivo adovbs.inc da pasta C:\Program Files\Common Files\System\Ado para a mesma pasta na qual está o arquivo XMLResponse.asp.
Passo 4: Receber e apresentar os dados
Neste passo, irá criar um ficheiro HTML com um RDS incorporado. Objeto DataControl que aponta para o ficheiro XMLResponse.asp para obter o Conjunto de registos.
Abra default.htm com um editor de texto, como o Bloco de Notas do Windows, e adicione o seguinte código. Substitua "sqlserver" no URL pelo nome do seu computador servidor.
<HTML> <HEAD><TITLE>ADO Recordset Persistence Sample</TITLE></HEAD> <BODY> <TABLE DATASRC="#RDC1" border="1"> <TR> <TD><SPAN DATAFLD="title"></SPAN></TD> <TD><SPAN DATAFLD="price"></SPAN></TD> </TR> </TABLE> <OBJECT CLASSID="clsid:BD96C556-65A3-11D0-983A-00C04FC29E33" ID="RDC1"> <PARAM NAME="URL" VALUE="XMLResponse.asp"> </OBJECT> </BODY> </HTML>
Feche o arquivo default.htm e salve-o na mesma pasta na qual você salvou o arquivo XMLResponse.asp.
Com o Internet Explorer 4.0 ou posterior, abra o URL
https://<sqlserver>/XMLPersist/default.htm
e observe os resultados. Os dados são exibidos em uma tabela DHTML vinculada.Agora, abra o URL
https://<sqlserver>/XMLPersist/XMLResponse.asp
e observe os resultados. O XML é exibido.