This example demonstrates how the AbsolutePosition property can track the progress of a loop that enumerates all the records of a Recordset. It uses the CursorLocation property to enable the AbsolutePosition property by setting the cursor to a client cursor. Cut and paste the following code to Notepad or another text editor, and save it as AbsolutePositionJS.asp.
<!-- BeginAbsolutePositionJS -->
<%@LANGUAGE="JScript" %>
<%// use this meta tag instead of adojavas.inc%>
<!--METADATA TYPE="typelib" uuid="00000205-0000-0010-8000-00AA006D2EA4" -->
<html>
<head>
<title>AbsolutePosition and CursorLocation Properties Example (JScript)</title>
<style>
<!--
BODY {
font-family: 'Verdana','Arial','Helvetica',sans-serif;
BACKGROUND-COLOR:white;
COLOR:black;
}
.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>AbsolutePosition and CursorLocation Properties Example (JScript)</h1>
<%
// connection and recordset variables
var strCnxn = "Provider=sqloledb;Data Source=" + Request.ServerVariables("SERVER_NAME") + ";" +
"Initial Catalog=Northwind;User Id=sa;Password=;"
var rsEmployee = Server.CreateObject("ADODB.Recordset");
// display string
var strMessage;
// Open a recordset on the Employee table using
// a client-side cursor to enable AbsolutePosition property.
rsEmployee.CursorLocation = adUseClient;
rsEmployee.Open("employees", strCnxn, adOpenStatic, adLockOptimistic, adCmdTable);
// Write beginning of table to the document.
Response.Write('<table border="0" align="center">');
Response.Write('<tr class="thead2">');
Response.Write("<th>AbsolutePosition</th><th>Name</th><th>Hire Date</th></tr>");
while (!rsEmployee.EOF)
{
strMessage = "";
// Start a new table row.
strMessage = '<tr class="tbody">';
// First column in row contains AbsolutePosition value.
strMessage += "<td>" + rsEmployee.AbsolutePosition + " of " + rsEmployee.RecordCount + "</td>"
// First and last name are in first column.
strMessage += "<td>" + rsEmployee.Fields("FirstName") + " ";
strMessage += rsEmployee.Fields("LastName") + " " + "</td>";
// Hire date in second column.
strMessage += "<td>" + rsEmployee.Fields("HireDate") + "</td>";
// End the row.
strMessage += "</tr>";
// Write line to document.
Response.Write(strMessage);
// Get next record.
rsEmployee.MoveNext;
}
// Finish writing document.
Response.Write("</table>");
// Close table.
rsEmployee.Close;
%>
</html>
<!-- EndAbsolutePositionJS -->
AbsolutePosition Property | CursorLocation Property | Recordset Object
© 1998-2001 Microsoft Corporation. All rights reserved.