Tasks in the BDG Samples

The sample applications of the BDG accomplish a number of programming tasks. A task, in this sense, is a discrete, programmed action that furthers the aims of the application. It is performed by code in one or more files.

The following table lists the programming tasks in the BDG sample applications, states the scenarios in which each task appears, and provides references for each task. These references can be textual descriptions, procedures, or source files in which you can find code that performs the task.

Task References Source code files
User-Services Tier    
Adding elements and attributes dynamically with the XML DOM See Dynamically Adding Child Elements and Attributes to an XML Document Object. menu.asp
Binding an RDS recordset to a DHTML table See Binding RDS Search Results to a Table Using DHTML, Displaying Returned Data, Using RDS ActiveX Controls, and CML Data Access Using RDS. Search.asp, DetailsFromSearch query in FmLibMap.ini, DSearch.asp
Building application menus dynamically See Implementing the Menu Bar menu.asp, emenu.xml, menu.xsl
Creating an option control on a Web page See Making the Form's Images Display. Message.asp
Creating lists in HTML tables using virtual tables to make data appear to load more responsively See Coding *List.htm, Coding *List.js, and Loading the List When Forms First Appear. PersonList.htm, PersonList.js
Creating views in Microsoft Outlook® See Creating a Folder View.
Finding changed fields on an Outlook form See Using the Outlook Object Model. BasicLitCrit, EnhancedLitCrit
Generating HTML with an XSL transformation See Performing the XSL Transformation on menu.xml. menu.xsl, menu.asp, Menu.XML Files
Converting Unicode data to character data See Converting Text from Unicode to Character Data with the Decode Function, Locating a Parameter Value. menu.xsl, GetParam.js
Improving performance by using IFRAMES to prevent unnecessary reloading of forms See Implementing IFrames to Improve Performance. Group.htm
Loading images dynamically on an Outlook form See Displaying Media Images, Adding an Image List to the LitCrit Form, and Binding Controls to Fields in the Enhanced LitCrit Form. BasicLitCrit
Loading Visual Basic® forms from a DLL See About the LibraryItemDialog Function and LitCritC Client-Side DLL. Critique.cls Client-Side COM Component
Passing values between ASP pages using the Post method Renew.asp
Searching database records and executing stored procedures with ASP's QueryString collection See Using ASP's QueryString. Group.htm, GroupList.htm
Using server-side VBScript to create a message box   AddTitles.asp
Using the C++ XML Data Source Object (DSO) to bind data to HTML tables and forms See Coding *List.htm, Coding *.htm, Populating List Boxes. Person.htm, PersonList.htm
Using the Expando property of DHTML See Changing the Application Settings Page. AppSettings.asp
Using the Grid control to customize data See Viewing the Library Catalog, RDS in the CML Application, and Tips for the User-Services Tier. Catalog.asp
Using the ListView ActiveX® control See Choose Title Dialog Box and LoadCollection Method. ChooseTitle.frm
Using the Popup ActiveX control See Adding Menu Items to a Popup Object. menu.xsl
Validating data using client-side JavaScript See Comprehensive Data Validation and Using IsValid.js to Validate Data on the Client. IsValid.js
Validating data using VBScript   ChangeSettings subroutine in AppSettings.asp
Business-Services Tier  
Connecting to Outlook Web Access from an ASP page See Displaying the Generated Form in Conjunction with OWA and Finding the Critique Public Folder. DDetails.asp, frmRoot.asp
Converting a hierarchical recordset into a flat recordset See AdvancedSearch Method. Search.cls
Converting recordsets to XML See Converting a Recordset to XML. SQLXML.cls
Creating a customized COM object through the RDS DataSpace object, using HTTP or DCOM See LoadCollection Method. TitleMatch.cls
Creating a <DIV> element using ASP server-side script AnonLogOn.asp
Creating a DTD dynamically for an XML stream See Creating a DTD on the Fly. EmitDTD subroutine in SQLXML.cls
Creating a hierarchical recordset using the MSDataShape provider See Hierarchical Recordsets in CML/LitCrit, Why Data Shaping?, and AdvancedSearch Method. Search.cls
Customizing script generated by the Outlook HTML Form Converter See Changing Files Generated for LitCrit.
Formatting locale-sensitive data with the Win32 NLSAPI See Formats Methods and Declarations and Converting a Recordset to XML. Formats.cls
Handling files with Win32 API functions See Using the Win32 API for File Handling. Lingo.cls
Instantiating COM objects in ASP See Search.asp References RDS Control, Instantiating the UserInfo Object, and Accessing the Database from ASP Pages. Dsearch.asp
Instantiating COM objects in Outlook See Display the Appropriate Form Page. EnhancedLitCrit
Instantiating COM objects in Visual Basic See Instantiating the TableQueue Object. User.cls
Instantiating COM objects in VBScript See Accessing the Database from ASP Pages and Hello World ASP Scripts. AddItems.asp, AddNewTitle.asp
Loading an ASP page that contains cached results from an ASP page that has no parent-child relationship with it See Display List of Critiques for a Title. DDetails.asp
Reading and writing to the Windows® registry from Microsoft Visual Basic See About the LibraryItemDialog Function and LibraryItemDialog Method. Critique.cls Client-Side COM Component
Responding to a public folder event See Setting up the Event Service, Creating an Event Service Agent, and Processing Folder Events in Script. LitCrit_Agent.asp Event Service Script
Retrieving data as an XML stream using a COM component. See Using ViewRecords to Retrieve Data as an XML Data Stream. SQLXML.cls
Retrieving data from an XML file using the XML DOM See Populating XML Template Files with lingo.xml Values. Lingo.cls
Using Outlook to find a specific public folder ToApprover
Using an RDS handler See About RDS Customization Handlers and Replacing SQL Query Statements. FmLibMap.ini
Using an XML id data type to index XML elements See NodeFromID vs. SelectSingleNode and Using lingoSchema.xml. lingo.xml, lingoSchema.xml
Using an XML schema See Using lingoSchema.xml. lingoSchema.xml
Using CDO to find a server name See Using CDO to Retrieve the Server Name. EnhancedLitCrit
Using CDO to find a specific public folder See Finding the Critique Public Folder and Using CDO to Retrieve the StoreID. EnhancedLitCrit
Using CDO to find the name of the logged-on user   LitCrit_Agent.asp Event Service Script
Using CreateInstance to get an ObjectContext for COM objects See Declarations, Events, and Methods, Using the MTSEnvironment Object, About Creating COM Objects in MTS, and AdvancedSearch Method. Admin.cls, User.cls
Using IEnumVARIANT to get For Each functionality in a customized collection class See Properties of the m_items Collection and About the FoundTitle Object. TitleMatch.cls
Using IFrames See Using IFrames in the CML, CML Data Access Using RDS, and About AddTitles.asp. AddTitles.asp
Using the ASP Session_OnEnd subroutine to perform tasks (in this example, dropping query-results tables) See Search Tables and Session Variables. Session_OnEnd subroutine in Global.asa
Using the Dictionary scripting object See Active Server Pages in the CML and ASP Performance Tips. Bindprop.inc
Using the EventDetails intrinsic object See Responding to Posted Critiques and About the GetEventDetails Subroutine. LitCrit_Agent.asp Event Service Script
Using transactions in ASP pages   Request.asp
Using Win32® APIs See Win32 Functions in UserInfo, Using the UserInfo Component, Using the Win32 API for File Handling, Converting a Recordset to XML, and Formats Methods and Declarations. UserInfo.cls, Lingo.cls, Formats.cls
Writing events for the Event Service agent See Processing Folder Events in Script and Tips on Using Microsoft Exchange Server Event Service. LitCrit_Agent.asp Event Service Script
Data-Services Tier    
Controlling standard MAPI properties such as a message Subject See Reading and Writing Message Fields. LitCrit_Agent.asp Event Service Script
Creating a SQL Server™ stored procedure See Stored Procedures and Adding CML/LitCrit Stored Procedures. CML/LitCrit Stored Procedures
Creating triggers on SQL Server tables See Triggers and Tips for Data Access and Data Services. Request.sql
Implementing a full-text CONTAINS search See About Full-Text Search, CML and Full-Text Search, and AdvancedSearch Method. Search.cls
Nesting SQL Server stored procedures See Sending a Critique Invitation. fm_fts_setup.sql, fm_fts_optTitle_contains.sql
Using a UNIQUE CONSTRAINT to enforce business rules See Adding a UNIQUE Constraint to the Critique Table and Database Triggers. Critique.sql
Using xp_sendmail See Overdue Notice Delivery Process, Stored Procedures for Overdue Notice Delivery, Known CML Issues, and Sending a Critique Invitation. fm_admin_send_notice.sql, fm_admin_send_recall.sql