Escenario de persistencia del conjunto de registros XML
Se aplica a: Access 2013, Office 2013
En este escenario, creará una aplicación de páginas ASP que guarda el contenido de un objeto Recordset directamente en el objeto Response de ASP.
Nota:
Este escenario requiere que el servidor tenga instalado Internet Information Server 5.0 (IIS) o una versión posterior.
El objeto Recordset devuelto se muestra en Internet Explorer mediante un RDS.DataControl.
Para crear el escenario, siga estos pasos:
- Configurar la aplicación.
- Obtener los datos.
- Enviar los datos.
- Recibir y mostrar los datos.
Paso 1: Configurar la aplicación
Cree un directorio virtual de IIS denominado XMLPersist con permisos de script.
Cree dos nuevos archivos de texto en la carpeta a la que apunta el directorio virtual, uno denominado XMLResponse.asp y el otro denominado Default.htm.
Paso 2: Obtener los datos
En este paso, escribirá el código para abrir un objeto Recordset de ADO y prepararlo para su envío al cliente.
Abra el archivo XMLResponse.asp con un editor de texto, tal como el Bloc de notas de Windows, e inserte el código siguiente:
<%@ 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
Asegúrese de cambiar el valor del parámetro Origen de datos en strCon por el nombre del equipo de Microsoft SQL Server.
Mantenga el archivo abierto y vaya al paso siguiente.
Paso 3: Enviar los datos
Ahora que ya tiene un Recordset, deberá enviarlo al cliente guardándolo como XML en el objeto Response.
Agregue el código siguiente al final de 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 el objeto Response de ASP se especifica como destino del método Save del Recordset. El destino del método Save puede ser cualquier objeto que admita la interfaz IStream, tal como un objeto ADO Stream o un nombre de archivo que incluya la ruta de acceso completa donde se va a guardar el objeto Recordset.
Antes de ir al paso siguiente, guarde y cierre XMLResponse.asp. Copie también el archivo adovbs.inc de la carpeta C:\Archivos de programa\Archivos comunes\System\Ado en la misma carpeta en la que tiene el archivo XMLResponse.asp.
Paso 4: Recepción y visualización de los datos
En este paso, creará un archivo HTML con un RDS incrustado. Objeto DataControl que apunta al archivo XMLResponse.asp para obtener el objeto Recordset.
Abra default.htm con un editor de texto, como el Bloc de notas de Windows, y agregue el código siguiente. Sustituya "sqlserver" en la dirección URL por el nombre de su equipo 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>
Cierre el archivo default.htm y guárdelo en la misma carpeta donde guardó XMLResponse.asp.
Con Internet Explorer 4.0 o posterior, abra la dirección URL
https://<sqlserver>/XMLPersist/default.htm
y observe los resultados. Los datos se muestran en una tabla DHTML enlazada.Ahora abra la dirección URL
https://<sqlserver>/XMLPersist/XMLResponse.asp
y observe los resultados. Aparecerá el XML.