The following example shows how to set the necessary parameters of RDS.DataControl at run time. The manner in which a Recordset is retrieved using the Refresh method is determined by the settings of the ExecuteOptions and FetchOptions properties. To test this example, cut and paste the following code into a normal ASP document and name it RefreshVBS.asp. Use Find to locate the file Adovbs.inc and place it in the directory you plan to use. ASP script will identify your server.
<!-- BeginRefreshVBS --> <%@ Language=VBScript %> <!--use the following META tag instead of adovbs.inc--> <!--METADATA TYPE="typelib" uuid="00000205-0000-0010-8000-00AA006D2EA4" --> <html> <head> <meta name="VI60_DefaultClientScript" content=VBScript> <meta name="GENERATOR" content="Microsoft Visual Studio 6.0"> <title>Refresh Method Example (VBScript)</title> <style> <!-- body { font-family: 'Verdana','Arial','Helvetica',sans-serif; BACKGROUND-COLOR:white; COLOR:black; } .thead { background-color: #008080; font-family: 'Verdana','Arial','Helvetica',sans-serif; font-size: x-small; color: white; } .thead2 { background-color: #800000; font-family: 'Verdana','Arial','Helvetica',sans-serif; font-size: x-small; color: white; } .tbody { text-align: center; background-color: #f7efde; font-family: 'Verdana','Arial','Helvetica',sans-serif; font-size: x-small; } --> </style> </head> <body> <h1>Refresh Method Example (VBScript)</h1> <H2>RDS API Code Examples </H2> <HR> <TABLE DATASRC=#RDC> <TR> <TD> <INPUT DATAFLD="FirstName" SIZE=15> </TD> <TD> <INPUT DATAFLD="LastName" SIZE=15> </TD> <TD> <INPUT DATAFLD="Title" SIZE=15> </TD> <TD> <INPUT DATAFLD="HireDate" SIZE=15> </TD> </TR> </TABLE> <!-- RDS.DataControl with no parameters set at design time --> <OBJECT classid="clsid:BD96C556-65A3-11D0-983A-00C04FC29E33" ID=RDC HEIGHT=1 WIDTH=1> </OBJECT> <HR> Server: <Input Size=70 Name="txtServer" Value="http://<%=Request.ServerVariables("SERVER_NAME")%>"><BR> Connect: <Input Size=70 Name="txtConnect" Value="Provider=SQLOLEDB;User Id=sa;Password=;Initial Catalog=Northwind"><BR> SQL: <Input Size=70 Name="txtSQL" Value="Select * from Employees"> <HR> <TABLE BORDER=1 WIDTH="60%"> <TR> <TD COLSPAN=3 BGCOLOR=silver> Choose if you want the Recordset brought back Synchronously on the current calling thread or Asynchronously on another thread. </TD> </TR> <TR> <TD>Synchronously: <BR> <Input Type="Radio" Name="optExecuteOptions" Checked OnClick="SetExO('adcExecSync')"> </TD> <TD>Asynchronously: <BR> <Input Type="Radio" Name="optExecuteOptions" OnClick="SetExO('adcExecAsync')"> </TD> <TD> </TD> </TR> <TR> <TD COLSPAN=3 BGCOLOR=silver> Fetch Up Front, Background Fetch with Blocking or Background Fetch without Blocking </TD> <TR> <TD>Up Front:<BR> <Input Type="Radio" Name="optFetchOptions" OnClick="SetFO('adcFetchUpFront')"> </TD> <TD>Background w/ Blocking:<BR> <Input Type="Radio" Name="optFetchOptions" Checked OnClick="SetFO('adcFetchBackground')"> </TD> <TD>Background w/o Blocking:<BR> <Input Type="Radio" Name="optFetchOptions" OnClick="SetFO('adcFetchAsync')"> </TD> </TR> </TABLE> <INPUT TYPE=BUTTON NAME="Run" VALUE="Run"><BR> <Script Language="VBScript"> <!-- Dim EO 'ExecuteOptions Dim FO 'FetchOptions EO = "adcExecSync" 'Default value FO = "adcFetchBackground" 'Default value Sub SetExO(NewEO) EO = NewEO End Sub Sub SetFO(NewFO) FO = NewFO End Sub ' Set parameters of RDS.DataControl at Run Time Sub Run_OnClick RDC.Server = txtServer.Value RDC.SQL = txtSQL.Value RDC.Connect = txtConnect.Value If EO = "adcExecSync" Then 'Determine which ExecuteOption chosen RDC.ExecuteOptions = adcExecSync MsgBox "Recordset brought in on current calling thread Syncronously" Else RDC.ExecuteOptions = adcExecAsync MsgBox "Recordset brought in on another thread Asyncronously" End If If FO = "adcFetchBackground" Then 'Determine ‘which FetchOption chosen RDC.FetchOptions = adcFetchBackground MsgBox "Control goes back to user after first batch of records returned" ElseIf FO = " adcFetchUpFront" Then RDC.FetchOptions = adcFetchUpFront MsgBox "All records returned before control goes back to user" Else RDC.FetchOptions = adcFetchAsync MsgBox "Control goes back to user immediately" End If RDC.Refresh End Sub --> </Script> </body> </html> <!-- EndRefreshVBS -->
DataControl Object (RDS) | ExecuteOptions Property (RDS) | FetchOptions Property (RDS) | Recordset Object | Refresh Method
© 1998-2001 Microsoft Corporation. All rights reserved.