適用先: Access 2013、Office 2013
このシナリオでは、 Response オブジェクトの内容を Active Server Pages (ASP) の Response オブジェクトに直接保存する ASP アプリケーションを作成します。
注:
[!メモ] このシナリオを作成するには、サーバーに Internet Information Server 5.0 (IIS) 以降がインストールされている必要があります。
返される Recordset は、 RDS.DataControl を使用して Internet Explorer に表示されます。
このシナリオを作成するために必要な手順は次のとおりです。
- アプリケーションを設定します。
- データを取得します。
- データを送信します。
- データを受信し、表示します。
手順 1: アプリケーションを設定する
スクリプトアクセス許可を持つ XMLPersist という名前の IIS 仮想ディレクトリを作成します。
仮想ディレクトリが指すフォルダーに、XMLResponse.asp という名前の 2 つの新しいテキスト ファイルを作成し、もう 1 つは Default.htmという名前のテキスト ファイルを作成します。
手順 2: データを取得する
この手順では、ADO の Recordset を開いてクライアントに送信する準備を行うコードを記述します。
Windows のメモ帳などのテキスト エディターで XMLResponse.asp ファイルを開き、次のコードを挿入します。
<%@ 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
strCon のデータ ソース パラメーターの値を、Microsoft SQL Server コンピューターの名前に変更してください。
ファイルを開いたままで、次の手順に進みます。
手順 3: データを送信する
Recordset の準備が完了したので、これを 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 %>
Recordset の Save メソッドの保存先として、ASP Response オブジェクトが指定されています。 Save メソッドの保存先には、 IStream インターフェイスをサポートする任意のオブジェクト (ADO の Stream オブジェクトなど)、または、 Recordset の保存先の完全なパスを含むファイル名を指定できます。
XMLResponse.asp を保存して閉じ、次の手順に進みます。 また、adovbs.inc ファイルを、C:\Program Files\Common Files\System\Ado フォルダーから XMLResponse.asp ファイルがあるフォルダーにコピーします。
手順 4: データを受信して表示する
この手順では、RDS が埋め込まれた HTML ファイルを作成します。Recordset を取得するためにXMLResponse.asp ファイルを指す DataControl オブジェクト。
Windows メモ帳などのテキスト エディターで default.htm を開き、次のコードを追加します。 URL の "sqlserver" は、実際に使用するサーバー コンピューターの名前に置き換えてください。
<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>
Close the default.htm file and save it to the same folder where you saved XMLResponse.asp.
Internet Explorer 4.0 以降を使用して、URL
https://<sqlserver>/XMLPersist/default.htm
を開き、結果を確認します。 The data is displayed in a bound DHTML table.次に、URL
https://<sqlserver>/XMLPersist/XMLResponse.asp
を開き、結果を確認します。 The XML is displayed.