Сценарий сохранения набора записей XML
Область применения: Access 2013, Office 2013
В этом сценарии вы создадите приложение Active Server Pages (ASP), которое сохраняет содержимое объекта Recordset непосредственно в объект ASP Response .
Примечание.
Для этого сценария требуется, чтобы на сервере был установлен Сервер IIS 5.0 (IIS) или более поздней версии.
Возвращаемый набор записей отображается в Internet Explorer с помощью RDS. DataControl.
Для создания этого сценария необходимо выполнить следующие действия.
- Настройте приложение.
- Получение данных.
- Отправка данных.
- Получение и отображение данных.
Шаг 1. Настройка приложения
Создайте виртуальный каталог IIS с именем XMLPersist с разрешениями скрипта.
Создайте два новых текстовых файла в папке, на которую указывает виртуальный каталог: один с именем XMLResponse.asp, а другой с именемDefault.htm.
Шаг 2. Получение данных
На этом шаге вы напишете код, чтобы открыть набор записей ADO и подготовиться к его отправке клиенту.
Откройте файл XMLResponse.asp в текстовом редакторе, например в Блокноте Windows, и вставьте следующий код:
<%@ 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
Обязательно измените значение параметра Data Source в strCon на имя компьютера Microsoft SQL Server.
Оставьте файл открытым и перейдите к следующему шагу.
Шаг 3. Отправка данных
Теперь, когда у вас есть набор записей, необходимо отправить его клиенту, сохранив его в виде XML в объекте ASP Response .
Добавьте следующий код в нижнюю часть 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 %>
Обратите внимание, что объект ASP Response указан в качестве назначения для метода RecordsetSave . Назначением метода Save может быть любой объект, поддерживающий интерфейс IStream , например объект ADO Stream , или имя файла, включающее полный путь к которому должен быть сохранен набор записей .
Сохраните и закройте XMLResponse.asp перед переходом к следующему шагу. Кроме того, скопируйте файл adovbs.inc из папки C:\Program Files\Common Files\System\Ado в ту же папку, в которой есть файл XMLResponse.asp.
Шаг 4. Получение и отображение данных
На этом шаге вы создадите HTML-файл с внедренным RDS. Объект DataControl , указывающий на XMLResponse.asp файл для получения набора записей.
Откройте default.htm с помощью текстового редактора, например Блокнот Windows, и добавьте следующий код. Замените "sqlserver" в URL-адресе именем компьютера сервера.
<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>
Закройте файл default.htm и сохраните его в той же папке, в которой вы сохранили XMLResponse.asp.
С помощью Internet Explorer 4.0 или более поздней версии откройте URL-адрес
https://<sqlserver>/XMLPersist/default.htm
и просмотрите результаты. Данные отображаются в связанной таблице DHTML.Теперь откройте URL-адрес
https://<sqlserver>/XMLPersist/XMLResponse.asp
и просмотрите результаты. Отобразится XML-код.