Share via


Refresh Method Example (VBScript)

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';Integrated Security='SSPI';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>&nbsp;</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 -->

See Also

DataControl Object (RDS) | ExecuteOptions Property (RDS) | FetchOptions Property (RDS) | Recordset Object | Refresh Method