Contents Index Topic Contents |
Address Book Application Source Code
The following code is the complete source code for the Address Book sample application.
<HTML> <HEAD> <TITLE>Corporate Address Book</TITLE> </HEAD> <!-- Purpose: To provide a company directory search service for Web users. Written By: Microsoft Remote Data Service Team, Microsoft Corp. Date: April, 1997 --> <BODY BACKGROUND="Arcadia.gif" LANGUAGE="VBScript" onload="Load"> <tr> <td align="center" width="40%"> <table border="2" cellpadding="7" cellspacing="7"> <tr> <td width="100%"><font color="#160B5A"><font size="4"><strong>Arcadia Bay Corporate Phone Directory</strong></font></font></td> </tr> </table> </td> </tr> <hr> <h2><font color = "#160B5A">Search Parameters</h2> <h5><font color = "#160B5A">Please enter one or more search patterns and press FIND to search.</h5> <FONT COLOR = "#160B5A"><B> <PRE> First Name <INPUT NAME=SFirst SIZE=30> </PRE> <PRE> Last Name <INPUT NAME=SLast SIZE=30> </PRE> <PRE> Title <INPUT NAME=STitle SIZE=30> </PRE> <PRE> E-mail Alias <INPUT NAME=SEmail SIZE=30> </PRE> <!-- Command button options: ----------------------- Find Submit a search request to the database. Clear Clear the QBE fields (labor saving function only). Update Profile Send updated "address profile" back to the database. Cancel Changes Undo all changes since the last Update Profile. --> <INPUT TYPE=BUTTON NAME="Find" VALUE="Find"> <INPUT TYPE=BUTTON NAME="Clear" VALUE="Clear"> <INPUT TYPE=BUTTON NAME="Update" VALUE="Update Profile"> <INPUT TYPE=BUTTON NAME="Cancel" VALUE="Cancel Changes"> <hr> <h2><font color = "#400040">Search Results</h2> </B> <br> <!-- This Sheridan DataGrid control (SGrid) are initialized to allow changes to the data - these changes will be saved to the database when the Update Profile button is pressed. --> <Object CLASSID="clsid:AC05DC80-7DF1-11d0-839E-00A024A94B3A" CODEBASE="http://<%=Request.ServerVariables("SERVER_NAME")%>/MSADC/Samples/Sheridan.cab" ID=GRID1 datasrc=#SControl HEIGHT=125 WIDTH=495> <PARAM NAME="AllowAddNew" VALUE="TRUE"> <PARAM NAME="AllowDelete" VALUE="TRUE"> <PARAM NAME="AllowUpdate" VALUE="TRUE"> <PARAM NAME="BackColor" VALUE="-2147483643"> <PARAM NAME="BackColorOdd" VALUE="-2147483643"> <PARAM NAME="ForeColorEven" VALUE="0"> </OBJECT> <br> <br> <INPUT TYPE=BUTTON NAME="First" VALUE="First"> <INPUT TYPE=BUTTON NAME="Prev" VALUE="Previous"> <INPUT TYPE=BUTTON NAME="Next" VALUE="Next"> <INPUT TYPE=BUTTON NAME="Last" VALUE="Last"> <hr> <!-- Non-visual controls - RDS.DataControl --> <OBJECT classid="clsid:BD96C556-65A3-11D0-983A-00C04FC29E33" ID=SControl WIDTH=1 HEIGHT=1> <PARAM NAME="SERVER" VALUE="http://<%=Request.ServerVariables("SERVER_NAME")%>"> <PARAM NAME="CONNECT" VALUE="dsn=ADCDemo;UID=ADCDemo;PWD=ADCDemo;"> </OBJECT> <!-- VBS scripting for composing queries, updating profiles, and retrieving search results. --> <SCRIPT LANGUAGE="VBScript"> Dim myQuery Sub Load Grid1.CAPTION = "Arcadia Bay Corporate Phone Directory" 'Initialize data grid with column names only. SControl.SQL = "Select FirstName, LastName, Title, Email, Building, Room, Phone from Employee where 2 < 1" SControl.Refresh End Sub 'Implement "Clear" button - clears all of the QBE fields in preparation for a new "Find." Sub Clear_OnClick SFirst.Value="" SLast.Value="" STitle.Value="" SEmail.Value="" End Sub 'Implement "Find" button - composes a dynamic SQL query to be processed by the database and returns matching records to be bound to the SGrid object. Sub Find_OnClick myQuery = "Select FirstName, LastName, Title, Type, Email, ManagerEmail, Building, Room, Phone from Employee" 'Check QBE fields and compose a dynamic SQL query. IF (SFirst.Value <> "") THEN myQuery = myQuery + " where FirstName like '" + SFirst.Value + "%'" End IF IF (SLast.Value <> "") THEN myQuery = myQuery + " where LastName like '" + SLast.Value + "%'" End IF IF (STitle.Value <> "") THEN myQuery = myQuery + " where Title like '" + STitle.Value + "%'" End IF IF (SEmail.Value <> "") THEN myQuery = myQuery + " where Email like '" + SEmail.Value + "%'" End IF 'Set the new query and then refresh the SControl so that the new results are displayed. SControl.SQL = myQuery SControl.Refresh End Sub 'Navigation subroutines - based on currency changes to RDS.DataControl (SControl). 'Move to the first record in the bound recordset. Sub First_OnClick SControl.Recordset.MoveFirst End Sub 'Move to the next record from the current position in the bound recordset. Sub Next_OnClick If SControl.Recordset.EOF Then 'cannot move beyond bottom record SControl.Recordset.MoveFirst SControl.Recordset.MoveNext Exit Sub End If SControl.Recordset.MoveNext End Sub 'Move to the previous record from the current position in the bound recordset. Sub Prev_OnClick If SControl.Recordset.BOF Then 'cannot move beyond top record SControl.Recordset.MoveLast 'Get out of BOF buffer SControl.Recordset.MovePrevious Exit Sub End If SControl.Recordset.MovePrevious End Sub 'Move to the last record in the bound recordset. Sub Last_OnClick SControl.Recordset.MoveLast End Sub 'Submits edits made and pull a clean copy of the new data. Sub Update_OnClick SControl.SubmitChanges SControl.Refresh ' A Refresh is not required in ADC 1.5 after a SubmitChanges, but it ensures fresh data. End Sub 'Cancel edits and restores original values. Sub Cancel_OnClick SControl.CancelUpdate End Sub </SCRIPT> <BR> <font color = "#400040">This site powered by Microsoft Remote Data Service. </font> </BODY> </HTML>
Top of Page
© 1997 Microsoft Corporation. All rights reserved. Terms of Use.