Commerce Server Solution Sites

Microsoft Commerce Server 2000

Solution Sites Documentation

Version 1

The Commerce Server Solution Sites provide a tremendous head start when developing a Web site based on Commerce Server 2000. They provide a highly structured approach to building a Web site that will be easy to extend and maintain once you have gained a sufficient understanding of how the Solution Sites work. The purpose of this documentation is to provide you with the information necessary to achieve that understanding.

This document contains:

  • Solution Sites Overview. Provides a brief overview of the Retail and Suppler Solution Sites, and provides information about how to best use this documentation.

  • Site Features. Describes the features of the Solution Sites from the perspective of someone using them to buy products, and so on.

  • Site Infrastructure. Describes several aspects of the infrastructure provided by the Solution Sites code.

  • Site Development. Provides information related to using the Solution Sites and modifying them into an actual, branded, commercial Web site.

  • File Organization. Describes the files that constitute the Solution Sites and how they are organized into a hierarchy of folders.

  • Reference. Provides reference material useful when developing commercial Web sites based on the Solution Sites.

Copyright © 1996–2000 Microsoft Corporation.
All rights reserved.


Solution Sites Overview

The Commerce Server Solution Sites provide a starting point for building commercial Web sites that use the functionality provided by Commerce Server 2000. There are two Solution Sites available, the Retail site and the Supplier site.

These sites consist of the same set of files, configured to behave differently. This was done because both types of sites incorporate much of the same functionality, differing only in a few particular ways. Further, this ability to reconfigure the sites provides for the possibility of easily constructing a different type of site that blends the functions of the Retail and Supplier sites.

The Retail site serves as the starting point for building a business-to-consumer Web site. This is a typical internet shopping site, allowing, for example, access by the general public and purchases with credit cards.

The Supplier site serves as the starting point for building a business-to-business Web site. Specifically, the Supplier site models situations such as a business that supplies products to other businesses. The businesses buying the products must be known in advance to the selling business. The Supplier Site includes features that allow for the delegation of some administrative functions to the buying businesses themselves.

This section contains:

  • Common Code Base

  • Retail Site

  • Supplier Site

  • How to Use This Documentation


Common Code Base

As a developer of a Web site based on one of the Commerce Server Solution Sites, it is important that you understand that the Solution Sites are based on the same set of files. Configuration information, known as App Default Config, stored in the Commerce Server Administration database, is responsible for the differences between the sites. Within the script code that generates the HTML for the sites, there are numerous tests of the values in App Default Config, switching particular features on and off, or making more complex decisions between feature choices.

This means that the differences between the Retail Solution Site and the Supplier Solution Site are a matter of a few configuration differences in their respective App Default Config settings, and that one type of site could be changed into the other type of site by making the appropriate App Default Config changes using Commerce Server Manager.

An exception to this rule concerns the Profiling System that is supplied with the Solution Sites. The Supplier site installs a Profiling System that is based on Active Directory, while the Retail site installs a Profiling System that is based solely on SQL Server.

For more information about the App Default Config settings that constitute each of the Solution Sites, see Configuration. For more information about where the various App Default Config values are tested or otherwise used in the Solution Sites script code, see Use of App Default Config Settings.


Retail Site

The Retail site represents a configuration of the Solution Sites common code base that is intended for you to use as the starting point for developing a retail Web site.

For information about the features included in the Retail site, see the Site Features section.

The Retail site differs from the Supplier site in the following respects:

  • Partner Services is disabled in the Retail site, as specified by a setting of zero (0) for the i_DelegatedAdminOptions property of App Default Config.

  • Logging in is not required in the Retail site unless and until a purchase is made, as specified by a setting of six (6) for the i_FormLoginOptions property of App Default Config.

  • The Internet Information Service (IIS) authentication mechanism is configured to allow anonymous access.

  • Credit cards are the only allowed payment option in the Retail site, as specified by a setting of one (1) for the i_PaymentOptions property of App Default Config.

  • Self-registration is allowed in the Retail site, as specified by a setting of one (1) for the i_SiteRegistrationOptions property of App Default Config.

  • In the Retail site, user profile information is stored in a SQL Server database, as specified directly in the Profiling System.

For more information about the configuration settings that make the Retail site different from the Supplier site, see Configuration.

See Also

Supplier Site

Site Features

Configuration


Supplier Site

The Supplier site represents a configuration of the Solution Sites common code base that is intended for you to use as the starting point for developing a site that allows contractual purchasing. The business model for this site is a business that is offering its products to an established set of other business, the latter of which have authorized certain employees to be able to make purchases. In fact, there is a feature, known as Partner Services, through which the administration of the list of authorized employees is delegated to the purchasing companies themselves.

Also note that the Product Catalog System in Commerce Server, using custom catalogs and catalog sets, allows the supplier business to offer custom pricing to different purchasing businesses.

For information about the features included in the Supplier site, see the Site Features section.

The Supplier site differs from the Retail site in the following respects:

  • Partner Services is enabled in the Supplier site, as specified by a setting of one (1) for the i_DelegatedAdminOptions property of App Default Config.

  • Logging in is required in the Supplier site, and authentication is provided through Internet Information Services (IIS) using Basic or Integrated Windows authentication, as specified by a setting of seven (7) for the i_FormLoginOptions property of App Default Config.

  • Both credit cards and purchase order billing are allowed as payment options in the Supplier site, as specified by a setting of five (5) for the i_PaymentOptions property of App Default Config.

  • Self-registration is not allowed in the Supplier site, as specified by a setting of zero (0) for the i_SiteRegistrationOptions property of App Default Config.

  • In the Supplier site, user profile information is stored in Active Directory, as specified directly in the Profiling System.

For more information about the configuration settings that make the Supplier site different from the Retail site, see Configuration.

See Also

Retail Site

Site Features

Configuration


How to Use This Documentation

It is strongly recommended that you review all of the topics in the first four sections of this documentation before you begin Web site development based on one of the Commerce Server Solution Sites. It is important that you understand the features implemented by the Solution Sites, key aspects of the Solution Sites infrastructure, and additional information related to site development using the Solution Sites. These sections are:

  • Solution Sites Overview. Provides a brief overview of the Retail and Suppler Solution Sites, and provides information about how to best use the included documentation.

  • Site Features. Describes the features of the Solution Sites from the perspective of someone using them to buy products, and so on.

  • Site Infrastructure. Describes several aspects of the infrastructure provided by the Solution Sites code.

  • Site Development. Provides information related to starting with the Solution Sites and customizing them into an actual, branded, commercial Web site.

The last two sections of the documentation are intended as reference material. It is advised that you review the content of these sections before you begin customizing the Solution Sites so that you gain a better understanding of the information provided, and where different types of information can be found. These sections are:

  • File Organization. Describes the files that constitute the Solution Sites and how they are organized into a hierarchy of folders.

  • Reference. Provides reference material that you will find useful when developing your commercial Web sites based on the Solution Sites.

The Routines Reference provides a valuable resource, intended for use when modifying existing pages by changing existing code and when developing new pages. When modifying existing code, the routine topics can help you quickly track down the places where a particular routine is invoked, so that you can consider the full impact of the changes you are making. When creating new pages, the routine topics can help you find existing routines that can be invoked to help build the content for new pages in a manner that is consistent with existing pages. For more information about the functional categories in which these routines are grouped, see Utility Routines.


Site Features

The Commerce Server Solution Sites incorporate most of the capabilities of Commerce Server 2000. You use the Solution Sites to build working Web sites that you can customize as needed. Most of the basic features needed for creating a commercial Web site are present in the Solution Sites, such as a shopping basket, a checkout procedure, a product catalog, user profiles, and so on. There are also more advanced features, such as prediction and BizTalk Server integration.

For each such feature, this section describes the implementation of that feature in the Solution Sites, divided into separate discussions of the initialization of the feature, and the browse time execution of the feature (that is, when a user is viewing a Web site page incorporating the feature in their browser).

This section contains:

  • Basket

  • Checkout

  • Payment Options

  • Product Catalog

  • Address Management

  • Login

  • User Tracking

  • Profiles

  • Ads

  • Discounts

  • Prediction

  • Customer Service

  • Partner Service

  • Analysis Integration

  • BizTalk Server Integration

  • International Features


Basket

The basket feature involves many parts. It stores a list of items a user has selected to purchase, applies any relevant discounts to product prices, and computes the order subtotal. Users can save shopping baskets so that they can return to the site and purchase the items at a later date.

The following figure shows the basket.asp page workflow.

This figure illustrates the workflow of the basket.asp page.

The basket.asp page displays the contents of the user's basket. From the basket.asp page the user can remove a single item, remove all items, change the quantity of a product in their basket, return to the product page, or continue the checkout process through the use of various buttons and links.

The App Default Config settings can be modified to change the user's experience when using the basket feature.

The Add item redirect options property determines the page that is called after users add items to their baskets from the product.asp page. The App Default Config setting for the Add item redirect options property is set to leave users on the product page of the product added to their baskets. The Add item redirect options property can be changed to facilitate other configurations. The following table shows the other configurations for the Add item redirect options property.

Selected Property Value | Friendly Name | Description
0 | REDIRECT_TO_BASKET | Redirects users to the basket.asp page after adding a product to their basket.
1 | REDIRECT_TO_PRODUCT | Leaves the user on the product page of the product that was added to the basket.

For more information about changing the App Default Config settings, see "Configuring App Default Config Resource Properties" in Commerce Server 2000 Help.

If users have items in their baskets that meet the discount criteria, details on the discount being applied appear in their baskets.

If a user qualifies for a discount, a discount banner may appear at the bottom of the basket.asp page. Some discounts require that the user click the discount banner before the discount is applied; other discounts are automatically applied. Specifying how and when discounts are applied is done in the Campaign Manager module in Commerce Server Business Desk. For more information about the discount banner, see Page Layout Customization or "Creating a Discount Campaign" in Commerce Server 2000 Help.

Initialization

Initialization for the basket feature occurs in the following files:

include\global_main_lib.asp

The InitSitePipelines function is called from the Main subroutine and the returned Pipeline object is set to Application scope as MSCSPipeline.

include\global_siteconfig_lib.asp

The dictPipelines datastructure is used to assign friendly names to the file locations.

Browse Time

The following files display the basket feature:

_additem.asp

Adds the product of a given product ID and variant ID from the given catalog name to the order group. Calls the Analysis_LogAddToBasket subroutine from the include\analysis.asp page. Also calls the ApplyVendorInfo function, which looks up the vendor ID, the vendor qualifier, and the vendor qualifier value for the item. The App Default Config setting for the Add item redirect options property determines if users are sent to the basket.asp page or left on the product page after adding items to their baskets. The default configuration for the Solution Sites leaves users on the product page after they add items to their baskets. The _additem.asp page is called when the Add to Basket button is clicked from the product.asp page.

_delitem.asp

Removes the item at the specified index from the order group. Calls the Analysis_LogRemoveFromBasket subroutine from the analysis.asp page, which removes an item from the user's basket. Returns the user to the basket.asp page, which displays the updated basket. The _delitem.asp page is called when the Remove link is clicked from a line item on the basket.asp page.

_delall.asp

Deletes all the items from the basket. Returns the user to the basket.asp page, which displays the updated empty basket. The _delall.asp page is called when the Remove all link is clicked from the order Subtotal line on the basket.asp page.

_editqty.asp

The user can alter the quantity of any line item by changing the Quantity value and then clicking the Update button. Returns the user to the basket page, which displays the updated order subtotal. This page performs the quantity update by using the Ordergroup object. The _editqty.asp page is called when the Update button is clicked from the basket.asp page.

basket.asp

Displays all the items users have added to their baskets, the quantity of each item, the product code, the product description, the unit price for each item, the total price for each item, the discount applied (if any), a link to remove each item from the order, a link to remove all items from the order, and the order subtotal. The Checkout button at the bottom of the basket.asp page calls either the addrform.asp page or the addrbook.asp page, depending on the App Default Config setting for the Address Book Options property and the user type (registered or guest). For more information about the Address Book Options property, see Address Management. The user can reach the basket.asp page at any time by clicking the Basket link from the menu area near the top of the Web page.

See Also

pipeline\basket.pcf

Checkout

Payment Options

Product Catalog


Checkout

The checkout feature process the order after users have added items to their baskets.

The following figure shows the workflow of the ASP pages involved in the checkout feature.

This figure illustrates the workflow of the ASP pages involved in the checkout feature.

The checkout process begins when the user clicks the Check-out button from the basket.asp page. The default implementations of the Solution Sites have the following page processes:

  1. The basket.asp page calls the address management pages.

  2. Depending on the App Default Config settings pertaining the addressbook feature, users will either enter their bill-to and ship-to addresses on the addrform.asp page or on the addrbook.asp page. The addresses are then set by the _setadrs.asp page, which does not have a user interface.

  3. Users are sent to the pickship.asp page, where they select their shipping method. The shipping method is set by the _setship.asp page, which does not have a user interface.

  4. From the _setship.asp page, the user is redirected to the summary.asp page, where the complete order is displayed for the user to review.

  5. Depending on the App Default Config settings, users will either be redirected to the crdtcard.asp page or the po.asp page to enter their payment information.

  6. On the confirm.asp page users are given order numbers and confirmation that their order was received.

The VerifyWithTotal key is passed between pages in the checkout process to verify that the prices of the items on the orders do not change between the time the products are added to the orders and the time when users actually submit their credit card numbers and when baskets are saved as orders. For example, if the price of an item changed between the time the item was added to a user's basket and the time the order was submitted, the VerifyWithTotal key would display an error message.

Initialization

Initialization for the checkout feature occurs in the following files:

include\global_siteconfig_lib.asp

Included in the global.asa file. The dictPipelines datastructure is used to assign friendly names to the file locations.

Browse Time

The following files display the checkout feature:

addrbook.asp

Allows users to add, delete, or edit addresses from their address books, and to select the shipping and billing address for their current orders. Used only if the App Default Config setting for the Address Book Options property enables the address book. The Select Address button on the addrbook.asp page calls the pickship.asp page.

crdtcard.asp

Displays the page for specifying credit card information. The Submit button calls the crdtcard.asp page where the checkout pipeline is run and validated, the order is submitted to BizTalk Server (if BizTalk Server integration is enabled in the App Default Config settings), the basket is saved as an order, and finally the user is redirected to the confirm.asp page. The crdtcard.asp page is called when the Check-out button on the summary.asp page is clicked. The crdtcard.asp page can also be reached from the po.asp page if purchase orders are enabled in the App Default Config settings.

confirm.asp

Displays an order number and confirmation that the order was received. For credit card payments, this page is called when the Submit button on the crdtcard.asp page is clicked. For purchase orders, this page is called when the Submit button on the po.asp page is clicked. The Submit button calls the crdtcard.asp page or the po.asp page where the checkout pipeline is run and validated, the order is submitted to BizTalk Server (if BizTalk Server integration is enabled in the App Default Config settings), the basket is saved as an order, and finally the user is redirected to the confirm.asp page.

include\payment.asp

Contains functions used on payment feature pages.

pickship.asp

Enables users to select a shipping method. The Check-out button calls the summary.asp page. The pickship.asp page is called when the Select Address button on the addrbook.asp page is clicked.

po.asp

Displays the page for entering the purchase order number in the PO # box. The Submit button calls the po.asp page where the checkout pipeline is run and validated, the order is submitted to BizTalk Server (if BizTalk Server integration is enabled in the App Default Config settings), the basket is saved as an order, and finally the user is redirected to the confirm.asp page.

summary.asp

Displays the billing address, shipping address, items ordered, order sub-total, shipping charges, handling charges, tax, and order total. The Check-out button calls the crdtcard.asp page. The summary.asp page is called by the Check-out button on the pickship.asp page.

See Also

Address Management

Payment Options


Payment Options

The Solution Sites have two payment options, credit card payment or purchase orders. The Retail site is configured to enable credit card billing only and the Supplier site is configured to enable purchase orders only. Either of these sites can be configured to enable credit card billing, purchase orders or both.

You use the crdtcard.asp page to enter credit card information, and the po.asp page to enter purchase order information.

The following figure shows the workflow of the crdtcard.asp page.

This figure illustrates the workflow of the crdtcard.asp page.

After the user clicks the Check-out button from the summary.asp page, the crdtcard.asp page is called, which displays a page for editing credit card payment information.

If the Reset button is clicked from the crdtcard.asp page, the form is reset to its original values. If the Submit button, located next to the Reset button, is clicked the crdtcard.asp page is called where the checkout pipeline is run and validated, the order is submitted to BizTalk Server (if BizTalk Server integration is enabled in the App Default Config settings), the basket is saved as an order, and finally the user is redirected to the confirm.asp page.

On the crdtcard.asp page, the Other Payment Options box lists all the payment options for the user. In the default configuration of the Retail site, the only option listed is Credit Card. In the default configuration of the Supplier site, both Credit Card and Purchase Order are listed. Either of these configurations can be changed to enable credit card payment, purchase orders, or both, by changing the App Default Config setting for the Payment options property.

The App Default Config setting for the Payment options property is set to enable credit card billing only on the Retail site, and purchase orders only on the Supplier site. The Payment options property can be changed to facilitate other configurations, as shown in the following table.

Selected Property Value | Friendly Name | Description
1 | CREDIT_CARD_PAYMENT_OPTION | Default setting. Enables credit card billing only.
4 | PURCHASE_ORDER_PAYMENT_OPTION | Enables purchase order billing only.
5 | CREDIT_CARD_PAYMENT_OPTION BitOr PURCHASE_ORDER_PAYMENT_OPTION | Enables credit card and purchase order billing.

For more information about changing App Default Config settings, see "Configuring App Default Config Resource Properties" in Commerce Server 2000 Help.

The payment option is one part of the checkout feature. For more information about the checkout feature, see Checkout.

Initialization

Initialization for the payment feature occurs in the following files:

include\global_creditcards_lib.asp

Initializes credit card payment information. Included in the global.asa file.

include\global_forms_lib.asp

Contains functions used to retrieve form and field definitions, and profile attributes. Included in the global.asa file.

include\global_siteconfig_lib.asp

The payment pages are assigned friendly names by the GetSitePages function.

Browse Time

The following files display the payment feature:

confirm.asp

Displays an order number and confirmation that the order was received. For credit card payments, this page is called when the Submit button on the crdtcard.asp page is clicked. For purchase orders, this page is called when the Submit button on the po.asp page is clicked. The Submit button calls the crdtcard.asp or po.asp page where the checkout pipeline is run and validated, the order is submitted to BizTalk Server (if BizTalk Server integration is enabled in the App Default Config settings), the basket is saved as an order, and finally the user is redirected to the confirm.asp page.

crdtcard.asp

Displays the page for editing credit card information. Called when the Check-out button on the summary.asp page is clicked on the Retail site. The Submit button calls the crdtcard.asp page where the checkout pipeline is run and validated, the order is submitted to BizTalk Server (if BizTalk Server integration is enabled in the App Default Config settings), the basket is saved as an order, and finally the user is redirected to the confirm.asp page.

include\payment.asp

Contains functions used on payment feature pages and runs the checkout pipeline file, checkout.pcf.

po.asp

Displays the page for entering the purchase order number in the PO # box. The Submit button calls the po.asp page where the checkout pipeline is run and validated, the order is submitted to BizTalk Server (if BizTalk Server integration is enabled in the App Default Config settings), the basket is saved as an order, and finally the user is redirected to the confirm.asp page.

See Also

Checkout


Product Catalog

A catalog is a way of organizing the products you want to sell. The Solution Sites provide a mechanism for browsing and searching through single or multiple Commerce Server 2000 catalogs. They also allow users to view detailed information on an individual product and provide a link so users can add the product to their baskets.

Both the Retail and Supplier Solution Sites are packaged without any catalogs installed. None of the catalog-related features of the Solution Sites will work until a catalog is either created or imported for the application through Commerce Server Business Desk. You can use a sample catalog, which is provided in the Commerce Server 2000 SDK, if you do not have a catalog from which to work. The sample catalog is an XML file. The topic "Importing an XML Catalog File" in Commerce Server 2000 Help explains how to import the booksfull.xml file. The full path to this file is <Drive>\Program Files\Microsoft Commerce Server\SDK\Samples\Sitelets\Catalog\booksfull.xml. Copy this file to the root folder of your computer to make it easier to import.

The Solution Sites rely heavily on caching to improve performance in the catalog. See Catalog Caching for more information about caching catalog data.

Note

  • The catalog pages were written assuming that every product in the catalog has a property called name. The Commerce Server 2000 catalog system does not enforce this.

The Solution Sites use the Commerce Server 2000 Catalogset object to determine which catalogs are available to a user. The Solution Sites distinguish between a catalog set for anonymous users and a catalog set for authenticated users. Catalog sets are managed through Business Desk.

Initialization

Initialization for the product catalog feature occurs in the following files:

include\global_catalog_lib.asp

The Main subroutine calls three functions in this file to initialize three application variables for the catalog feature. The InitCatalogManager function is called and the returned CatalogManager object is set to Application scope as MSCSCatalogManager. The dictGetCatalogAttributes function is called and the returned dictionary is set to Application scope as MSCSCatalogAttribs. This dictionary is used as a cache for the CatalogManager object properties. The InitCatalogSets function is called and the returned dictionary is set to Application scope as MSCSCatalogSets.

See Caching for information about initialization of the catalog caches.

Browse Time

The user locates products through the search and browsing catalog features. The menu pane provides two types of search features, full-text search and specification search. Both the template\menu.asp and default.asp pages display either a list of searchable categories if there is only one catalog, or a list of catalogs if there is more than one catalog. Either page can be used as a starting point for browsing the application. Most of the browse-time catalog functionality is in the include\catalog.asp file.

Catalog Search Features

The following files display the catalog search features:

template\menu.asp

The htmRenderSearchSection function creates a text box, a search button, and a link to Advanced search. When the user clicks the search button, the user is redirected to the search.asp page with the contents of the text box posted to that page. When the user clicks the Advanced link, the user is redirected to the srchdept.asp page.

search.asp

The bFullTextResultsAreCached function checks for a cached result for the query text. If there is no cached result, the rsFreeTextSearch function constructs a query for the MSCSCatalogManager.FreeTextSearch method and returns a recordset of the results. The RenderSearchResults function converts the recordset into HTML. The CacheFragment function caches the rendered page.

srchdept.asp

This page selects the category that will be searched. Specification searches are limited to a single category.

The bIsSearchDeptPageCached function checks for a cached page with the catalog set for the user. If there is not a cached page, the arrSearchDept function creates an array of strings; each string is a catalog name separated from a category name by an arbitrary string token. The htmRenderSearchDeptPageContent function renders this array as a list of links to the stepsrch.asp page. Each link contains the catalog and category data for the search.

stepsrch.asp

This page implements the specification search for the catalog and category selected on the srchdept.asp page. When the number of matches is less than the value of the SEARCH_THRESHOLD constant, or the user has previously pressed the View Results button, the matches will be listed; otherwise the page displays a list box for each searchable property in the category. Each list box will list all the values for that property in the category. Users can click the View Results button to display the list or the users can refine their search by changing the values selected.

The PrepareSpecificationSearch function builds the query from the user's selections on the page. The first time the page is displayed there is no user input, so a search is performed with an empty specification search clause. This returns the number of items and the properties and values in the category. When the search is refined the user's selections are posted to this page and the search is run again. The search results are rendered by the htmRenderStepSearchPageContent function.

Catalog Browse Feature

The following files display the catalog browse feature:

template\menu.asp

The PrepareCatalogSection function returns a recordset of the catalogs available to the user and the number of catalogs in the recordset. The htmRenderCatalogSection function tests for the number of catalogs available to the user. If there is only one catalog it displays a list of the root categories in the catalog. If there are multiple catalogs it displays a list of the catalogs. In either case the links in the list take the user to the category.asp page.

default.asp

The mscsUserCatalogsetID function returns the CatalogSetID variable. This is used as a key for the page cache. If there is not a cached copy of this page the PrepareDefaultPage function uses the CatalogSetID variable to retrieve a recordset of the catalogs available to the user. The htmRenderDefaultPage function tests for the number of catalogs in the rsCatalogs recordset. If there is only one catalog it calls the htmRenderCategoryPage function to display a list of the root categories in the catalog, and if the number of categories is below a threshold, adds subcategories and products to the list. If there are multiple catalogs it calls the htmRenderCatalogList function to display a list of the catalogs. Each catalog or category is displayed on the page as a link that takes the user to the category.asp page.

category.asp

This page displays lists of category or product links. The FetchCategoryData subroutine sets several page level variables from the Request object's QueryString property, primarily the catalog and category names. The page obtains the Catalog object from the CatalogManager object and calls the mscsGetCategoryObject function to get the Category object. It calls the mscsGetProductList function to get a recordset of the products in the category. This function supports paging, so it will return a subset of all the products, depending on user input.

The htmCategoryHTML function generates the HTML for the page from the data from the previous functions. This function will display all the subcategories and products in the category. A category will typically contain only subcategories or products, but not both. The subcategories will be displayed as links to the category.asp page, which will display the subcategory. The products will be displayed as links to the product.asp page.

product.asp

This page displays product details. The page uses calls to the GetRequestString function to retrieve the productID and variantID from the Request object's QueryString property. After checking the cache, the page gets the Catalog object from the MSCSCatalogManager object, and then the Product object from the Catalog object. The page calls methods on the Product object to get a recordset of product properties and a recordset of variants. The page renders the product properties as an HTML fragment in the htmProduct variable. It calls the RenderForm function to build an HTML form containing the list of variants (if available), hidden text defining the product, a text box for the quantity and an Add to Basket button. The HTML fragments are concatenated into the htmPageContent variable. When the user enters a quantity into the text box and clicks the Add to Basket button the form is submitted to the _additem.asp page.

See Also

include\catalog.asp


Address Management

Storing user's addresses allows for a better repeat-shopper experience. Registered users can store numerous addresses in the address book feature of the Solution Sites if the address book feature is set for read and write access in the App Default Config settings. The address book feature stores addresses that can be used as ship-to or bill-to addresses. The addresses are entered on the newaddr.asp page when the address book feature is enabled. These addresses are available whenever registered users login to the Web site in the future.

For Web sites that have the address book feature enabled with read-only access, registered users can select from a list of previously entered addresses, but they may not add new addresses or modify existing addresses.

For Web sites that do not have the address book feature enabled, and for guest users, addresses are not stored for future use. These users must enter their bill-to and ship-to information every time they place an order on the addrform.asp page.

The following figure shows the workflow of the addrbook.asp page.

This figure illustrates the workflow for the addressbook.asp page.

For users that have read and write access to their address books, after the Check-out button is clicked on the basket.asp page, the addrbook.asp page is called, which displays a list of all the addresses in the address book for the user. If users have addresses stored in their address books, they can select one of the addresses from the address book by selecting one of the radio buttons, or they can add a new address by clicking the link Click here to add an address.

If the radio button for an existing address is selected and the user clicks the Select Address button, the pickship.asp page is called. If the user clears the check box indicating that the billing address is the same as the shipping address, and instead clicks the Select Address button, the addrbook.asp page is called again so the user can select the bill-to address.

If the Edit link is clicked, the newaddr.asp page is called, which enables users to edit their selected addresses.

If the Delete link is clicked the newaddr.asp page is called, the address is removed, and the user is immediately redirected to the updated addrbook.asp page.

Users with no addresses stored in their address book only have one option—to click the Click here to add an address link to add a new address. If the user clicks the Click here to add an address link, the newaddr.asp page is called. After the user enters the new address information and clicks the Submit button, the addrbook.asp page appears with the new address.

For users that have read-only access to their address books, after the Check-out button is clicked on the basket.asp page, the addrbook.asp page is called, which displays a list of all the available ship-to addresses in the address book for the users. Users can select one of these addresses by selecting one of the radio buttons. These users do not have the ability to edit, delete, or add a new address to their address books.

For users that do not have the address book feature enabled, after the Check-out button is clicked on the basket.asp page, the addrform.asp page is called. The addrform.asp page displays an empty form in which users must enter their ship-to and bill-to addresses. When the Submit button is clicked, the user is redirected to the pickship.asp page after validation of the address.

The App Default Config setting for the Address Book Options property is set to enable the use of the address book. The Address Book Options property can be changed to facilitate other configurations. The following table shows the available configurations.

Selected Property Value | Friendly Name | Description
0 | ADDRESSBOOK_DISABLED | Disables the use of the address book.
1 | ADDRESSBOOK_READONLY | Read-only access. Users can select from a list of existing addresses, but cannot add new addresses. This is useful for companies that have a predefined list of approved delivery addresses.
2 | ADDRESSBOOK_READWRITE | Read-write access. Users can add and modify the addresses in their own address books.

For more information about changing App Default Config settings, see "Configuring App Default Config Resource Properties" in Commerce Server 2000 Help.

Initialization

Initialization for the address management features occur in the following file:

include\global_siteconfig_lib.asp

The address book pages are assigned friendly names by the GetSitePages function.

include\global_addressbook_lib.asp

Contains functions and form definitions used by the address management pages. Contains commented code that illustrates how to use alternative address formatting to accommodate international addresses.

Browse Time

The following files display the address management features:

addrbook.asp

Displays the page representing the user's addressbook. Called when the Check-out button is clicked from the basket.asp page if the user is a registered user. The App Default Config value for AddressBookOptions is set to ADDRESSBOOK_READONLY or ADDRESSBOOK_READWRITE.

addrform.asp

Displays a form for users to specify their addresses. Addresses entered on this page are not added to an address book collection. After the address is validated, the address is saved to the order group and the users are redirected to the summary.asp page. Called when the Check-out button is clicked from the basket.asp page if the users are guests or if the App Default Config value for AddressBookOptions is ADDRESSBOOK_DISABLED.

newaddr.asp

Displays the page for adding a new address to the user's address book. Called when the Click here to add an address, Edit, or Delete links are clicked from addrbook.asp page.

_setadrs.asp

Takes an address selected from the address book and saves it to the OrderGroup object. Redirects the user to the summary.asp page.

See Also

include\form_lib.asp

Checkout


Login

The files in the Login Folder provide most of the functionality of the login/logoff process.

Initialization

Initialization for the login feature occurs in the following file:

include\global_main_lib.asp

This file initializes the AppConfig object, which provides access to the Form login options property of the App Default Config Site resource in Commerce Server Manager. The login option constants are defined in the AppConsts 1.0 Type Library.

The following table lists the login options.

Login Option | Value | Description
FORM_LOGIN_NOT_SUPPORTED | 0 | Login is not supported.
FORCE_LOGIN_ON_ENTRANCE | 1 | Login is required to enter the site.
LOGIN_OPTIONAL_ON_ENTRANCE | 2 | Login is optional on entering the site.
FORCE_LOGIN_ON_PURCHASE | 5 | Login is required at the time of purchase (when a user visits a page in the Purchase pageset).
LOGIN_OPTIONAL_ANY_TIME | 6 | Login is optional at any time. This is the default for the Retail site.
USE_IIS_AUTH | 7 | Authentication is through Internet Information Services (IIS) using Basic or Integrated Windows authentication. This is the default for the Supplier site.

Browse Time

The following files display the login feature:

login\login.asp

The login form is rendered and validated using routines from the include\form_lib.asp file. As with other pages that use this library, the login form acts as both a form presentation page and a form acceptor page. On initial access, the page is rendered with an empty login form. On submittal, validation and (potentially) login occurs.

The login form is displayed using the template\no_menu.asp file. It contains User name and Password input text boxes. Additionally, if the user is anonymous and the login option is LOGIN_OPTIONAL_ON_ENTRANCE, a link to entering the site as a guest user (login\_guest.asp) is displayed. If registration is enabled on the site, a link to the registration page (login\newuser.asp) is rendered.

The following figure shows a sample login page for a site with registration enabled, and with the login option equal to LOGIN_OPTIONAL_ON_ENTRANCE. The user supplied invalid login credentials, which resulted in the red warning message.

Validation

This page first determines whether the login option is FORM_LOGIN_NOT_SUPPORTED or USE_IIS_AUTH. If either one, the user is immediately redirected to the home page (default.asp), as login is not logical in this context. By default, the login option for the Supplier site is USE_IIS_AUTH. Thus, form login is disabled for the Supplier site and the following discussion in not applicable.

For all other login options, whether the page was posted or submitted is determined, and a test session cookie is written.

When the user submits the login form, the profile associated with the user is retrieved and used to validate the password (ValidateSubmittedLoginData). If the user does not have a profile or the password is not valid, the login form is redisplayed with a warning message. If the password is valid, the registered user ID is retrieved from the profile.

Post-validation

If the user is shopping as a guest user and then decides to register (or was forced to register because the login option equals FORCE_LOGIN_ON_PURCHASE), the contents of the user's basket are transferred to a new basket associated with the registered user ID (MoveBasketItems).

If the user allows session cookies, both Auth and Profile tickets are set in individual cookies. The Auth ticket is set to indicate the user is a logged in registered user. The Profile ticket is set so that when the user starts a new browser session, the same user ID is used (since this is only a Profile ticket, the user is not logged in). The site recognizes that the user ID is associated with a registered account and takes the user to the welcome back page where they can log in again. If the site is part of a Web farm, the date the profile for the user was last changed is set into a cookie. For more information, see Profiles.

If the user does not allow session cookies, an Auth ticket is set into a URL query string. A Profile ticket is not set since it would be unavailable when the user starts a new browser session. There is no need to set the date the profile for the user was last changed since, with cookies disabled, the profile for the user is automatically retrieved from the Profile store.

Finally, upon successful login, the user is redirected to the home page.

login\newuser.asp

This page is build to be self-posting and validating. On initial access, the page is rendered with an empty registration form. On submittal, validation and (potentially) profile creation and login occurs.

The registration process is similar to the login process. If registration is not supported on the site or the login option is either FORM_LOGIN_NOT_SUPPORTED or USE_IIS_AUTH, the user is immediately redirected to the home page.

For all other cases, whether the page was posted or submitted is determined, and a test session cookie is written. The registration form is displayed using the template\no_menu.asp file and contains User name, Password, and Confirm password input text boxes.

When the user submits the registration form, the submitted user name is checked against previous registered users to determine if the user name already exists (iValidateSubmittedRegistrationData). If it does, or if the password is syntactically invalid or does not match the confirmation password, the page is redisplayed with a warning message.

If you modify the code to change the minimum/maximum password and user name requirements, the Business Desk and Partner/Customer Services sections of the site must be updated to match.

Upon successful submission, if the user had a previous guest profile, it is changed to registered profile (mscsTransferGuestUserProfile). If not, a new profile is created and marked as a registered profile (mscsNewRegisteredUserProfile).

If the user allows session cookies, both Auth and Profile tickets are set in individual cookies. If the user does not allow session cookies, only the Auth ticket is set into a URL query string. For more information, see the discussion in the previous section (login\login.asp).

Finally, upon successful registration, the user is redirected to the home page as a new user.

login\_guest.asp

This page turns the current user into a guest user and redirects the user to the home page. If the user already has an Auth ticket, it is removed (effectively logging the user out). If profiling is allowed on the site, a new profile is created for the guest user (GetNewGuestUserProfile). Either way, a user ID is generated and set into a Profile ticket.

login\logoff.asp

Running this page logs a user off your site. Depending on the login mode and the browser, the user may have to perform additional steps to be completely and safely logged off your site. This page can also offer links to re-login, register as a new user, or enter the site as a new guest user, as appropriate.

See Also

Authentication

Profiles

User Tracking

Global Constants


User Tracking

Users of a Web site are classified by user type and access type, and tracked through the use of a unique user ID (guest and authenticated users only). Profiles may be associated with users depending on site configuration settings. When a user visits a page, the GetUserInfo subroutine in the file include\setupenv.asp retrieves the user ID and sets the user type and access type. This information is used to determine whether page access is allowed. For more information about page access, see Authentication. The user ID is written to the Web server log file and used to identify the user by the Commerce Server Business Analytics System.

The following table lists the user types. This value is stored in the m_UserType variable.

User Type | Value | Description
ANON_USER | 1 | An anonymous user. The user is unidentified, does not have a ticket, and is not tracked (is not recognized on return visits).
GUEST_USER | 2 | A guest user. The user has not registered but has a GUEST_TICKET. The user may or may not have a profile depending on site options. The user is tracked during the current session and, if cookies are enabled on the client and the site, the user is tracked between sessions.
AUTH_USER | 4 | An authenticated user. The user is registered, authenticated (access type equals either IIS_AUTH or TICKET_AUTH), and is tracked.

The following table lists the access types. This value is stored in the m_UserAccessType variable.

Access Type | Value | Description
GUEST_VISIT | 1 | A visit by a GUEST_USER authenticated using the AuthManager object and a GUEST_TICKET.
IIS_AUTH | 2 | A visit by an AUTH_USER authenticated to Internet Information Services (i_FormLoginOptions = USE_IIS_AUTH) using either Basic or Integrated Windows authentication.
TICKET_AUTH | 3 | A visit by an AUTH_USER authenticated using the AuthManager object and an AUTH_TICKET.
ANON_VISIT | 5 | A visit by an ANON_USER.

The Retail site stores the user ID in a ticket, which is a set of property name/value pairs placed in a cookie (if cookies are enabled on the client and the site) or a URL query string (URL mode). The user ID is also stored in the profile of the user if profiling is enabled. For more information about tickets, see "Security Objects Programming Concepts" in Commerce Server 2000 Help.

The following table lists the two ticket types, their values, the ticket names (cookie/URL key name), and the constants defined for the ticket names.

Type | Value | Name | Name Constant | Description
GUEST_TICKET | 1 | MSCSProfile | GUEST_TICKET_NAME | A ticket for a guest user, which contains a unique user ID.
AUTH_TICKET | 2 | MSCSAuth | AUTH_TICKET_NAME | A ticket for an authenticated user, which contains a unique user ID, the last login time for the user, and a time window of validity.

The user ID is written to the Web server log file either as part of the cookie or the URL query string. The Commerce Server Business Analytics System retrieves the user ID from the cookie when the Web log file is imported by the Web server log file Data Transformation Service (DTS) task. If URL mode is enabled, users may not be correctly identified and several Analysis reports may be incorrect. A PERL script is available that pre-processes the Web log file so that the user ID is correctly imported when using URL mode. For more information about obtaining the PERL script, see the Commerce Server Web site.

The following table lists the constants, used for the iSiteTicketOptions property of the App Default Config resource, that determine whether the site uses cookie or URL mode to store the ticket. If the site is set to use cookie mode but cookies are disabled on the client, the site uses URL mode.

Type | Value | Description
PUT_TICKET_IN_URL | 1 | Uses URL mode.
PUT_TICKET_IN_COOKIE | 2 | Uses cookie mode.

The following table lists the constants that determine where the AuthManager object places the ticket.

Type | Value | Description
WRITE_TICKET_TO_COOKIE | -1 | Writes the ticket to a cookie.
WRITE_TICKET_TO_URL | 0 | Writes the ticket to a URL query string.

The previous constants are defined in the AppConsts 1.0 Type Library.

The Supplier site uses Internet Information Services (IIS) authentication. In this mode, the user name is stored in the AUTH_USER variable of the ServerVariables collection of the Request object. The user name is used to retrieve the profile of the user, which contains the user ID.

Initialization

Initialization for the User Tracking feature occurs in the following file:

include\setupenv.asp

This file calls the GetAuthManagerObject function in the include\std_access_lib.asp file to create the AuthManager object, which is used to set and retrieve the tickets in the Retail site.

Browse Time

The following files are used for User Tracking:

login\_guest.asp

login\login.asp

login\newuser.asp

The ticket is set into either a cookie or a URL query string by routines in these files and by the EnsureAccess subroutine.

include\std_access_lib.asp

The user ID is retrieved from the ticket or the ServerVariables collection by the GetUserInfo subroutine in this file. If the user has both a GUEST_TICKET and an AUTH_TICKET, the AUTH_TICKET takes precedence.

include\std_url_lib.asp

The ticket location is retrieved by the GetTicketLocation function in this file.

Related Commerce Server 2000 Help Topics

Programmer's Reference\AuthManager Object

See Also

Profiles

Authentication

Login

Global Constants


Profiles

A profile is a set of characteristics that define a business-related entity. The Solution Sites use UserObject, Organization, and Address profiles. The UserObject profile contains personal information about the user, logon credentials, and catalog set information. For the Retail Solution Site, profiles are stored in a SQL Server database. For the Supplier Solution Site, an Active Directory store is also used. The storage locations are collectively referred to as the Profiles store.

The Solution Sites have a feature called Customer Services that allows registered users to view and modify their own profile. The Solution Sites can also expose a feature called Partner Services that allows delegated administrators of an organization to manage the profiles of members of their organization.

In the Retail site, all registered users have a profile. Whether guest users have profiles is optional; however, this feature is enabled by default. To disable guest user profiling, set the Site privacy options (i_SitePrivacyOptions) property to 2 (TRACK_GUEST_VISITS) in the App Default Config Site resource in Commerce Server Manager. This property is checked before creating any new guest profiles (GetNewGuestUserProfile).

The Supplier site only allows registered users, so each user and organization must have a profile. Typically, the site administrator creates the Organization profile and a UserObject profile for a delegated administrator through Commerce Server Business Desk. The delegated administrator then creates the profiles for members of the organization.

Web farm issues

In a Web farm scenario, each server provides a local profile cache. The value of the user's profile (UserObject profile) in a particular cache can become outdated if the profile was changed on a different server. In order for the server to recognize that the user's profile has changed, a last updated timestamp is set in both the user's profile (in the Profiles store) and in a cookie for the user, when the profile is created and updated (UpdateUserProfile).

When a user visits a server in the Web farm, the timestamp in the profile in the local cache is checked against the timestamp in the cookie (GetCurrentUserProfile). If they are not equal, the profile is retrieved from the Profiles store (using the GetInfo method of the IADs interface), bypassing the local cache. If cookies are not enabled, the cache is always bypassed, because there is no reliable way of tracking the last updated time due to Back button, page refresh, and other issues.

The lookup of Address profiles always bypasses the cache because they are accessed infrequently and there is potentially a large number of these profiles to track. Organization profile lookups bypass the cache on an as-needed basis depending on the likeliness of the data in the profile changing.

Even with the timestamp solution, there are potential cache coherency issues with the profiles. For instance, if a user's profile, which is currently cached, is changed from the Business or Partner Desk on a different computer by a different user, the sites will not know that the cache is out of date. To mitigate this, the Solution Sites call the GetInfo method upon login. If this level of accuracy is not acceptable, the Solution Sites include the m_iGlobalProfileLookUpOption variable, declared in the file include\setupenv.asp, which when set always forces a GetInfo method call to retrieve the profile from the Profiles store.

Initialization

Initialization for the profiling feature occurs in the following files:

include\global_data_lib.asp

The BusinessDataAdmin object is created, connected to the Profiles store, and returned by the oGetBizDataObject function defined in this file.

include\global_profile_lib.asp

The ProfileService object is created, initialized, and returned by the InitProfileService function in this file. To increase performance, all the properties of all the profile types are put into a global Dictionary object by the dictGetProfileSchemaForAllProfileTypes function. The properties are obtained by parsing the XML Data Reduced (XDR) schema for the profiles.

include\global_siteconfig_lib.asp

The IsActiveDirectoryPresent and sGetActiveDirectoryDefaultNamingContext functions in this file parse the XML Data Reduced (XDR) schema for the UserObject profile. The IsActiveDirectoryPresent function checks whether the ParentDN property is set on the profile to determine if Active Directory is used to store part of the profile. The Profiling System allows other means to signify that Active Directory is used. If using one of these alternatives, the Solution Sites need to be correspondingly modified. For more information, see "Managing Pre-existing Accounts in Active Directory Stores" in the Commerce Server Resource Kit. If Active Directory is used, the sGetActiveDirectoryDefaultNamingContext function retrieves the Active Directory domain name.

include\global_main_lib.asp

Whether the Profiling System uses Active Directory is given Application scope as a Boolean variable named MSCSProfileServiceUsesActiveDirectory. If the IsActiveDirectoryPresent function returns True, the Active Directory domain name is set to Application scope as MSCSActiveDirectoryDomain.

The Dictionary object containing all the profile properties is given Application scope as MSCSProfileProperties.

The InitProfileService function is called and the returned ProfileService object is given Application scope as MSCSProfileService.

include\std_profile_lib.asp

This file supplies routines to create a new profile, retrieve and update a current profile, check whether the user has a profile, and whether profiling is enabled on the site. This file also provides the Web farm support.

services\include\check_profile.asp

services\include\delete_profiles.asp

services\include\get_profiles.asp

services\include\profiles_common.asp

services\include\save_all_profiles.asp

services\include\save_one_profile.asp

These files provide common routines for use in Customer and Partner Services.

Browse Time

Users have direct interaction with the Profiling System through the following files:

addrbook.asp

This file allows users, depending on the user type and site options, to view and edit their address book (Address profiles).

newaddr.asp

This file allows users, depending on the user type and site options, to add a new address to their address book.

login\_guest.asp

This file allows a user to enter the site as a guest user and creates an associated guest profile.

login\newuser.asp

This file allows the user to register with the site. If the user has a guest profile, it is changed to a registered profile. If the user does not have a guest profile, a new registered profile is created.

services\customer\account.asp

This file allows registered users to view and change their own profile through Customer Services.

services\partner\account.asp

Using the Partner Services feature, this file allows users who are delegated administrators for their organization to view and modify the profile of their organization.

services\partner\users.asp

Using the Partner Services feature, this file provides a list of users who are members of an organization. Delegated administrators can select profiles to view, modify, or delete from this list, or create new member profiles.

services\partner\edit_user.asp

Using the Partner Services feature in the Supplier site, this file allows users who are delegated administrators for their organization to manage the profiles of members of their organization.

Related Commerce Server 2000 Help Topics

Programming with Commerce Server Objects\Profile Objects

See Also

Address Management

Authentication

Login

User Tracking

Customer Service

Partner Service


Ads

The advertising feature displays advertisements to users based on the properties in the user's profile, and the Need of Delivery (NOD) for the advertisement.

Advertisements are placed in the banner slot located along the top of the Web pages. Through Commerce Server Business Desk you can configure the advertisement's properties, schedule, target audience, and display.

Initialization

Initialization for the advertising feature occurs in the following files:

include\global_csf_lib.asp

Initializes the Content Selection Framework (CSF), and creates the global context for CSF advertisements.

include\global_cache_lib.asp

Creates and configures the advertising cache.

include\global_siteconfig_lib.asp

Creates a PageSet of pages on which advertisements can be shown.

Browse Time

The following files display the advertising feature:

template\banner.inc

Called by the file template\layout1.asp or template\no_menu.asp. Checks to see if the current page is in the advertising PageSet, as configured on the global_siteconfig_lib.asp page. If the page is in the advertising PageSet it displays the winning ad.

template\layout1.asp

Provides the HTML display layout for a Web page with a menu, navigation bar, advertising banner, discount banner, and footer.

template\no_menu.asp

Provides a basic HTML display layout for a Web page without a menu, navigation bar, or footer.

See Also

Campaign Caching

Advertising.PCF

Basket

Page Layout Customization


Discounts

The discount feature displays discounts to users based on user profile properties, items that are in the user's basket, the product the user is viewing, or other properties.

There are two types of discount displays—the discount banner display and the discount information in the user's basket.

In the Solution Sites implementation, discount banners are placed on the bottom of a Web page. The discounts can be automatic or click-required. Click-required discounts require that the user click the discount banner to receive the discount. Automatic discounts do not require any user interaction; the discount is automatically applied to the user's basket.

Discount information that you want to include in the user's basket is displayed on the basket.asp page. When the user receives a discount the basket.asp page automatically adds two columns to the basket table. One column lists the discount in a price value; the other column lists any messages associated with the discount.

Initialization

Initialization for the discount feature occurs in the following files:

include\global_csf_lib.asp

Initializes the Content Selection Framework (CSF), and creates the global context for CSF discounts.

include\global_cache_lib.asp

Creates and configures the discount cache.

include\setupenv.asp

This file is used to set up environment variables and retrieve information about the user.

Browse Time

The following files display the discount feature:

template\discount.asp

Selects and renders discount banners.

basket.asp

Includes the template\discount.asp page and calls its RenderDiscounts function, storing the results in the htmDiscountBanner variable. The basket.asp page also displays the price reduction associated with any applied discounts and a discount message.

product.asp

Includes the template\discount.asp page and calls its RenderDiscounts function storing the results in the htmDiscountBanner variable.

redir.asp

Handles click-throughs and other events on marketing campaign items. It invokes a pipeline that records the events in memory and to the Internet Information Services (IIS) log file.

summary.asp

Computes the discounts and displays the adjusted prices in addition to the bill-to address, ship-to address, the basket, and the order total.

template\layout1.asp

Calls the Response.Write function on the htmDiscountBanner variable, which is populated in the Main function on pages that want to display discount banners.

See Also

Basket

Discounts.PCF

Page Layout Customization


Prediction

The prediction feature recommends products to a user based on items in the user's shopping basket. The Solution Sites use the PredictorClient object to make these recommendations.

Initialization

Initialization for the prediction feature occurs in the following files:

include\global_predictor_lib.asp

The PredictorClient object is created in the InitPredictor function of this file and used to load the Transaction prediction model, which is supplied with Commerce Server 2000, from the Data Warehouse. Two prediction properties, fpPopularityPenalty and fpDefaultConfidence, are set in this file.

In development mode, the bFailOnUnknownInputAttributes property may be set to True by uncommenting a line of code. With this property set, a run time error is generated if any of the input attributes are not recognized.

include\global_main_lib.asp

The InitPredictor function is called from the Main subroutine in this file and the returned PredictorClient object is set to Application scope as MSCSPredictor.

Browse Time

The following file displays the prediction feature:

basket.asp

The RenderBasketPage subroutine is used to call the htmRenderPredictions function which sets up the input case and calls the Predict method of the PredictorClient object to make the recommendations of which products to purchase. The PredictedPropToHREF function is used to create links into the product catalog from the recommended products.

Related Commerce Server 2000 Help Topics

Programming with Commerce Server Objects\Prediction Objects

See Also

Basket


Customer Service

The Customer Service feature is available to all users who have a profile. Initial access to the Customer Service feature is provided in the template\menu.asp to the two Customer Service features:

  • Customer Profile

  • Customer Orders

See Also

Partner Service


Customer Profile

The Customer Profile feature allows users to edit their own profile. When users first enter the Customer Profile feature they are shown their profile data. The fields that are available for them to edit are controlled through Commerce Server Business Desk. When users click the User password Change button they are redirected to the services\change_password.asp page. Most of the fields available to them by default are text boxes that are edited in place. When the user clicks the Save button any changes are saved to their profile.

Initialization

The Customer Profile feature relies heavily on the MSCSProfileService, which is initialized in the include\global_profile_lib.asp file. By default the Retail site stores profile data in the catalog database, and the Supplier site stores profile data in Active Directory.

Initialization for the Customer Profile feature occurs in the following files:

include\std_access_lib.asp

The EnsureAuthAccess function verifies that only authenticated (registered) users are allowed access to this page. Anonymous and guest users are redirected to the login page, login\login.asp.

services\include\initialize.asp

The InitializePartnerDesk subroutine sets the values of three variables — sAction, sSubAction, sProfileIDs — from the URL query string or form post variable. These variables are used to control program flow on the remainder of the page.

Browse Time

The following file displays the Customer Profile service:

services\customer\account.asp

This page ensures that users can only see their own profile before rendering any content. Business logic and rendering are in separate routines to make the code easier to maintain and modify.

The services\customer\account.asp page renders in one of three ways, depending on the value of the sAction variable:

EDIT_ACTION

This is the first time the user views the page. This is also the default action. The PrepareEditAction subroutine handles the business logic and the htmEditAction function renders the page.

CHANGE_ACTION

This action occurs when the user clicks the Change button on the page. The PrepareSaveChangesConfirmation subroutine handles the business logic and the htmChangePasswordActionHandler function creates HTML for the page, which redirects the user to the change password page, services\change_password.asp.

SAVE_ACTION

This action occurs when the user clicks the Save button on the page. The PrepareSaveAction subroutine handles the business logic and the htmSaveActionHandler function renders the page.

Related Commerce Server 2000 Help Topics

Using Profiles in Web Site Management

See Also

Partner Users


Customer Orders

The Customer Orders feature allows users to view a list of their orders and to view details of specific orders. When users enter the Customer Orders feature they are shown a list of their existing orders on the services\customer\orders.asp page. When a user selects a particular order and clicks the View Item Details button, the user is shown the order details on the services\customer\view_order.asp page. Clicking the Close button on that page returns the user to the order list page.

Initialization

Initialization for the Customer Orders feature occurs in the following files:

include\std_access_lib.asp

The EnsureAuthAccess function verifies that only authenticated (registered) users are allowed access to this page. Anonymous and guest users are redirected to the login page, login\login.asp.

services\include\initialize.asp

The InitializePartnerDesk subroutine sets the values of three variables — sAction, sSubAction, sProfileIDs — from the URL query string or form post variable. These variables are used to control program flow on the remainder of the page.

Browse Time

The following files display the Customer Orders feature:

services\customer\orders.asp

This page displays a list of the orders for the current user. Business logic and rendering are in separate routines to make the code easier to maintain and modify.

The OrderListActionHandler subroutine prepares the page for rendering. This subroutine sets paging variables on the page in response to the value of the sAction variable, for example NEXTPAGE_ACTION. The htmRenderOrderList function retrieves the list of orders and renders the page.

Selecting an order and clicking the View Item Details button submits a form with the order ID number, which is a globally unique identifier (GUID), to the services\customer\view_order.asp page.

services\customer\view_order.asp

This page displays the order details of the order selected in the orders.asp page. Business logic and rendering are in separate routines to make the code easier to maintain and modify.

The PrepareOrderDetailsAction subroutine gets a count of the number of orders that have been selected. If only one order has been selected the htmOrderDetailsActionHandler function retrieves the order details and renders the page. If more than one order has been selected the user is redirected to the list page.

When the user clicks the Close button the PrepareCloseOrderDetailsAction subroutine determines the source page and the CloseOrderDetailsActionHandler redirects the user back to the list page.

See Also

Partner Orders


Partner Service

The Partner Service feature is, by default, only activated in the Supplier Solution Site, and is only visible to users who are delegated admins. Delegated admins are users with administrative privileges for their organization. Initial access to the Partner Service feature is provided by a link in the template\menu.asp file. The Partner Service section of the menu appears only when the following four conditions are met:

  • The site has the Delegated Admin feature enabled.

  • The user has a profile.

  • The user is authorized to act as administrator for other users.

  • The user has been assigned an organization.

After the Partner Service section appears in the menu pane, links to the three Partner Service features are provided. These three Partner Service features are:

  • Partner Profile

  • Partner Users

  • Partner Orders

Related Commerce Server 2000 Help Topics

About the Profiles Resource\Profile Definitions

See Also

Customer Service


Partner Profile

The Partner Profile feature allows delegated admins to edit the profile for their organization. When delegated admins first enter the Partner Profile feature they are shown the profile data for their organization. The fields that are available to them are controlled through Commerce Server Business Desk. Each property in the profile has an attribute, sDelegatedAdminAccess. When the value of the sDelegatedAdminAccess attribute is zero (0), for a property it is not displayed. When the value is one (1), the property is displayed as read-only. When the value is two (2), the delegated admin can change the property.

Some of the properties that the delegated admin can change are simply edited in a text box on the page; however, properties that contain user names are changed with a picker mechanism. At the end of any field containing a user name is an ellipsis (...) button. When the admin clicks that button, the admin is redirected to the services\partner\users.asp page in "picker" mode. When the admin selects a user from the list the admin is returned to the profile page and the field is filled in with the name of the user.

Initialization

Initialization for the Partner Profile feature occurs in the following files:

include\std_access_lib.asp

The EnsureAuthAccess and CheckPartnerServiceAccess functions verify that only authorized users with delegated admin privileges are allowed access to this page. Unauthorized users are redirected to an error page.

services\include\initialize.asp

The InitializePartnerDesk subroutine sets the values of three variables; sAction, sSubAction, sProfileIDs, from the URL query string or form post variable.

services\include\lib.asp

The CheckIfProfilesExist subroutine verifies the globally unique identifier ProfileID(s).

Browse Time

The following file displays the Partner Profile feature:

services\partner\account.asp

This page ensures that users can only view the profile for their organization before rendering any content. Business logic and rendering are in separate routines to make the code easier to maintain and modify.

This page renders in one of four ways depending on the value of the sAction variable:

EDIT_ACTION

This is the first time the user views the page. This is also the default action. The PrepareEditAction subroutine handles the business logic and the htmEditAction function renders the page.

SAVE_ACTION

This action occurs when the user saves changes to the account profile.

The business logic is in the htmSaveActionHandler function rather than the PrepareSaveAction subroutine because the preparation varies by the value of the subAction variable. The PrepareSaveAction subroutine remains as a placeholder for any business logic that would apply to all values of the subAction variable. The htmSaveActionHandler function renders the page.

SELECT_ACTION

This action occurs when the delegated admin selects a property containing a user profile for editing and there are multiple user profiles available. The PrepareSelectActionHandlerForEdit subroutine handles the business logic and the htmSelectActionHandlerForEdit function generates an HTML fragment, which redirects the user to the page services\partner\users.asp.

SELECTED_ACTION

This action occurs after a SELECT_ACTION, when the delegated admin returns from selecting a user profile from the services\partner\users.asp page. The PrepareSelectedAction subroutine handles the business logic and the htmSelectedActionHandlerForEdit function renders the page.

Related Commerce Server 2000 Help Topics

Using Profiles in Web Site Management

See Also

Customer Profile

Partner Users


Partner Users

The Partner Users feature allows the delegated admin to add new users, delete users, and edit user profiles for their organization. When delegated admins first enter the Partner Users feature they are presented with a list of the users in their organization. After the delegated admin selects a user the delegated admin is redirected to an edit page where the delegated admin can change the profile for the user.

Initialization

Initialization for the Partner Users feature occurs in the following files:

include\std_access_lib.asp

The EnsureAuthAccess and CheckPartnerServiceAccess functions verify that only authorized users with administrator privileges are allowed access to this page. Unauthorized users are redirected to an error page.

services\include\initialize.asp

The InitializePartnerDesk subroutine sets the values of three variables; sAction, sSubAction, sProfileIDs, from the URL query string or form post variable.

Browse Time

The following files display the Partner Users feature:

services\partner\users.asp

The page renders in one of two ways depending on the value of the sAction variable. For all valid actions except SELECTED_ACTION, the htmRenderProfilesList function renders the list of users. The SELECTED_ACTION occurs when the user returns from the edit_user.asp page. In this case, the SelectedActionHandlerForList subroutine redirects the user as necessary.

services\partner\edit_user.asp

This page displays an individual user profile. The htmEditPageActionHandlers function selects the appropriate action handler depending on the value of the sAction variable. Some of the cases in this function are intended for editing multiple profiles. The multi-edit feature is not implemented and the cases for it cannot be reached from the Solution Sites user interface.

Related Commerce Server 2000 Help Topics

Using Profiles in Web Site Management

See Also

Customer Profile


Partner Orders

The Partner Orders feature allows the delegated admin to view the orders for all the users in their organization. When the delegated admin first enters the Partner Orders feature the admin is presented a list of all the orders for their organization. From this list page the admin can select an individual order and be redirected to a page that displays the order details.

Initialization

Initialization for the Partner Orders feature occurs in the following files:

include\std_access_lib.asp

The EnsureAuthAccess and CheckPartnerServiceAccess functions verify that only authorized users with administrator privileges are allowed access to this page. Unauthorized users are redirected to an error page.

services\include\initialize.asp

The InitializePartnerDesk subroutine sets the values of three variables; sAction, sSubAction, sProfileIDs, from the URL query string or form post variable.

Browse Time

The following files display the Partner Orders feature:

services\partner\orders.asp

This page displays a list of the orders for the organization of the delegated admin. Business logic and rendering are in separate routines to make the code easier to maintain and modify.

The htmOrderListActionHandler subroutine prepares the page for rendering. This subroutine sets paging variables on the page in response to the value of the sAction variable, for example NEXTPAGE_ACTION. The htmRenderOrderList function retrieves the list of orders and renders the page.

Selecting an order and clicking the View Item Details button submits a form with the order ID number and a globally unique identifier (GUID) to the services\partner\view_order.asp page.

services\partner\view_order.asp

This page displays the order details of the order selected in the orders.asp page. Business logic and rendering are in separate routines to make the code easier to maintain and modify.

The PrepareOrderDetailsAction subroutine gets a count of the number of orders that have been selected. If only one order has been selected the htmOrderDetailsActionHandler function retrieves the order details and renders the page. If more than one order has been selected the user is redirected to the list page.

When the user clicks the Close button, the PrepareCloseOrderDetailsAction subroutine determines the source page and the CloseOrderDetailsActionHandler redirects the user to the source page, if present, or to the corresponding list page.

See Also

Customer Orders


Analysis Integration

Commerce events are specially structured entries written by the Solution Sites to the Web server log file under the heading cs-uri-query. The Web server log import Data Transformation Services (DTS) task imports these events into the Data Warehouse for use by Analysis Services. The Solution Sites applications write a log event when a user adds or removes a basket item or submits an order. The format of the logged event is:

   CEVT={T=class,EVT=event,property1,property2,...}

Initialization

The query strings are constructed in the following file:

include\analysis.asp

The Analysis_LogAddToBasket and Analysis_LogRemoveFromBasket subroutines set the class to BSK, the event to AIBSK or RIBSK, respectively, and call the Analysis_ConstructPRID function to construct the item property. The resulting string resembles the following:

   CEVT={T=BSK,EVT=AIBSK,CatalogName;ProductID;VariantID}

The Analysis_LogSubmitOrder subroutine sets the class to ORD, the event to SUBOR, and calls the Analysis_ConstructKeyValueString function to construct the order property. The resulting string resembles the following:

   CEVT={T=ORD,EVT=SUBOR,ORID=OrderID}

The Analysis_LogEvent subroutine performs the actual logging by calling the AppendToLog method of the Active Server Pages (ASP) Response object.

Browse Time

The following files provide logging of the Commerce events:

_additem.asp

When a user adds an item to the basket, the Analysis_LogAddToBasket function is called from this file.

_delitem.asp

When a user removes an item from the basket, the Analysis_LogRemoveFromBasket function is called from this file.

crdtcard.asp

When a user submits an order charged to a credit card, the SaveBasketAsOrder subroutine located in the file include\payment.asp is called by this file. This subroutine, in turn, calls the Analysis_LogSubmitOrder subroutine.

po.asp

When a user submits a purchase order, the SaveBasketAsOrder subroutine located in the file include\payment.asp is called by this file. This subroutine, in turn, calls the Analysis_LogSubmitOrder subroutine.

See Also

Basket

Checkout

User Tracking


BizTalk Server Integration

BizTalk Server 2000 provides a gateway for sending business documents between your company and your trading partners (also known as vendors). For example, if your company uses BizTalk Server, you can trade catalogs, orders, documents, and other electronic forms with your trading partners. BizTalk Server manages the data translation, encryption, digital signatures, and document tracking services for many different transport mechanisms.

BizTalk integration is not enabled in the default configuration of the Solution Sites. To enable BizTalk integration you must change the App Default Config settings for your site.

The App Default Config setting for the BizTalk Options property is set to disable integration with BizTalk Server for exchanging documents. The BizTalk Options property can be changed to facilitate other configurations as shown in the following table.

Selected Property Value | Friendly Name | Description
0 | BIZTALK_PO_XFER_DISABLED | Disables integration with BizTalk Server to exchange documents. This is the default setting for the Solution Sites.
1 | BIZTALK_PO_XFER_ENABLED | Enables integration with BizTalk Server to exchange documents.

Once BizTalk Server is enabled via the BizTalk Options property, the following App Default Config settings should be changed as well. Each of these properties needs to match the respective entry in BizTalk Messaging Manager:

  • The BizTalk Catalog Doc Type property must be set to the document definition name that is required by BizTalk Server for catalogs.

  • The BizTalk PO Doc Type property must be set to the document definition name that is required by BizTalk Server for purchase orders.

  • The BizTalk Source Org Qualifier property must be set to the alias qualifier for the site.

  • The BizTalk Source Org Qualifier Value property must be set to the alias value for the site.

  • The BizTalk Submit type property should not be changed even if BizTalk Server is enabled. The default value is 1.

For more information about changing App Default Config settings, see "Configuring App Default Config Resource Properties" in Commerce Server 2000 Help.

The recvpo pipeline handles the processing of purchase orders received through BizTalk Server. First, the _recvpo.asp page receives XML documents from BizTalk Server. When an XML document is received by the _recvpo.asp file, the XMLTransforms process is started and converts the XML document back to an order form. Commerce Server then runs the recvpo pipeline on the order form. After the pipeline processes the order form, the order is saved to the Commerce Server database. By using the _recvpo.asp file, you can use Commerce Server objects to redirect the XML to your order management system.

For more information about integrating BizTalk Server, see "Using BizTalk Server and Commerce Server" in Commerce Server 2000 Help or "Integrating Commerce Server with BizTalk Server" in the Commerce Server 2000 Resource Kit.

Initialization

include\global_siteconfig_lib.asp

Included in the global.asa file. The dictPipelines datastructure is used to assign friendly names to the file locations.

Browse Time

The following files run the BizTalk Server feature:

_additem.asp

If the App Default Config setting for the BizTalk Options property is set to enable BizTalk Server integration, the ApplyVendorInfo subroutine will return the vendor ID associated with the catalog.

_recvpo.asp

This page receives purchase orders from BizTalk Server.

include\payment.asp

Sets the iBIZTALKOPENNESS variable, which determines where BizTalk Server will find its connection information. Also submits the appropriate OrderForm objects using BizTalk Server.

ReceiveStandard.asp

Sample standard BizTalk Server receive page for purchase orders.


International Features

The Solution Sites provide the foundation for implementing several features necessary for an international site, multiple languages, dual currency display, and multiple address formats. By default, none of these features are implemented in the Solution Sites. A full implementation of a truly international site is very complex and not suitable for the demonstration purposes of the Solution Sites.

Multiple languages

Euro dual currency display

Multiple address formats

Localized data formats

Multiple languages

The solution sites are written for single language use. English, French, German and Japanese versions are available. But, they are written to simplify translation and provide the foundation for multiple language support. Most of the strings in the Solution Sites are contained in a single XML file, others, such as Site Terms, shipping method descriptions, and discount descriptions, come from external sources. Translating a site, not counting external strings, to another single language is simply a matter of translating the strings in the rc.xml file and changing the Language attributes in that file to the name of the new language. The first step in supporting multiple languages is also to edit the rc.xml file. Within the file there is a Language node with name and locale attributes for each supported language. An Entry node identifies each string in the application. Each Entry node contains a Value node for each language in the file. The Value nodes are distinguished by their Language attributes. For example:

   <Entry Name="L_Login_HTMLText" Type="General">
      <Value Language="English">Login</Value>

The MessageManager object serves as a repository for the text strings used on the Solution Sites. During application initialization the MessageManager object is loaded with the data in the rc.xml file. Whenever a string is needed in the Solution Sites it is retrieved from the MessageManager object with a call, such as sText = mscsMessageManager.GetMessage("L_FirstName_HTMLText", sLanguage). Throughout the Solution Sites the value of the sLanguage variable, used to determine the language used, is set to the value of the DefaultLanguage attribute in the rc.xml file. This limits the Solution Sites to a single language. In order to support multiple languages you will need to create a mechanism to select the correct value for the sLanguage variable as needed, perhaps based on the lcid.

Euro dual currency display

The Solution Sites have the ability to enable dual-currency display for Euro-countries. The Commerce Server EuroDisplay object provides the foundation for displaying a price in two currencies simultaneously, for example the French Franc and the Euro. The exchange rate between the primary and secondary currencies is fixed at application initialization and comes from a value in the App Default Config settings. The htmRenderCurrency function renders currency values based on the value of the i_AltCurrencyOptions option in the App Default Config settings. This provides a centralized place for extending the currency display in the Solution Sites.

Multiple address formats

There are commented examples in the Solution Sites that demonstrate changing the address format based on the default lcid for the site. Search the site for the string $$INTLADDR to find these examples.

Localized data formats

The Solution Sites provide, through the Commerce Server 2000 DataFunction object, the ability to format and parse currencies and numbers in a variety of international formats. You can use this object to perform locale-based formatting, parsing, and value range checking of data on your site.

Initialization

Initialization for the international features occurs in the following files:

include\header.asp

include\txheader.asp

One or the other of these nearly identical files is included as the header in all of the pages in the Solution Sites applications. The header sets the character set for the page. By default this is set to the s_PageEncodingCharset option from the App Default Config settings.

If you need to explicitly set the server code page, for example you are running a Japanese site on an English server, use the CodePage directive. For more information about using multiple languages in Active Server Pages (ASP), search for "Accommodating International Clients" and "Setting the Code Page for String Conversions" on the Microsoft Developer Network (MSDN) at http://msdn.microsoft.com.

include\global_messagemanager_lib.asp

The Solution Sites use the MessageManager object to provide support for multiple languages. The GetMessageManagerObject function is called from the Main subroutine and the returned MessageManager object is set to Application scope as MSCSMessageManager. The data source for MSCSMessageManager is the rc.xml file.

include\global_internationalization_lib.asp

The InitAltCurrencyDisp function is called from the Main subroutine and the returned EuroDisplay object is set to Application scope as MSCSAltCurrencyDisp. The initialization values for the EuroDisplay object come from the App Default Config Settings.

include\global_data_lib.asp

The InitDataFunctions function is called from the Main subroutine and the returned DataFunctions object is set to Application scope as MSCSDataFunctions. The initialization value, Locale, for the DataFunctions object comes from the App Default Config settings.

Related Commerce Server 2000 Help Topics

Example Code for Display Objects\Code to Manipulate and Display Euro Values

Modifying Your Site for an International Audience\Localizing Web Site Text

Display Object Concepts\DataFunctions Object

See Also

App Default Config Settings


Site Infrastructure

The Commerce Server Solution Sites comprise various aspects of a comprehensive infrastructure for building a highly structured and easily maintained commercial Web site. As described in the Site Features topics, the Solution Sites incorporate most of the capabilites of Commerce Server 2000. The code for the Solution Sites has been organized such that the feature implementations share a common infrastructure.

In addition, the Retail and Supplier Solution Sites are implemented as the same set of files, with the differences controlled by configuration settings and corresponding tests in the code. For more information about the files that constitute the Solution Sites, see File Organization.

This section discusses the infrastructure of the Solution Sites.

This section contains:

  • Page Execution Model. Describes the execution model of the pages in the Solution Sites, which is crucial to understanding how the existing code is structured, and how new code should be written in order to conform to the existing model.

  • Configuration. Describes the configuration mechanisms that make the Retail and Supplier Solution Sites unique, given that they are based on the same set of files.

  • Initialization. Describes the processing that occurs when the Web site application starts up. In other words, what processing occurs when the file global.asa is run.

  • Authentication. Describes the authentication scheme used by the Solution Sites, including the various modes in which authentication can be performed.

  • Security. Describes issues related to the security of the Solution Sites.

  • Caching. Describes the caching techniques employed by the Solution Sites in the interest of improved performance.

  • Constants. Describes the special mechanism used by the Solution Sites that allows the use of a large number of constants with the least performance impact.

  • Constructing HTML. Describes the techniques used in the Solution Sites for constructing the HTML that gets rendered as the pages in the site.

  • Forms Processing. Describes the forms definition and processing infrastructure used in the Solution Sites.

  • Pipelines. Describes the pipeline infrastructure used by the Solution Sites.

  • Error Handling. Describes the error-handling infrastructure used by the Solution Sites, including the built-in differences between DEVELOPMENT and PRODUCTION modes.

  • Utility Routines. Describes the utility routines used by the existing Solution Sites code, and intended for use in the code you write for any new pages you create. A functional categorization of the routines is provided.


Page Execution Model

The Commerce Server Solution Sites use a page execution model that is highly structured and standardized throughout the sites. On a given Web site page, such as basket.asp, all of the standard processing occurs within files that are included on the page. Code to implement the unique aspects of the page occurs within the page itself, implemented within a routine named Main, and within any additional routines included as helper routines to the routine Main. In other words, the routine Main is the entry-point routine for custom processing on a page.

The following figure shows a hypothetical Web site page. The annotations, shown to the right in red, describe the high-level function of various aspects of a standard Solution Site Web page.

Page execution model

The page execution model is explained in greater detail in the following topics:

  • Include Files

  • Standard Execution Flow

  • Custom Execution Flow

  • Page Layout Variables

  • Page Layout

See Also

Page Authoring

Page Layout Customization


Include Files

The types of include files for a standard Solution Sites Web page can be divided into five categories, as follows:

  1. Response header files

    The files include\header.asp and include\txheader.asp contain script that writes the appropriate entries into the response header. One of these two files must be included on a given page. For more information about the differences between these two files, see Including Files.

  2. Constants file

    The file include\const.asp is empty by default, but exists to provide a place where new constants can be defined. The constants provided with the Solution Sites have been compiled into a type library for improved performance. Depending on the number of new constants you create, it may be beneficial to adopt the same strategy for your new constants.

    For more information about compiled constants and compiling new constants, see Constants.

  3. Utility routine files

    This set of files, most of which begin with the prefix "std_", contain a wide variety of utility routines, organized such that routines with related functions are placed in the same file.

    For example, the file include\html_lib.asp contains numerous functions designed to make the formatting of HTML text easier. It contains routines such as RenderCheckBox and RenderRadioButton, used to render INPUT elements with TYPE attribute values of CHECKBOX and RADIO, respectively.

    Depending on the functionality and implementation of a particular Web page, some of these files can be omitted, thereby improving performance.

    For more information about the utility routines supplied in these files, see Routines Reference.

  4. Page initialization file

    The file include\setupenv.asp is central to the execution of a page. Other than a small amount of script executed in the file header.asp, Web page processing begins in the file setupenv.asp. At the highest level, the processing in this file consists of:

    • Defining several dozen variables for use in the custom code for the page, and initializing most of them.

    • Correcting the URL of the requested page (for example, correcting the pathname case, in cookie mode, in order for cookies to work correctly).

    • Getting user context under which the page is running by calling the routine GetUserInfo.

    • Calling the routine Main, which serves as the entry point for custom processing done for the Web page.
  5. Layout files

    The files template\layout1.asp and template\no_menu.asp define the two basic layouts of all Web pages that conform to the Solution Sites page execution model. These files contain the high-level HTML tags, including HTML, HEAD, and BODY. Using a combination of include files and the contents of a couple of page layout variables, these short files provide a mechanism for standardizing the layout of all pages on the Web site.

    For more information about the page layout variables, see Page Layout Variables.

    For more information about how this file controls the layout of the Web site pages that use it, see Page Layout.

See Also

Page Authoring

Page Layout Customization


Standard Execution Flow

The flow of standard execution within the Solution Sites page execution model can be understood in terms to the files included on a Web site page. For more information about the different types of include files, see Include Files.

Processing begins in the first include file, either include\header.asp or include\txheader.asp, in which a small amount of script is executed in order to add some standard response header entries.

The two types of files that are typically included next are the constants file and the utility routine files. Since these files do not contain any global code, that is, code outside of any function or subroutine, they can be included in any order relative to the other include files. The lack of global code in these files means that their inclusion does not necessarily result in any processing. If one or more routines in these files is called, it occurs at a later stage in the execution flow. For more information about when the code in these files enters the flow of execution, see Custom Execution Flow.

The next include file, include\setupenv.asp, is central to the standard execution flow. This file is responsible for defining and (generally) initializing several dozen variables that can be used further on in the processing. It is also responsible for doing some correction of the URL (by calling the routine CorrectRequest). Finally, it ends by calling the routine Main, which is typically implemented as the first routine following the file inclusions. All custom processing for the page occurs within the Main routine and any routines called from within it.

After the routine Main returns, the HTML and the script in the final include file, either template\layout1.asp or template\no_menu.asp, is processed. All processing up to this point is entirely in script, as the opening HTML element has not yet been encountered. These layout files are mostly HTML, with the exception of a few include files that contain executable script, and the writing of the contents of a couple of page layout variables using the Internet Information Services (IIS) "<%=" directive.

For more information about the details of page layout, and the page layout variables, see Page Layout and Page Layout Variables, respectively.

See Also

Custom Execution Flow


Custom Execution Flow

All custom aspects of the standard page execution flow occur within the routine Main. The Main routine is typically implemented as the first routine following include files on a Web site page. Helper routines that are specific to the page are typically found after the Main routine. Helper routines that are useful in a variety of pages are found in the utility routine include files.

The purpose of the Main routine, and its helper routines, is to establish the content to be displayed in a particular content area of the Web page being constructed. Both of the layout files template\layout1.asp and template\no_menu.asp assume that appropriate HTML content has been assigned as a string to the variable htmPageContent. The area of the page in which this content will be rendered is different in the two pages. In the file layout1.asp, the corresponding area is to the right of the menu area, and between the two horizontal rules (HR elements). In the file no_menu.asp, the corresponding area is the full width of the browser window, below the one horizontal rule.

The file layout1.asp also expects that a second content variable, htmDiscountBannerSlot, might also be assigned a string containing HTML content to be displayed in a full-width discount banner area below the second horizontal rule.

This is accomplished by setting two particular string variables to contain the HTML that will render the intended content. The layout files use the Internet Information Services (IIS) "<%=" directive to write the contents of the content variables in the appropriate location within the page layout. For more information about these variables, see Page Layout Variables.

In addition to establishing the HMTL content to be assigned to the appropriate content variables, the routine Main and its subordinate routines need to perform other processing appropriate to the purpose of the page. Often, this involves interaction with one or more databases to retrieve information to be displayed and write new information to be saved (such as information about purchases being made).

The routine Main is also responsible for controlling access to the page by calling either EnsureAccess or EnsureAuthAccess before doing anything else.

See Also

Standard Execution Flow


Page Layout Variables

There are several page layout variables that are referenced from within the two layout files template\layout1.asp and template\no_menu.asp. The routine Main is responsible for setting some of these to appropriate HTML strings. The others are initialized as described below.

  • htmPageContent. This variable, declared in the file include\setupenv.asp, must be set within the routine Main to the HTML string that will result in the rendering of the main content area of the page. If this variable is not set, no content will be displayed in the main content area. If this variable does not contain valid HTML, the displayed content may not be rendered as intended. Therefore, appropriate care must be taken when writing or modifying the code that establishes the value of this variable.

    This content variable is referenced in the layout files template\layout1.asp and template\no_menu.asp.

  • htmDiscountBannerSlot. This variable, declared in the file include\setupenv.asp, may be set within the routine Main to an HTML string designed to display discounts being offered to the user. In the layout file template\layout1.asp the content associated with this variable is displayed below the menu and main content areas, just above the second horizontal rule (HR element). The layout file template\no_menu.asp does not reference this variable.

    Discounts are generally not appropriate for all pages on a Web site, or even for all pages that use the layout file template\layout1.asp. In such cases, the routine Main should leave this variable empty, resulting in nothing being displayed in the discount area of the page.

    Normally, when discounts are to be included on a page, this variable is set to the string returned by the function RenderDiscounts, defined in the include file template\discount.asp. This function runs a Content Selection pipeline to retrieve discount content, potentially targeted to the user and the contents of their basket.

  • dictConfig.s_SiteName. This value is taken directly from the App Default Config settings. The Dictionary object from which this string is retrieved is created in each page by the file include\setupenv.asp using the GetOptionsDictionary method of the AppConfig object stored in the Internet Information Services (IIS) Application object.

    This value is referenced in the layout files template\layout1.asp and template\no_menu.asp.

  • sPageTitle. This variable, declared in the file include\setupenv.asp, should be set within the routine Main to a string intended to be the title of the page (the data associated with the TITLE element).

    This content variable is referenced in the layout files template\layout1.asp and template\no_menu.asp.

For more information about how the HTML strings assigned to these variables are rendered in a standard location within the Web page, see Page Layout.

See Also

Implementing the Main Subroutine

Initializing the htmPageContent Variable


Page Layout

Page layout within the Solution Sites is controlled by HTML code in one of two layout files: template\layout1.asp and template\no_menu.asp.

The file layout1.asp provides a common type of Web page layout, with space for a banner ad at the top, followed by the Web site name, and several navigation links. Below this is the typical side-by-side menu and main content areas, with the latter being the portion of the page that is unique to each page. The bottom portion of the page is used to display discount information, if any, and also includes a footer area.

The file no_menu.asp provides a simpler layout that does not include the navigation links, the menu area, the discount area, or the footer.

Each of the areas on the Web page are controlled by either a specific include file, or by writing out the contents of a specific string variable that was previously initialized when the routine Main was invoked from the file include\setupenv.asp. For more information about how these variables should be initialized, see Custom Execution Flow and Page Layout Variables. For more information about the utility routines designed to help you create HTML content, see Constructing HTML.

When required to achieve the layout you want, you should add additional content areas to the existing layout files, and new include files or content variables to supply content for them. When more than two types of page layout are needed, you should create new layout files for the additional layouts you require.

This section contains:

  • Page Layout Using the File "layout1.asp"

  • Page Layout Using the File "no_menu.asp"


Page Layout Using the File "layout1.asp"

The following figure shows the home page of the Retail Solution Site, which uses the layout file template\layout1.asp. It is annotated with the include files and variable names responsible for the display of each separate area of the page. In this figure, the areas associated with the include file template\banner.inc and the variable htmDiscountBannerSlot are both empty. If one or both of them were not empty, the rendered page would use correspondingly more vertical space.

Page layout figure for layout1.asp

From top to bottom and left to right, the areas of the page are controlled as follows:

  • sPageTitle. A string variable that has been initialized within the routine Main. For more information, see Page Layout Variables.

  • banner.inc. Runs a Content Selection pipeline to choose an appropriate ad for display. For more information, see template\banner.inc.

  • dictConfig.s_SiteName. A string variable that has been initialized within the routine GetAppConfigObject. For more information, see Page Layout Variables.

  • navbar.inc. Produces an HTML string that will render links to home, catalog, and basket pages. The HTML string is cached when first produced for quicker subsequent retrieval. For more information, see template\navbar.inc.

  • menu.asp. Produces an HTML string that will render the menu area of the Web page, which includes controls to enable searching, links to the catalog, customer service, and so on. For more information, see template\menu.asp.

  • htmPageContent. A string variable that has been initialized within the routine Main. For more information, see Page Layout Variables.

  • htmDiscountBannerSlot. A string variable that has been initialized within the routine Main. For more information, see Page Layout Variables.

  • footer.inc. Produces an HTML string that will render copyright text. For more information, see template\footer.inc.

With an understanding of these files, you can create a more sophisticated Web site by creating alternative page layouts, perhaps naming the files that implement them as layout2.asp, layout3.asp, and so on.

See Also

Page Layout Using the File "no_menu.asp"

Page Layout Customization


Page Layout Using the File "no_menu.asp"

The following figure shows the sign-in page of the Retail Solution Site, which uses the layout file template\no_menu.asp. It is annotated with the include files and variable names responsible for the display of each separate area of the page. In this figure, the area associated with the include file template\banner.inc is empty. If it were not empty, the rendered page would use correspondingly more vertical space.

Page layout figure for no_menu.asp

From top to bottom, the areas of the page are controlled as follows:

  • sPageTitle. A string variable that has been initialized within the routine Main. For more information, see Page Layout Variables.

  • banner.inc. Runs a Content Selection pipeline to choose an appropriate ad for display. For more information, see template\banner.inc.

  • dictConfig.s_SiteName. A string variable that has been initialized within the routine GetAppConfigObject. For more information, see Page Layout Variables.

  • htmPageContent. A string variable that has been initialized within the routine Main. For more information, see Page Layout Variables.

See Also

Page Layout Using the File "layout1.asp"

Page Layout Customization


Configuration

The Retail and Supplier Solution Sites have a common code base. The variations in their functionality come from differences in the App Default Config settings and whether the Profiling System stores profiles in SQL Server, Active Directory, or both types of data stores.

This section contains:

  • App Default Config Settings

  • Profiling System Data Store

  • INI File Configuration


App Default Config Settings

The following table lists the App Default Config properties and their values for the Retail and Supplier Solution Sites. Properties that are connection strings or computer names are not listed. The Blank Solution Site has identical settings to the Retail site. The items in bold, in the following table, highlight the properties that are used with different values between the two sites. Italicized entries, under the Retail and Supplier headings, are values that depend on the locale where the site is installed.

Property | Retail | Supplier | s_Description
f_AltCurrencyConversionRate | 2 | 2 | Rate used to convert from the base currency to the alternate currency (for example, base currency = 2 x alternate currency).
i_AddItemRedirectOptions | 1 | 1 | Page to be displayed after a user adds an item to the basket: 0 - redirect to the basket page 1 - display the current product page
i_AddressBookOptions | 2 | 2 | Address book feature: 0 - disable 1 - enable and make the address book read-only 2 - enable and make the address book read/write
i_AltCurrencyLocale | 1033 | 1033 | Locale for the alternate currency: 1031 - German 1033 - English 1034 - Spanish 1036 - French 1041 - Japanese
i_AltCurrencyOptions | 0 | 0 | Simultaneous display of base and alternate currencies: 0 - disable 1 - enable
i_AuctionsOptions | 1 | 0 | Auctions: 0 - disable 1 - enable Not used by the Solution Sites.
i_BaseCurrencyLocale | 1033 | 1033 | Locale for the base currency; see the i_AltCurrencyLocale property in this table for valid values.
i_BillingOptions | 0 | 2 | If account billing was specified for the i_PaymentOptions property, this property further specifies billing types. The only option supported is 2 - stand-alone purchase orders. Not used by the Solution Sites.
i_BizTalkOptions | 0 | 0 | Integration with BizTalk Server to exchange documents: 0 - disable 1 - enable
i_CookiePathCorrectionOptions | 1 | 1 | Cookie path correction: 0 - enable 1 - enable application-based correction 2 - enable filter-based correction
i_CurrencyDisplayOrderOptions | 0 | 0 | When simultaneously displaying base and alternate currencies: 0 - display the base currency first 1 - display the alternate currency first
i_DelegatedAdminOptions | 0 | 1 | Partner Services: 0 - disable 1 - enable
i_FormLoginOptions | 6 | 7 | Login requirement; see Login.
i_FormLoginTimeOut | 60 | 60 | Number of minutes after which the ticket times out.
i_HostNameCorrectionOptions | 1 | 1 | Host name correction: 0 - disable 1 - enable
i_PaymentOptions | 1 | 5 | Payment types: 1 - credit card 4 - account billing 5 - both
i_ShipToLevelOptions | 0 | 0 | Shipment level: 1 - shipments made at the purchase order level 2 - shipments allowed at the line item level Not used by the Solution Sites.
i_ShoppingListOptions | 0 | 0 | Shopping lists: 0 - disable 1 - enable Not used by the Solution Sites.
i_SiteDefaultLocale | 1033 | 1033 | Locale for this site; see the i_AltCurrencyLocale property in this table for valid values.
i_SitePrivacyOptions | 1 | 1 | Anonymous users: 1 - profile 2 - profile and track visits
i_SiteRegistrationOptions | 1 | 0 | Self-registration: 0 - disable 1 - enable
i_SiteTicketOptions | 2 | 2 | User ticket location: 1 - in URL query string 2 - in a cookie
s_AltCurrencyCode | EUR | EUR | The ISO 4217 code for the alternate currency.
s_AltCurrencySymbol | EUR | EUR | Symbol for the alternate currency.
s_AnonymousUser DefaultCatalogSet | {11111111-1111-1111- 1111-111111111111} | {11111111-1111-1111- 1111-111111111111} | Default catalog set for an anonymous user.
s_AuthenticatedUser DefaultCatalogSet | {22222222-2222-2222- 2222-222222222222} | {22222222-2222-2222- 2222-222222222222} | Default catalog set for an authenticated user.
s_BaseCurrencyCode | USD | USD | The ISO 4217 code for the base currency.
s_BaseCurrencySymbol | $ | $ | Symbol for the base currency.
s_BizTalkCatalogDocType |  |  | Document definition name required by BizTalk Server to exchange catalogs. Not used by the Solution Sites.
s_BizTalkConnString |  |  | Connection string to the BizTalk Interchange Manager database, which stores messages sent from Commerce Server. Not used by the Solution Sites, but is used in Commerce Server Business Desk.
s_BizTalkOrderDocType |  |  | Document definition name required by BizTalk Server to submit purchase orders (for example, PurchaseOrder). The i_BizTalkOptions property must be enabled for this property to be used by the Solution Sites.
s_BizTalkSourceQualifierID |  |  | Alias qualifier for this site in BizTalk Server (for example, BizTalk). The i_BizTalkOptions property must be enabled for this property to be used by the Solution Sites.
s_BizTalkSourceQualifierValue |  |  | Alias value for this site in BizTalk Server (for example, MySite). The i_BizTalkOptions property must be enabled for this property to be used by the Solution Sites.
s_BizTalkSubmittypeQueue | 1 | 1 | Submit documents to BizTalk Server: 0 - synchronously 1 - asynchronously The i_BizTalkOptions property must be enabled for this property to be used by the Solution Sites.
s_PageEncodingCharset | windows-1252 | windows-1252 | Document encoding character set for the site (for example, 1252 - Windows).
s_SMTPServerName | TestSMTPServer | TestSMTPServer | Computer name of the SMTP server. Not used by the Solution Sites.
s_WeightMeasure | lbs | lbs | Unit of measure for calculating product shipping costs. Not used by the Solution Sites, but is used in Business Desk.

Related Commerce Server 2000 Help Topics

Administering Commerce Server\Managing Commerce Resources\Configuring App Default Config Resource Properties

See Also

Configuration

Use of App Default Config Settings


Profiling System Data Store

One of the ways the Solution Sites differ is through the storage mechanism of the Profiling System. The Retail site uses UserObject profiles stored in a SQL Server database. The Supplier site uses UserObject profiles stored in Active Directory.

The Solution Sites check whether UserObject profiles are stored in Active Directory through the IsActiveDirectoryPresent function. This function checks if the UserObject profile definition contains a ParentDN property. The existence of this property signifies the use of Active Directory.

See Also

Configuration


INI File Configuration

The following table lists the properties contained in the csapp.ini file. By default, the SiteName, AddressKeyName, and RelativeURL properties are set to Retail or Supplier for the respective sites. These values should not be changed except during the unpacking process.

Property | Value | Description
SiteName | Retail or Supplier by default | The name of the site. This appears in the displayed HTML pages and as the name of the Commerce Server site in Commerce Server Manager.
AddressKeyName | Retail or Supplier by default | The name of the application.
RelativeURL | Retail or Supplier by default | The name of the Internet Information Services (IIS) virtual directory for the application relative to the default Web site.
CreatedBy | Author | Author of the site.
CreatedDate | 1999.04.02 00:00:00 | The date the site was created.
Version | 4.0.0000 | The version of Commerce Server 2000 that is being used.

See Also

Configuration

Initialization


Initialization

This topic describes the actions taken in the global.asa file to initialize the site when the application starts. It also describes the initialization that occurs on each page due to the common include files.

This section contains:

  • Application Startup

  • Page Initialization


Application Startup

The following initialization actions occur in the global.asa file when the application starts.

Three type libraries are declared as meta-data so that constants declared in these libraries are globally available:

  • CS Apps Constants 1.0 Type Library

  • Microsoft Commerce 2000 Catalog Type Library

  • Microsoft Commerce 2000 Profile Service Type Library

Text box properties are declared.

The environment is set either to PRODUCTION or DEVELOPMENT.

The Main subroutine in the file include\global_main_lib.asp is called. The following table lists the global variables (given Application scope) created in this subroutine, the actions taken when the variable is created, and the routine that supplies the actions.

Variable | Actions | Routine
MSCSActiveDirectoryDomain | If the Profiling System uses Active Directory, the Active Directory domain name is retrieved. | sGetActiveDirectoryDefaultNamingContext
MSCSAdoConnection | An open ActiveX Data Object Database (ADODB) connection to OLE DB Provider for Commerce Server is created. | oGetOpenConnectionObject
MSCSAltCurrencyDisp | The EuroDisplay object is created and initialized for display of alternate currency. | InitAltCurrencyDisp
MSCSAppConfig | The AppConfig object is created. | GetAppConfigObject
MSCSAppFrameWork | The AppFrameWork object is created. | Main
MSCSAuthManager | The AuthManager object is created. | InitAuthManager
MSCSCacheManager | The CacheManager object and caches are created and configured. | InitCacheManager
MSCSCatalogAttribs | Retrieves all the property definitions that exist in the Product Catalog System and places them in a Dictionary object for fast access. | dictGetCatalogAttributes
MSCSCatalogManager | The CatalogManager object is created and initialized. | InitCatalogManager
MSCSCatalogSets | The CatalogSets object is created and initialized. | InitCatalogSets
MSCSCommerceAppName | The application name is retrieved from the config.ini file. | GetINIString
MSCSCommerceSiteName | The site name is retrieved from the config.ini file. | GetINIString
MSCSDataFunctions | The DataFunctions object is created and the locale set. | InitDataFunctions
MSCSExpressionEvaluator | The ExpressionEval object is created and connected to the Expression store. | Main
MSCSForms | Form definitions are retrieved and placed in a Dictionary object. | GetFormDefinitions
MSCSGenID | The GenID object is created. | oGetGenIDObject
MSCSMessageManager | The MessageManager object is created and entries from the rc.xml file are read. | GetMessageManagerObject
MSCSObjectInstances | A SimpleList object and a Dictionary object are created and placed in a Dictionary object. | GetObjectInstanceDictionary
MSCSPageEncodingCharset | The s_PageEncodingCharset site configuration property is retrieved using the GetOptionsDictionary method of the AppCfg object. | GetConfigDictionary
MSCSPageProperties | A Dictionary object is created that contains one Dictionary object for each page in Partner and Customer Services. Each Dictionary object contains properties of the page. | GetPartnerAndCustomerServicePageAttributes
MSCSPageSets | The following page sets (groups of related pages) are created and placed in a Dictionary object: AdvertisementPageSet, ProductPageSet, and PurchasePageSet. | InitPageSets
MSCSPipelines | Friendly names are created for the pipelines and placed in a Dictionary object; logging is enabled. | InitSitePipelines
MSCSPredictor | The PredictorClient object is created and the Transaction prediction model is loaded from the Data Warehouse. | InitPredictor
MSCSProfileProperties | All the properties of all the profile schemas are placed into a Dictionary object. | dictGetProfileSchemaForAllProfileTypes
MSCSProfileService | The ProfileService object is created and initialized to the Profile store. | InitProfileService
MSCSProfileServiceUsesActiveDirectory | Whether Active Directory is used by the Profiling System is determined and placed in a Boolean value. | IsActiveDirectoryPresent
MSCSSecurePages | The Dictionary object containing the names of the secure pages is retrieved. All secure pages need to be put into this Dictionary object. | GetSecurePagesDictionary
MSCSSitePages | Friendly names are created for the site pages and placed in a Dictionary object. | GetSitePages
MSCSSitePaymentMethods | The payment methods for the site are retrieved and placed in a SimpleList object. | GetPaymentMethodsForSite
MSCSSiteStyle | HTML styles are defined and placed in a Dictionary object. | GetSiteStyles
WebServerCount | This server is joined to the Web farm, if there is one. The number of servers in the Web farm is retrieved. | JoinWebFarm
CSFAdvertisingContext, CSFDiscountContext, CampaignsCSFEventPipe | The Content Selection Framework is initialized for advertising, discounts, and an event-processing pipeline. | InitCSF

See Also

Initialization

Page Initialization


Page Initialization

A common subset of files is included in all pages. Most of these files provide access to numerous routines. However, the following files also provide code declared outside of any routines:

  • include\header.asp

  • include\setupenv.asp - This file provides extensive functionality, including the creation of local variables from the application variables created in the global.asa file.

See Also

Page Execution Model

Initialization

Application Startup


Authentication

The EnsureAccess and EnsureAuthAccess routines, defined in the file include\std_access_lib.asp, implement page-level access control based on the user type and access type. For information about the user type and access type, see User Tracking.

The EnsureAccess and EnsureAuthAccess routines must be called from within the Main subroutine on every page that requires access control. The call must appear before any other statement in the Main subroutine.

Both the EnsureAuthAccess and EnsureAccess routines grant access to users who are registered and authenticated (user type = AUTH_USER), and have a profile. The EnsureAccess subroutine also allows access to guest users (and anonymous users who are first turned into guest users) based on the login option. Neither of these routines allow direct anonymous access and should not be called on any page where direct access by anonymous users is wanted.

This section contains:

  • Access Using EnsureAuthAccess

  • Access Using EnsureAccess

  • Anonymous Access

See Also

Login

Profiles

Security

User Tracking


Access Using EnsureAuthAccess

The EnsureAuthAccess function allows page access to users who are registered and authenticated (user type = AUTH_USER), and have a profile. Authenticated users without a profile are redirected to the error\profile.asp page which displays an error message. All other user types are redirected to the login\login.asp page.

The following pages call this function:

_setadrs.asp | addrbook.asp
newaddr.asp | po.asp
services\partner\account.asp | services\change_password.asp
services\partner\edit_user.asp | services\customer\account.asp
services\partner\orders.asp | services\customer\orders.asp
services\partner\users.asp | services\customer\view_order.asp
services\partner\view_order.asp
See Also

Authentication

Access Using EnsureAccess

Anonymous Access


Access Using EnsureAccess

The following figure shows the steps performed by the EnsureAccess subroutine. These steps are described immediately following the figure.

EnsureAccess logic diagram

Authenticated Users

Page access is granted to users who are registered and authenticated (user type = AUTH_USER), and have a profile. Authenticated users without a profile are redirected to the error\profile.asp page. All other user types are redirected to the login\login.asp page. This is functionally equivalent to the EnsureAuthAccess function.

Guest Users

If login is not required, guest users (GUEST_USER) are allowed access to the page. The following steps are performed for guest users:

  1. If login is required on the site, the user is redirected to the login page.

  2. If the user has previously registered, the user is redirected to the welcome.asp page.

  3. Otherwise, access to the page is granted.

Anonymous Users

If login is not required, anonymous users (ANON_USER) are turned into guest users and the EnsureAccess subroutine is re-called. The following steps are performed for anonymous users:

  1. If login is required on the site, the user is redirected to the login page.

  2. If profiling is enabled on the site, a new profile (with a globally unique identifier (GUID) for the user ID) is created for the user. Otherwise, only the GUID is generated for the user ID.

  3. The user ID is set in a Profile ticket either as a cookie (if enabled on the client) or a URL query string.

  4. The user type is changed to GUEST_USER and the access type to GUEST_VISIT. The user is now a guest user.

  5. The EnsureAccess subroutine is called again in order to trigger the validation logic for guest users.

The following pages call the EnsureAccess subroutine:

_additem.asp | category.asp | product.asp
_delall.asp | confirm.asp | redir.asp
_delitem.asp | crdtcard.asp | search.asp
_editqty.asp | default.asp | srchdept.asp
_setship.asp | dispatch.asp | stepsrch.asp
addrform.asp | pickship.asp | summary.asp
basket.asp
See Also

Authentication

Access Using EnsureAuthAccess

Anonymous Access


Anonymous Access

The following pages in the Retail site do not call either the EnsureAuthAccess or EnsureAccess routines and thus allow direct anonymous access:

_recvpo.asp | error\baditem.asp
welcome.asp | error\badurl.asp
login\login.asp | error\closed.asp
login\logoff.asp | error\construc.asp
login\newuser.asp | error\noauth.asp
login\_guest.asp | error\profile.asp
services\error\badaction.asp | services\error\noaccess.asp
services\error\noorder.asp | services\error\noorgprofile.asp
services\error\noprofile.asp
See Also

Authentication

Access Using EnsureAuthAccess

Access Using EnsureAccess


Security

The following security issues pertain specifically to the Solution Sites. For more information about security issues in general, see "Securing Your Site" in Commerce Server 2000 Help.

  • You must place any page you want to have secured using the Secure Socket Layer (SSL) protocol into the secure pages dictionary (MSCSSecurePages). Add secure pages to this dictionary using the GetSecurePagesDictionary function of the include\global_siteconfig_lib.asp file. SSL for the site must be enabled from the Internet Information Services (IIS) snap-in.

  • There is an IIS configuration switch that forces a site to run all of its pages in SSL mode. The Retail site was not built to support running in this mode; nor is it recommended for performance reasons.

  • Page access is controlled through the use of IIS security settings and by the EnsureAccess and EnsureAuthAccess routines, defined in the include\std_access_lib.asp file. For more information, see Authentication.

  • Tickets are property name/value pairs stored in either a cookie (if enabled) or appended to the URL query string (URL mode). A ticket contains a unique ID used for tracking and authenticating a user. If using URL mode, the ticket containing the ID of the user is available from the HTML cache and browser history list. This may be used to impersonate the user and gain access to the account information of the user. For more information about tickets, see User Tracking.

  • The BDRefresh.asp and RefreshApp.asp files allow cache refreshes to be triggered from Commerce Server Business Desk. Clearing either of these caches repeatedly could lead to a denial of service for users. These files must be secured to ensure that only Business Desk users can trigger the refresh of the pages. Secure these files by granting access to specific Business Desk users through the use of IP address access restrictions in IIS. For more information about securing these files, and other files included with the Solution Sites, see "Limiting Access to Your Site" in Commerce Server 2000 Help.

  • The csapp.ini file should be secured by turning off both read and anonymous access to it in IIS. This file should not be secured with NTFS permissions because it needs to be readable under user credentials, such as the IUSR account.

  • Several of the files in the Solution Sites have the file extension ".inc". These files are downloadable and the source is viewable if the files are not properly secured. By default, Commerce Server Site Packager denies download access to the directory in which these file are located. Be sure that this setting is preserved. These files also can be safely renamed with an ".asp" extension.

  • Access to different catalogs can be granted on a user or organization basis. Users are locked out of catalogs not in their catalog set. The catalog set information is stored in the profile of the user or their organization. The GetCatalogForUser function ensures that the user or organization has rights to a specified catalog.

  • The request wrapper functions (GetRequestString and GetRequestStringRange) prevent scripting attacks by stripping double quotes, and opening and closing element tags (< and >) from strings obtained through the Request object.

  • Partner and Customer Service pages use profile property attributes to determine whether different types of users (normal users, delegated administrators, and so on) can read or write the profile properties. For example, a user profile may have a property called "approval limit". You can use the property attributes to designate that normal users cannot edit the property, but delegated administrators can. For more information about setting the attributes, see "Profile Definitions" under "Running the Profiles Resource" in Commerce Server 2000 Help.

  • Credit card information is not stored in a database. The credit card number is passed to a payment pipeline component, which takes full ownership of the number. However, the pipeline component can be changed to explicitly save the credit card number to the order form. (The creditcard number, _cc_number, is not persisted to the database because it is prefixed by the underscore.)

See Also

Authentication

Login

Profiles

User Tracking


Caching

The Retail and Supplier Solution Sites rely heavily on data caching to improve performance. Data caching is a method of keeping data and objects that you expect to reuse in memory for quicker access. The Solution Sites cache most of the HTML displayed on the site, as well as frequently used data for advertisements and the Order Processing pipeline.

This section contains:

  • Caching Overview

  • Catalog Caching

  • Search Caching

  • Campaign Caching

  • Order Processing Pipeline Caching

  • Other Caches

  • Adding a New Cache


Caching Overview

The Retail and Supplier Solution Sites use the same code for caching. The initialization code at application startup creates a Commerce Server CacheManager object that is available at the application level. The CacheManager object maintains the collection of caches, and the caches are accessed through it.

Initialization for caching occurs in the following files:

include\global_main_lib.asp

This file contains the Main function for the global.asa file. During application initialization the Main function creates the application variable MSCSCacheManager and sets it to the CacheManager object returned by the InitCacheManager function.

include\global_cache_lib.asp

The InitCacheManager function creates a new CacheManager object. It then creates and initializes the collection of caches for the application, and then returns the CacheManager object.

All the caches can be refreshed from Commerce Server Business Desk through the BDRefresh.asp page. The BDRefresh.asp page contains code to refresh multiple caches when any one of a group of related caches is refreshed. This avoids inconsistencies between related caches, such as the catalog caches.

See Also

Catalog Caching

Search Caching

Campaign Caching

Order Processing Pipeline Caching

Initialization


Catalog Caching

All of the catalog caches are initialized in an identical fashion. Most of them are used to store HTML fragments. Based on your scenario you may want to adjust cache sizes or other attributes to enhance the performance of your application. Details for performance tuning are beyond the scope of this document. See "Administering Commerce Server\Optimizing Commerce Server" in Commerce Server 2000 Help for more information about performance tuning.

Initialization

The following code, from the InitCacheManager function with additional comments, shows how the cache ProductListCache is created in the Solution Sites:

'Create the configuration dictionary for the cache loader.
      Set dictProductListCacheConfig = GetDictionary()

'Get the connection string from the configuration dictionary.
    dictProductListCacheConfig("ConnectionString") = _
       dictConfig.s_TransactionConfigConnectionString

'Set cache size, this is the number of items in the cache.
'It is not related to the size of the items.
    dictProductListCacheConfig("CacheSize") = 10000

'Set the name of the table used to provide information to Business Desk.
    dictProductListCacheConfig("TableName") = _
        "CatalogCache_Virtual_Directory"

'CacheName is one of the fields inserted in the above table.
'It also is used in BDRefresh.asp to trigger
'refreshing all catalog caches.
    dictProductListCacheConfig("CacheName") = "CatalogCache"
'Machine Base URL, to be inserted in the above table.
    dictProductListCacheConfig("AppUrl") = sMachineBaseURL
...
' Configure CacheManager For ProductList Fragment Caching.
'Setting RefreshInterval to 0 disables automatic refresh.
    oCacheManager.RefreshInterval("ProductListCache") = 0
'RetryInterval in seconds.
    oCacheManager.RetryInterval("ProductListCache") = 5 * 60
'Use an LRUCache object for the cache.
    oCacheManager.CacheObjectProgId("ProductListCache") = _
        "Commerce.LRUCache"
    oCacheManager.LoaderProgId("ProductListCache") = _
        "Commerce.LRUCacheFlush"
'Reference the dictionary created above for configuration data.
    Set oCacheManager.LoaderConfig("ProductListCache") = _
        dictProductListCacheConfig

Using Caches

The Solution Sites use four wrapper routines to simplify moving items in or out of the catalog caches.

CacheFragment

CacheObject

LookupCachedFragment

LookupCachedObject

Note

  • These routines expect an LRUCache object name, and will not work with a dictionary object name.

During site development it can be useful to disable caching. When troubleshooting caching problems it can be useful know whether a particular item was cached. There is commented debug code in the LookupCachedFragment function to show if a fragment was cached.

Individual Caches

There are six caches, not counting search caches, that are related to the catalog. The search caches are discussed in Search Caching.

ProductListCache

QueryCatalogInfoCache

DiscountProductInfo

DefaultPageCache

ProductPageCache

StaticSectionsCache

ProductListCache

The cache ProductListCache is used to store product list HTML fragments on the category.asp page. It is referenced in the htmCategoryHTML and htmCachedProductList functions.

QueryCatalogInfoCache

The cache QueryCatalogInfoCache is used by the QueryCatalogInfo pipeline component. See "QueryCatalogInfo" in the "Pipeline Component Reference" in Commerce Server 2000 Help for more information. The Commerce Server 2000 QueryCatalogInfo pipeline component expects a cache of this name.

DiscountProductInfo

The discountProductInfo cache is used to store SimpleList objects containing product information on the template\discount.asp helper page. It is referenced in the GetShownProductsDetails and oCachedDiscountProductInfo functions.

DefaultPageCache

The DefaultPageCache cache is used to store the HTML for the user's default page on the default.asp page. It is referenced in the Main (default.asp) function on the page and in the htmRenderDefaultPage function.

ProductPageCache

The cache ProductPageCache is used to store product page HTML on the product.asp page. It is referenced in the Main (product.asp) function.

StaticSectionsCache

The cache StaticSectionsCache is used to store a variety of miscellaneous HTML fragments on the site. The following are examples of pages that reference the cache StaticSectionsCache:

  • template\menu.asp is referenced in the htmRenderLoginSection and htmRenderMenu functions.

  • template\navbar.inc is referenced in the RenderNavbar function.

  • include\form_lib.asp is referenced in the htmRenderFillOutForm function.

  • pickship.asp is referenced in the Main (pickship.asp) and htmCachedShippingMethods functions.

Related Commerce Server 2000 Help Topics

Administering Commerce Server\Optimizing Commerce Server

See Also

Search Caching


Search Caching

There are three caches for search — one for full text search and two that support specification searches. They are created in the identical fashion as the catalog caches, and are refreshed with them.

SearchDeptPageCache

StepSearchPageCache

FTSearchPageCache

SearchDeptPageCache

The cache SearchDeptPageCache is used to store search results on the srchdept.asp page. This page is reached by the Advanced link next to the Search button on the menu pane. This cache is referenced in the Main (srchdept.asp) and bIsSearchDeptPageCached functions.

StepSearchPageCache

The cache StepSearchPageCache is used to store search results on the stepsrch.asp page. This page is reached from the department links on the srchdept.asp page. This cache is referenced in the Main (stepsrch.asp) and bIsStepSearchPageCached functions.

FTSearchPageCache

The cache FTSearchPageCache is used to store full text search results on the search.asp page. This page is reached by clicking the Search button on the menu pane. This cache is referenced in the bFullTextResultsAreCached and htmRenderFullTextSearchResults functions.

Related Commerce Server 2000 Help Topics

Product Catalog Programming Concepts

Code to Perform a Specification Search of a Catalog

Code to Perform a Free-Text Search of a Catalog

See Also

Catalog Caching

template\menu.asp


Campaign Caching

The Solution Sites provide two caches for advertisements and discounts that are used by the Content Selection Framework (CSF). Site developers do not need to reference these caches. Unlike the catalog caches, these caches use Dictionary objects, so they are initialized in a slightly different way.

Advertisement Cache

Discounts Cache

Advertisement Cache

Initialization

The following code, from the InitCacheManager function, shows the creation of the advertising cache:

'Create the configuration dictionary.
    Set dictCampaignConfig = GetDictionary()
    dictCampaignConfig("ConnectionString") = _
        dictConfig.s_CampaignsConnectionString
    Set dictCampaignConfig("Evaluator") = oEvaluator
        ' oEvaluator is the Commerce Server ExpressionEvaluator.

    ' Configure CacheManager for ads.
    oCacheManager.RefreshInterval("advertising") = 5*60
    oCacheManager.RetryInterval("advertising") = 60
    oCacheManager.LoaderProgId("advertising") = _
        "Commerce.CSFLoadAdvertisements"
    oCacheManager.WriterProgId("advertising") = "Commerce.CSFWriteEvents"
    Set oCacheManager.LoaderConfig("advertising") = dictCampaignConfig
    Set oCacheManager.WriterConfig("advertising") = dictCampaignConfig

Discounts Cache

Initialization

The following code, from the InitCacheManager function, shows the creation of the discounts cache:

'Create the configuration dictionary.
    Set dictCampaignConfig = GetDictionary()
    dictCampaignConfig("ConnectionString") = _
        dictConfig.s_CampaignsConnectionString
    Set dictCampaignConfig("Evaluator") = oEvaluator
        ' oEvaluator is the Commerce Server ExpressionEvaluator.

'Configure CacheManager for discounts.
    'Setting RefreshInterval to 0 disables automatic refreshing.
    oCacheManager.RefreshInterval("discounts") = 0
    oCacheManager.RetryInterval("discounts") = 60    'seconds
    oCacheManager.LoaderProgId("discounts") = "Commerce.CSFLoadDiscounts"
    oCacheManager.WriterProgId("discounts") = "Commerce.CSFWriteEvents"
    Set oCacheManager.LoaderConfig("discounts") = dictCampaignConfig
    Set oCacheManager.WriterConfig("discounts") = dictCampaignConfig

Related Commerce Server 2000 Help Topics

Working with Pipelines\Content Selection Pipelines


Order Processing Pipeline Caching

The Solution Sites use several pipeline components that require specific caches. The Solution Sites provide two caches for tax and shipping that are used by the Order Processing pipeline. Site developers do not need to reference these caches. Unlike the catalog caches, these caches use Dictionary objects, so they are initialized in a slightly different way.

SampleRegionalTaxCache Cache

Shipping Method Router Cache

SampleRegionalTaxCache Cache

Initialization

The following code, from the InitCacheManager function, shows the creation of the SampleRegionalTaxCache cache:

'Create the configuration dictionary.
    Set dictTransactionConfig = GetDictionary()
    dictTransactionConfig("ConnectionString") = _
        dictConfig.s_TransactionConfigConnectionString

    ' Configure CacheManager for tax.
    oCacheManager.RefreshInterval("SampleRegionalTaxCache") = 0
    oCacheManager.RetryInterval("SampleRegionalTaxCache") = 60
    oCacheManager.LoaderProgId("SampleRegionalTaxCache") = _
        "Commerce.SampleRegionalTaxCache"
    Set oCacheManager.LoaderConfig("SampleRegionalTaxCache") = _
        dictTransactionConfig

The initialization code calls the GetCache method on the tax cache to ensure that Commerce Server Business Desk is informed that this application is caching tax information.

    Call oCacheManager.GetCache("SampleRegionalTaxCache")

Shipping Method Router Cache

The Shipping Method Router pipeline component requires a cache named ShippingManagerCache.

Initialization

The following code, from the InitCacheManager function, shows the creation of the cache ShippingManagerCache:

'Create the configuration dictionary.
    Set dictTransactionConfig = GetDictionary()
    dictTransactionConfig("ConnectionString") = _
        dictConfig.s_TransactionConfigConnectionString

    ' Configure CacheManager for shipping.
    oCacheManager.RefreshInterval("ShippingManagerCache") = 0
    oCacheManager.RetryInterval("ShippingManagerCache") = 60
    oCacheManager.LoaderProgId("ShippingManagerCache") = "Commerce.ShippingManagerCache"
    Set oCacheManager.LoaderConfig("ShippingManagerCache") = dictTransactionConfig

    ' Call GetCache() on the shipping cache to ensure that Business Desk
    ' is informed that this application is caching shipping information.
    Call oCacheManager.GetCache("ShippingManagerCache")

Related Commerce Server 2000 Help Topics

Working with Pipelines\Shipping Objects

Working with Pipelines\Tax Objects


Other Caches

The CatalogManager object properties and the profiles in the ProfileService object are cached in application level dictionaries for performance reasons. This is a different mechanism from the other caches; the CacheManager object does not manage these dictionaries.

Catalog Manager Properties Cache

Profile Definition Cache

CatalogManager Properties Cache

The MSCSCatalogAttribs dictionary caches the catalog attributes as exposed by the CatalogManager object. This cache is used for quicker attribute lookup on the product.asp page. The dictGetCatalogAttributes function loads properties into the dictionary. This dictionary is refreshed when the other catalog caches are refreshed in the file BDRefresh.asp.

Profile Definition Cache

The MSCSProfileProperties dictionary caches the profile definition information. The dictGetProfileSchemaForAllProfileTypes function loads the profile definitions from MSCSProfileService in the include\global_main_lib.asp file. This cache has a refresh mechanism that is similar to other site caches. However the Publish Profiles module in Commerce Server Business Desk calls the RefreshApp.asp page instead of the BDRefresh.asp file.


Adding a New Cache

You can create a cache using either a dictionary or LRUCache object. The choice depends on how you use the cache. If you are going to cache HTML fragments, particularly if the number of fragments is likely to grow beyond a reasonable cache size, it is advisable that you use the LRUCache object. The wrapper functions discussed in Catalog Caching expect an LRUCache object.

Initialize your cache in the file include\std_cache_lib.asp. Depending on how you want to refresh your cache, you may need to modify the file BDRefresh.asp as follows. If you are adding another catalog cache you will need to add it to the list catalog caches. If you are adding multiple caches that must be refreshed together, you will need to add a an additional case statement to detect your cache names and refresh all of your caches

In order to refresh a cache from Commerce Server Business Desk the CacheLoader component has to notify Business Desk that the cache is present. The CacheLoader component inserts a new record, or updates an existing record, in a table in your site database with the computer URL, the cache name, and the date created. If you are adding an additional catalog-related cache you can use the same table as the other catalog caches, the CatalogCache_Virtual_Directory table.

If you are adding a cache for data that is not related to an existing data source you will want to create a new table for registering the cache. See the txVirtual_directory table, used for order related caches, in the Solution Sites database for an example of the table to create if you are caching data from a different source. You will need to modify Business Desk to look at your new table. See the retailbizdesk\productionrefresh\refresh.asp file in the Business Desk site for an example of Business Desk code that triggers a cache refresh.

The LRUCacheLoader component uses information in the LoaderConfig dictionary to write the necessary record the first time the cache is called. The following code shows how the cache ProductListCache is configured:

'Get the connection string from the configuration dictionary.
'This is the connection string to the database containing the table.
    dictProductListCacheConfig("ConnectionString") = _
       dictConfig.s_TransactionConfigConnectionString

'Set the name of the table used to provide information to Business Desk.
    dictProductListCacheConfig("TableName") = _
        "CatalogCache_Virtual_Directory"

'CacheName is one of the fields inserted in the above table.
'It also is used in BDRefresh.asp to trigger
'refreshing all catalog caches.
    dictProductListCacheConfig("CacheName") = "CatalogCache"
'Machine Base URL, to be inserted in the above table.
    dictProductListCacheConfig("AppUrl") = sMachineBaseURL
...

Related Commerce Server 2000 Help Topics

Code to Implement Custom Cache Components

Code to Manipulate an LRUCache Object

Extending Commerce Server\Building Pipeline Components

Extending Commerce Server\Building Business Desk Modules


Constants

Most of the constants in the Solution Sites application are contained in the AppConsts 1.0 Type Library, which can be found in <Drive>:\Program Files\Microsoft Commerce Server\appconsts.tlb. This type library was released with Microsoft Commerce Server 2000 and can be used by any application. Declaring constants in a type library greatly improves performance, but does make it more difficult to change the values of the constants. You can view the contents of the type library with Microsoft Visual Basic or the OLE View tool in Microsoft Visual Studio. For a list of the constants, see Constant Reference.

The type library is declared in a METADATA tag near the top of the global.asa file. This makes the constants available anywhere within the application. Search for "TypeLibrary Declarations" on the Microsoft Developer Network (MSDN) Web site at http://msdn.microsoft.com for more information about using the "TypeLib" METADATA tag.

The AppConsts 1.0 Type Library replaced the include file \include\consts.asp during the development of the Solution Sites application. This change was made to improve performance. This file was left in the Solution Sites application so that constants could be added to the application without recompiling the type library. The file \include\consts.asp is currently empty.

The file services\include\const.asp contains constants specific to the partner/customer service portion of the Solution Sites application.

This section contains:

  • Using Compiled Constants

  • Re-compiling Constants Using MIDL

See Also

Constants Reference


Using Compiled Constants

The constants declared in the AppConsts 1.0 Type Library are available throughout the scope of the application, and can be used exactly like constants declared directly in the ASP pages.

It is possible to have constants with the same name in more than one type library. You can avoid ambiguous references to constants by adding the type library name as a prefix for the constant, for example, AppConstsLib.SITE_NAME.

See Also

Re-compiling Constants Using MIDL


Re-compiling Constants Using MIDL

If you change any of the constants declared in the AppConsts 1.0 Type Library you will need to recompile the edited source to make a new type library

The source for the AppConsts 1.0 Type Library is in the Microsoft Commerce Server SDK at <Drive>:\Program Files\Microsoft Commerce Server\SDK\Samples\Solution Sites\AppConsts.idl.

The following procedure shows the general steps to follow to create a new type library.

To re-compile constants using MIDL

  1. Edit the .idl file as needed.

  2. Generate a new globally unique identifier (GUID) with the GUIDGEN.exe file (included with Microsoft Visual Studio).

  3. Replace the universally unique identifier (UUID) declaration in the .idl file with the new GUID.

  4. [optional]Rename the type library.

  5. Run the Microsoft Interface Definition Language (MIDL) compiler.

    Note

    • For more information about running the MIDL compiler, search the Microsoft Developer Network (MSDN) Web site at http://msdn.microsoft.com for "Invoking the MIDL Compiler."
  6. [optional] Register the resulting .tlb file.

    Note

    • If you have multiple servers the type library will need to be registered on each server.

    • If you write the METADATA tag to reference the type library by file name rather than by UUID, you do not have to register the type library. Saving the file at the root of your application will make it easy to include the file if the application is packaged for distribution to multiple servers.
  7. Modify the METADATA tag to reference the new type library. The following example references a type library by its file name.
    <!--METADATA TYPE="TypeLib"
FILE="MyComponent.tlb"
-->

    Note

    • For more information about using the "TypeLib" METADATA tag, search the Microsoft Developer Network (MSDN) Web site at http://msdn.microsoft.com for "TypeLibrary Declarations."


Constructing HTML

The Commerce Server Solution Sites use a technique for constructing HTML that differs from the more traditional technique in which HTML tags, content, and script are freely intermixed on Web pages. Opposed to this, nearly all of the HTML returned to browsers by the Solution Sites is produced by script.

As is the case in most large Web sites, the data itself, such as the descriptions and prices of products in the catalog, is retrieved from databases using script.

The Solution Sites take this technique further, retrieving the content that explains the data from strings that are defined centrally. This methodology has the advantage of making localization of the Web site much more straightforward.

Script is used to intermix the data, the centralized content, and the HTML tags that format both. The script produces strings, sometimes quite large, that are then written to the browser using either the Write method of the intrinsic Response object, or the abbreviated form: <%= sHTM %>.

One of the main advantages of this technique, that builds the HTML in strings, is that the strings can be cached, thereby reducing database access. The Solution Sites use caching extensively.

The Solution Sites include a utility routine file that contains routines dedicated to helping you construct HTML. The name of this file is include\html_lib.asp.

This section contains:

  • Methodology Provides a brief explanation of the string concatenation methodology used within the Solution Sites script to build strings containing complex HTML.

  • Routine Categories Provides a functional categorization of the routines in the file include\html_lib.asp.


Methodology

String concatenation is used extensively throughout the Solution Sites code to build the strings of HTML that are eventually written to the browser. The nature of HTML lends itself quite naturally to this technique, as the following examples show.

Given a hypothetical routine that produces HTML, named htmReturnsHTML, and a variable for "collecting" the accumulating HTML, named htmContent, the following examples show how intuitive it is to wrap, prepend, or append one string of HTML to another.

Wrap: htmContent = "<B>" & htmReturnsHTML() & "</B>"

Wrap: htmContent = "<P>" & htmContent & "</P>"

Prepend: htmContent = htmReturnsHTML() & htmContent

Append: htmContent = htmContent & htmReturnsHTML()

The file include\html_lib.asp contains many routines that have encapsulated these types of string concatenations. Some are quite simple, like the functions Bold and Italic. Others are more complex, like the routines provided for building HTML tables. For more information about the different categories of routines provided in the file include\html_lib.asp, see Routine Categories.

Another important aspect of the HTML routines concerns styles, which are most often set by specifying attributes to the HTML elements. For example, the function RenderText takes two parameters: str and sAttList. The parameter str provides the basic string that is going to be wrapped in a FONT element. The parameter sAttList provides a list of attributes that will be associated with the FONT element, providing such characteristics as the type and size of the font to be rendered. The function RenderText consists of the following line of code:

RenderText = "<FONT" & sAttList & ">" & str & "</FONT>"

Notice how the value of the sAttList parameter is embedded within the starting FONT tag, in the position where element attributes occur. The strings you construct for the sAttList parameters that are used by many of the HTML routines are space-separated lists of attributes appropriate to the element with which they are being associated. They must begin with a space character so that the first attribute specified will be separated from the element tag itself.

Another way in which styles are specified occurs globally, in a Dictionary object accessible through the page variable MSCSSiteStyle. This dictionary contains numerous entries that provide styles to be applied in different contexts throughout the HTML produced by the Solution Sites code. For example, it is common to see a line of code like the following in the Solution Sites code (RenderLink is called 43 times), which shows the global link style being passed as the sAttList parameter to the RenderLink function:

htmContent = htmContent & RenderLink(urlLink, htmLinkText, _
                                     MSCSSiteStyle.Link) & BR

This technique allows you to easily make global changes to the styles used in your site. For more information about the global style settings, see Customizing Styles.

If suitable for the users of your site, you could implement client-side styles by using these global style dictionary entries to define CLASS and ID attributes for use with Cascading Style Sheet (CSS) files.

The preceeding RenderLink example illustrates another important aspect of the HTML construction infrastructure used by the Solution Sites: constants are provided for some of the simpler HTML tags, such as BR for "<BR>". Using these constants can make the code read more cleanly. For more information about these constants, see HTMLLib Constants.


Routine Categories

The routines in the file include\html_lib.asp can be categorized as follows:

Basic Formatting Routines

The routines in this category are used to format the string passed to them in using a basic HTML formatting element, such as B, I, or P, for bold, italic, and paragraph, respectively. Two of the routines, RenderElement and Tag, allow for an arbitrary element to be specified, making them very flexible.

Bold

BRTag

Italic

PTag

RenderElement

Tag

RenderPreFormattedText

RenderText

Hyperlinking Routines

The routines in this category are unique because they require that a URL be passed as one of their parameters (exceptions to this rule are the RenderForm and RenderImageButton routines, which must also be passed URLs as parameters; they has been categorized with the other form building routines below).

RenderImage

RenderLink

List Building Routines

The routines in this category are used to build HTML lists. They are passed their data in varying forms, and they convert the data to be wrapped in a series of LI elements, sometimes surrounding those with a UL element.

RenderListFromSimpleList

RenderUnorderedList

RenderUnorderedListFromSimpleList

Table Building Routines

The routines in this category are used to build HTML tables. Their table data is passed to them in the form of array parameters, with an entire row of data being passed in a single array. The routine RenderTable is always called last, as it wraps the accumulated TR elements in a TABLE element.

RenderTable

RenderTableDataRow

RenderTableHeaderRow

RenderTableRow

Form Building Routines

The routines in this category are used to build HTML forms. All of them except the RenderForm routine are used to build INPUT elements with TYPE attributes of various sorts. Once a series of INPUT elements has been accumulated, the RenderForm routine is called to wrap those elements in a FORM element, with the specified ACTION and METHOD attributes.

Note that the use of the forms infrastructure provided by the Solution Sites means that you generally do not need to call these routines directly. For more information about the forms infrastructure, see Forms Processing.

RenderCheckBox

RenderHiddenField

RenderImageButton

RenderListBox

RenderListBoxFromArray

RenderListBoxFromSimpleList

RenderPasswordBox

RenderRadioButton

RenderResetButton

RenderSubmitButton

RenderTextBox

RenderForm

Miscellaneous Array Routines

The routines in this category are miscellaneous routines that share the characteristic of performing HTML formatting operations on parameters that are arrays of strings.

GetRepeatStyle

InsertBlankSpace

InsertLineBreaks

InsertParagraphBreaks


Forms Processing

Forms processing and rendering in the Commerce Server Solution Sites is based on a data structure that consists of a Dictionary object containing a collection of SimpleList objects, each of which contains a series of Dictionary objects. Each SimpleList object represents a form, and contains an ordered set of form fields, represented as subordinate Dictionary objects. Each of these Dictionary objects represents the schema of the single form field. This structure can be illustrated as follows:

Form Definitions Dictionary

FormA Fields SimpleList

Field1 Schema Dictionary

Field2 Schema Dictionary

. . .

FieldN Schema Dictionary

FormB Fields SimpleList

Field1 Schema Dictionary

Field2 Schema Dictionary

. . .

FieldN Schema Dictionary

. . .

FormN Fields SimpleList

Field1 Schema Dictionary

Field2 Schema Dictionary

. . .

FieldN Schema Dictionary

The topics in this section provide additional information about the forms infrastructure so that existing forms can be easily modified, and new forms can be easily created.

This section contains:

  • Form Definition Initialization

  • Form Field Schema

  • Run Time Use


Form Definition Initialization

The subroutine Main in the file include\global_main_lib.asp executes the following line of code to initialize the form definitions Dictionary object and assign it to the intrinsic Application object using the key "MSCSForms":

Set Application("MSCSForms") = GetFormDefinitions()

The function GetFormDefinitions contains lines of the following form, which establish a series of SimpleList objects to represent the various forms used within the Solution Sites, and associate them with well-known key names in the Form Definition Dictionary:

Set dictForms.Value("FormDefKey") = GetFormTypeFieldDefinitions()

The following table shows the form definition keys used in the Solution Sites and the corresponding initialization function.

Form Definition Keys | Initialization Function
AddressBookAddress | GetAddressBookAddressFieldDefinitions
BillToAddress | GetAddressFieldDefinitions
CreditCard | GetCreditCardFieldDefinitions
Login | GetLoginFieldDefinitions
PurchaseOrder | GetPurchaseOrderFieldDefinitions
Registration | GetRegistrationFieldDefinitions
ShipToAddress | GetShipToAddressFieldDefinitions

Once defined, the form definitions are accessed in various pages in the Solution Sites and used for preparing the HTML from which the form will be rendered, as well as in form validation routines. The Solution Sites code contains lines of the following form to retrieve the SimpleList object that represents the fields of a particular form:

Set listFlds = Application("MSCSForms").Value("FormDefKey")


Form Field Schema

The fields in each form are represented as a SimpleList object containing a Dictionary object for each field in the form. Each of these Dictionary objects is populated with a well-known set of entries corresponding to attributes of the field; in other words, the schema for the field. The following table describes these attributes.

Field Schema Dictionary Key | Description
Name | An arbitrary string naming the field.
Label | An arbitrary string providing a label for the field in the user interface. The string is retrieved from the MessageManager object for localization purposes.
Size | A number providing the size of the input field.
MinLength | A number providing the minimum required length of the input.
MaxLength | A number providing the maximum required length of the input.
InputType | A constant providing the type of the input field. Legal values are: TEXTBOX, LISTBOX, PASSWORD, and CHECKBOX.
ErrorMessage | A string providing an error message when field validation fails. The string is retrieved from the MessageManager object for localization purposes.
IsRequired | A Boolean specifying whether the field is required or not, and used during field validation.
Pattern | An optional string providing a regular expression that must be matched for field validation to succeed.
PatternErrorMessage | An optional string providing a custom error message when pattern validation fails. If this dictionary entry is not supplied, and the Pattern entry is supplied, and pattern validation fails, the ErrorMessage entry will be used to report the error.
RawInput | If this property is not Null, this form field will be retrieved without stripping the characters quote ("), left bracket (<), or right bracket (>), as normally performed by the routine GetRequestString. If you read fields using this technique, make sure you do not write the field values back to the browser, as it could lead to erroneous interpretation of content as client script.
ListItems | When the InputType entry is set to "LISTBOX", a SimpleList object that provides list box display names.
ListValues | When the InputType entry is set to "LISTBOX", a SimpleList object that provides list box values corresponding to the display names.


Run Time Use

The SimpleList object that represents the schema of the fields in a particular form is passed as a function parameter in a variety of circumstances, often in conjunction with one or two other Dictionary objects.

The first type of associated Dictionary object is most often associated with the parameter name dictFldVals. This type of Dictionary object contains key/value pairs where the keys are the names of the fields (corresponding to the Name key in the field schema dictionary), and the values are either actual submitted form values or default values for that form.

The second type of associated Dictionary object is most often associated with the parameter name dictFldErrs. This type of Dictionary object contains key/value pairs where the keys are the names of the fields (corresponding to the Name key in the field schema dictionary), and the values are error messages associated with validation failures for the corresponding field.

There are five basic circumstances where the form field SimpleList objects and the associated types of Dictionary objects are used in the Solution Sites code. The first three of these correspond to function calls related to form field validation, the fourth corresponds to initializing default values for forms, and the fifth corresponds to the preparation of the HTML that will render the form.

This section contains:

  • Forms Processing Code Flow

  • IsFormSubmitted Routine

  • GetSubmittedFieldValues Routine

  • GetFieldsErrorDictionary Routine

  • ValidateSubmittedXXX Routines

  • GetDefaultValuesForXXXFields Routines

  • htmRenderFillOutForm Routine


Forms Processing Code Flow

There are three typical scenarios that result in different code flow:

  • Form is being shown for the first time

  • Form is submitted with data that is not valid

  • Form is submitted with valid data

Form is being shown for the first time

  1. The call to the IsFormSubmitted routine determines that the form is being shown for the first time.

  2. Call the htmRenderFillOutForm routine to prepare the HTML that will render the form. The parameters are as follows:

    urlAction

    Typically set to the page that the form is on (for pages that are self-validating).

    sFormName

    The name of the form.

    dictFieldVals

    A Dictionary object containing initial values for the form. Pass Nothing to create an empty form. For a pre-populated form, pass a dictionary with key/value pairs where the keys are the form field names, and the values are the initial values. The Solution Sites use the GetDefaultValuesForXXXFields routines to build these dictionaries.

    dictMessages

    Set to Nothing.

Form is submitted with data that is not valid

  1. The call to the IsFormSubmitted routine determines that the form is being submitted.

  2. Call the GetSubmittedFieldValues routine to create a Dictionary object that contains the form field values submitted with the HTTP request. The one parameter is the field definition dictionary for the form.

  3. Call the GetFieldsErrorDictionary routine to perform field-level validation based on the passed field definition dictionary and the dictionary with field values returned by the call to the GetSubmittedFieldValues routine. If the returned Dictionary object is empty, no field-level validation errors were found.

  4. Perform any custom validation that is required, such as validation that requires database access, or cross-field validation. If the custom validation code associates error messages with particular form fields, it should write error messages into the same Dictionary object returned by the GetFieldsErrorDictionary routine. In the Solution Sites, the ValidateSubmittedXXX routines perform this function.

  5. In this scenario, field validation errors were found in either step 4 or step 5 (or both). Call the htmRenderFillOutForm routine to prepare the HTML that will re-render the form so that the user can correct the invalid data. The parameters are as follows:

    urlAction

    Typically set to the page that the form is on (for pages that are self-validating).

    sFormName

    The name of the form.

    dictFieldVals

    A Dictionary object that can contain either the original default data for the form, or the posted data that includes the data that is not valid, or a combination of the two. You could also pass Nothing if it makes the most sense for the user to start from scratch.

    dictMessages

    A Dictionary object that contains error messages associated with the form fields that failed validation. This dictionary contains key/value pairs where the keys are the form field names, and the values are error messages that will be displayed below the form fields to which they correspond. If this parameter is set to Nothing, no such error messages will be displayed.

Form is submitted with valid data

  1. The call to the IsFormSubmitted routine determines that the form is being submitted.

  2. Call the GetSubmittedFieldValues routine to create a Dictionary object that contains the form field values submitted with the HTTP request. The one parameter is the field definition dictionary for the form.

  3. The call to the GetFieldsErrorDictionary routine performs field-level validation based on the passed field definition dictionary and the dictionary with field values returned by the call to the GetSubmittedFieldValues routine. It returns an empty Dictionary object, indicating that no field-level validation errors were found.

  4. Custom validation, normally performed by the ValidateSubmittedXXX routines, determines that no other errors are present.

  5. Since no form field errors were found, accept the form submittal by processing the form data and proceeding to the next page (usually by re-directing to a different page).


IsFormSubmitted Routine

The function IsFormSubmitted determines whether the form has been submitted with values to be validated and processed, or whether the form is being displayed for the first time. To make this determination, this function looks for a request variable named MODE. If present, the form has been submitted with data.


GetSubmittedFieldValues Routine

The function GetSubmittedFieldValues creates, initializes, and returns a Dictionary object that contains an entry for every posted form value that has a name corresponding to one of the field names in the field definition SimpleList object passed in the listFlds parameter.

The following line of code shows the creation of such a Dictionary object:

Set dictFldVals = GetSubmittedFieldValues(listFlds)


GetFieldsErrorDictionary Routine

The function GetFieldsErrorDictionary creates, initializes, and returns a Dictionary object that contains an error message entry for every posted form field value that fails validation, as specified by the values passed in the dictFldVals parameter and the schema passed in the listFlds parameter.

The returned Dictionary object will be empty if there are no errors. When errors are found, this dictionary can be passed into the routine htmRenderFillOutForm to show error messages associated with particular fields.

The following line of code shows the creation of such a Dictionary object:

Set dictFldErrs = GetFieldsErrorDictionary(listFlds, dictFldVals)


ValidateSubmittedXXX Routines

The following functions are used to perform custom validation for submitted form data for different types of forms used within Commerce Server. The field definition SimpleList object passed in their listFlds parameters provide the schema against which the values passed in the Dictionary object passed in the dictFldVals parameter can be tested.

iValidateSubmittedAddress

iValidateSubmittedAddressForAddressBook

iValidateSubmittedRegistrationData

ValidateSubmittedCreditCardData

ValidateSubmittedLoginData

ValidateSubmittedPurchaseOrderData

The schema also provides the error messages that are copied into the Dictionary object passed in the dictFldErrs parameter of these functions. The function GetFieldsErrorDictionary is called to perform the field-level validation based on the schema, and other, more specialized validation and error message copying are performed in the ValidateSubmittedXXX functions.

The following code shows a call to validate a submitted address form:

iErrorLevel = iValidateSubmittedAddress(listFlds, _
                                        dictFldVals, _
                                        dictFldErrs)

In this call, the listFlds and dictFldVals parameters are passing data into the function, and the return value and the dictFldErrs parameter are passing data out of the function.


GetDefaultValuesForXXXFields Routines

The following functions create, initialize, and return Dictionary objects that contain an entry for every default form value that has a name corresponding to one of the field names in the field definition SimpleList object passed in their listFlds parameters.

GetDefaultValuesForAddressFormFields

GetDefaultValuesForCreditCardFields

GetDefaultValuesForPurchaseOrderFields

Depending on how the default values are being derived, the field definition SimpleList object can be used to iterate through the fields in the form.

The following code shows the creation of such a Dictionary object:

Set dictFldVals = GetDefaultValuesForAddressFormFields(mscsOrderGrp, _
                                                       listFlds, _
                                                       iAddrType)


htmRenderFillOutForm Routine

The function htmRenderFillOutForm prepares the HTML that will render the specified form. The form is constructed based on the fields definitions dictionary, a form values dictionary, and a form error messages dictionary. The form errors dictionary allows the form to redisplayed upon validation failure, with error messages displayed next to the fields found to have data that is not valid.

Rather than passing the form definition SimpleList object, the form definition dictionary key is passed and the form definition SimpleList object is retrieved directly from the intrinsic Application object.

Form field values are passed in the Dictionary object specified by the dictFldVals parameter. These might be values actually posted using the form, or they might be default values. In any event, if a value is present for a particular form field, it is provided as a default. You can pass Nothing for this parameter to display a completely blank form.

Form field error messages are passed in the Dictionary object specified by the dictFldErrs parameter. This dictionary is typically built using the routine GetFieldsErrorDictionary and one of the routines with names of the form ValidateSubmittedXXX routines. An error message will be present for a particular field when there is an error associated with that field. If an error message is present, it is added to the produced HTML such that it will appear directly below the form field to which it corresponds.

The following code shows how the HTML for rendering a form is constructed and appended to HTML that has already been constructed:

htmContent = htmContent & htmRenderFillOutForm(urlAction, _
                                               "ShipToAddress", _
                                               dictFldVals, _
                                               dictFldErrs)


Pipelines

The default implementation of the Solution Sites uses three pipeline files to automate the business process. First, the Basket pipeline gathers basket information and computes the order subtotal. Next, the Total pipeline computes tax, shipping, handling, and the order total. And finally, the Checkout pipeline receives and accepts the payment information. Pipeline logging can be enabled for pipelines to aid in the debugging process.

If the App Default Config settings enable BizTalk Server integration, the recvpo.pcf file is used to handle the processing of purchase orders received through BizTalk Server.

This section contains:

  • Basket Pipeline

  • Checkout Pipeline

  • Receive Purchase Order Pipeline

  • Total Pipeline

  • Pipeline Log Files


Basket Pipeline

The Order Processing pipeline (OPP) that gathers basket information and computes the order subtotal.

The basket.pcf file is modeled on the plan.pct file (pipeline configuration template). For more information about the plan.pct file, see "Plan Pipeline" in Commerce Server 2000 Help.

Product Info Stage

This stage checks for product information and removes any unknown products.

The components included in this stage are shown in the following table.

Component | Description
QueryCatalogInfo | Retrieves catalog information for every item in the order form. Uses the Commerce Server 2000 Product Catalog System. Marks missing items for deletion and adds basket errors if necessary.
RequiredProdInfo | Deletes any items marked for deletion and writes the appropriate error messages.

Merchant Information Stage

This stage retrieves and writes merchant information to the OrderForm object.

Shopper Information Stage

This stage retrieves and writes shopper information to the OrderForm object.

Order Initialization Stage

This stage sets the initial order information on the OrderForm object and verifies that the OrderForm object contains an order ID.

The component included in this stage is shown in the following table.

Component | Description
RequiredOrderInitCy | Initializes the OrderForm object to contain user information.

Order Check Stage

This stage verifies that the order can be processed.

The component included in this stage is shown in the following table.

Component | Description
RequiredOrderCheck | Ensures that the OrderForm object contains at least one line item.

Item Price Stage

This stage ensures that the _cy_iadjust_currentprice key for each item contains the most current price information.

The components included in this stage are shown in the following table.

Component | Description
DefaultItemPriceCy | Initializes the _cy_iadjust_regularprice key for each line item to store the most current price.
RequiredItemPriceCy | Ensures that the _cy_iadjust_regularprice key for each line item is set.

Item Adjust Price Stage

This stage ensures that the _cy_iadjust_currentprice key for each item contains the most current price.

The component included in this stage is shown in the following table.

Component | Description
RequiredItemAdjustPriceCy | Validates that the price of the item is set and has not changed since it was added to the basket. If the price has changed, the error message "_Basket_Error" is returned.

Order Adjust Price Stage

This stage decrements the _n_unadjusted key, which is initialized to 'quantity' by the RequiredOrderInit component as line item units participate in discounts. The _cy_oadjust_subtotal key must be set to the price of the adjusted items.

The components included in this stage are shown in the following table.

Component | Description
Order Discount | Applies discounts scheduled in the Campaign Manager module in Commerce Server Business Desk to the shopping basket.
RequiredOrderAdjustPriceCy | Adds any unadjusted items to the subtotal. Calculates the discount savings for each line item.

Order Subtotal Stage

This stage calculates the subtotal for an order.

The components included in this stage are shown in the following table.

Component | Description
DefaultOrderSubTotalCy | Sets the _cy_oadjust_subtotal key to sum of _cy_oadjust_adjustedprice key for each item.
RequiredOrderSubTotalCy | Ensures that the _oadjust_subtotal key is available.

See Also

Basket

basket.pcf


Checkout Pipeline

The Order Processing pipeline (OPP) that receives and accepts payment information.

Purchase Check Stage

This stage is used to verify that the address and credit card information the user provides meets certain criteria.

The component included in this stage is shown in the following table.

Component | Description
Commerce.Splitter | Divides an order into groups based on their vendor.

Payment Stage

This stage approves credit card payments.

The components included in this stage are shown in the following table.

Component | Description
Scriptor--Payment Info | This scriptor pipeline component sets the billing_currency and billing_amount keys as expected by payment components The billing_currency key value should be an ISO 4217 3-digit code. The billing_amount key value should be the _cy_total_total key converted to the billing_currency key. As needs dictate, consider rewriting this scriptor to compiled code.
ValidateCreditCard | Verifies that each credit card field on the order form contains data, that the credit card has not expired, and that the number is properly formed.
DefaultPayment | Assigns an initial value to the payment_auth_code key.
RequiredPayment | Ensures that the _payment_auth_code key is not NULL.

Accept Stage

This stage initiates order tracking, generates purchase orders, and saves the order.

The components included in this stage are shown in the following table.

Component | Description
RecordEvent | Records events such as clicks and requests in the Performance dictionary.
IISAppendToLog | Records information about content selection results in the QueryString key of the Internet Information Services (IIS) log file.

See Also

checkout.pcf

Checkout

Pipelines


Receive Purchase Order Pipeline

The Order Processing pipeline (OPP) that enables the Web site to receive orders through BizTalk Server.

Product Info Stage

The components in this stage enter product information for each line item. If the line item is unknown, the item will be marked 'delete=1'.

The components included in this stage are shown in the following table.

Component | Description
Scriptor: Fixup product_variant_id | This component can be removed from the pipeline, it has no functionality.
QueryCatalogInfo | Ensures that the items submitted via BizTalk Server are in the recipient's catalog. Executes a database query for each line item in the OrderForm object. If data is not found for the line item, the item is marked for deletion.
RequiredProdInfo | Goes through each item on the order form and deletes any line items marked for deletion. If there are any deletions, a "_Basket_Error to MessageManager(pur_badsku)" error message is returned.

Order Initialization Stage

This stage sets the initial order information on the OrderForm object and verifies that the OrderForm object contains an order ID.

Order Check Stage

This stage verifies that the order can be processed.

The component included in this stage is shown in the following table.

Component | Description
RequiredOrderCheck | Ensures that the OrderForm object contains at least one line item.

Item Price Stage

This stage ensures that the _cy_iadjust_currentprice key for each item contains the most current price information.

The components included in this stage are shown in the following table.

Component | Description
DefaultItemPriceCy | Initializes the _cy_iadjust_regularprice key for each line item to store the most current price.
RequiredItemPriceCy | Ensures that the _cy_iadjust_regularprice key for each line item is set.

Item Adjust Price Stage

This stage ensures that the _cy_oadjust_currentprice key for each item contains the most current price adjusted for discounts.

The component included in this stage is shown in the following table.

Component | Description
RequiredItemAdjustPriceCy | Ensures that the current price for each item in the order is set and that the price has not been changed.

Order Adjust Price Stage

This stage decrements the _n_unadjusted key, which is initialized to 'quantity' by the RequiredOrderInit component as line item units participate in discounts. You must set the _cy_oadjust_subtotal key to the price of the items adjusted.

The components included in this stage are shown in the following table.

Component | Description
Scriptor: Use Submitted Prices | Accepts the price submitted in the XML as the price for the product. This component should be replaced with logic that will validate that the submitted prices are correct.
RequiredOrderAdjustPriceCy | Adjusts the total cost of each item in an order after applying any discounts.

Order Subtotal Stage

This stage calculates the subtotal for an order.

The components included in this stage are shown in the following table.

Component | Description
DefaultOrderSubTotalCy | Calculates the subtotal for the order.
RequiredOrderSubTotalCy | Ensures that the subtotal of all items in the item list of an order exist so that the order totals are properly calculated.

Order Total Stage

This stage sums the subtotal, tax, shipping, and handling values.

The components included in this stage are shown in the following table.

Component | Description
Scriptor: My Total | Placeholder component. This component should be replaced on an as needed basis. Currently, it accepts the BizTalk Server XML order, sets the shipping, handling and tax charges to zero, and sets the order total.
RequiredTotalCy | Performs a _VERIFY_WITH check on the OrderForm object.

Accept Stage

This stage can be used to initiate order tracking, generate purchase orders, and save the order.

See Also

BizTalk Server Integration

Pipelines

recvpo.pcf


Total Pipeline

The Order Processing pipeline (OPP) that computes the sum of the subtotal, tax, shipping, and handling values.

Shipping Stage

This stage calculates the total shipping charge for the order.

The components included in this stage are shown in the following table.

Component | Description
Commerce.Splitter | Divides an order into groups based on the shipping_method_id and the Shipping_address_id keys.
Commerce.ShippingMethodRouter | Runs components to process the shipments and calculates the shipping total for the entire order.
ShippingDiscountAdjust | Applies shipping discounts to an order.

Handling Stage

This stage calculates the total handling charge for the order.

The components included in this stage are shown in the following table.

Component | Description
DefaultHandlingCy | Sets the _handling_total key to zero.
RequiredHandlingCy | Ensures that the _handling_total key was set.

Tax Stage

This stage calculates the sales tax for each item on the order and the sum of the tax for the entire order.

The components included in this stage are shown in the following table.

Component | Description
SampleRegionalTax | Calculates the tax for the order.
RequiredTaxCy | Ensures that the tax values are set.

Order Total Stage

This stage sums the subtotal, tax, shipping, and handling values.

The components included in this stage are shown in the following table.

Component | Description
DefaultTotalCy | Computes the _cy_total_total key as the _cy_oadjust_subtotal key plus the _cy_shipping_total key plus the _cy_handling_total key plus the _cy_tax_total key.
RequiredTotalCy | For each key/value pair in the _Verify_With dictionary, this component reads the same key from the order form. If any of the values do not match, or keys do not exist, the error "MessageManager("pur_badverify")" is added to the _Purchase_Errors log.

Inventory Stage

This stage verifies that every item ordered is in stock.

CopyFields Stage

This stage copies fields of interest to the application, onto the order form.

Component | Description
CopyFields | Copies the _product_description key into the description field, which is saved to a database, enabling future product description searches on the order. It also copies the user_first_name key from the profile for the user onto the order form. This also enables future first name searches and allows the first name of the user to be displayed without looking up the profile for the user.

See Also

Checkout

Pipelines

total.pcf


Pipeline Log Files

When pipeline logging is enabled, pipeline log files are stored in the pipeline/logfile subdirectory. A log file is created for every user and pipeline pair, so every user has a log file for every pipeline they run. If a user runs a pipeline more than once, their previous log file is written over by the new log file.

You can use the information contained in the pipeline log files to see what dictionary values are read and written by the components that are run in the pipeline, and what the error level for each component is, which is useful in debugging.

Use the following procedure to enable pipeline logging on your site.

Note

  • It is recommended that you only use pipeline logging in development mode. You can enable pipeline logging while in production mode; however, logging the pipelines in production mode will decrease the performance for your site.

To enable pipeline logging

  1. Open the global_siteconfig_lib.asp page.

  2. In the InitSitePipelines function, find these lines of code and replace False with True (if in production mode, the first line is MSCSEnv = PRODUCTION):
    If MSCSEnv = DEVELOPMENT Then
   dictPipeline.LoggingEnabled = False
   dictPipeline.LogsCycled     = False
  3. Open Windows Explorer and browse to the log files subdirectory.

  4. On the File menu, click Properties.

  5. On the Security tab click Add.

  6. In the Select Users, Computers, or Groups dialog box, type the name of the anonymous user account in the lower box. For example, if your server name is computer1, type computer1\iusr_computer1 and then click OK.

  7. On the Log Files Properties dialog box, set the permission level to Full Control for the anonymous account by checking the Allow box in the Full Control row of the Permissions box, and then click OK.

  8. To test the logging feature, make sure your site is the environment in which pipeline logging was enabled in Step 1. To change the environment, open the global.asa file and set MSCSEnv to the correct environment.

A pipeline log file is now created for each user that runs a pipeline, for each pipeline in your site. If a user runs a pipeline more than once, the previous log file will be written over.

See Also

Logfiles Folder


Error Handling

The Solution Sites implement various error-handling methods. Some of these methods are used to handle errors within the code, whereas others are used to determine the appropriate site content to show users when errors in the code occur. The main techniques used to handle errors within the code are the On Error Resume Next error handler, and the normal bubble-up error handling built into Visual Basic Scripting Edition. The main techniques used to notify Web site users of errors are pipeline warnings and Active Server Pages (ASP) error pages. Pipeline warnings notify users of incorrect user input and other non-critical problems pertaining to their order. ASP error pages are used to inform users of critical errors in the Web site. The content of the ASP error pages can be altered to show different levels of detail by changing between the DEVELOPMENT and PRODUCTION environments.

This section contains:

  • On Error Resume Next

  • Normal Bubble-Up

  • Pipeline Warnings

  • ASP Error Pages

  • Development Versus Production


On Error Resume Next

The On Error Resume Next error handler is a Visual Basic Scripting Edition statement that allows a page to continue processing even after it has encountered an error. The ability to continue processing script after encountering an error is useful if errors are expected, or if you wish to implement custom error handling. The dangerous part of enabling the On Error Resume Next statement is that it turns off all error handling for subsequent statements in the function until the On Error Goto 0 statement is called.

The On Error Resume Next statement is used in the Solution Sites to ignore specific non-critical errors. These errors are usually generated by objects that may return an error, but the error is expected and can be handled. Careful attention must be paid to re-raise any non-expected error that occurred during the On Error Resume Next code block. You can raise an error using the Err.Raise property, but this statement must be outside the On Error Resume Next code block.

The Solution Sites use the On Error Resume Next statement as little as possible, mitigating the risk of accidentally leaving it on. Centralized error processing is left to the 500error.asp page.

When the Solution Sites use the On Error Resume Next statement, the affected section of code is typically indented for clarity.

See Also

Normal Bubble-Up

Pipeline Warnings

ASP Error Pages

Development Versus Production


Normal Bubble-Up

Error handlers such as On Error Resume Next do not need to be implemented in every procedure written in Visual Basic. When errors are encountered in Visual Basic Scripting Editing, they bubble-up through the call stack until an error handler is found.

In a scenario where there are nested procedures, the error will move up the procedure hierarchy and look for the first error handler. For example, if function A enables the On Error Resume Next error handler and calls function B, which does not contain the On Error Resume Next error handler, and an error is generated in the function B, the error will bubble up and the next line of code in the function A will be called.

See Also

On Error Resume Next

Pipeline Warnings

ASP Error Pages

Development Versus Production


Pipeline Warnings

Pipeline warnings are generated when a pipeline component has determined that a user-related error has occurred. For example, if a user enters an invalid zip code, the pipeline runs and returns a value of 2, indicating that a warning should be displayed to the user. The site then enumerates the _Basket_Errors and _Purchase_Errors collections from the order form and displays them to the user. Then the page is rendered again with a message stating, "Please enter of correct ZIP/postal code."

Pipelines can return values of 1, 2, or 3. The following table describes the error levels.

Return Value | Description
1 | The pipeline executed successfully.
2 | Warning message shown to user.
3 | Critical failure, failed HRESULT.

The _Basket_Errors and _Purchase_Errors collections contain lists of all the warnings accumulated in the pipeline. So, if numerous errors have accumulated in these collections the user is prompted to correct them all at the same time.

For more information about error handling in pipelines, see "Error Handling" or "Error Levels" in Commerce Server 2000 Help.

See Also

On Error Resume Next

Normal Bubble-Up

ASP Error Pages

Development Versus Production


ASP Error Pages

The 500error.asp page is the most common error page that users will view when a critical error is encountered on your site. To aid in the usability of your site, it is recommended that you customize this page. The current message displayed on the 500error.asp page is, "We apologize for the inconvenience. Please try again later. If the problem persists, please contact our webmaster." You may want to add an e-mail link to your webmaster so that your users can contact you when they encounter difficulties. For more information about the 500error.asp page, see 500error.asp.

To specify which error page will be displayed when errors are encountered, see the Custom Errors tab in the IIS Properties dialog box for your site.

To view the Custom Errors tab

  1. Click Start, point to Programs, point to Administrative Tools, and then click Internet Services Manager.

  2. In the Internet Information Services screen, expand the nodes to the following path: Internet Information Services/<Server Name>/Default Web Site/<Site Name>.

  3. Right-click <Site Name> and select Properties.

  4. Click the Custom Errors tab.

The Custom Errors tab lists all the HTTP errors and the file that is displayed when the error is encountered. The file names can be changed by clicking the Edit Properties button.

For more information about all of the Active Server Pages (ASP) error pages included in the Solution Sites, see Error Folder.

See Also

On Error Resume Next

Normal Bubble-Up

Pipeline Warnings

Development Versus Production


Development Versus Production

The Solution Sites can operate in two modes, DEVELOPMENT and PRODUCTION. PRODUCTION mode shows user-friendly error messages that are set in the Active Server Pages (ASP) error page associated with the error encountered, and does not reveal site internals. DEVELOPMENT mode enables you to see more detailed error messages. The detailed message includes the file name and line of code in which the error was raised. DEVELOPMENT mode also shows you the user-friendly message associated with the error so that you know what your users will see if they encounter the same error in PRODUCTION mode.

There are other differences between PRODUCTION and DEVELOPMENT mode that may be used while debugging your Web site. For example, when in DEVELOPMENT mode, test credit card numbers are automatically filled into the crdtcard.asp page.

To change the environment you are working in, you must change the environment variable in the global.asa file. Set the MSCSEnv key to the environment variable you would like to use, either MSCSEnv = DEVELOPMENT or MSCSEnv = PRODUCTION.

See Also

On Error Resume Next

Normal Bubble-Up

Pipeline Warnings

ASP Error Pages


Utility Routines

The folders "include" and "services\include" contain utility routine files. These files are intended for inclusion in Web page files so that the utility routines they contain can be called from the script code in the Web pages.

These utility routines fall into three broad categories. The first type are those used during Internet Information Services (IIS) application initialization. In other words, those routines that are called when the file global.asa runs. These are initialization utility routines. In general, you will never add additional calls to these routines, because the initialization process is already in place. But you might find a need to modify one or more of these routines to accommodate changes to the initialization process. You might also add new routines of this type to accommodate new types of initialization requirements.

The second type of utility routine are those called from any of the Web site pages, including customer or partner services pages. These are general utility routines. The following two categories of general utility routines have extra conceptual information because of their relative importance:

Constructing HTML

Forms Processing

The third type of utility routine are those designed specifically for the customer and partner services pages. These are services utility routines.

This section contains:

  • Initialization Utility Routines

  • General Utility Routines

  • Services Utility Routines


Initialization Utility Routines

The utility routines used for application initialization can be divided into the following categories, which also correspond to the files in which they are defined.

This section contains:

  • Address Book Initialization Routines

  • Cache Initialization Routines

  • Configuration Initialization Routines

  • Credit Card Initialization Routines

  • CSF Initialization Routines

  • Data Initialization Routines

  • Entry-Point Initialization Routine

  • Forms Initialization Routines

  • Internationalization Initialization Routines

  • MessageManager Initialization Routine

  • Prediction Initialization Routine

  • Product Catalog Initialization Routines

  • Profiles Initialization Routines

  • Site Terms Initialization Routines

  • Styles Initialization Routines


Address Book Initialization Routines

include\global_addressbook_lib.asp

The following address book initialization routines are defined in this file:

GetAddressBookAddressFieldDefinitions

This function initializes the form field definitions for address book entries.

GetAddressFieldDefinitions

This function initializes the form field definitions for address fields used in address book entries and on shipping and billing address forms.

GetShipToAddressFieldDefinitions

This function creates and returns a SimpleList object containing field definitions for the ship-to-address field. Most of the SimpleList is populated by a call to the GetAddressFieldDefinitions function. A Dictionary object containing items such as Name, Label, InputType, and so on, is also included in the SimpleList.


Cache Initialization Routine

include\global_cache_lib.asp

The following cache initialization routine is defined in this file:

InitCacheManager

This function creates, initializes, and returns a CacheManager object. For more information about the individual caches created, see Remarks.


Configuration Initialization Routines

include\global_siteconfig_lib.asp

The following configuration initialization routines are defined in this file:

GetAppConfigObject

This function returns an initialized AppConfig object. It sets the global variable dictConfig to the Dictionary object returned by the GetOptionsDictionary method of the AppConfig object, and adds the s_SecureHostName and s_NonSecureHostName values from the SiteConfig object to the dictConfig dictionary.

GetBaseURL

This function returns the base URL for this application.

GetCommerceSiteInstallPoint

This function returns one of the constants HOME_DIRECTORY or VIRTUAL_DIRECTORY, depending on whether the application was installed at the root of the website or in a virtual directory, respectively.

GetCommerceSiteName

This function returns the Commerce Server site name stored in the global page variable MSCSCommerceSiteName.

GetComputerName

This function returns the name of the computer.

GetConfigDictionary

This function returns the Dictionary object returned by a call to the GetOptionsDictionary method of the AppConfig object.

GetINIFileName

This function returns the file name for the .ini file containing the site configuration information.

GetINIString

This function returns the value of the specified key or "" (an empty string) if the key or its value cannot be found.

GetMachineBaseURL

This function returns the base URL for this application, and specifically for this server.

GetPaymentMethodsForSite

This function returns the payment methods for the site. This function must run after the MessageManager object is assigned.

GetRootPath

This function returns the file path to the root of the application.

GetSecurePagesDictionary

This function returns the Dictionary object containing the names of the secure site pages.

GetSiteConfigObject

This function creates, initializes, and returns a SiteConfig object.

GetSitePages

This function assigns friendly names to pages in the site. Friendly names are also used by PageSets and the GetSecurePagesDictionary function.

iGetWebServerPort

This function returns the Web server port number being used for the site. For Web farms, it is assumed that the sites on all servers are using the same port number.

InitPageSets

This function creates sets of related pages, which are returned in a Dictionary object, where each entry in the dictionary is a string of comma-separated page names.

InitSitePipelines

This function creates and initializes a Dictionary object with an entry for each pipeline configuration file (PCF) used in the site. It also establishes pipeline logging settings.

IsActiveDirectoryPresent

This function determines whether Active Directory is being used by the Profile Service, returning True if it is being used, and False otherwise.

JoinWebFarm

This sub adds the current Web server to the Web farm, if the machine is not already recognized as being so. This routine will run in the case where a site was replicated using Microsoft Application Center 2000, or other cases where the site was not installed using Commerce Site Packager.

sGetActiveDirectoryDefaultNamingContext

This function gets the Active Directory domain name.


Credit Card Initialization Routines

include\global_creditcards_lib.asp

The following credit card processing initialization routines are defined in this file:

GetCreditCardCodesList

This function returns the same SimpleList object as the GetCreditCardNamesList function, except that the first item is set to the string "-1".

GetCreditCardFieldDefinitions

This function initializes and returns the form field definitions for credit card fields.

GetCreditCardNamesList

This function returns a SimpleList object that has the string corresponding to the MessageManager constant L_SelectOne_Text as the first item, and the names of the accepted credit cards as the subsequent items.


CSF Initialization Routine

include\global_csf_lib.asp

The following Content Selection Framework initialization routine is defined in this file:

InitCSF

This sub creates and initializes the global context Dictionary objects and the event recording pipeline for the Content Selection Framework (CSF).


Data Initialization Routines

include\global_data_lib.asp

The following data initialization routines are defined in this file:

GetDWConnectionString

This function returns the SQL Server OLEDB connection string for the Data Warehouse that corresponds to the Web site.

InitDataFunctions

This function creates a DataFunctions object and returns a reference to it, setting the default locale before returning.

oGetBizDataObject

This function creates an instance of the BusinessDataAdmin object and returns a reference to it, calling its Connect method before returning.

oGetGenIDObject

This function creates an instance of the GenID object and returns a reference to it.


Entry-Point Initialization Routine

include\global_main_lib.asp

The following initialization entry-point routine is defined in this file:

Main

This sub serves as the entry point into the file global.asa, which creates and initializes many of the objects supplied by Commerce Server 2000. References to these objects are stored in the intrinsic Application object so that they can be retrieved and used from Web site pages.


Forms Initialization Routines

include\global_forms_lib.asp

The following forms processing initialization routines are defined in this file:

dictGetPropertySchema

This function creates and returns a Dictionary object containing property attributes. These attributes are used in the application for standard form validations, rendering functions, and profile updates.

GetFormDefinitions

This function returns a Dictionary object of field definitions (including variables such as maximum and minimum field lengths, whether the field is required, and so on) for the following fields: Login, Registration, BillToAddress, ShipToAddress, AddressBookAddress, CreditCard, and PurchaseOrder.

GetLoginFieldDefinitions

This function returns the login form field definitions.

GetPasswordFieldDefinition

This function returns a Dictionary object of field definitions for the password field in the new user and login forms. The field definitions include size constraint settings, invalid characters, and so on.

GetPurchaseOrderFieldDefinitions

This function returns a Dictionary object of form field definitions, including name, size constraint settings, and so on. A billing currency field is created if an alternate currency can be used on the site.

GetRegistrationFieldDefinitions

This function returns a Dictionary object of field definitions for the registration form.


Internationalization Initialization Routines

include\global_internationalization_lib.asp

The following internationalization initialization routines are defined in this file:

GetBillToCurrenciesListItems

This function creates and returns a SimpleList object containing three items: the MessageManager "L_SelectOne_Text" message, the base currency symbol, and the alternate currency symbol.

GetBillToCurrenciesListValues

This function creates and returns a SimpleList object containing three items: the integer –1, the base currency code, and the alternate currency code.

GetBillToCurrencyFieldDefinition

This function initializes the form field definitions for the bill-to currency field.

GetCountryCodesList

This function returns a SimpleList object that has "-1" as the first item, and the codes corresponding to the countries returned by the GetCountryNamesList method of the AppConfig object as the subsequent items.

GetCountryNamesList

This function returns a SimpleList object that has the string corresponding to the MessageManager constant L_SelectOne_Text as the first item, and the names of the countries returned by the GetCountryNamesList method of the AppConfig object as the subsequent items.

InitAltCurrencyDisp

This function creates, initializes, and returns a EuroDisplay object. This enables the display of the Euro as an alternate currency.


MessageManager Initialization Routine

include\global_messagemanager_lib.asp

The following MessageManager object initialization routine is defined in this file:

GetMessageManagerObject

This function reads the MessageManager object entries from the file rc.xml.


Prediction Initialization Routine

include\global_predictor_lib.asp

The following prediction initialization routine is defined in this file:

InitPredictor

This function creates, initializes, and returns a PredictorClient object. Before returning, it also loads the Transaction prediction model from the Data Warehouse, and sets prediction properties.


Product Catalog Initialization Routines

include\global_catalog_lib.asp

The following product catalog initialization routines are defined in this file:

dictGetCatalogAttributes

This function retrieves all the property definitions that exist in the Product Catalog System and places them in a Dictionary object for fast access.

dictGetRSFields

This function creates and returns a Dictionary object containing items whose values correspond to the field values of the Recordset object specified by the rs parameter.

InitCatalogManager

This function creates, initializes, and returns a CatalogManager object.

InitCatalogSets

This function creates and initializes a CatalogSets object. Then it creates, initializes, and returns a reference to a Dictionary object of Dictionary objects, where each subordinate dictionary represents a CatalogSets object, and each entry in the subordinate dictionaries represents a catalog in the corresponding CatalogSets object.


Profiles Initialization Routines

include\global_profile_lib.asp

The following profiles initialization routines are defined in this file:

AddGroupAndPropertySchemas

This sub recursively adds all group and property definitions for a profile to a flat list of Dictionary objects contained in a SimpleList object.

dictGetProfileSchemaForAllProfileTypes

This function returns a Dictionary object containing the schema for all profile types.

InitAuthManager

This function creates an AuthManager object and returns a reference to it.

InitProfileService

This function creates and initializes a ProfileService object, and returns a reference to it.

listGetProfileSchema

This function creates and returns a SimpleList object of Dictionary objects that represent the schema specified by the parameters.

oGetOpenConnectionObject

This function creates an ADO Connection object and returns a reference to it, opening a connection to the Commercer Server OLEDB Provider before returning.

oGetProfile

This function returns an XML DOMDocument object that contains the profile specified by the sProfileName parameter.


Site Terms Initialization Routines

include\global_siteterms_lib.asp

The following site terms initialization routines are defined in this file:

bIsSiteTerm

This function determines whether the specified property is a site term.

oGetSiteTermOptions

This function returns a SimpleList object of Dictionary objects, where each dictionary contains a single key/value pair. Each key/value pair represents the display name and value of one site term choice associated with the property specified by the sPropertyName parameter.

sGetReferenceString

This function returns the reference string attribute value for a given property element.


Styles Initialization Routines

include\global_ui_lib.asp

The following styles initialization routines are defined in this file:

GetSiteStyles

This function returns the site styles, which are used by HTML library functions.

GetStyles

This function returns a Dictionary object containing the size attribute for standard text and password boxes.


General Utility Routines

The utility routines appropriate for use on all Web pages, including the customer and partner services pages, can be divided into the following categories, which also correspond to the files in which they are defined.

This section contains:

  • Address Book Routines

  • Analysis Routines

  • Authentication Routines

  • Cache Routines

  • Cookie Routines

  • Date Routines

  • Forms Routines

  • HTML Routines

  • Miscellaneous Routines

  • Order Routines

  • Payment Routines

  • Pipeline Routines

  • Product Catalog Routines

  • Profile Routines

  • String Routines

  • URL Routines


Address Book Routines

include\addr_lib.asp

The following address book processing utility routines are defined in this file:

GetAddresses

This function returns a Recordset object of address information for either a user or an organization, based on the value of the sAddrParentID parameter.

GetAddressType

This function returns the address type from the request variable ADDRESS_TYPE.

GetOrganizationAddresses

This function serves as a wrapper function to the GetAddresses function, passing the sOrgID parameter to retrieve the corresponding address as a Recordset object.

GetUserAddresses

This function retrieves the address for a user. It calls the more generic GetAddresses function to retrieve and return the required address as a Recordset object.

IsZipCodeValid

This function determines whether the basic format of the zip code specified by the sZipCode parameter is correct, returning True if so, and False otherwise. For additional information, see the Remarks.

LookupRegion

This function returns the region name associated with the passed parameters. The sRegion parameter might specify a region name, in which case that name is returned, or it might specify a region code, in which case the corresponding region name is returned. If the region name cannot be determined, Null is returned.


Analysis Routines

include\analysis.asp

The following analysis-related utility routines are defined in this file:

Analysis_ConstructKeyValueString

This function constructs a key/value pair for the "submit order" Commerce event.

Analysis_ConstructPRID

This function constructs the property string for "add to basket" and "remove from basket" Commerce events.

Analysis_LogAddToBasket

This sub logs a Commerce event (CEVT) when an item is added to the basket.

Analysis_LogEvent

This function logs a Commerce event (CEVT) to the Web server log file.

Analysis_LogRemoveFromBasket

This sub logs a Commerce event (CEVT) when an item is removed from the basket.

Analysis_LogSubmitOrder

This sub logs a Commerce event when an order is submitted.


Authentication Routines

include\std_access_lib.asp

The following authentication-related utility routines are defined in this file:

CheckPartnerServiceAccess

This sub implements page-level access control. It grants access to users who have their PartnerDeskRoleFlags set to ROLE_ADMIN. All others are redirected to an error page.

EnsureAccess

This sub implements page-level access control. It grants access to users who are either authenticated to Internet Information Services (IIS), using Basic/Integrated Windows authentication, or have tickets. Call this sub from within the Main subroutine on every page that requires such access control. A call to this sub must appear before any other statement in the Main subroutine.

EnsureAuthAccess

This function implements page-level access control. It grants access to users who are either authenticated to Internet Information Services (IIS), using Basic/Integrated Windows authentication, or have an AUTH_TICKET. Call this function from within the Main subroutine on every page that requires such access control. A call to this function must appear before any other statement in the Main subroutine.

GetAuthManagerObject

This function creates, initializes, and returns an AuthManager object.

GetUserInfo

This sub, called from the include\setupenv.asp file, assigns the user ID, user type and user access type into the following global variables: m_userid, m_UserType, and m_UserAccessType.

IsFormLoginRequired

This function determines whether login is required on the current page. It returns True if logging in is always required, or if logging in is required for a purchase and the current page is in the purchase page set. Otherwise, it returns False.

IsPersistentCookieAllowed

This function determines whether persistent cookies are enabled in the current user's browser, returning True if so, and False otherwise. A test cookie and page redirection are used to make the determination.

sGetUserIDForNewGuestUser

This function gets the user ID for a new guest user.


Cache Routines

include\std_cache_lib.asp

The following cache-related utility routines are defined in this file:

CacheFragment

This sub caches an HTML fragment.

CacheObject

This sub caches the specified object.

LookupCachedFragment

This function searches the LRUCache object specified by the sCacheName parameter for the fragment (a string) associated with name specified by the sCacheItemName parameter, returning the fragment if it is found, and Null otherwise.

LookupCachedObject

This function searches the LRUCache object specified by the sCacheName parameter for the object associated with name specified by the sCacheItemName parameter, returning the object if it is found, and Nothing otherwise.


Cookie Routines

include\std_cookie_lib.asp

The following cookie processing utility routines are defined in this file:

CorrectRequest

This sub corrects a cookie for URL case-sensitivity.

GetCorrectedCookiePath

This function converts the case of a cookie path to match the Internet Information Services (IIS) application name, returning True if any character case was converted, and False otherwise.

GetCorrectedHostName

This function corrects the host name in the url parameter, if needed. It returns True if the host name was corrected, and False otherwise.

GetIISApplicationName

This function returns the Internet Information Services (IIS) application name.

GetRequestType

This function returns the type of request (POST or GET).

SetTestCookie

This sub sets a test cookie to learn if a browser allows cookies.


Date Routines

include\std_dates_lib.asp

The following date processing utility routines are defined in this file:

GetMonthCodesList

This function returns a list of numeric month codes.

GetMonthNamesList

This function returns a list of month names.

GetYearsListItems

This function creates and returns a SimpleList object of items. The first item contains the MessageManager object "L_SelectOne_Text" message; the next item contains the current year; the following four items contain the next four year values (for example, if the current year is 2002, then the four items would contain 2003 through 2006).

GetYearsListValues

This function creates and returns a SimpleList object of items. The first item contains the integer "-1"; the next item contains the current year; the next four items contain the next four year values (for example, if the current year is 2002, then the four items would contain 2003 through 2006).


Forms Routines

For conceptual information about how forms are constructed and processed in the Solution Sites, see Forms Processing.

include\form_lib.asp

The following forms processing utility routines are defined in this file:

bMatchesPattern

This function checks whether the value specified by the sValue parameter matches the expression specified by the sPattern parameter. If a match is found, this function returns True; otherwise it returns False.

GetFieldsErrorDictionary

This function returns a Dictionary object. The keys are the names of the form post fields and the values are the associated field validation error messages. Examples of errors include empty fields where input is required, incorrect password length, invalid characters, and so on.

GetSubmittedFieldValues

This function retrieves form post values from the request, based on the expected fields specified by the listFlds parameter, placing them in a Dictionary object where the corresponding keys are the names of the fields.

htmRenderFillOutForm

This function prepares the HTML that renders the form specified by the sFormName parameter in the forms Dictionary object stored in the intrinsic Application object, which is under the name "MSCSForms".

IsFormSubmitted

This function is used to test whether the current request contains a query string or form post variable with the name "mode" that has a value that can be successfully converted to a number.


HTML Routines

For conceptual information about how HTML is constructed in the Solution Sites, see Constructing HTML.

include\html_lib.asp

The following HTML processing utility routines are defined in this file:

Bold

This function surrounds the string specified by the s parameter with the tags "<B>" and "</B>", and then returns the resulting string.

BRTag

This function appends the <BR> tag to the end of the string specified by the s parameter, and then returns the resulting string.

GetRepeatStyle

This function creates an array with the number of array elements specified by the iCount parameter. Each array element is assigned the attribute string specified by the sAttList parameter. This is used to construct a table style array initialized to a common value.

InsertBlankSpace

This function returns a string containing space characters, where the number of space characters is equal to the number of items in the passed array.

InsertLineBreaks

This function returns a string containing a concatenation of each of the strings in the passed array, separated by BR elements, and ending with a BR element. In other words, it concatenates the strings in the array, appending a <BR> tag to each string in the process.

InsertParagraphBreaks

This function returns a string containing a concatenation of each of the strings in the passed array, where each source string is wrapped in a P element. In other words, it concatenates the strings in the array, prepending a <P> tag to the beginning of each source string and appending a </P> tag to the end of each source string.

Italic

This function surrounds the string specified by the s parameter with the tags <I> and </I> and then returns the resulting string.

PTag

This function surrounds the string specified by the s parameter with the tags <P> and </P>, and then returns the resulting string.

RenderCheckBox

This function prepares the HTML that will render an INPUT element for which the TYPE attribute has been given a value of "CHECKBOX", and for which other attribute values are supplied by the parameters.

RenderElement

This function prepares the HTML that will render an arbitrary HTML element and its associated attributes and content, as specified by the parameters.

RenderForm

This function prepares the HTML that will render the specified HTML form.

RenderHiddenField

This function prepares the HTML that will render an INPUT element for which the TYPE attribute has been given a value of "HIDDEN", and for which other attribute values are supplied by the parameters.

RenderImage

This function prepares the HTML that will render an IMG element for which other attribute values are supplied by the parameters.

RenderImageButton

This function prepares the HTML that will render an INPUT element for which the TYPE attribute has been given a value of "IMAGE", and for which other attribute values are supplied by the parameters.

RenderLink

This function prepares the HTML that will render a link (an HTML A element) for which the attribute values and hot text are supplied by the parameters.

RenderListBox

This function prepares the HTML that will render a SELECT element and its subordinate OPTION elements, populating the values for the various attributes and content based on the values supplied by the parameters.

RenderListBoxFromArray

This function prepares the HTML that will render a SELECT element and its subordinate OPTION elements, populating the values for the various attributes and content based on the values supplied by the parameters. It serves as a wrapper for the function RenderListBox, hardcoding the iSource parameter to the constant ARRAY_COLLECTION, and passing through all other parameters as is.

RenderListBoxFromSimpleList

This function prepares the HTML that will render a SELECT element and its subordinate OPTION elements, populating the values for the various attributes and content based on the values supplied by the parameters. It serves as a wrapper for the function RenderListBox, hardcoding the iSource parameter to the constant SIMPLELIST_COLLECTION, and passing through all other parameters as is.

RenderListFromSimpleList

This function prepares the HTML that will render a sequence of formatted text items, each followed by the BR element.

RenderPasswordBox

This function prepares the HTML that will render an INPUT element for which the TYPE attribute has been given a value of "PASSWORD", and for which other attribute values are supplied by the parameters.

RenderPreFormattedText

This function prepares the HTML that will render the passed string as pre-formatted text.

RenderRadioButton

This function prepares the HTML that will render an INPUT element for which the TYPE attribute has been given a value of "RADIO", and for which other attribute values are supplied by the parameters.

RenderResetButton

This function prepares the HTML that will render an INPUT element for which the TYPE attribute has been given a value of "RESET", and for which other attribute values are supplied by the parameters.

RenderSubmitButton

This function prepares the HTML that will render an INPUT element for which the TYPE attribute has been given a value of "SUBMIT", and for which other attribute values are supplied by the parameters.

RenderTable

This function prepares the HTML that will render a TABLE element for which the attributes and content are supplied by the parameters.

RenderTableDataRow

This function prepares the HTML that will render a row of data within a table. In other words, a series of TD elements wrapped in a TR element. It serves as a wrapper for the function RenderTableRow, hardcoding the iRowType parameter to the constant DATA_ROW, and passing through all other parameters as is.

RenderTableHeaderRow

This function prepares the HTML that will render a header row within a table. In other words, a series of TH elements wrapped in a TR element. It serves as a wrapper for the function RenderTableRow, hardcoding the iRowType parameter to the constant HEADER_ROW, and passing through all other parameters as is.

RenderTableRow

This function prepares the HTML that will render a header or data row within a table. In other words, a series of either TH or TD elements wrapped in a TR element. It performs the real work for the functions RenderTableHeaderRow and RenderTableDataRow, which hardcode the iRowType parameter to the constants HEADER_ROW and DATA_ROW, respectively, and passing through all other parameters as is.

RenderText

This function prepares the HTML that will render the specified string wrapped in FONT tags, and assigned the specified FONT-specific attributes.

RenderTextBox

This function prepares the HTML that will render an INPUT element for which the TYPE attribute has been given a value of "TEXT", and for which other attribute values are supplied by the parameters.

RenderUnorderedList

This function prepares the HTML that will render an unordered list from the data in the passed array. In other words, a series of LI elements wrapped in a UL element.

RenderUnorderedListFromSimpleList

This function prepares the HTML that will render a series of list elements from the data in the passed SimpleList object. In other words, a series of LI elements.

Tag

This function encloses the text segment between a beginning and an ending HTML tag.


Miscellaneous Routines

include\std_util_lib.asp

The following miscellaneous utility routines are defined in this file:

ConvertListToArray

This function converts a SimpleList object to an array.

CreateSet

This function creates a set from an array of items.

DoubleQuote

This function applies double quotes to a string.

FormatOutput

This function formats a string, replacing variables in the sTemplate parameter of the form %1, %2, and so on, with strings supplied in the arrArgs array parameter.

GetAddressPage

This function returns the name of the page used to enter or select an address. If the user is a guest user or if address book functionality is disabled, the name of the address form page is returned. Otherwise, the name of the address book page is returned.

GetArrayFromList

This function creates and returns an array containing the items in the specified SimpleList object.

GetDictionary

This function creates and returns a Dictionary object.

GetDiscountDescription

This function searches the content list and returns the description of the discount that has been applied to the item.

GetErrorSource

This function returns the site and function names of the error source.

GetFileSystemObject

This function creates and returns a Scripting.FileSystemObject object.

GetKeyValue

This function returns the value part of a key/value pair line in an INI file.

GetListItemIndex

This function returns the index of the specified item in the list.

GetObjectInstanceDictionary

This function creates and returns a Dictionary object. The Dictionary object contains an item called "Dictionary" that contains an empty Dictionary object. The Dictionary object also contains an item called "SimpleList" that contains an empty SimpleList object.

GetQualifiedName

This function constructs a qualified name from the group name and fieldname, resulting in a string of the form sGroupName.sFieldName.

GetRecordCount

This function returns the number of records in the specified Recordset object.

GetRegExp

This function creates and returns the VBScript.RegExp object.

GetSimpleList

This function creates and returns a SimpleList object.

htmRenderCurrency

This function renders a monetary value, using the base currency setting. It will also render the monetary value and the alternate currency for the site (for example, the Euro) depending on the settings of the site.

IsBitValueSet

This function determines whether every bit in the iBitValue parameter is also set in the iValue parameter, returning True if so, and False otherwise.

IsEntityInArray

This function determines whether the string specified by the sEntity parameter is equal to one of the strings in the array specified by the arrItems parameter, returning True if so, and False otherwise.

IsEntityInList

This function determines whether the string specified by the sEntity parameter is equal to one of the strings in the SimpleList object specified by the list parameter, returning True if so, and False otherwise.

IsEntityInSet

This function determines whether the string specified by the sEntity parameter is equal to one of the substrings in the comma-separated string specified by the sSet parameter, returning True if so, and False otherwise.

IsNumberInRange

This function determines whether the number specified by the iNumber parameter is in the range specified by the iMin and iMax parameters (inclusive), returning True if so, and False otherwise.

RsToDict

This function creates a new Dictionary object and populates it with the fields of the current record in the passed Recordset object. The field names are used as the dictionary keys, and the field values are assigned to the corresponding keys.

SortDictionaryKeys

This function sorts the keys for a Dictionary object and puts the result into a SimpleList object.


Order Routines

include\std_ordergrp_lib.asp

The following order processing utility routines are defined in this file:

AddDiscountMessages

This sub adds a footnote symbol for each discount applied to each line item. The footnote symbol is a "D" plus the campaign ID.

GetAnyLineItem

This function returns an arbitrary line item from the specified OrderGroup object, which is useful when all line items contain similar information. This is accomplished by searching each OrderForm object in the specified OrderGroup object, and returning the first line item found.

GetAnyOrderForm

This function searches the specified OrderGroup object, and returns the first OrderForm object it finds.

GetErrorCount

This function returns the error count in each order form.

GetLineItemsCount

This function returns the number of items in the basket.

GetOrderGroup

This function returns an initialized OrderGroup object.

GetOrderGroupManager

This function returns an OrderGroupManager object.

LoadBasket

This function retrieves and returns the OrderGroup object associated with the current user, calling its LoadBasket method before returning.

RemoveEmptyOrderForms

This sub removes empty OrderForm objects from the specified OrderGroup object.

SetKeyOnOrderForms

This sub sets the key on order forms.


Payment Routines

include\payment.asp

The following payment processing utility routines are defined in this file:

CatchErrorsForPaymentPages

This sub redirects the user to the appropriate page if an error is encountered when initializing the credit card or purchase order pages.

CheckOut

This function runs the basket, total, and checkout pipelines.

EnsureSupportForPaymentMethod

This sub checks whether the selected payment method is supported for the user; if it is not, the user is redirected to the default payment method page for the user.

GetDefaultPaymentMethodForUser

This function returns the first payment method in the passed SimpleList object.

GetPaymentMethodDisplayName

This function returns the display name for the specified payment method.

GetPaymentMethodsForUser

This function returns the payment methods for the user.

GetPaymentPageFromPaymentMethod

This function returns the friendly name of either the crdtcard.asp or po.asp page, depending on the value of the sPaymentMethod parameter.

GetXMLForVendorItems

This function creates and returns an XML document containing the line items corresponding to the specified order form and vendor. The oVendor parameter is a list of line items to be associated with a vendor, and is generated in the Splitter component of the checkout pipeline.

htmRenderPaymentOptionsForUser

This function renders the payment options for the user.

InvokeBizTalk

This sub submits purchase orders to the appropriate vendors using BizTalk Server when BizTalk Server integration is enabled.

SaveBasketAsOrder

This sub saves the basket as an order and deletes old baskets. It also invokes the BizTalk Server as appropriate, and calls the routine Analysis_LogSubmitOrder for analysis purposes.

SubmitUsingBizTalk

This function submits an order using the Submit method of the BizTalk Server Interchange object.


Pipeline Routines

include\std_pipeline_lib.asp

The following pipeline utility routines are defined in this file:

GetPipelineLogFile

This function returns the log file path along with the user ID in the file name.

RunMtsPipeline

This function runs one of four pipelines on the passed OrderGroup object: Product, Basket, Total, or Checkout. It establishes the appropriate context dictionary and logging support prior to running the pipeline.


Product Catalog Routines

include\catalog.asp

The following product catalog utility routines are defined in this file:

EnsureUserHasRightsToCatalog

This sub ensures that the user has access rights to the given catalog. If not, the user is redirected to the "bad catalog item" error page (error\baditem.asp).

GetCatalogForUser

This function returns the ProductCatalog object specified by the sCatalogName parameter. If the user does not have rights to this catalog, the user is redirected to the "bad catalog item" error page (error\baditem.asp).

GetPriceAndCurrency

This sub retrieves both the price and a formatted price string for a product.

htmRenderCatalogList

This function creates a string that contains a series of links to different catalogs, separated by carriage returns.

htmRenderCategoriesList

This function creates the HTML representation of a list of links to the categories within the passed Recordset object.

htmRenderCategoryPage

This function renders a category page, which lists subcategories and products within a category.

htmRenderProductsTable

This function renders a Recordset object containing products in a table format. The table has the following four columns: identifying property (for example SKU), name, description, and price. If the identifying property and name are the same, only three columns are shown.

mscsGetCategoryObject

This function gets the Category object for the given category name. If the category name is "" (meaning the root category), this function returns Nothing, as the catalog does not have a Category object for the root category.

mscsGetProductList

This function returns the product Recordset object for a specified category, using the specified paging information.

mscsGetSubCategoriesList

This function returns the child categories Recordset object for the Category object specified by the oCategory parameter.

mscsUserCatalogs

This function returns a Recordset object that contains the catalogs associated with the current user.

mscsUserCatalogsetID

This function returns the ID of the catalog set associated with the current user. If it is not found, the ID of the catalog set associated with the user's organization is returned. If it is not found, the ID of the default catalog set for the type of the current user is returned.

mscsUserCatalogsFromID

This function returns a Recordset object containing the catalogs associated catalog set ID specified by the CatalogSetID parameter.

RenderCatalogLink

This function prepares the HTML that will render a link to the specified catalog, using the specified FONT element attributes for the link text style.

RenderCatalogURL

This function constructs the URL for a catalog. This produces the same result as calling the RenderCategoryURL function with an empty string for the sCategory parameter and the number one (1) for the nPage parameter.

RenderCategoryLink

This function prepares the HTML that will render a link to the specified catalog, category, and page number, using the specified FONT element attributes for the link text style.

RenderCategoryURL

This function constructs the URL for a category by appending the specified catalog, category, and page number as arguments to the category page URL stored in the MSCSSitePages Dictionary object.

RenderProductLink

This function prepares the HTML that will render a link to the product specified by the parameters, using the specified FONT element attributes for the link text style.

RenderProductURL

This function constructs the URL for the specified product.

RenderSearchResultRow

This function prepares the HTML that will render the current record from a Recordset object containing search results.

RenderSearchResults

This function prepares the HTML that will render the search results contained in the passed Recordset object.

rsFreeTextSearch

This function performs a free text search and returns the results as a Recordset object. The number of records retrieved is set in the iRecordCount parameter.

sUserCatalogsAsString

This function retrieves the catalogs associated with a user as a comma-separated list, suitable for passing to various catalog methods that accept a list of catalogs as a parameter.


Profile Routines

include\std_profile_lib.asp

The following profile utility routines are defined in this file:

EnsureUpToDateUserProfile

This sub retrieves the profile of the user from the cache if it is up-to-date. Otherwise, the profile is retrieved from the Profiles store.

EnsureUserProfile

This function ensures that the profile of the user exists. If not, the user is redirected to the "missing profile" error page (error\profile.asp).

GetCurrentUserProfile

This function gets the profile of the current user, if the user has one. This function also ensures that the profile returned is the latest version available on the Web farm.

GetNewGuestUserProfile

If the privacy options of the Site Configuration dictionary is set to PROFILE_GUEST_USER, this function creates a new user profile, sets the user_id_changed_by field to the newly generated user ID, sets the user_type field to GUEST_PROFILE, the account_status field to ACCOUNT_ACTIVE, the partner_desk_role field to ROLE_USER, and the date_created field to the current time. After the profile is created, the function passes it to the UpdateUserProfile routine to perform common functions the sites require when saving profiles.

GetProfileFromDB

This sub retrieves the specified profile from the Profiles store.

GetProfileService

This function creates and initializes a ProfileService object.

GetUserProfileByLoginName

This function returns the profile for the given login name.

rsGetProfile

This function retrieves the specified profile and returns it in a Recordset object.

rsGetProfileByKey

This function retrieves the profile specified by the passed key name/value pair, and returns it in a Recordset object.

UpdateUserProfile

This sub updates the profile for the current user.


String Routines

include\std_string_lib.asp

The following string processing utility routines are defined in this file:

BooleanToString

This function converts a Boolean value to a string value.

RemoveBlankItemsFromArray

This sub copies all non-empty strings from the array specified by the arrItems parameter into the array specified by the arrNew parameter, discarding any previous contents of the latter.

sChopOffLeft

This function deletes the left section of the sValue parameter string corresponding to the sToChopOffLeft parameter string, providing that the sValue parameter string begins with the sToChopOffLeft parameter string.

sChopOffRight

This function deletes the right section of the sValue parameter string corresponding to the sToChopOffRight parameter string, providing the sValue parameter string ends with the sToChopOffRight parameter string.

Space

This function counts spaces and renders the appropriate number of HTML spaces (&nbsp).

StringToBoolean

This function converts a String to a Boolean.


URL Routines

include\std_url_lib.asp

The following URL processing utility routines are defined in this file:

AddURLArguments

This function appends property/value pairs to a URL string.

GenerateURL

This function checks whether the page is defined as supporting the Secure Socket Layer (SSL) protocol, and whether the ticket is stored in a cookie or in the URL. This information, along with the parameters, is passed to the GetURL method of the AuthManager object.

GetRequestString

This function removes double quotes, and opening and closing element characters (< and >) from strings obtained through the Request object.

GetRequestStringRange

This function removes double quotes, and opening and closing element characters (< and >) from strings obtained through the Request object. This function also ensures that the requested string is within the length range specified by the iMinLength and iMaxLength parameters.

GetTicketInUrlArg

This function retrieves the ticket from a URL string.

GetTicketLocation

This function returns the location of a ticket.


Services Utility Routines

The utility routines appropriate for use only on the customer and partner services Web pages can be divided into the following categories, which also correspond to the sets of files in which they are defined.

This section contains:

  • Services Active Directory Routines

  • Services Edit Page Routines

  • Services List Page Routines

  • Services Initialization Routines

  • Services Message Box Routines

  • Services Miscellaneous Routines

  • Services Order Routines

  • Services Password Routines

  • Services Profile Routines


Services Active Directory Routines

services\include\ad_routines.asp

The following customer and partner services utility routines are related to Active Directory processing, and are defined in this file:

bAddUserToGroup

This function adds a user to an existing Active Directory group.

bPaintACLForUser

This function paints access control lists (ACLs) for a user in an Active Directory store. This is achieved by adding or removing the user to or from <COMPANY_NAME>_ADMINGROUP or <COMPANY_NAME>_USERGROUP.

bRemoveUserFromGroup

This function removes a user from an Active Directory group.


Services Edit Page Routines

services\include\edit_handlers.asp

The following customer and partner services utility routines are related to handling edit page processing, and are defined in this file:

DeleteAllActionHandler

This sub checks the user action on the DeleteAll message box page, and redirects to the profile list page with the appropriate parameters.

DeSelectAllActionHandler

This sub redirects the user in a "Select All" action.

GetStatusFieldAndID

This sub updates the status message for the "Save" action.

htmAddActionHandler

This function renders a blank edit page for any profile, and serves as a wrapper function to the htmRenderBlankEditPage function.

htmChangePasswordActionHandler

This function is called by EDIT-type pages for changing the user_security_password property. It is called before the execution is passed to the change_password.asp page.

htmCloseActionHandler

This function provides rendering for the "Close" action handler.

htmCopyActionHandler

This function provides rendering for the "Copy" action handler.

htmDeleteActionHandler

This function provides rendering for the "Delete" action handler.

htmEditAction

This function provides the "Edit" action handler. It supports single-edit, multi-edit, and SelectAll+Edit scenarios. Business logic to prepare for this display is in the PrepareEditAction subroutine.

htmEditAllProfiles

This function serves as a wrapper function for the htmRenderEditPage function, and renders the edit page contents.

htmInsertProfile

This function renders the edit page by calling the htmRenderEditPage function if the profile has been successfully inserted during the profile save operation that calls this function; otherwise, it renders the edit page by calling the htmRenderBlankEditPage function.

htmSaveActionHandler

This function checks if the user is saving profiles returned by the search criteria in the corresponding list page, then calls an appropriate handler to handle the following cases: SELECTALL_ACTION; ADD_ACTION; COPY_ACTION; EDIT_ACTION.

htmSaveAllActionHandler

This function renders the "Save All" action output.

htmSaveProfiles

This function renders the "Save Profiles" action output.

htmSelectActionHandlerForEdit

This function renders the "Select" action.

htmSelectedActionHandlerForEdit

This function renders the "Selected" action.

PrepareAddAction

This sub initializes its five parameters in preparation for adding a user in Partner Services.

PrepareCloseAction

This sub prepares for the call to the function htmCloseActionHandler by initializing the values of all of the passed parameters other than the first two.

PrepareCopyAction

This sub prepares for the call to the function htmCopyActionHandler by initializing the values of all of the passed parameters other than the first two.

PrepareDeleteAction

This sub prepares for the call to the function htmDeleteActionHandler by initializing the values of the last two parameters.

PrepareDeleteAllAction

This sub prepares for the call to the sub DeleteAllActionHandler by initializing the value of its one parameter.

PrepareDeselectAllAction

This sub prepares for the call to the sub DeSelectAllActionHandler by initializing the value of its one parameter.

PrepareEditAction

This sub prepares for the call to the function htmEditAction by initializing the values of the last two parameters.

PrepareEditAllAction

This sub initializes the parameters passed to it.

PrepareInsertProfile

This sub prepares for the call to the function htmInsertProfile by initializing the values of all parameters other than sSubAction and sProfileIDs.

PrepareSaveAction

This sub currently performs no processing at all, but is called before calls to the function htmSaveActionHandler. If you modify the latter function and need to perform special preparation before calling it, consider adding the preparation code to this function.

PrepareSaveAllAction

This sub prepares for the call to the function htmSaveAllActionHandler by initializing the values of the parameters passed to it. When the profile changes are found to be valid, the sub SaveAllSelectedProfiles is called to save the changes.

PrepareSaveProfiles

This sub prepares for the call to the function htmSaveProfiles by initializing the values of all parameters passed to it other than the first three.

PrepareSelectActionHandlerForEdit

This sub prepares for the call to the function htmSelectActionHandlerForEdit by initializing the values of all parameters passed to it other than the first three.

PrepareSelectAllAction

This sub prepares for the call to the sub SelectAllActionHandler by initializing the value of the sProfileListPage parameter.

PrepareSelectedAction

This sub prepares for the call to the function htmSelectedActionHandlerForEdit by initializing the values of the last three parameters.

SelectAllActionHandler

This sub provides the "Select All" action handler.

services\include\render_edit_blank.asp

The following customer and partner services utility routines are related to preparing blank edit page content for rendering, and are defined in this file:

formRenderBlankEditPageBody

This function prepares the HTML that will render a blank profile editing form.

htmRenderBlankEditPage

This function renders a blank edit page for any profile.

rowRenderBlankProperty

This function prepares the HTML that will render a row in a table that corresponds to a blank property. This row contains three cells: either an image or a checkbox, the display name, and the value, respectively.

tableRenderBlankProfile

This function prepares the HTML that will render tables for blank editing pages.

services\include\render_edit_common.asp

The following customer and partner services utility routines are related to preparing edit page content for rendering, and are defined in this file:

colRenderForeignKeyProperty

This function renders hidden fields that contain a variety of content, depending on whether a pre-existing profile exists, whether a new profile is being created, and so on. A button is rendered to allow the user to submit the selected information.

colRenderPasswordProperty

This function prepares the rendering of the value for the user_security_password property.

colRenderPrimaryKeyProperty

This function prepares the rendering of the value for the primary key property.

colRenderProperty

This function prepares the rendering of a property.

colRenderPropertyTip

This function prepares a warning message for a property that fails validation.

colRenderUniqueKeyProperty

This function prepares the rendering of the value for the unique key property.

formRenderEditPageBody

This function prepares the HTML that will render a profile editing form.

htmRenderEditPage

This function renders the contents of any EDIT-type page.

rowRenderHiddenProperty

This function prepares the HTML that will include hidden properties as INPUT elements with their TYPE attribute set to "HIDDEN".

rowRenderProperty

This function prepares the HTML that will render a row in a table that corresponds to a property that is accessible to the current user. This row contains three cells: either an image or a checkbox, the display name, and the value, respectively.

rowRenderPropertyGroup

This function prepares the HTML that will render a row containing a property group heading.

rowRenderPropertyTip

This function examines the specified property, and if found to have an error associated with it, adds a table row that displays an error message in the third of three cells.

rowRenderReadOnlyProperty

This function prepares the HTML that will render a row in a table that corresponds to a read-only property. This row contains three cells: blank, the display name, and the value, respectively.

sRenderHTMLPreFixForProperty

This function renders the "Required" icon or check box (for multi-edits) before each property in an EDIT-type page.

tableRenderEditPageTasks

This function renders tasks buttons for the current page.

tableRenderProfiles

This function renders an edit page for a profile.

varGetPropertyValue

This function determines the profile property value to display.

varGetValueFromPropertyDictionaries

This function gets the property value from a list of property dictionaries.

varGetValueFromRequestObject

This function gets the property value from the underlying Request object (URL or HTML FORM).

varUpdateValueForCurrentAction

This function gets the property value based on the current action type as stored in the global variable sAction.


Services List Page Routines

services\include\list_handlers.asp

The following customer and partner services utility routine is related to handling list page processing, and is defined in this file:

SelectedActionHandlerForList

This sub provides the "Selected" action handler for a LIST-type page.

services\include\render_list.asp

The following customer and partner services utility routines are related to preparing list page content for rendering, and are defined in this file:

arrPopulateProfileDetails

This function populates an array with the properties of a profile.

formRenderListPageContents

This function prepares the HTML that will render a profile list form.

formRenderProfileSearchOptions

This function prepares the HTML that will render either a simple or advanced profile searching form, based on the value of the request variable QUERY_STRING_CRITERIA.

htmRenderProfilesList

This function renders the contents for any LIST-type page.

htmRenderUniqueIDForProfile

This function adds a globally unique profile identifier to the LIST page.

RelocateRecordPointer2

This sub initializes local variables used in the paging mechanism of the page that lists profiles. It also sets the current record in the Recordset object specified by the rs parameter to the beginning of the specified page number.

rowRenderListHeading

This function prepares the HTML that will render the header row for a table of profile properties, skipping properties that are designated as not to be shown.

rowsRenderAdvanceSearchOptionsForProfiles

This function prepares the HTML that will render a series of rows in a table where each row allows advanced search criterion for profiles to be specified.

rowsRenderSimpleSearchOptionsForProfiles

This function prepares the HTML that will render a series of rows in a table where each row allows simple search criterion for profiles to be specified.

tableRenderListPageTasks

This function renders tasks specific to LIST-type pages.

tableRenderMultipleRecords

This function adds list contents to the current page.


Services Initialization Routines

services\include\global_service_lib.asp

The following customer and partner services utility routines are related to application initialization, and are defined in this file:

AddPartnerAndCustomerServicePages

This sub assigns friendly names to pages used by Customer and Partner Services.

AddPartnerAndCustomerServiceStyles

This sub adds styles used by Customer and Partner Services.

GetPartnerAndCustomerServicePageAttributes

This function retrieves the properties for all Partner and Customer Services pages.

services\include\initialize.asp

The following customer and partner services utility routines are also related to initialization, and are defined in this file:

InitializePartnerDesk

This sub initializes its parameters for use in all Customer and Partner Services pages.

sGetAction

This function determines the action to be taken for the current page.

sGetIDFromForm

This function loops through the FORM collection to determine the selected profiles.

sGetSelectedIDs

This function gets the profile IDs.

sGetSubAction

This function gets the sub action.


Services Message Box Routines

services\include\messagebox_handlers.asp

The following customer and partner services utility routines are related to handling the presentation of message boxes, and are defined in this file:

htmSaveChangesConfirmationHandler

This function renders the "Save Changes Confirmation" action.

PrepareSaveChangesConfirmation

This sub prepares for the call to the function htmChangePasswordActionHandler by initializing the values of all parameters passed to it other than the first. This sub is also called by PrepareSelectActionHandlerForEdit to help initialize its parameters.

services\include\render_messagebox.asp

The following customer and partner services utility routines are related to preparing message box content for rendering, and are defined in this file:

htmRenderMessageBoxForCancel

This function renders the message box page for a cancel action.

htmRenderMessageBoxForDelete

This function renders the message box page while deleting entity records.

htmRenderMessageBoxForDeleteAll

This function renders the message box page for a "DeleteAll" action.

htmRenderMessageBoxForSave

This function renders the message box page with save options.

htmRenderMessageBoxForSelect

This function renders the message box page for a "Select" action.

htmRenderMessageBoxPage

This function renders the message box page.

rowRenderMessageBoxPageContents

This function prepares the HTML that will render the contents for the message box page.

tableRenderMessageBoxPage

This function renders a message box page.

tableRenderMessageBoxPageButtons

This function renders the message box page submit buttons.


Services Miscellaneous Routines

services\include\lib.asp

The following customer and partner services utility routines provide a variety of miscellaneous processing assistance, and are defined in this file:

bCheckIfThePropertyFeatureIsSupported

This function determines whether the featureID attribute for the specified property is set.

bInvalidDate

This function determines whether a given date is not valid.

bValidateLoginNameChars

This function validates the characters in a login name.

bValidatePasswordChars

This function validates the characters in the string specified by the sPassword parameter.

CheckIfOrderExists

This sub redirects the user or delegated administrator to the services\error\noorder.asp page if the specified order does not exist.

CheckIfProfilesExist

This sub determines whether the specified profiles exist.

dictGetpropertyFromList

This function retrieves the specified property from a list of properties.

dictGetSearchDictionaryForPage

This function retrieves the filter criteria for the current user and page.

GetSearchDictionaryForThisPage

This function stores and retrieves the search criteria for the current user and current page.

iGetCountOfProfiles

This function returns –1 if the sSubAction parameter is equal to the constant SELECTALL_ACTION. Otherwise, it returns the number of profiles in the string specified by the sProfileIDs parameter.

iGetCurrentUserPropertyAccessClass

This function is used in Partner Services to determine whether the current user is a guest, a registered user, or a delegated administrator.

InitializePagingVariables

This sub initializes paging variables for Customer and Partner Services. The iPageNumber and iTotalPages parameters are initialized based on the values of the sAction and bIsProfilePage parameters.

listCloneProfileSchema

This function creates and returns a SimpleList object that contains a copy of the profile schema associated with the page specified by the sPageName parameter.

listGetValidPropertiesForMultiEdit

This function creates, initializes, and returns a SimpleList object that contains those profile properties from the SimpleList object specified by the listProfileSchema parameter that are valid participants in the current multi-edit operation.

listReConstructPropertiesSchema

This function reconstructs the profile schema to include the properties that have failed validation.

PopulateOrderSearchCriteria

This sub retrieves search criteria related to an order from the HTTP request and places it into the passed Dictionary object. It also performs validation for some date-related criteria.

PopulateProfileSearchCriteria

This sub retrieves search criteria related to a profile from the HTTP request and places it into the passed Dictionary object. It also performs validation for some date-related criteria.

ReDirectToPage

This sub generates a URL for the specified page and appends name/value argument pairs based on the corresponding values in the arrKeys and arrValues array parameters. It then redirects the user using the constructed URL.

RelocateRecordPointer

This sub initializes local variables used in the paging mechanism of the page that lists orders. It also sets the current record in the Recordset object specified by the rs parameter to the beginning of the specified page number.

SetGlobalPagingVariables

This sub sets the global paging variables depending on the local variables passed to the sub.

sGetDisplayValueForProperty

This function gets the display text for properties of type Number.

sGetOrderStatusDetails

This function gets the description for the order status code.

sGetParentDN

This function gets the ParentDN property related to an organization.

sGetSelectActionPropertyName

This function gets the property name for the Select Action button that was clicked.

sGetThisPageProperty

This function gets the page properties.

sGetUserAccessForThisProperty

This function returns the current user access privileges for this property.

sGetUserPartnerDeskRole

This function gets the i_partnerdeskroleflags description for the user.

sGetUserStatus

This function gets the status code description for the user.

TDTag

This function prepares the HTML that will render a data cell in an HTML table.

THTag

This function prepares the HTML that will render a header cell in an HTML table.

TRTag

This function renders a table row.

ValidateFields

This function validates submitted profile form fields retrieved from the HTTP request using the profile schema specified by the listCtrls parameter.

services\include\render_common.asp

The following customer and partner services utility routines are related to the preparation of content for rendering, and are defined in this file:

cellRenderReadOnlyProperty

This function prepares a read-only property to be rendered.

colRenderAdvancedSearchTab

This function adds the advanced search option tab to list-type pages.

colRenderCountryNames

This function prepares the rendering of all country names.

colRenderSimpleSearchTab

This function adds the simple search option tab to list-type pages.

formRenderPagingButtons

This function prepares the HTML that will render paging buttons. These buttons are wrapped in a form that gets posted when a paging button is clicked.

htmRenderBlankSpaces

This function renders HTML blank spaces (&nbsp).

htmRenderBoolean

This function renders a check box corresponding to a Boolean property.

htmRenderCountries

This function renders all the country names in an HTML combo box.

htmRenderEmptyRecordSet

This function renders the HTML table for an empty recordset.

htmRenderOrderDateTypes

This function renders the order date type for both user and organization orders.

htmRenderOrderStatusOptions

This function renders the order status options.

htmRenderPartnerDeskRoles

This function renders the user i_PartnerDeskRoleFlags options.

htmRenderSelectEndTag

This function renders the HTML end select tag, </SELECT>.

htmRenderSelectTag

This function renders the select tag.

htmRenderSiteTerm

This function renders a list box corresponding to a SiteTerm property.

htmRenderUserStatusOptions

This function renders the user status options.

rowRenderEditSheetBlankLine

This function prepares the HTML that will render a blank line in an edit sheet table.

rowRenderHeader

This function allows you to put a common toolbar (containing, for example, a Help button) at the top of every page. It currently does nothing.

rowRenderSearchOptionForDate

This function prepares the HTML that will render a row in a table that contains two columns: the property display name, and a pair of text boxes that correspond to a starting and ending date.

rowRenderSearchOptionForInteger

This function prepares the HTML that will render a row in a table that contains two columns: the property display name, and a list box displaying options appropriate for one of four possible properties: user status, partner services role, order status, and types of dates associated with the order.

rowRenderSearchOptionForString

This function prepares the HTML that will render a row in a table that contains two columns: the property display name, and a text box for entering a string value for which to search.

rowRenderStatusInfo

This function prepares the HTML that will render a row in a table that contains one column in which status information is placed based on the values of the parameters.

sGetPageHeading

This function gets the page heading.

sReConstructPageURL

This function re-constructs the page URL and replaces the key values.

sReplaceString

This function replaces or adds the value for a key in a query string with a new value.

tableRenderFooterInfo

This function renders footer information for the current page.


Services Order Routines

services\include\logic_orders.asp

The following customer and partner services utility routines are related to orders and discount logic, and are defined in this file:

AddDiscountMessages

This sub adds a footnote symbol for each discount applied to each line item. The footnote symbol is a "D" plus the campaign ID.

mscsGetOrderGroupWithDiscountsByID

This function retrieves the OrderGroup object associated with the current user, loads the order specified by the iID parameter, adds discount messages, and then returns a reference to the OrderGroup object.

PrepareOrderList

This sub prepares for the calls to the routines formRenderOrderSearchOptions, formRenderOrdersListContents, rowRenderStatusInfo, and tableRenderFooterInfo by initializing the values of all parameters other than the first.

sGetAddressName

This function gets the address name field of the specified address ID in the specified order group.

sGetPaymentMethodString

This function returns the friendly, localizable version of the payment method identifier as a string.

services\include\order_handlers.asp

The following customer and partner services utility routines are related to handling orders, and are defined in this file:

CloseOrderDetailsActionHandler

This sub handles the "close order details" action.

htmOrderDetailsActionHandler

This function provides rendering for the "Order details" action handler.

htmRenderOrderDetailsForIDs

This function redirects the user back to the order list page, because multiple orders cannot be viewed at once.

PrepareCloseOrderDetailsAction

This sub prepares for the call to the sub CloseOrderDetailsActionHandler by initializing the values of the passed parameters.

PrepareOrderDetailsAction

This sub prepares for the call to the function htmOrderDetailsActionHandler by initializing the value of the iProfileCount parameter.

RedirectOrderDetailsForIDs

This sub is used to redirect the user to a page from which they can choose which order to retrieve details for.

services\include\render_orders.asp

The following customer and partner services utility routines are related to preparing password-related content for rendering, and are defined in this file:

arrPopulateOrderHeaderDetails

This function populates an array with the details of an order in preparation for rendering.

formRenderOrderContents

This function prepares the HTML that will render an order details form.

formRenderOrderSearchOptions

This function prepares the HTML that will render either a simple or advanced order searching form, based on the value of the sCriteria parameter.

formRenderOrdersListContents

This function prepares the HTML that will render an orders list form.

htmRenderOrderDetails

This function renders the order details.

htmRenderOrderList

This function renders the order list.

rowRenderAdvancedSearchOptionsForOrders

This function prepares the HTML that will render advanced search options within the orders form in Partner Services.

rowRenderLineItemHeader

This function prepares the HTML that will render the header row for a table of line items in an order.

rowRenderListHeadingForOrders

This function prepares the HTML that will render the header row for a table of orders.

rowRenderSimpleSearchOptionsForOrders

This function prepares the HTML that will render simple search options within the orders form in Partner Services.

sRenderAddress

This function renders an address dictionary.

tableRenderOrdersListContents

This function renders a table of orders, including hidden fields containing the order number for each record.

tableRenderOrdersListTasks

This function renders a toolbar containing tasks that can be performed on an order in the list. By default, this will show a button displaying the text stored in the MessageManager L_ORDERDETAILS_ACTION_BUTTON message and allows the user to see order details.

tblOrderDetailsTasks

This function renders a CANCEL_ACTION button for use in rendering the order details, and is used when the user wants to close the displayed page.

tblRenderOrderDetailsContents

This function displays order header and line items in an table format.

services\include\requisition.asp

The following customer and partner services utility routines are related to order processing, and are defined in this file:

rsGetOrderDetails

This function retrieves the detailed information for the specified order and returns the result as a Recordset object.

rsGetOrdersList

This function retrieves orders based on the specified filter criteria and returns the result as a Recordset object.


Services Password Routines

services\include\password_handlers.asp

The following customer and partner services utility routines are related to handling changes to passwords, and are defined in this file:

ChangeActionHandler

This function handles the "change password" action.

htmCancelUpdatePasswordAction

This function cancels the update of the user_security_password property of the user.

UpdatePasswordActionHandler

This function saves the user_security_password property for the user.

services\include\render_password.asp

The following customer and partner services utility routines are related to preparing password-related content for rendering, and are defined in this file:

formRenderChangePasswordPageContents

This function prepares the HTML that will render the change password form.

htmRenderChangePasswordPage

This function renders the change password page.

tableChangePasswordTasks

This function renders Save and Close buttons with their appropriate text messages wrapped in a table.

tableRenderChangePasswordContents

This function renders the Password Change edit page.


Services Profile Routines

services\include\check_profile.asp

The following customer and partner services utility routines are related to checking profiles, and are defined in this file:

bCheckIfProfileExists

This function determines whether a specific user profile already exists.

bIsPropertyValueAdded

This function determines if any property values were added in the edit page.

bProfileHasChanged

This function checks whether the posted values for a profile are different than the values for the profile in the Profile store.

services\include\delete_profiles.asp

The following customer and partner services utility routines are related to deleting profiles, and are defined in this file:

DeleteAllProfiles

This sub deletes all the selected profiles. It also deletes all the profiles returned by the search criteria in the corresponding list page.

DeleteRegisteredUser

This sub deletes a specific registered user profile.

DeleteSelectedProfiles

This sub deletes all the selected profiles.

DeleteSingleProfile

This sub deletes the specified profile.

sGetWhereClauseForCurrentUser

This function gets the WHERE clause for the current user.

services\include\get_profiles.asp

The following customer and partner services utility routines are related to retrieving profiles, and are defined in this file:

GetAttributeValueFromProfile

This function retrieves a property value from a profile.

GetOrgAttributeFromID

This function returns the value of the specified property for an Organization profile.

GetUserPropertyFromID

This function returns the value of a property from the profile of a user.

rsGetOrgDetails

This function retrieves detailed information about the specified organization and returns the result as a Recordset object.

rsGetProfileDetails

This function retrieves detailed information about the specified user or organization profile and returns the result as a Recordset object. It serves as a dispatch function for the functions rsGetOrgDetails and rsGetUserDetails, which do the real work.

rsGetProfilesList

This function retrieves a set of user profiles based on the specified filter criteria, returning the result as a Recordset object.

rsGetUserDetails

This function retrieves the profile for the specified user, and returns the results in a Recordset object.

sGetUserFullName

This function gets the full name (last name + first name) of the user.

sGetUserLoginName

This function gets the login name of a user.

services\include\profiles_common.asp

The following customer and partner services utility routines are related to common profile processing, and are defined in this file:

GetODBCTimeStamp

This function converts a date variant to an Open Database Connectivity (ODBC) timestamp format { ts 'yyyy-mm-dd hh:mm:ss' }.

GetTableNameAndWhereClause

This sub gets the database table name and uses a WHERE clause to search for a given organization ID.

HandleSingleQuote

This function replaces a single quote with a double quote for processing profiles.

sAddCriteriaToQuery

This function builds a Transact-SQL statement.

sAddEndDate

This function adds an End Date clause.

sAddSetClause

This function adds a Set clause.

sAddSQLNumber

This function adds an AND clause for a property of type Number.

sAddSQLString

This function adds an AND "property LIKE value" clause for a property of type String.

sAddStartDate

This function adds a Start Date clause.

sConstructWHEREclause

This function constructs a WHERE clause.

services\include\save_all_profiles.asp

The following customer and partner services utility routines are related to saving all profiles, and are defined in this file:

AddSetClauseAndUpdateUserAccountControl

This function updates the PartnerDeskRole property in the profile of the user.

GetUserAccountControl

This function determines whether to update the User Account Status and User Partner Desk Role properties.

sAddWhereClauseForActiveUsers

This function adds an AND or WHERE "USER_STATUS = ACCOUNT_ACTIVE" clause.

sAddWhereClauseForPartnerRole

This function adds an AND or WHERE "FIELD_USER_PARTNERDESK_ROLE = iPartnerDeskRole" clause.

SaveAllSelectedProfiles

This sub saves all selected profiles.

UpdateUserAccountControlProperty

This function updates the user_account_control property of the profile based on the iPartnerDeskRole and dictSearchOptions parameters.

services\include\save_one_profile.asp

The following customer and partner services utility routines are related to saving a single profile, and are defined in this file:

bHandlePaintingACLsForUsersInAD

This function handles painting of appropriate access control lists (ACLs) for users in Active Directory (adding the users to/from the appropriate Active Directory groups, for example, ADMINGROUP or USERGROUP).

bInsertProfile

This function validates the login name and password of a user and, if successful, creates a new profile.

bInsertProfileDetails

This function inserts property values into an empty profile.

bInsertProperty

This function checks whether the specified property is supported for the user and, if so, adds it to the profile.

bSaveProfileAndRedirect

This function updates the profile properties and redirects the delegated administrator to the services\partner\users.asp page.

bSaveProfileDetails

This function saves the value of each property in the profile. If this is a user profile and Active Directory is used, the access control lists (ACL) are updated.

bSaveProperty

This function saves the specified property.

bSaveReadWriteProperty

This function saves a read/write property.

GetActiveUsersOnly

This function examines the semicolon-separated list of user profile IDs, and returns a similar list containing only those user profile IDs that correspond to users that have an account status of ACCOUNT_ACTIVE.

InsertHiddenProperty

This sub copies particular, hidden properties from the current user profile to the specified profile Recordset object. Currently, only the organization ID of the user can be copied.

SaveCommonValueForAllSelectedRecords

This sub saves a common value to all the selected records.

SaveProfileProperty

This sub saves a property value in a profile.

SaveReadOnlyProperty

This sub saves any read-only property.

SaveSAMAccountNameProperty

This sub saves the SAMAccountName property.

SaveUserAccountControlProperty

This sub saves the User Account Control property (Active Directory specific).

SaveUserParentDNProperty

This sub saves the User ParentDN property (Active Directory specific).

SaveUserPartnerDeskRoleProperty

This sub saves the User Partner Desk Role property.

SaveUserPropertyForID

This sub saves the User property for a user ID.

sGetAdminsOnly

This function determines which users specified by the input parameter sProfileIDs are administrators (for example, the FIELD_USER_PARTNERDESK_ROLE is specified as ROLE_ADMIN) and returns a string that contains the profile IDs of those administrators.

sGetUsersOnly

This function determines which users specified by the input parameter sProfileIDs are users (for example, do not have an admin profile) and returns a string that contains the profile IDs of those users.

UpdateSelectActionPropertyName

This function updates properties changed by the user. The fields associated with the selected properties are updated, as well as the "changed by" and "date updated" values.

UpdateUserPasswordProperty

This sub updates the user password property depending on the current user type (DELEGATED_ADMIN or USER).


Site Development

Although all of the Commerce Server Solution Sites documentation ultimately concerns site development, the topics in this section are oriented toward starting with the existing Solution Sites and modifying them to suit your own business needs.

This section contains:

  • Coding Conventions. Describes the coding conventions used in the Solution Sites.

  • Page Authoring. Describes what you need to do to author new pages in a manner consistent with the existing pages.

  • Page Layout Customization. Describes how to customize the layout of existing and new pages.

  • HTML Styles Customization. Describes the HTML styles used to customize the Solution Sites.

  • Debugging. Describes where to find information about how to debug Active Server Pages (ASP) applications.

  • Optimization. Describes how to optimize the performance of the Solution Sites.


Coding Conventions

Variables and file names in the code for the Solution Sites are named using common conventions. All variables in the code for the Solution Sites can be identified by their prefix. The prefixes used in naming local variables, framework variables, dictionary variables, and file names are defined in the following tables.

Local Variables

Framework Variables

Dictionary Variables

File Name Prefixes

Local Variables

The following table lists the base types used in naming local variables in the code for the Solution Sites.

Prefix | Description
arr | Signifies an array
b | Signifies a boolean
f | Signifies a flag
htm | Signifies an HTML string
i | Signifies an integer
list | Signifies a SimpleList
o | Signifies an object
s | Signifies a non-HTML string

Framework Variables

The following table lists the prefixes used to name framework variables in the code for the Solution Sites.

Prefix | Description
MSCS | Initialized with values from application scope variables.
mscs | Signifies that the variable holds page-scope objects.
m_ | Signifies that the variable holds private page-scope values.

Dictionary Variables

The following table lists the prefix used to name dictionary variables in the Solution Sites code.

Prefix | Description
dict | Signifies the variable is a dictionary variable.

File Name Prefixes

The following table lists the prefix used to name files in the Solution Sites code.

Prefix | Description
_ | Signifies that there is no user interface for the file. This convention only applies to files in the <site name> folder, and not to files in the <site name> subdirectories.


Page Authoring

The Commerce Server Solution Sites implement Web site pages using a structured approach that uses the same page execution model for all pages. For more information about this page execution model, see Page Execution Model. An adequate understanding of the page execution model is crucial to proper page authoring.

Page authoring consists of creating a page that includes the correct files in the correct order, and which then contains the implementation of a subroutine named Main. Ultimately, this subroutine has a single job to do: initialize particular variables to strings that contain the HTML that will produce the desired content areas when rendered. These variables include htmPageContent, htmDiscountBannerSlot, and any variables defined for new custom content areas. The topics in this section provide additional information about this page-authoring scheme.

This section contains:

  • Including Files

  • Implementing the Main Subroutine

  • Implementing Support Routines

  • Controlling Access to the Page

  • Initializing the htmPageContent Variable

See Also

Page Execution Model


Including Files

The first step in authoring a new Web page for your site consists of including the appropriate files in the correct order.

Files should be included using the following inclusion directive:

<!-- #INCLUDE FILE="include/filename.asp" -->

The files to be included can be divided into the following six categories:

  1. Response header information and pipeline choice. You should include one of the two files include\header.asp or include\txheader.asp, but not both. The only differences between them is that the file txheader.asp includes the transaction directive "TRANSACTION=REQUIRES_NEW", and they define the global string variable g_sPipelineProgID differently.

    The file txheader.asp defines the variable g_sPipelineProgID as "PooledTxPipeline" and the file header.asp defines it as "PooledPipeline", defining the use of a pooled pipeline with and without transactions, respectively. This variable is passed as the second parameter to the RunPipe method of the OrderGroup object in the file std_pipeline_lib.asp.

  2. Constant definitions, if any. The file include\const.asp is empty as delivered with the Solution Sites, and need not be included unless you add your own constant definitions to it that are used in the file being authored. The constants used by the existing routines in the Solution Sites are defined in the type library named appconsts.tlb. For more information, see Constants and Constants Reference.

  3. Utility routines. There are a number of include files that define utility routines in various functional categories. Depending on the functionality of the page you are authoring, you will probably end up including a fair number of the following files (the files shown in bold font are more likely to be included in every page you author):
include\addr_lib.asp | include\std_dates_lib.asp
include\analysis.asp | include\std_error_lib.asp
include\catalog.asp | include\std_ordergrp_lib.asp
include\form_lib.asp | include\std_pipeline_lib.asp
include\html_lib.asp | include\std_profile_lib.asp
include\payment.asp | include\std_string_lib.asp
include\std_access_lib.asp | include\std_url_lib.asp
include\std_cache_lib.asp | include\std_util_lib.asp
include\std_cookie_lib.asp |

The presence of these files and the large number of utility routines they provide highlight the importance of learning as much as possible about the functionality they provide. Otherwise, you could end up writing and debugging code that is already provided. For more information about the utility routines, see Utility Routines and Routines Reference.

  4. Discount processing. The file template\discount.asp should be included if the page you are authoring is meant to display discount banners (as opposed to discounts displayed in the basket). If so, your page should include a line of code similar to the following, which uses the RenderDiscounts routine defined in the file template\discount.asp to initialize the variable htmDiscountBannerSlot defined in the file include\setupenv.asp.
    htmDiscountBannerSlot = RenderDiscounts(ProductAffinity, BasketAffinity, nDiscountsToShow)

    The HTML string contents of the variable htmDiscountBannerSlot are then "dumped" to the discount area of the standard page layout in the file template\layout1.asp.

  5. Variable definition and page processing. You must include the file include\setupenv.asp to use the page execution model employed by the Solution Sites. This file creates a large number of global variables, many of which are initialized to values that are stored in the Active Server Pages (ASP) Application object. Code in this file also provides basic functionality required on every page, such as user identification and host name correction. The code on the page ends by invoking a function named Main that serves as the entry point to the page-specific code that provides the HTML that gets rendered as the page you are authoring. For more information, see Implementing the Main Subroutine.

  6. Page layout. The last file you should include in the page you are authoring should be one of the two files template\layout1.asp or template\no_menu.asp (but not both). The former provides the standard page layout provided with the Solution Sites and the latter provides the more minimal (no menus) layout used in some of the pages within the Solution Sites (for example, welcome.asp and login\login.asp). For more information about the page layouts provided with the Solution Sites, see Page Layout.

    You may determine that your site should use more than the two layouts included with the Solution Sites. In this case, you can develop one or more alternative layout pages, modeled on the files template\layout1.asp and template\no_menu.asp. You would then include an alternative layout page as the last include file on the page you are authoring.

See Also

Page Execution Model


Implementing the Main Subroutine

Every page you author that uses the standard page execution model supported by the Solution Sites must implement a routine called Main (implemented as a sub rather than a function). This routine is called near the end of the processing in the file include\setupenv.asp. The routine Main has several responsibilities, as follows:

  • Initialize the variable htmPageContent, which is defined in the include\setupenv.asp file. This variable should be initialized to a string containing the HTML that you want rendered in the content area of the page you are authoring.

  • Where appropriate, initialize the variable htmDiscountBannerSlot, which is defined in the include\setupenv.asp file. This variable should be initialized to a string containing the HTML that you want rendered in the discount area of the page you are authoring.

  • Where appropriate, initialize any additional variables that have been defined to pass HTML content between the routine Main and a customized layout file.

  • Whatever other processing is appropriate for the page you are authoring, such as adding items to the basket, performing checkout processing, and so on.

For example, perhaps the simplest implementation of the routine Main looks something like this:

Sub Main
    htmPageContent = "This is the content area."
End Sub

Another example, which displays the same string in bold font, looks something like this:

Sub Main
    htmPageContent = "This is the content area."

    ' Function Bold from include\html_lib.asp
    htmPageContent = Bold(htmPageContent)
End Sub

Realistically, the routine Main will be much more complex, often involving calls to Commerce Server objects, and to the various utility routines that are available when the files in which they are implemented are included in the page you are authoring. It is important to familiarize yourself with both of these types of resources so that you do not spend unnecessary time re-writing functionality that already exists. Unfortunately, there is no effortless way to gain this familiarity other than by the careful reading of the supplied documentation and examination of the existing code for the Solution Sites.

There are numerous examples of Main routines throughout the pages of the Solution Sites. You should study a number of these to familiarize yourself with how the HTML content assigned to the variable htmPageContent is created in the pages that already exist.

See Also

Implementing Support Routines

Page Execution Model


Implementing Support Routines

The code required to create the page content that is assigned to the variable htmPageContent is often complex enough that good coding practices dictate that you should divide it into multiple routines. The routine Main always serves as the entry point, called by the code in the file include\setupenv.asp. To keep the routine Main from becoming too large and unwieldy, you should often create additional routines that Main calls in the course of performing its job. By convention, these routines typically appear after the routine Main in the page being authored. There are many examples of this in the pages that are delivered with the Solution Sites.

The challenge will be to determine whether the functionality supplied by any supporting routines that you create are specific to the page being authored, or are possibly more general in nature. If they are of the former type, they should be implemented directly in the page being authored. If they are of the latter type, you should create a one or more include files to contain the new utility routines. (Avoid adding new routines to the existing include files so that it is easier to upgrade new releases of the existing files.)

Another challenge is to acquire an adequate understanding of the functionality supplied by the existing utility routines so that you do not spend unnecessary time re-implementing functionality that already exists.

See Also

Implementing the Main Subroutine

Page Execution Model


Controlling Access to the Page

You may want to control access to some of the pages that you author. If so, you should call one of the two routines EnsureAuthAccess or EnsureAccess as the first processing performed in the routine Main. If the page you are authoring is meant to be viewable by any user on your site, regardless of whether they are classified as anonymous, guest, or authenticated, and you do not care about tracking these users, simply do not call either of these two routines.

The routine EnsureAuthAccess provides the most restrictive level of control for a page. When you call this routine, any users who are not authenticated are prohibited from viewing the page, and they are re-directed to the login page. In other words, only users who are authenticated to Internet Information Services (IIS) (using Basic/Integrated Windows authentication) or have an Auth ticket can get past this routine and view the page. Such users must be both registered and logged in.

The routine EnsureAccess provides a less restrictive level of control for a page. When you call this routine, any user who has not been identified is prohibited from viewing the page. In other words, only users who are authenticated to IIS (using Basic/Integrated Windows authentication) or have either an Auth ticket or a Profile ticket can get past this routine and view the page.

If anonymous users attempt to view a page protected by the routine EnsureAccess, and the site is not configured to require login, an attempt is made to issue them a Profile ticket. If this succeeds, their status is upgraded from "anonymous" to "guest", and they are allowed to view the page.

For more information about authentication of users and the login processing provided with the Solution Sites, see Authentication and Login, respectively.

See Also

User Tracking

Authentication

Login

Page Execution Model

EnsureAccess

EnsureAuthAccess


Initializing the htmPageContent Variable

As mentioned in Implementing the Main Subroutine and Page Execution Model, one of the responsibilities of the Main routine in a particular page you are authoring is to establish the value of the variable htmPageContent prior to returning. Once the Main routine has returned, execution proceeds to the page layout code, which uses the value of the variable htmPageContent as the HTML to be rendered in the content area of the page.

Many of the utility routines that exist in the various include files are designed to help create the HTML tags that end up within the string assigned to the variable htmPageContent. One particularly basic set of such routines can be found in the file include\html_lib.asp.

The following example shows a function from the file include\html_lib.asp that wraps the string passed to it in tags that will cause it to be rendered in bold font:

Function Bold(ByVal s)
    Bold = "<B>" & s & "</B>"
End Function

Suppose you have already initialized the variable htmPageContent to contain the string "To be or not to be" that you want to display in the content area of the page, and that you want the string to be rendered in bold font. You could call the function Bold as follows:

htmPageContent = Bold(htmPageContent)

The resulting string is now "<B>To be or not to be</B>".

Another function in the file include\html_lib.asp, named PTag, can be used to wrap a string in paragraph tags. If the new value of the variable htmPageContent is passed to the PTag function, the new value would be "<P><B>To be or not to be</B></P>".

These very simple functions illustrate an important aspect of the design of the utility routines designed to help create the value stored in the variable htmPageContent, and which follows naturally from the nature of HTML markup itself: the construction of the HTML that gets stored as a string in the variable htmPageContent should begin from the innermost, simplest aspects of the page, and build toward the more complex constructs. This methodology makes heavy use of string concatenation, but does provide a higher-level programming approach, allowing you to change styles globally later. It also has the advantage of allowing content to be cached. For more information about caching content, see Caching.

Consider the following, simplified example, which uses three functions to build a table:

Function WrapTable(ByVal s)
    WrapTable = "<TABLE>" & s & "</TABLE>"
End Function

Function WrapRow(ByVal s)
    WrapRow = "<TR>" & s & "</TR>"
End Function

Function WrapCell(ByVal s)
    WrapCell = "<TD>" & s & "</TD>"
End Function

Given the following four string values, these functions can be used to build a 2-by-2 table as shown below:

Dim sRow1Col1, sRow1Col2, sRow2Col1, sRow2Col2, htmTemp1, htmTemp2
sRow1Col1 = "r1,c1"
sRow1Col2 = "r1,c2"
sRow2Col1 = "r2,c1"
sRow2Col2 = "r2,c2"

htmTemp1 = WrapCell(sRow1Col1) & WrapCell(sRow1Col2)
htmTemp1 = WrapRow(htmTemp1)
htmTemp2 = WrapCell(sRow2Col1) & WrapCell(sRow2Col2)
htmTemp2 = WrapRow(htmTemp2)
htmPageContent = htmTemp1 & htmTemp2
htmPageContent = WrapTable(htmPageContent)

This code will produce the following string:

<TABLE><TR><TD>r1,c1</TD><TD>r1,c2</TD></TR><TR><TD>r2,c2</TD><TD>r2,c2</TD></TR></TABLE>

This string will render as follows:

r1,c1 | r1,c2
r2,c2 | r2,c2

For purposes of illustration, this example is simpler than the actual table building routines in the file include\html_lib.asp (RenderTable, RenderTableDataRow, and RenderTableHeaderRow), which are designed such that the data and the formatting attributes for the cells in a table are passed in the form of arrays, avoiding the need to explicitly wrap each cell in TD tags as shown in this example. Nevertheless, the example does show how the string value assigned to the variable htmPageContent is built from the inside out.

Reviewing the provided utility routines will give you an understanding of the functionality provided. The existing pages show how these utility routines are used to build the HTML content that is assigned to the variable htmPageContent in the various functions named Main, and then displayed in the content area in one of the two layout files template\layout1.asp or template\no_menu.asp (or in another layout file of your own design).

See Also

Implementing the Main Subroutine

Page Execution Model


Page Layout Customization

The page execution model for the Commerce Server Solution Sites separates the content displayed on a page from the layout of that content. For a thorough explanation of this execution model, see Page Execution Model.

As delivered, the Commerce Server Solution Sites provide two different page layout files: template\layout1.asp and template\no_menu.asp. The no_menu.asp file does not incorporate the menu portion of the page, as constructed by the include file template\menu.asp. It also does not incorporate the areas reserved for discounts and a footer that are found in the file template\layout1.asp. For more information about how these two layout pages divide the rendered page into different areas, and where the content for those areas comes from, see Page Layout.

In order to maintain the separation of content and high-level page layout employed by the Solution Sites, you must understand and conform to the existing mechanisms. There are three ways in which the layout of Web site pages can be changed, the first two concern the high-level layout of the relative positions of the main areas of the page; the third concerns the layout of the content within a given area of the page.

This section contains:

  • Changing the Layout of Existing Pages

  • Creating New Content Sources

  • Adding New Pages with a Different Layout

  • Changing the Layout Within a Single Page Area


Changing the Layout of Existing Pages

The easiest way to change the high-level page layout for existing pages is to modify one of the two files template\layout1.asp or template\no_menu.asp, as appropriate for the set of pages you want to change. You must continue to use the existing include files and content variables to populate the existing areas of the page, but you can alter the relative positions of those areas, remove one or more existing areas, or add new areas of your own design.

The HTML code used within the layout pages consists of HTML markup directives, a discussion of the details of which is beyond the scope of this document.

If you add new areas to the page, you will need to choose the type of the content source to associate with those new areas. You must decide between using a new include file or a new content variable to supply the content. For more information, see Creating New Content Sources.

See Also

Page Layout

Page Execution Model


Creating New Content Sources

If you add new areas to the page, or want to change the content source of one or more existing areas, you will need to choose the type of the content source to associate with those areas. The choice between an include file and a content variable is largely dependent on how custom the content in the new area needs to be, from page to page. If it is not different on each page, the include file approach is best because you can avoid modifying every page in the site that uses that layout design. You can also use a content variable that is initialized somewhere in the code that already gets executed for every page. For more information about where such code would need to be added, see Standard Execution Flow.

If the content in the new area needs to be quite different for every page being rendered, the best approach may be to define a new content variable and use it in a fashion similar to the variable htmPageContent. The variable can be defined in the file include\setupenv.asp, and initialized somewhere within the routine Main in each page that is using the modified layout.

See Also

Page Layout

Page Execution Model

Changing the Layout of Existing Pages

Adding New Pages with a Different Layout


Adding New Pages with a Different Layout

If you add new pages to your site for which you want a different high-level layout, in addition to the two existing page layouts, you should author a new layout page to be included in the new pages being authored. To preserve the existing page execution model of the Solution Sites, model the new layout page on the existing layout pages template\layout1.asp and template\no_menu.asp, and then use the new layout page as the last included file in the new pages being added to the site.

You may or may not use the same set of include files and content variables that are used by the existing layout pages, or you may use some subset of those content sources. If you have areas in the new page layout for which the content comes from a new source, you will need to decide how to implement that new source. For more information about creating new content sources, see Creating New Content Sources.

See Also

Page Layout

Page Execution Model


Changing the Layout Within a Single Page Area

Another aspect of page layout occurs at a lower level, within each of the content areas defined in the files template\layout1.asp and template\no_menu.asp. Changing layout at this lower level consists of changing the HTML code that comes from one or more of the content sources. The layout with the content area controlled by the string assigned to the variable htmPageContent is an obvious example of changing low-level layout. Since the content area is one of the large areas of the page, it is normal to expect its layout to vary more from page to page. Indeed, the content area being different is, to a large extent, what makes one page different from another. Therefore, changing the code that creates the contents of the variable htmPageContent for a particular page might only change the content area for that one page. Whether your code changes affect content on more than one page is largely dependent on where you make the changes. If your changes are in the routine Main or its supporting routines in the page file itself, only that page will be affected. If your changes are made to one or more of the utility routines in the files that are included in multiple pages, every page that includes any of the modified files will be affected.

A more interesting aspect of low-level layout changes concerns the areas of the page other than the content area associated with the variable htmPageContent. If you make changes in the HTML produced within one or more of the files included in either the template\layout1.asp or the template\no_menu.asp files, those changes will be seen throughout your site on whatever pages incorporate those files through the layout page that they include. The files in this category, as delivered in the Solution Sites, are:

  • template\banner.inc (included in layout1.asp and no_menu.asp)

  • template\navbar.inc (included in layout1.asp)

  • template\menu.asp (included in layout1.asp)

  • template\footer.inc (included in layout1.asp)

The other file that produces HTML content is the file template\discount.asp. The HTML produced by the script in the file discount.asp is passed back to the file template\layout1.asp using the variable htmDiscountBannerSlot. The entry point in this file is the RenderDiscounts routine. This routine is only called in the two files basket.asp and product.asp.

All other pages in the site do not display the discounts area, for one of two reasons. First, they might include the alternative layout file template\no_menu.asp, which does not include the contents of the variable htmDiscountBannerSlot in the content it produces. Second, the variable htmDiscountBannerSlot might remain initialized to the empty string because a call to the routine RenderDiscounts is never made.

See Also

Page Layout Variables

Page Layout

Page Execution Model


HTML Styles Customization

The style mechanism in the Solution Sites provides most of the advantages of Cascading Style Sheets (CSS) without requiring a browser that supports CSS. The main advantage of this approach is that it provides central management of the appearance of the site. The Solution Sites will work with any browser that supports HTML 3.2. This provides compatibility with a number of older browsers, maximizing the number of potential customers. If this level of compatibility is not an issue for you, you can change these styles to specify client-side CSS styles.

All of the HTML styles used in the Solution Sites are stored in a Dictionary object that is created and initialized by two functions. These functions are GetSiteStyles and AddPartnerAndCustomerServiceStyles. During application initialization, the Main function in the global.asa file, which is contained in the file global_main_lib.asp, calls the GetSiteStyles function to create the MSCSSiteStyle dictionary. The GetSiteStyles function sets the basic styles, and then calls the AddPartnerAndCustomerServiceStyles function to add the styles used in the Partner and Customer services. As shipped, the service-related styles are only used in the Partner and Customer services; however, they are available throughout the application.

Since the MSCSSiteStyle dictionary is an application variable, using any of the styles is straightforward. The following example sets the Title font style on the text "Title".

   "<FONT" & MSCSSiteStyle.Title & ">" & "Title" & "</FONT>"

Occasionally the Solution Sites use styles in just this way; however, in most cases the styles are inserted into HTML fragments in a wrapper function. These functions are contained in the include\html_lib.asp file. This makes it easier to use the styles and makes it possible to apply styles to an HTML fragment returned by another function. For example, the following code uses the RenderText function to add a style to text returned by the MessageManager object:

htmTitle = RenderText( _
   mscsMessageManager.GetMessage("L_AdvancedSearch_HTMLTitle", sLanguage), _
   MSCSSiteStyle.Title) & CRLF

The MessageManager object is used throughout the Solution Sites to provide multiple language support. See Internationalization Features for more information about multiple language support.

You can customize the styles that are included with the Solution Sites.

This section contains:

  • Customizing Styles


Customizing Styles

There are several ways to customize the appearance of your site. You can apply different styles in the code; for example, you could replace a BorderedTable style with a BorderlessTable style in a particular routine or ASP page. This only changes this one location. You can customize the value of the style; for example, you could change the width of the border in the BorderedTable style to "2". This would change the look of every table that uses that style. It is a good idea to know where a style is used before customizing it. Styles are used in utility functions as well as display pages, and can be used anywhere in your application. You can search the application files for the string "mscssitestyle.<stylename>" using the Find in Files search functionality to locate all occurrences of a particular style.

Before customizing a style, you must be certain that the syntax for that style will be correct wherever it is used. The wrapper functions in the include\html_lib.asp file insert the style into the HTML fragment without any error checking.

The following topics list the styles in the MSCSSiteStyle dictionary:

  • GetSiteStyles

  • AddPartnerAndCustomerServiceStyles

GetSiteStyles

The GetSiteStyles function sets the following styles:

Table Styles

Attributes: ALIGN, WIDTH, BORDER, CELLSPACING, CELLPADDING

BorderlessTable = " BORDER='0'"

BorderedTable = " BORDER='1' CELLSPACING='0' CELLPADDING='5'"

AddressTable = " BORDER='1' CELLSPACING='2' CELLPADDING='5'"

Form = " BORDER='0' CELLSPACING='10'"

MenuTable = " BORDER='0' CELLSPACING='10'"

NoBorderTable = " BORDER='0'"

BasketTable = " BORDER='1' CELLSPACING='0' CELLPADDING='1'"

Table Row (tr) Styles

Attributes: ALIGN, VALIGN

TRLeft = " ALIGN='Left'"

TRCenter = " ALIGN='Center'"

TRRight = " ALIGN='Right'"

TRTop = " VALIGN='Top'"

TRMiddle = " VALIGN='Middle'"

TRBottom = " VALIGN='Bottom'"

Table Heading and Data (th/td) Styles

Attributes: NOWRAP, ROWSPAN, COLSPAN, WIDTH, HEIGHT, ALIGN, VALIGN,

TDLeft = " ALIGN='Left'"

TDCenter = " ALIGN='Center'"

TDRight = " ALIGN='Right'"

Font Styles

Attributes: SIZE, COLOR

SiteName = " SIZE='+3'"

Title = " SIZE='+1'"

MenuHead = ""

MenuBody = ""

BasketHeader = ""

BasketData = ""

Body = ""

Warning = " COLOR='Red'"

Tip = " COLOR='Red'"

Currency Styles

BaseCurrency = ""

AltCurrency = " COLOR='Red'"

Input Styles

TextBox = ""

PasswordBox = ""

CheckBox = ""

RadioButton = ""

Button = ""

Link = ""

ListBox = ""

AddPartnerAndCustomerServiceStyles

The AddPartnerAndCustomerServiceStyles function sets the following styles:

Search Box Styles

header

SearchHeaderTable = " BGCOLOR='#FFFFCC' border='1' cellspacing='5' cellpadding='0'"

body

SearchBodyTable = " BGCOLOR='#FFFFCC' width='100%'"

EditSheet (table) Styles

Grid

ContentsHeaderTable = " BGCOLOR='#CCFFCC' border='0' width='100%' cellspacing='0' cellpadding='0'"

Header

ContentsBodyTable = " BGCOLOR='#FFFFCC' border='0' width='100%' cellspacing='0' cellpadding='0'"

Group Divider

ContentsGroupTable = " BGCOLOR='#CCCCFF' border='0' width='100%' cellspacing='0' cellpadding='0'"

ListSheet (results table) Styles

Header

ListContentsHeaderTable = " BGCOLOR='#CCCCFF' BORDER='0' CELLSPACING='0' CELLPADDING='2' WIDTH='100%'"

Grid

ListContentsBodyTable = " BGCOLOR='#CCFFCC' BORDER='1' CELLSPACING='0' CELLPADDING='2' WIDTH='100%'"

Table Styles

StatusTable = " BGCOLOR='#FFFFFF' border='0' width='100%' cellspacing='0' cellpadding='0'"

FooterTable = " BORDER='0' WIDTH='100%' CELLSPACING='0' CELLPADDING='0'"

MsgBoxTitleTable = " BGCOLOR='#CCCCCC' border='0' width='60%' height='5%' cellspacing='0' cellpadding='0'"

MsgBoxHeadingTable = " BGCOLOR='#CCCCCC' border='0' width='60%' heigth='5%' cellspacing='0' cellpadding='0'"

MsgBoxBodyTable = " BGCOLOR='#CCCCCC' border='0' width='60%' heigth='15%' cellspacing='0' cellpadding='0'"

MsgBoxFooterTable = " BGCOLOR='#CCCCCC' border='0' width='60%' heigth='5%' cellspacing='0' cellpadding='0'"

Font Styles

StatusString = " COLOR='BLACK' FACE='Verdana' SIZE='4'"

SearchHeaderString = " COLOR='BLACK' FACE='Verdana' SIZE='5'"

SearchBodyString = " COLOR='BLACK' FACE='Verdana' SIZE='4'"

ContentsHeaderString = " COLOR='BLACK' FACE='Verdana' SIZE='5'"

ContentsGroupString = " COLOR='BLACK' FACE='Verdana' SIZE='5'"

ContentsBodyString = " COLOR='BLACK' FACE='Verdana' SIZE='4'"

FooterString = " COLOR='BLACK' FACE='Verdana' SIZE='4'"

MsgBoxTitleString = " COLOR='BLACK' FACE='Verdana' SIZE='4'"

MsgBoxHeadingString = " COLOR='BLACK' FACE='Verdana' SIZE='4'"

MsgBoxBodyString = " COLOR='BLACK' FACE='Verdana' SIZE='4'"

MsgBoxFooterString = " COLOR='BLACK' FACE='Verdana' SIZE='4'"

See Also

Initialization


Debugging

It is beyond the scope of this documentation to teach you how to debug Web applications. However, this topic directs you to sources of additional information about how to debug potential problems that may occur with your use of Commerce Server 2000 and the Solution Sites.

This topic contains:

  • Articles About Debugging

  • Debugging Tools

  • Articles on ASP Development

Articles About Debugging

The Microsoft Developer Network (MSDN) at http://msdn.microsoft.com contains a large volume of information related to debugging. You may find the following articles instructive (search for them by title, using "Exact Phrase" as your search criteria and including both "MSDN Library" and "Web Workshop" in your search scope):

  • Microsoft Visual InterDev 6.0 Debugging

  • Debugging Distributed Web Applications

  • Debugging Applications and Components

  • Troubleshooting Components Under ASP Technology

  • Debugging ASP Applications

  • Debugging Script Objects in ASP Pages for Microsoft Visual InterDev 6.0 Developers

You can find additional information about debugging in the technical articles on the Visual InterDev Web site at http://msdn.microsoft.com/vinterdev.

Debugging Tools

One of the primary tools used to develop Microsoft Commerce Server 2000 was Microsoft Visual Studio, which includes Microsoft Visual InterDev, Microsoft Visual C++, and Microsoft Visual Basic. It is the recommended integrated development environment for working with Commerce Server.

The Microsoft Developer Network (MSDN) at http://msdn.microsoft.com contains information about additional tools that can be useful when debugging Web applications, including how to acquire these tools. Search for the indicated tool by title, using "Exact Phrase" as your search criteria and including both "MSDN Library" and "Web Workshop" in your search scope:

  • Microsoft Script Debugger. Search string: "Microsoft Script Debugger for Internet Explorer".

  • IIS Exception Monitor. Search string: "Troubleshooting with Exception Monitor".

  • User Mode Process Dump. Search string: "OEM Support Tools".

  • WinDbg. The WinDbg files are installed when you install the developer tools included with the Platform Software Development Kit (SDK). For information on using WinDbg, see the help file windbg.hlp, which is included with WinDbg.

  • System Monitor, Performance Logs and Alerts, and Event Viewer. These three Microsoft Management Console (MMC) snap-ins are included, by default, in the Commerce Server Manager console. You may find them useful for debugging and performance tuning your Web site.

When debugging pipelines, you should consider turning on logging for pipeline execution to help see where failures occur.

The Order sitelet in the Commerce Server 2000 SDK includes the script file DumpOrder.vbs (in the source\pipeline sub-folder). This file is designed to be used with the Scriptor pipeline component. It can be used to dump the contents of an OrderForm object at arbitrary points in the execution of the Order Processing pipeline (OPP). For more information, see the instructions at the beginning of the file DumpOrder.vbs.

Articles on ASP Development

An important way reduce the occurrence of bugs in the first place is to understand and apply various best practices. The Microsoft Developer Network (MSDN) at http://msdn.microsoft.com contains such information, discussing best practices for Web site development using Active Server Pages (ASP). Search for the following articles by title, using "Exact Phrase" as your search criteria and including both "MSDN Library" and "Web Workshop" in your search scope:

  • "Improving ASP Application Performance"

  • "ASP Component Guidelines"

  • "Load Test Your ASP Application"

  • "ASP Guidelines"


Optimization

Monitoring and measuring the performance of your site is the first step in optimizing the performance of your Web site. This section describes some of the performance measuring tools available through Microsoft, and some of the most common optimization opportunities in the Solution Sites.

This section includes:

  • Performance Measuring Tools

  • Optimization Opportunities


Performance Measuring Tools

Before making any changes to the code in the Solution Sites code, you should measure the performance of your site. To make the most of the time you spend optimizing the performance of your site you must determine which optimizations yield the greatest savings with a minimum amount of development time. Measurements should be done with a proper load, and it is best to measure the all the pages and major components individually, so you can see which components are taking the most time overall. There are many tools available to help you measure the performance of your site.

Microsoft Web Application Stress (WAS) Tool

Microsoft Network Monitor

SQL Server Profiler

System Monitor

Visual Studio Analyzer

Microsoft Web Application Stress (WAS) Tool

This tool reproduces the effects of multiple browsers requesting pages from a Web application. It masks some of the complexities of Web server testing, and it creates an environment similar to production so that problems can be found before you deploy your site. For more information about WAS, see the Microsoft Developer Network at http://msdn.microsoft.com/ and search for the Web Application Stress Tool.

Microsoft Network Monitor

This tool monitors real-time traffic on your network, analyzes previously captured data, and extracts data from defined protocol parsers. Network Monitor is also useful for capturing packets between browsers, Web servers, and SQL Server. It provides valuable timing information as well as packet size, network use, and many other statistics that can be valuable for managing system performance. For instructions about installing Network Monitor, see http://msdn.microsoft.com/library/winresource/dnwin95/S6493.HTM.

SQL Server Profiler

The SQL Server Profiler tool captures Microsoft SQL Server events from a server. The captured events are saved in a trace file that can be analyzed later when trying to diagnose a problem. You can use the trace files to step through problem queries to find the cause of the problem, find and diagnose slow-running queries, or capture the series of SQL statements that lead to a problem. The saved trace file can then be used to replicate the problem on a test server where the problem can be diagnosed. For more info see http://www.microsoft.com/sql/techinfo/perftuninguide.htm.

System Monitor

This tool collects extensive data about the ways in which hardware resources and system services are used on your site. Use System Monitor to collect and view real-time performance data on a local computer or from several remote computers. Data can be presented in a printable graph, histogram, or report view. You can incorporate System Monitor functionality into Microsoft Word or other applications in the Microsoft Office suite to link gathered data with Microsoft Word or Microsoft Excel documents. You can also create reusable monitoring configurations that can be installed on other computers using the Microsoft Management Console. For more information, see http://support.microsoft.com/support/kb/articles/Q248/3/45.asp.

Visual Studio Analyzer

This tool analyzes performance, isolates page faults, and understands the structure of your distributed applications. Visual Studio Analyzer can be used with any application built with the Microsoft Visual Studio tools. Several Microsoft technologies, (COM, ADO and COM+) are shipped with the ability to provide information to Visual Studio Analyzer. In addition, you can customize your own applications to provide information to Visual Studio Analyzer. For more information, see http://msdn.microsoft.com/library/periodic/period99/analyzer.htm.


Optimization Opportunities

After measuring your site for bottlenecks and other performance issues, and setting performance goals, you can start tuning your site. This topic discusses some of the most common optimization opportunities and their solutions.

Creating a static homepage

Profiling anonymous users

Limiting the number of constants

Tuning the size of existing caches

Caching custom content

Removing unused code

Porting code to Visual Basic

Creating a static homepage

Because static pages do not require database lookups or other Active Server Pages (ASP) processing, you can reduce latency by creating a static home page. Any reduction in dynamic content improves the capacity of your servers. However, creating a static home page may create difficulties if you have users whose browsers do not support cookies.

Profiling anonymous users

Implicit profiling of anonymous users can be a great way to collect information about how users interact with your site. However, the cost of the storing this information may not be beneficial if the information is not analyzed on a regular basis to improve your Web site. To stop profiling anonymous users, change the Site privacy options App Default Config property to two (2). For more information about changing App Default Config settings, see "Configuring App Default Config Resource Properties" in Commerce Server 2000 Help.

Limiting the number of constants

Measurements indicate that having more than thirty-three constants in an ASP page causes Web site performance to degrade. One solution to this problem is to put all the constants into a type library.

Tuning the size of existing caches

When determining the size of a cache, consider the following: memory requirements of each fragment, the memory on your computer, the hit rate of a particular cache entry, and latency costs to compute each cache entry. In general, expensive calls should be stored in a larger cache than cheaper calls. For example, you may want to set the product cache size to 100,000 and the category cache size to 1,000 if product calls are more expensive than category calls, and the performance measurements indicate that although the product cache size is large, it performs faster than the respective property calls.

Caching custom content

Typically caching content is a much more efficient way to store content than calling object properties each time information is needed. Thus, if you add custom content to your Web site, you should look into caching that content.

When adding a new type of fragment cache, you must first initialize it in the file global_cache_lib.asp, which is similar to the initialization for the ProductList Fragment Cache. If the cache is catalog related, and you determine that it should be refreshed when the catalog changes, you must also add an oCacheManager.RefreshCache entry in the file BDRefresh.asp, so that when changes are made to the cache it will write to a table that will force the page to refresh with the newly updated information.

To determine which fragments are cached and which are not, uncomment the following three lines of debug code in the LookupCachedFragment function in the file include\std_cache_lib.asp:

If Not IsNull(LookupCachedFragment) Then
   LookupCachedFragment = "<TABLE BORDER=1><TR><TD>Cached: " _
   & sCacheName & BR & sCacheItemName& sLanguage & "</TD></TR><TR><TD>"_
   & LookupCachedFragment & "</TD></TR></TABLE>"
End If

This function puts a table cell around all the cached content, so that you visualize which content is cached.

For more information about creating a custom cache, see "Code to Implement Custom Cache Components" in Commerce Server 2000 Help.

Removing Unused Code

If you do not implement all of the features available in the Solution Sites there is no reason to keep unnecessary code. For example, the user authentication code can be simplified if you do not need to support all of the login permutations.

Porting code to Visual Basic

Porting your ASP code to compiled Visual Basic is a fairly easy way to achieve additional performance in your site. However, there are many arguments to consider before porting your ASP code to Visual Basic. Deployment, versioning and debugging will be more difficult.


File Organization

The Retail and Supplier Solution Sites are implemented using the exact same set of files. The sites differ with respect to a few configuration values in the App Default Config settings, yielding their different behaviors. For more information about the configuration differences between the Retail and Supplier Solution Sites, see Configuration.

This section describes the common folder structure used by both Solution Sites, and describes the files in each folder. The topic structure in this section generally mirrors the file folder structure of an unpackaged Solution Sites, with each folder topic describing the purpose of the files in the corresponding folder, and containing one topic for each file in the folder. The file topics describe the purpose of each file, and provide links to topics in the Routines Reference, one for each routine in the file.

This section contains:

  • Root Folder

  • AuthFiles Folder

  • Error Folder

  • Images Folder

  • Include Folder

  • Login Folder

  • Pipeline Folder

  • Services Folder

  • Template Folder


Root Folder

The following files are contained in this folder.

File | Description
_additem.asp | Adds an item to the user's basket and then logs the action as a Commerce event.
_delall.asp | Deletes all items from the user's basket.
_delitem.asp | Delete an item from the user's basket and then logs the action as a Commerce event.
_editqty.asp | Used to change the quantity of an item in the user's basket.
_recvpo.asp | Receives a purchase order form from BizTalk Server, transforms the data into a Dictionary object, adds it to the order group, runs the pipeline\recvpo.pcf pipeline, and, on validation, saves the new order.
_setadrs.asp | Used to set the shipping or billing address in the user's basket after picking an address from the address book.
_setship.asp | Used to set the shipping method in the user's basket.
addrbook.asp | Retrieves and displays the address book for editing.
addrform.asp | Displays a page for editing the billing or shipping address.
basket.asp | Initializes and displays the basket page.
BDRefresh.asp | Called from Commerce Server Business Desk, this file refreshes all appropriate caches.
category.asp | Displays the products and categories under a specific category.
confirm.asp | Initializes and displays the confirmation page for an order.
crdtcard.asp | Displays an input screen for credit card information when checking out.
csapp.ini | Contains the site and application names.
default.asp | Prepares and renders the home page.
dispatch.asp | Dispatches the user to the payment method page (crdcard.asp or po.asp) when checking out.
fileslst.txt | This file is not used by the Solution Sites.
global.asa | Creates and initializes global objects and variables, and places them in Application scope.
newaddr.asp | Adds, edits, or deletes address book addresses.
opt-out.asp | Adds the user to the opt-out list of a direct mail campaign.
pickship.asp | Displays a page for picking the shipping method.
po.asp | Displays an input screen for purchase order information when checking out.
poschema.xml | Contains the XML-Data Reduced (XDR) schema for purchase order forms.
product.asp | Displays the details for a given product.
rc.xml | Defines localizable string constants.
ReceiveStandard.asp | This file is a standard BizTalk Server receive page used for receiving orders through BizTalk Server over HTTP.
redir.asp | Handles click-throughs and other events on marketing campaign items. It invokes a pipeline that records the events both in memory and to the Internet Information Services (IIS) log file.
RefreshApp.asp | Called from Business Desk, this file refreshes the definitions associated with the Profiling System.
search.asp | Performs a free text search and displays the results.
ServiceReminder.asp | Serves as an example for generating personalized e-mail using direct mail.
srchdept.asp | Displays a list of specification searchable categories from a catalog.
stepsrch.asp | Performs a product specification search and displays the results.
summary.asp | Displays a summary of the basket order, including the grand total.
unpack.vbs | Used when a site is unpackaged using Commerce Server Site Packager. Sets up the error\500error.asp page to be a custom error handler for the site, as well as certain App Default Config resource properties.
welcome.asp | Displays the "Welcome back" message to previously registered users.


_additem.asp

This page is used to add an item to the user's basket and log the action as a Commerce event.

Routines

ApplyVendorInfo

GetProductQuantity

Main

See Also

Analysis Integration

Basket

Root Folder


_delall.asp

This page is used to delete all items from the user's basket.

Routines

Main

See Also

Basket

Root Folder


_delitem.asp

This page is used to delete an item from the user's basket and log the action as a Commerce event.

Routines

Main

See Also

Analysis Integration

Basket

Root Folder


_editqty.asp

This page is used to change the quantity of an item in the user's basket.

Routines

Main

See Also

Basket

Root Folder


_recvpo.asp

This page receives a purchase order form from BizTalk Server, transforms the data into a Dictionary object, adds it to the order group, runs the pipeline\recvpo.pcf pipeline, and, on validation, saves the new order.

Routines

Main

ParseRequestForm

RunOrderPipeline

See Also

BizTalk Server Integration

Root Folder


_setadrs.asp

This page is used to set the shipping or billing address in the user's basket after picking an address from the address book.

Routines

CatchErrors

FetchData

Main

See Also

Address Management

Basket

Root Folder


_setship.asp

This page is used to set the shipping method in the user's basket.

Routines

bIsShippingMethodSupported

CatchErrors

GetShippingMethodNameFromID

Main

See Also

Basket

Root Folder


addrbook.asp

This file retrieves and displays the address book for editing.

Routines

CatchErrors

FetchData

htmRenderAddressBook

htmRenderAddressBookPage

htmRenderAddressRows

Main

See Also

Address Management

Root Folder


addrform.asp

This file displays a page for editing the billing or shipping address.

Routines

CatchErrors

GetAnySavedAddressID

GetDefaultValuesForAddressFormFields

GetSavedAddressID

iValidateSubmittedAddress

Main

SaveAddressToOrderGroup

See Also

Address Management

Root Folder


basket.asp

This file initializes and displays the basket page.

Routines

CheckBasket

CreatePOIndexes

htmRenderBasket

htmRenderBasketWarnings

htmRenderCheckoutButton

htmRenderDiscountMessageGroup

htmRenderDiscountMessages

htmRenderDiscountsApplied

htmRenderPredictions

InitializeBasketPage

Main

PredictedPropToHREF

RenderBasketPage

See Also

Basket

Root Folder


BDRefresh.asp

This file, called from Commerce Server Business Desk, refreshes all appropriate caches.

Routines

sGetScriptError

See Also

Root Folder


category.asp

This file displays the products and categories under a specific category.

Routines

FetchCategoryData

htmCachedProductList

htmCategoryHTML

Main

See Also

Product Catalog

Root Folder


confirm.asp

This file initializes and displays the confirmation page for an order.

Routines

htmRenderConfirmationPage

InitializeConfirmationPage

Main

TerminateConfirmationPage

See Also

Basket

Checkout

Root Folder


crdtcard.asp

This file displays an input screen for credit card information when checking out.

Routines

GetDefaultValueForNameOnCard

GetDefaultValuesForCreditCardFields

htmRenderCreditCardPage

InitializeCreditcardPage

Main

RemovePurchaseOrderInfo

SetCreditCardInfo

ValidateSubmittedCreditCardData

See Also

Analysis Integration

Checkout

Payment Options

Root Folder


csapp.ini

This file is generated by Commerce Server Site Packager during unpacking and contains the site and application names. The information in this file should not be changed and will be lost after packaging and unpacking a site.

Remarks

This file should be secured by turning off both read and anonymous access to it in Internet Information Services (IIS). This file should not be secured with NTFS permissions because it needs to be readable under user credentials such as the IUSR account.

See Also

Root Folder


default.asp

This file prepares and renders the home page.

Routines

htmRenderDefaultPage

Main

PrepareDefaultPage

See Also

Root Folder


dispatch.asp

This file dispatches the user to the payment method page (crdtcard.asp or po.asp) when checking out.

Routines

Main

sLookUpPaymentMethod

See Also

Checkout

Payment Options

Root Folder


fileslst.txt

This file is not used by the Solution Sites.

See Also

Root Folder


global.asa

This file creates and initializes global objects and variables, and places them in Application scope.

Routines

Application_OnStart

Remarks

Most of the creation and initialization of the global objects and variables is performed by a call to the Main subroutine of the file include\global_main_lib.asp. The environment is set to either PRODUCTION or DEVELOPMENT in this file.

See Also

Root Folder


newaddr.asp

This file adds, edits, or deletes address book addresses.

Routines

bIsAddressNameUnique

CatchErrors

dictGetInitialFieldValues

FetchData

htmRenderAddressForm

iValidateSubmittedAddressForAddressBook

Main

SetupAddressForm

UpdateAddressBook

See Also

Address Management

Root Folder


opt-out.asp

This file adds the user to the opt-out list of a direct mail campaign.

Routines

CreateOptOutList

ErrorOut

GetOptOutList

Main

OptOut

SetOptOutList

See Also

Root Folder


pickship.asp

This file displays a page for selecting the shipping method.

Routines

CatchErrors

dictAggregatePreviews

htmCachedShippingMethods

htmRenderPickshipForm

htmRenderShippingMethods

htmRenderShippingOptionsEx

Main

PreparePickShipForm

PrepareShippingMethods

rsGetShippingMethods

sGetDefaultShippingMethod

See Also

Checkout

Root Folder


po.asp

This file displays, when checking out, an input screen for purchase order information.

Routines

GetDefaultValuesForPurchaseOrderFields

htmRenderPaymentOptionsPage

InitializePO

Main

RedirectToPOConfirmation

RemoveCreditCardInfo

SetPurchaseOrderInfo

TerminatePO

ValidateSubmittedPurchaseOrderData

See Also

Analysis Integration

Root Folder


poschema.xml

This file contains the XML-Data Reduced (XDR) schema for purchase order forms.

See Also

Root Folder


product.asp

This file displays the details of a given product.

Routines

htmRenderBuiltInProperties

htmRenderUserDefinedProductProperties

htmRenderVariantsList

listGetVariantPropertiesToShow

Main

PeekField

sGetPropertyDisplayName

See Also

Product Catalog

Root Folder


rc.xml

This file defines localizable string constants.

See Also

Root Folder


ReceiveStandard.asp

This file is a standard BizTalk Server receive page used for receiving orders through BizTalk Server over HTTP.

Routines

None.

See Also

BizTalk Server Integration

Root Folder


redir.asp

This file handles click-throughs and other events on marketing campaign items. It invokes a pipeline that records the events both in memory and to the Internet Information Services (IIS) log file.

Routines

Main

RecordClickToBasket

See Also

Root Folder


RefreshApp.asp

This file, called from Business Desk, refreshes the definitions associated with the Profiling System.

Routines

ProfileRefresh

See Also

Root Folder


search.asp

This file performs a free text search and displays the results.

Routines

bFullTextResultsAreCached

htmRenderFullTextSearchResults

Main

See Also

Root Folder


ServiceReminder.asp

This file serves as an example for generating personalized e-mail using direct mail.

Routines

None.

See Also

Root Folder


srchdept.asp

This file displays a list of specification searchable categories from a catalog.

Routines

arrSearchDept

bIsSearchDeptPageCached

htmRenderSearchDeptPageContent

Main

See Also

Product Catalog

Root Folder


stepsrch.asp

This file performs a product specification search and displays the results.

Routines

bClickedViewButton

bClickedViewOrSearchButton

bIsStepSearchPageCached

GetSpecificationSearchClauses

htmRenderStepSearchPageContent

Main

PerformSpecificationSearch

PrepareSpecificationSearch

ShowRefinedSearch

ShowSearchMatches

See Also

Product Catalog

Root Folder


summary.asp

This file displays a summary of the basket order, including the grand total.

Routines

CatchErrors

htmRenderAddress

htmRenderDiscountsDescriptions

htmRenderGrandTotals

htmRenderOrderForm

htmRenderSummaryPage

htmRenderVerifyWithForm

InitializeSummaryPage

Main

TerminateSummaryPage

See Also

Basket

Checkout

Root Folder


unpack.vbs

This file is used when a site is unpackaged using Commerce Server Site Packager. It sets up the error\500error.asp page to be a custom error handler for the site, as well as the i_SiteDefaultLocale, i_BaseCurrencyLocale, and s_PageEncodingCharset properties in the App Default Config resource, based on the system locale.

Routines

FormatOutput

Remarks

Since this routine is not used in the Solution Sites, it does not appear in the Routines Reference section.

See Also

500error.asp

App Default Config Settings

Root Folder


welcome.asp

This file displays the "Welcome back" message to previously registered users.

Routines

Main

See Also

Login

Root Folder


AuthFiles Folder

The files in this folder are provided for use with the AuthFilter, the Internet Server API (ISAPI) filter provided with Commerce Server 2000. The Solution Sites do not use the AuthFilter or any files in this folder. These files are included in case you want to integrate the AuthFilter into your site.

The following files are contained in this folder.

File | Description
autocookie.asp | Generates a globally unique identifier (GUID) used to identify a guest, creates a ticket containing the GUID, and sets the ticket on a cookie.
error.asp | Used to write an error message to the user.
help.asp | Used to write a help message to the user.
interror.asp | The user is redirected to this page if any abnormal internal errors occur with the AuthFilter or Internet Information Services (IIS).
Login.asp | Handles the login process. A different file with the same name, login\login.asp, is used by the Solution Sites.
nocookie.asp | The user is redirected to this page if cookies are disabled. Provides an informational message.

Related Commerce Server 2000 Help Topics

Developing Your Site\Working with Site Security and Filters


autocookie.asp

This file generates a globally unique identifier (GUID) used to identify a guest, creates a ticket containing the GUID, and sets the ticket on a cookie.

Routines

None.

See Also

AuthFiles Folder


error.asp

This file is used to write an error message to the user.

Routines

None.

See Also

AuthFiles Folder


help.asp

This file is used to write a help message to the user.

Routines

None.

See Also

AuthFiles Folder


interror.asp

This file provides an informational message. The user is redirected to this page if any abnormal internal errors occur within the AuthFilter or Internet Information Services (IIS).

Routines

None.

See Also

AuthFiles Folder


Login.asp

This file handles the login process. A different file with the same name, login\login.asp, is used by the Solution Sites.

Routines

GetCurrentUserPassword

Remarks

Since this routine is not used in the Solution Sites, it does not appear in the Routines Reference section.

See Also

AuthFiles Folder


nocookie.asp

This file provides an informational message. The user is redirected to this page if cookies are disabled.

Routines

None.

See Also

AuthFiles Folder


Error Folder

The files in this folder provide for the client display of various error messages. These messages include the error, and sometimes a number of possible causes and links to other pages. The error messages are obtained from the rc.xml file. The file, 500error.asp, provides a centralized place to process Active Server Pages (ASP) errors.

The following files are contained in this folder.

File | Description
500error.asp | Displays messages for any 500 error that occurs during page processing.
baditem.asp | Displays the message that a catalog item is unavailable.
badurl.asp | Displays the message that the URL is not valid.
closed.asp | Displays the message that the site is closed.
construc.asp | Displays the message that the site is under construction.
noauth.asp | Displays the message that the user is not authorized to access the page.
profile.asp | Displays the message that the account (profile) for the user could not be found and provides links to corrective action.


500error.asp

The Active Server Pages (ASP) application settings for the Solution Sites have been configured so that if any 500 error (ASP script error, and so on) occurs during page processing, this page will be displayed. The 500error.asp file has been written to show detailed error messages when the site is in DEVELOPMENT mode, but shows a friendlier error message and an event log message when the site is in PRODUCTION mode. Developers are encouraged to modify this file to provide a branded error message, perhaps with Webmaster contact information, and so on, as their needs dictate.

The unpack.vbs file programmatically sets up the ASP application to use this custom error handler. It can also be configured manually using Internet Information Services (IIS).

Routines

RenderDetailedInfoList

RenderErrorType

RenderPageInfo

RenderPostData

RenderTime

See Also

Error Handling

Error Folder


baditem.asp

This page displays the message that a catalog item is unavailable.

Routines

Main

See Also

Error Folder


badurl.asp

This page displays the message that the URL is not valid.

Routines

Main

See Also

Error Folder


closed.asp

This page displays the message that the site is closed.

Routines

Main

See Also

Error Folder


construc.asp

This page displays the message that the site is under construction.

Routines

Main

See Also

Error Folder


noauth.asp

This page displays the message that the user is not authorized to access the page.

Routines

Main

See Also

Error Folder


profile.asp

This page displays the message that the account (profile) for the user could not be found, and provides links to corrective action. The page can be reached, for instance, if the site has deleted the profile associated with a cookie, or if invalid login credentials are given in an Active Directory scenario.

Routines

Main

See Also

Error Folder


Images Folder

This folder provides a central repository for images you use on your Web site. With extensibility of the Solution Sites in mind, this folder is subdivided to allow for separating the images by feature area or some other criteria.

This folder contains the following subfolders:

Folder | Description
Catalog | Images used by the Product Catalog System are stored in this folder.
Site | Images used by the site in general are stored in this folder.


Catalog Folder

Images stored in this folder are meant to be used by the Product Catalog System. This folder contains the following file:

File | Description
clockped.gif | An example of an animated image in Graphics Interchange Format (GIF). This image is not used by the Solution Sites.


Site Folder

Images stored in this folder are meant to be used by the site in general. This folder contains the following file:

File | Description
bg.gif | An example of an image that can be used as a page background. This image is not used by the Solution Sites.


Include Folder

The files in this folder can be grouped into two major divisions, global libraries and standard libraries. All the global libraries (global_name_lib) are included and used by the global.asa file. A few of these global files are also used by the BDRefresh.asp and RefreshApp.asp files. The rest of the files are standard libraries that are included by many of the other Active Server Pages (ASP).

The following files are contained in this folder.

File | Description
addr_lib.asp | Contains functions used to retrieve and validate addresses.
analysis.asp | Contains routines used to log Commerce events to the Web server log file for use by Analysis Services.
catalog.asp | Contains routines that deal with catalogs.
const.asp | Stores constants.
form_lib.asp | Contains functions used to render and validate forms.
global_addressbook_lib.asp | Contains functions that describe address forms.
global_cache_lib.asp | Contains a function used to initialize the CacheManager object caches used in the site.
global_catalog_lib.asp | Contains initialization functions for catalogs.
global_creditcards_lib.asp | Contains functions used to retrieve credit card names and field definitions.
global_csf_lib.asp | Contains a subroutine used to initialize the Content Selection Framework (CSF).
global_data_lib.asp | Contains functions used to create and initialize the DataFunctions, SiteConfigReadOnly, BusinessDataAdmin, and GenID objects.
global_forms_lib.asp | Contains functions used to retrieve form and field definitions, and profile attributes.
global_internationalization_lib.asp | Contains functions used to retrieve country name and code lists, and to deal with alternate currencies.
global_main_lib.asp | Contains the Main subroutine called by the global.asa file to create, initialize, and place in Application scope many of the objects supplied by Commerce Server.
global_messagemanager_lib.asp | Contains functions used to create and initialize the MessageManager object.
global_predictor_lib.asp | Contains a function used to create the PredictorClient object, and to load the Transaction prediction model from the Data Warehouse.
global_profile_lib.asp | Contains routines used to create and initialize the ProfileService and AuthManager objects, and place all the properties of all the profile schema types into a cached Dictionary object for later reference.
global_siteconfig_lib.asp | Contains routines used to retrieve site configuration information, join a Web farm, and build the dictPages data structure.
global_siteterms_lib.asp | Contains functions used to retrieve and cache site terms for later reference.
global_ui_lib.asp | Contains functions used to initialize site styles.
header.asp | Used to specify the client and server side code page, response-buffering mode, and so on.
html_lib.asp | Contains functions used to render HTML text, formatting tags, buttons, lists, forms, and tables.
payment.asp | Contains routines used on payment-related pages (crdtcard.asp, dispatch.asp, po.asp, and summary.asp).
setupenv.asp | Used to set up framework variables, retrieve information about the user, and call the Main subroutine.
std_access_lib.asp | Contains routines used to implement page-level access control.
std_cache_lib.asp | Contains routines used to cache fragments and retrieve the cached fragments.
std_cookie_lib.asp | Contains routines used with cookies.
std_dates_lib.asp | Contains date functions.
std_error_lib.asp | Not used.
std_ordergrp_lib.asp | Contains routines used with order groups.
std_pipeline_lib.asp | Contains functions used to retrieve the path of the log file and run the pipeline.
std_profile_lib.asp | Contains routines used to create a new profile, retrieve and update a current profile, check whether the user has a profile, and check whether profiling is enabled on the site.
std_string_lib.asp | Contains routines used for string handling.
std_url_lib.asp | Contains functions used with URLs.
std_util_lib.asp | Contains utility functions used in most pages and also by the global.asa file.
txheader.asp | Used to specify the client and server side code page, response-buffering mode, and so on, for pages that require a new transaction.


addr_lib.asp

This file contains functions used to retrieve and validate addresses.

Routines

GetAddresses

GetAddressType

GetOrganizationAddresses

GetUserAddresses

IsZipCodeValid

LookupRegion

See Also

Include Folder


analysis.asp

This file contains routines used to log Commerce events to the Web server log file for use by Analysis Services.

Routines

Analysis_ConstructKeyValueString

Analysis_ConstructPRID

Analysis_LogAddToBasket

Analysis_LogEvent

Analysis_LogRemoveFromBasket

Analysis_LogSubmitOrder

See Also

Analysis Integration

Include Folder


catalog.asp

This file contains routines that deal with catalogs, and additionally provides the following code declared outside of any routines:

  • Const PRODUCTLIST_PAGE_SIZE = 10

  • Const CATALOG_ROOT_CATEGORY_COLS = "CategoryName,CatalogName"

Routines

EnsureUserHasRightsToCatalog

GetCatalogForUser

GetPriceAndCurrency

htmRenderCatalogList

htmRenderCategoriesList

htmRenderCategoryPage

htmRenderProductsTable

mscsGetCategoryObject

mscsGetProductList

mscsGetSubCategoriesList

mscsUserCatalogs

mscsUserCatalogsetID

mscsUserCatalogsFromID

RenderCatalogLink

RenderCatalogURL

RenderCategoryLink

RenderCategoryURL

RenderProductLink

RenderProductURL

RenderSearchResultRow

RenderSearchResults

rsFreeTextSearch

sUserCatalogsAsString

See Also

Product Catalog

Include Folder


const.asp

This file is used for storing constants when extending the Solution Sites. This file is intentionally empty. For increased performance, the shipped versions of the Solution Sites store constants in a type library.

See Also

Constants

Include Folder


form_lib.asp

This file contains functions used to render and validate forms.

Routines

bMatchesPattern

GetFieldsErrorDictionary

GetSubmittedFieldValues

htmRenderFillOutForm

IsFormSubmitted

See Also

Include Folder


global_addressbook_lib.asp

This file contains functions which describe address forms.

Routines

GetAddressBookAddressFieldDefinitions

GetAddressFieldDefinitions

GetShipToAddressFieldDefinitions

See Also

Address Management

Include Folder


global_cache_lib.asp

This file contains a function used to initialize the CacheManager object caches used in the site.

Routines

InitCacheManager

See Also

Include Folder


global_catalog_lib.asp

This file contains initialization functions for catalogs.

Routines

dictGetCatalogAttributes

dictGetRSFields

InitCatalogManager

InitCatalogSets

Remarks

This file is used by both the global.asa and BDRefresh.asp files.

See Also

Product Catalog

Include Folder


global_creditcards_lib.asp

This file contains functions used to retrieve credit card names and field definitions.

Routines

GetCreditCardCodesList

GetCreditCardFieldDefinitions

GetCreditCardNamesList

See Also

Include Folder


global_csf_lib.asp

This file contains a subroutine used to initialize the Content Selection Framework (CSF).

Routines

InitCSF

See Also

Include Folder


global_data_lib.asp

This file contains functions used to create and initialize the DataFunctions, SiteConfigReadOnly, BusinessDataAdmin, and GenID objects.

Routines

GetDWConnectionString

InitDataFunctions

oGetBizDataObject

oGetGenIDObject

Remarks

This file is used by both the global.asa and RefreshApp.asp files.

See Also

Include Folder


global_forms_lib.asp

This file contains functions used to retrieve form and field definitions, and profile attributes.

Routines

dictGetPropertySchema

GetFormDefinitions

GetLoginFieldDefinitions

GetPasswordFieldDefinition

GetPurchaseOrderFieldDefinitions

GetRegistrationFieldDefinitions

Remarks

This file is used by both the global.asa and RefreshApp.asp files.

See Also

Include Folder


global_internationalization_lib.asp

This file contains functions used to retrieve country name and code lists, and to deal with alternate currencies.

Routines

GetBillToCurrenciesListItems

GetBillToCurrenciesListValues

GetBillToCurrencyFieldDefinition

GetCountryCodesList

GetCountryNamesList

InitAltCurrencyDisp

See Also

International Features

Include Folder


global_main_lib.asp

This file contains the Main subroutine called by the file global.asa to create, initialize, and place in Application scope many of the objects supplied by Commerce Server 2000.

Routines

Main

See Also

Include Folder


global_messagemanager_lib.asp

This file contains a function used to create and initialize the MessageManager object.

Routines

GetMessageManagerObject

See Also

Include Folder


global_predictor_lib.asp

This file contains a function used to create the PredictorClient object, and to load the Transaction prediction model from the Data Warehouse.

Routines

InitPredictor

See Also

Prediction

Include Folder


global_profile_lib.asp

This file contains routines used to create and initialize the ProfileService and AuthManager objects. All the properties of all the profile schema types are placed into a cached Dictionary object for later reference.

Routines

AddGroupAndPropertySchemas

dictGetProfileSchemaForAllProfileTypes

InitAuthManager

InitProfileService

listGetProfileSchema

oGetOpenConnectionObject

oGetProfile

See Also

Profiles

Include Folder


global_siteconfig_lib.asp

This file contains routines used to retrieve the site configuration information, join a Web farm, and build the dictPages data structure.

Routines

GetAppConfigObject

GetBaseURL

GetCommerceSiteInstallPoint

GetCommerceSiteName

GetComputerName

GetConfigDictionary

GetINIFileName

GetINIString

GetMachineBaseURL

GetPaymentMethodsForSite

GetRootPath

GetSecurePagesDictionary

GetSiteConfigObject

GetSitePages

iGetWebServerPort

InitPageSets

InitSitePipelines

IsActiveDirectoryPresent

JoinWebFarm

sGetActiveDirectoryDefaultNamingContext

Remarks

This file is used by both the global.asa and RefreshApp.asp files.

See Also

Include Folder


global_siteterms_lib.asp

This file contains functions used to retrieve and cache site terms for later reference.

Routines

bIsSiteTerm

oGetSiteTermOptions

sGetReferenceString

Remarks

This file is used by both the global.asa and RefreshApp.asp files.

See Also

Include Folder


global_ui_lib.asp

This file contains functions used to initialize site styles.

Routines

GetSiteStyles

GetStyles

See Also

Include Folder


header.asp

This file (or the txheader.asp file, its transactional counterpart) should be included at the top of every page. It is used to specify the client and server side code page, response-buffering mode, and so on.

Remarks

This file provides the following initialization code:

  • @ LANGUAGE=VBScript EnableSessionState=False

  • Option Explicit

  • Response.Charset = Application("MSCSPageEncodingCharSet")

  • Response.Buffer = True

  • Response.CacheControl = "no-cache"

  • Response.AddHeader "Pragma", "no-cache"

  • Response.Expires = -1

  • g_sPipelineProgID = "Commerce.PooledPipeline"

This file is used for all the Active Server Pages (ASP) in the following folders:

  • Root - except for the files crdtcard.asp and po.asp, which use the txheader.asp file

  • Error

  • Login

  • Services - except for the help.asp file

  • Services\Customer

  • Services\Error

  • Services\Partner

See Also

Include Folder


html_lib.asp

This file contains functions used to render HTML text, formatting tags, buttons, lists, forms, and tables.

Routines

Bold

BRTag

GetRepeatStyle

InsertBlankSpace

InsertLineBreaks

InsertParagraphBreaks

Italic

PTag

RenderCheckBox

RenderElement

RenderForm

RenderHiddenField

RenderImage

RenderImageButton

RenderLink

RenderListBox

RenderListBoxFromArray

RenderListBoxFromSimpleList

RenderListFromSimpleList

RenderPasswordBox

RenderPreFormattedText

RenderRadioButton

RenderResetButton

RenderSubmitButton

RenderTable

RenderTableDataRow

RenderTableHeaderRow

RenderTableRow

RenderText

RenderTextBox

RenderUnorderedList

RenderUnorderedListFromSimpleList

Tag

See Also

Include Folder


payment.asp

This file contains routines used on payment-related pages (crdtcard.asp, dispatch.asp, po.asp, and summary.asp).

Routines

CatchErrorsForPaymentPages

CheckOut

EnsureSupportForPaymentMethod

GetDefaultPaymentMethodForUser

GetPaymentMethodDisplayName

GetPaymentMethodsForUser

GetPaymentPageFromPaymentMethod

GetXMLForVendorItems

htmRenderPaymentOptionsForUser

InvokeBizTalk

SaveBasketAsOrder

SubmitUsingBizTalk

See Also

Analysis Integration

Payment Options

Include Folder


setupenv.asp

This file is used to set up framework variables, retrieve information about the user, and call the Main subroutine.

Routines

SetupPage

Remarks

This file performs the following actions:

  • Sets application variables into local variables

  • Sets up framework variables

  • Corrects for case sensitivities in the URL

  • Retrieves the user ID and sets the user type and access type

  • Calls the Main subroutine of the file it is included in

See Also

Include Folder


std_access_lib.asp

This file includes routines to implement page-level access control.

Routines

EnsureAccess

EnsureAuthAccess

IsFormLoginRequired

IsPersistentCookieAllowed

CheckPartnerServiceAccess

GetUserInfo

sGetUserIDForNewGuestUser

GetAuthManagerObject

See Also

Authentication

Include Folder


std_cache_lib.asp

This file contains routines used to cache fragments and retrieve the cached fragments.

Routines

CacheFragment

CacheObject

LookupCachedFragment

LookupCachedObject

See Also

Include Folder


std_cookie_lib.asp

This file contains routines used with cookies.

Routines

CorrectRequest

GetCorrectedCookiePath

GetCorrectedHostName

GetIISApplicationName

GetRequestType

SetTestCookie

See Also

Include Folder


std_dates_lib.asp

This file contains functions used to retrieve month name and code lists, and year lists.

Routines

GetMonthCodesList

GetMonthNamesList

GetYearsListItems

GetYearsListValues

Remarks

This file is used only by the file include\global_creditcards_lib.asp, which is called only by the global.asa file.

See Also

Include Folder


std_error_lib.asp

This file is not used by the Solution Sites.

See Also

Include Folder


std_ordergrp_lib.asp

This file contains routines used with order groups.

Routines

AddDiscountMessages

GetAnyLineItem

GetAnyOrderForm

GetErrorCount

GetLineItemsCount

GetOrderGroup

GetOrderGroupManager

LoadBasket

RemoveEmptyOrderForms

SetKeyOnOrderForms

See Also

Include Folder


std_pipeline_lib.asp

This file contains functions used to retrieve the path of the log file, and to run the pipeline.

Routines

GetPipelineLogFile

RunMtsPipeline

See Also

Include Folder


std_profile_lib.asp

This file supplies routines to create a new profile, retrieve and update a current profile, check whether the user has a profile, and check whether profiling is enabled on the site.

Routines

EnsureUpToDateUserProfile

EnsureUserProfile

GetCurrentUserProfile

GetNewGuestUserProfile

GetProfileFromDB

GetProfileService

GetUserProfileByLoginName

rsGetProfile

rsGetProfileByKey

UpdateUserProfile

See Also

Profiles

Include Folder


std_string_lib.asp

This file contains string-handling functions used only by the file stepsrch.asp.

Routines

BooleanToString

RemoveBlankItemsFromArray

sChopOffLeft

sChopOffRight

Space

StringToBoolean

See Also

Include Folder


std_url_lib.asp

This file contains functions used with URLs.

Routines

AddURLArguments

GenerateURL

GetRequestString

GetRequestStringRange

GetTicketInUrlArg

GetTicketLocation

See Also

Include Folder


std_util_lib.asp

This file contains utility functions, and also provides the following code declared outside of any routines:

   SCRIPT LANGUAGE=VBScript RUNAT=Server

Routines

ConvertListToArray

CreateSet

DoubleQuote

FormatOutput

GetAddressPage

GetArrayFromList

GetDictionary

GetDiscountDescription

GetErrorSource

GetFileSystemObject

GetKeyValue

GetListItemIndex

GetObjectInstanceDictionary

GetQualifiedName

GetRecordCount

GetRegExp

GetSimpleList

htmRenderCurrency

IsBitValueSet

IsEntityInArray

IsEntityInList

IsEntityInSet

IsNumberInRange

RsToDict

SortDictionaryKeys

Remarks

This file is included by most pages, and also by the global.asa file.

See Also

Include Folder


txheader.asp

This file (or the header.asp file, its non-transactional counterpart) should be included at the top of every page. It is used to specify the client and server side code page, response-buffering mode, and so on, for pages that require a new transaction. This file is only used by the files crdtcard.asp and po.asp.

Remarks

This file provides the following initialization code:

  • @ TRANSACTION=REQUIRES_NEW LANGUAGE=VBScript EnableSessionState=False

  • Option Explicit

  • Response.Charset = Application("MSCSPageEncodingCharSet")

  • Response.Buffer = True

  • Response.CacheControl = "no-cache"

  • Response.AddHeader "Pragma", "no-cache"

  • Response.Expires = -1

  • g_sPipelineProgID = "Commerce.PooledTxPipeline"

See Also

Include Folder


Login Folder

The files in this folder provide the functionality of the login/logoff process.

The following files are contained in this folder.

File | Description
login.asp | Displays the login page and validates submitted login data.
logoff.asp | Displays the logoff page.
newuser.asp | Used to register new users.
_guest.asp | Redirects the user to the home page as a guest user.


login.asp

This file provides functions to prepare and display the login page.

Routines

Main

PrepareLoginPage

htmRenderLoginPage

ValidateSubmittedLoginData

MoveBasketItems

Remarks

Submitted login data is validated and a ticket is set in a cookie (if enabled on the client) or a URL query string. If used in a Web farm, a timestamp cookie is set.

See Also

Login

Login Folder


logoff.asp

This file provides functions to prepare and display the logoff page, and logs the user off when the page is run.

Routines

Main

PrepareLogoffPage

htmRenderLogoffPage

Remarks

If the user has an authentication ticket (AUTH_TICKET) or a Web farm timestamp cookie, it is removed. Once logged off, the user is allowed to log in as either as a new guest user, or as an existing or new registered user, as appropriate to the site login option.

See Also

Login

Login Folder


newuser.asp

This file provides functions to prepare and display the registration page where users can self-register.

Routines

Main

PrepareNewUserPage

htmRenderNewUserPage

bRegistrationPageNotAvailable

iValidateSubmittedRegistrationData

mscsNewRegisteredUserProfile

mscsTransferGuestUserProfile

Remarks

The submitted user name is checked for uniqueness. If the user currently has a guest profile it is upgraded to a registered profile. If not, a new profile is created. Upon creation, a ticket is issued so that the user can be tracked throughout the session and possibly future sessions.

See Also

Login

Login Folder


_guest.asp

This file redirects the user to the home page (default.asp) as a guest user.

Routines

Main

See Also

Login

Login Folder


Pipeline Folder

This folder contains files implementing the pipeline feature.

The following subfolder is contained in this folder:

Folder | Description
Logfiles | Stores pipeline log files, if pipeline logging is enabled.

The following files are contained in this folder:

File | Description
Advertising.pcf | Content Selection Framework (CSF) pipeline that selects targeted advertising.
Basket.pcf | Order Processing pipeline (OPP) that gathers basket information and computes the order subtotal.
Checkout.pcf | OPP that receives and accepts payment information and completes the transaction.
Discounts.pcf | CSF pipeline that selects targeted discounts.
Product.pcf | OPP that looks up information about a specific product. This pipeline is not used in the default implementation of the Solution Sites.
RecordEvent.pcf | CSF pipeline that records targeted content event information to a database.
Recvpo.pcf | OPP that enables the Web site to receive orders through Biz Talk Server.
Total.pcf | OPP that computes the shipping and handling charges, tax, and the order total.


Logfiles Folder

This folder stores pipeline log files, if pipeline logging is enabled.

The following file is contained in this folder:

File | Description
empty.tmp | A placeholder file.

See Also

Pipelines

Pipeline Folder


Advertising.PCF

The Content Selection Framework (CSF) pipeline that selects targeted advertising.

Remarks

This pipeline can be added to the Retail or Supplier Solution Sites to implement targeted discounts, but it is not implemented in the default configuration of the Solution Sites.

For more information about the stages and components in the Advertising.pcf file, see "Content Selection Pipeline" or "About Content Selection Pipelines" in Commerce Server 2000 Help.

See Also

Ads

Pipelines

Pipeline Folder


basket.pcf

The Order Processing pipeline (OPP) that gathers basket information and computes the order subtotal.

Remarks

The basket.pcf file is modeled on the plan.pct (pipeline configuration template) file. For more information about the plan.pct file, see "Plan Pipeline" in Commerce Server 2000 Help.

See Also

Basket

Pipelines

Pipeline Folder


checkout.pcf

The Order Processing pipeline (OPP) that receives and accepts payment information.

See Also

Checkout

Pipelines

Pipeline Folder


Discounts.PCF

The Content Selection Framework (CSF) pipeline that selects targeted discounts.

Remarks

This pipeline can be added to the Retail or Supplier Solution Sites to implement targeted discounts, but it is not implemented in the default configuration of the Solution Sites.

For more information about the stages and components in the Discounts.pcf file, see "Content Selection Pipeline" or "About Content Selection Pipelines" in Commerce Server 2000 Help.

See Also

Discounts

Pipelines

Pipeline Folder


product.pcf

The Order Processing pipeline (OPP) that enters the line item detail for each item in the basket.

See Also

Basket

Pipelines

Pipeline Folder


RecordEvent.pcf

The Content Selection Framework (CSF) pipeline that records targeted content event information to a database.

Remarks

This pipeline can be added to the Retail or Supplier Solution Sites, but it is not included in the default configuration of the Solution Sites.

See Also

Pipelines

Pipeline Folder


recvpo.pcf

The Order Processing pipeline (OPP) that enables the Web site to receive orders through BizTalk Server.

See Also

BizTalk Server Integration

Pipelines

Pipeline Folder


total.pcf

The Order Processing pipeline (OPP) that computes the sum of the subtotal, tax, shipping, and handling values.

See Also

Checkout

Payment

Pipelines

Pipeline Folder


Services Folder

The files in this folder and subfolders are used for Customer and Partner Services. Customer Services allows users to modify their profiles and view order information. Partner Services allows adminstrators to search and view order information, and to search and modify profiles of users of their organization.

The following subfolders are contained in this folder.

Folder | Description
Customer | Files in this folder allow users to modify their own profile, search for orders, and view order information.
Error | Files in this folder provide for the client display of various error messages.
Include | Files in this folder are used by the files in the Customer Folder and the Partner Folder.
Partner | Files in this folder allow adminstrators to search and view order information, and to search and modify profiles of members of their organization.

The following files are contained in this folder.

File | Description
change_password.asp | Initializes the Partner Desk for changing the user_security_password property of a UserObject profile.
help.asp | This file is a placeholder for a help page.


Customer Folder

The files in this folder allow users to modify their own profile, search for orders, and view order information.

The following files are contained in this folder.

File | Description
account.asp | Allows users to view and modify their own profile.
orders.asp | Allows users to search for their orders.
view_order.asp | Allows users to view their orders.


account.asp

This file allows users to view and modify their own profile.

Routines

Main

See Also

Services\Customer Folder


orders.asp

This file allows users to search for their orders.

Routines

Main

OrderListActionHandler

See Also

Services\Customer Folder


view_order.asp

This file allows users to view their orders.

Routines

Main

See Also

Services\Customer Folder


Error Folder

The files in this folder provide for the client display of various error messages. The error messages are obtained from the rc.xml file.

The following files are contained in this folder.

File | Description
badaction.asp | Displays the message that an invalid action was requested.
noaccess.asp | Displays the message that the user does not have the necessary privileges to access the page.
noorder.asp | Displays the message that the requested order is not available.
noorgprofile.asp | Displays the message that the user does not belong to an organization.
noprofile.asp | Displays the message that the posted profiles are invalid.


badaction.asp

This file displays the message that an invalid action was requested.

Routines

Main

See Also

Services\Error Folder


noaccess.asp

This file displays the message that the user does not have the necessary privileges to access the page.

Routines

Main

See Also

Services\Error Folder


noorder.asp

This file displays the message that the requested order is not available.

Routines

Main

See Also

Services\Error Folder


noorgprofile.asp

This file displays the message that the user does not belong to an organization.

Routines

Main

See Also

Services\Error Folder


noprofile.asp

This file displays the message that posted profiles are invalid.

Routines

Main

See Also

Services\Error Folder


Include Folder

The files in this folder are used by the files in the Services\Customer and Services\Partner folders except for global_service_lib.asp, which is included by the file global.asa.

The following files are contained in this folder.

File | Description
ad_routines.asp | Contains functions to add or remove a user from an Active Directory group.
check_profile.asp | Contains functions for checking whether a profile exists and whether a profile being edited has changed.
const.asp | Defines constants used in Customer and Partner Services.
delete_profiles.asp | Contains routines for deleting profiles.
edit_handlers.asp | Contains action handlers (for example, add, delete, copy, and so on).
get_profiles.asp | Contains functions for retrieving profile properties or a list of profiles.
global_service_lib.asp | Used to assign friendly names to Customer and Partner Services pages, and adds attributes and styles to these pages. Included by the file global.asa.
initialize.asp | Contains routines to initialize the variables (action, subaction, and profile ID) used in all the Partner and Customer Services pages.
lib.asp | Contains general routines.
list_handlers.asp | Contains action handlers for "selecting" in list-type pages.
logic_orders.asp | Contains routines to prepare the order page before rendering.
messagebox_handlers.asp | Contains the action handler for the Save changes confirmation message box.
order_handlers.asp | Contains action handlers for the order details page.
password_handlers.asp | Contains action handlers for the change password form.
profiles_common.asp | Contains routines to build T_SQL statements for use with the Profiling System.
render_common.asp | Contains common rendering functions.
render_edit_blank.asp | Contains common rendering functions for blank editing pages.
render_edit_common.asp | Contains common rendering functions for editing pages.
render_edit_multi.asp | This file is intentionally empty.
render_edit_single.asp | This file is intentionally empty.
render_list.asp | Contains common list rendering routines.
render_messagebox.asp | Contains functions for rendering various types of message boxes.
render_orders.asp | Contains functions for rendering the orders page.
render_password.asp | Contains functions for rendering the change password form.
requisition.asp | Contains routines for retrieving orders and order details requested by the user.
save_all_profiles.asp | Contains common routines for saving profiles when the Select All option is in use.
save_multiple_profiles.asp | This file is empty. In multi-select mode, profiles are saved one-by-one by the file save_one_profile.asp.
save_one_profile.asp | Contains common routines for creating and saving single profiles. In multi-select cases, the profiles are saved one-by-one.


ad_routines.asp

This file contains functions to add or remove a user from an Active Directory group.

Routines

bAddUserToGroup

bPaintACLForUser

bRemoveUserFromGroup

See Also

Services\Include Folder


check_profile.asp

This file contains functions for checking whether a profile exists and whether a profile being edited has changed.

Routines

bCheckIfProfileExists

bIsPropertyValueAdded

bProfileHasChanged

See Also

Services\Include Folder


const.asp

This file defines constants used in Customer and Partner Services.

Routines

None.

See Also

Services\Include Folder


delete_profiles.asp

This file contains routines for deleting profiles.

Routines

DeleteAllProfiles

DeleteRegisteredUser

DeleteSelectedProfiles

DeleteSingleProfile

sGetWhereClauseForCurrentUser

See Also

Services\Include Folder


edit_handlers.asp

This file contains action handlers (add, delete, copy, and so on).

Routines

DeleteAllActionHandler

DeSelectAllActionHandler

GetStatusFieldAndID

htmAddActionHandler

htmChangePasswordActionHandler

htmCloseActionHandler

htmCopyActionHandler

htmDeleteActionHandler

htmEditAction

htmEditAllProfiles

htmInsertProfile

htmSaveActionHandler

htmSaveAllActionHandler

htmSaveProfiles

htmSelectActionHandlerForEdit

htmSelectedActionHandlerForEdit

PrepareAddAction

PrepareCloseAction

PrepareCopyAction

PrepareDeleteAction

PrepareDeleteAllAction

PrepareDeselectAllAction

PrepareEditAction

PrepareEditAllAction

PrepareInsertProfile

PrepareSaveAction

PrepareSaveAllAction

PrepareSaveProfiles

PrepareSelectActionHandlerForEdit

PrepareSelectAllAction

PrepareSelectedAction

SelectAllActionHandler

See Also

Services\Include Folder


get_profiles.asp

This file contains functions for retrieving profile properties or a list of profiles.

Routines

GetAttributeValueFromProfile

GetOrgAttributeFromID

GetUserPropertyFromID

rsGetOrgDetails

rsGetProfileDetails

rsGetProfilesList

rsGetUserDetails

sGetUserFullName

sGetUserLoginName

See Also

Services\Include Folder


global_service_lib.asp

This file assigns friendly names to Customer and Partner Services pages, and adds attributes and styles to these pages.

Routines

AddPartnerAndCustomerServicePages

AddPartnerAndCustomerServiceStyles

GetPartnerAndCustomerServicePageAttributes

Remarks

This file is included by the file global.asa.

See Also

Services\Include Folder


initialize.asp

This file contains routines to initialize the variables (action, subaction, and profile ID) used in all the Partner and Customer Services pages.

Routines

InitializePartnerDesk

sGetAction

sGetIDFromForm

sGetSelectedIDs

sGetSubAction

See Also

Services\Include Folder


lib.asp

This file contains general routines used by Customer and Partner Services.

Routines

bCheckIfThePropertyFeatureIsSupported

bInvalidDate

bValidateLoginNameChars

bValidatePasswordChars

CheckIfOrderExists

CheckIfProfilesExist

dictGetpropertyFromList

dictGetSearchDictionaryForPage

GetSearchDictionaryForThisPage

iGetCountOfProfiles

iGetCurrentUserPropertyAccessClass

InitializePagingVariables

listCloneProfileSchema

listGetValidPropertiesForMultiEdit

listReConstructPropertiesSchema

PopulateOrderSearchCriteria

PopulateProfileSearchCriteria

ReDirectToPage

RelocateRecordPointer

SetGlobalPagingVariables

sGetDisplayValueForProperty

sGetOrderStatusDetails

sGetParentDN

sGetSelectActionPropertyName

sGetThisPageProperty

sGetUserAccessForThisProperty

sGetUserPartnerDeskRole

sGetUserStatus

TDTag

THTag

TRTag

ValidateFields

See Also

Services\Include Folder


list_handlers.asp

This file contains the action handler used when selecting items in list-type pages.

Routines

SelectedActionHandlerForList

See Also

Services\Include Folder


logic_orders.asp

This file contains routines to prepare the order page before rendering.

Routines

AddDiscountMessages

mscsGetOrderGroupWithDiscountsByID

PrepareOrderList

sGetAddressName

sGetPaymentMethodString

See Also

Services\Include Folder


messagebox_handlers.asp

This file contains the action handler for the Save changes confirmation message box.

Routines

htmSaveChangesConfirmationHandler

PrepareSaveChangesConfirmation

See Also

Services\Include Folder


order_handlers.asp

This file contains action handlers for the order details page.

Routines

CloseOrderDetailsActionHandler

htmOrderDetailsActionHandler

htmRenderOrderDetailsForIDs

PrepareCloseOrderDetailsAction

PrepareOrderDetailsAction

RedirectOrderDetailsForIDs

See Also

Services\Include Folder


password_handlers.asp

This file contains action handlers for the change password form.

Routines

ChangeActionHandler

htmCancelUpdatePasswordAction

UpdatePasswordActionHandler

See Also

Services\Include Folder


profiles_common.asp

This file contains routines to build T_SQL statements for use with the Profiling System.

Routines

GetODBCTimeStamp

GetTableNameAndWhereClause

HandleSingleQuote

sAddCriteriaToQuery

sAddEndDate

sAddSetClause

sAddSQLNumber

sAddSQLString

sAddStartDate

sConstructWHEREclause

See Also

Services\Include Folder


render_common.asp

This file contains common rendering functions.

Routines

cellRenderReadOnlyProperty

colRenderAdvancedSearchTab

colRenderCountryNames

colRenderSimpleSearchTab

formRenderPagingButtons

htmRenderBlankSpaces

htmRenderBoolean

htmRenderCountries

htmRenderEmptyRecordSet

htmRenderOrderDateTypes

htmRenderOrderStatusOptions

htmRenderPartnerDeskRoles

htmRenderSelectEndTag

htmRenderSelectTag

htmRenderSiteTerm

htmRenderUserStatusOptions

rowRenderEditSheetBlankLine

rowRenderHeader

rowRenderSearchOptionForDate

rowRenderSearchOptionForInteger

rowRenderSearchOptionForString

rowRenderStatusInfo

sGetPageHeading

sReConstructPageURL

sReplaceString

tableRenderFooterInfo

See Also

Services\Include Folder


render_edit_blank.asp

This file contains common rendering functions for blank editing pages.

Routines

formRenderBlankEditPageBody

htmRenderBlankEditPage

rowRenderBlankProperty

tableRenderBlankProfile

See Also

Services\Include Folder


render_edit_common.asp

This file contains common rendering functions for editing pages.

Routines

colRenderForeignKeyProperty

colRenderPasswordProperty

colRenderPrimaryKeyProperty

colRenderProperty

colRenderPropertyTip

colRenderUniqueKeyProperty

formRenderEditPageBody

htmRenderEditPage

rowRenderHiddenProperty

rowRenderProperty

rowRenderPropertyGroup

rowRenderPropertyTip

rowRenderReadOnlyProperty

sRenderHTMLPreFixForProperty

tableRenderEditPageTasks

tableRenderProfiles

varGetPropertyValue

varGetValueFromPropertyDictionaries

varGetValueFromRequestObject

varUpdateValueForCurrentAction

See Also

Services\Include Folder


render_edit_multi.asp

This file is intentionally empty.

Routines

None.

See Also

Services\Include Folder


render_edit_single.asp

This file is intentionally empty.

Routines

None.

See Also

Services\Include Folder


render_list.asp

This file contains common list rendering routines.

Routines

arrPopulateProfileDetails

formRenderListPageContents

formRenderProfileSearchOptions

htmRenderProfilesList

htmRenderUniqueIDForProfile

RelocateRecordPointer2

rowRenderListHeading

rowsRenderAdvanceSearchOptionsForProfiles

rowsRenderSimpleSearchOptionsForProfiles

tableRenderListPageTasks

tableRenderMultipleRecords

See Also

Services\Include Folder


render_messagebox.asp

This file contains functions for rendering various types of message boxes.

Routines

htmRenderMessageBoxForCancel

htmRenderMessageBoxForDelete

htmRenderMessageBoxForDeleteAll

htmRenderMessageBoxForSave

htmRenderMessageBoxForSelect

htmRenderMessageBoxPage

rowRenderMessageBoxPageContents

tableRenderMessageBoxPage

tableRenderMessageBoxPageButtons

See Also

Services\Include Folder


render_orders.asp

This file contains functions for rendering the orders page.

Routines

arrPopulateOrderHeaderDetails

formRenderOrderContents

formRenderOrderSearchOptions

formRenderOrdersListContents

htmRenderOrderDetails

htmRenderOrderList

rowRenderAdvancedSearchOptionsForOrders

rowRenderLineItemHeader

rowRenderListHeadingForOrders

rowRenderSimpleSearchOptionsForOrders

sRenderAddress

tableRenderOrdersListContents

tableRenderOrdersListTasks

tblOrderDetailsTasks

tblRenderOrderDetailsContents

See Also

Services\Include Folder


render_password.asp

This file contains functions for rendering the change password form.

Routines

formRenderChangePasswordPageContents

htmRenderChangePasswordPage

tableChangePasswordTasks

tableRenderChangePasswordContents

See Also

Services\Include Folder


requisition.asp

This file contains routines for retrieving orders and order details requested by the user.

Routines

rsGetOrderDetails

rsGetOrdersList

See Also

Services\Include Folder


save_all_profiles.asp

This file contains common routines for saving profiles when the Select All option is in use.

Routines

AddSetClauseAndUpdateUserAccountControl

GetUserAccountControl

sAddWhereClauseForActiveUsers

sAddWhereClauseForPartnerRole

SaveAllSelectedProfiles

UpdateUserAccountControlProperty

See Also

Services\Include Folder


save_multiple_profiles.asp

This file is empty. In multi-select mode, profiles are saved one-by-one by the save_one_profile.asp file.

Routines

None.

See Also

Services\Include Folder


save_one_profile.asp

This file contains common routines for creating and saving single profiles. In multi-select cases, the profiles are saved one-by-one.

Routines

bHandlePaintingACLsForUsersInAD

bInsertProfile

bInsertProfileDetails

bInsertProperty

bSaveProfileAndRedirect

bSaveProfileDetails

bSaveProperty

bSaveReadWriteProperty

GetActiveUsersOnly

InsertHiddenProperty

SaveCommonValueForAllSelectedRecords

SaveProfileProperty

SaveReadOnlyProperty

SaveSAMAccountNameProperty

SaveUserAccountControlProperty

SaveUserParentDNProperty

SaveUserPartnerDeskRoleProperty

SaveUserPropertyForID

sGetAdminsOnly

sGetUsersOnly

UpdateSelectActionPropertyName

UpdateUserPasswordProperty

See Also

Services\Include Folder


Partner Folder

The files in this folder allow adminstrators to search and view order information, and search and modify profiles that belong to members of their organization. Administrators can also view and modify the profile of their organization.

The following files are contained in this folder.

File | Description
account.asp | Allows administators to view and modify the profile of their organization.
edit_user.asp | Allows administators to add, delete, or modify profiles that belong to members of their organization.
orders.asp | Allows administators to search for orders made by members of their organization.
users.asp | Allows administators to search for profiles that belong to members of their organization.
view_order.asp | Allows administators to view orders made by members of their organization.


account.asp

This file allows administators to view and modify the profile that belongs to their organization.

Routines

Main

See Also

Services\Partner Folder


edit_user.asp

This file allows administators to add, delete, or modify profiles that belong to members of their organization.

Routines

htmEditPageActionHandlers

Main

See Also

Services\Partner Folder


orders.asp

This file allows administators to search for orders made by members of their organization.

Routines

htmOrderListActionHandler

Main

See Also

Services\Partner Folder


users.asp

This file allows administators to search for profiles that belong to members of their organization.

Routines

htmListPageActionHandlers

Main

See Also

Services\Partner Folder


view_order.asp

This file allows administators to view orders made by members of their organization.

Routines

Main

See Also

Copyright © 1996–2000 Microsoft Corporation.
All rights reserved.


change_password.asp

This file initializes the Partner Desk for changing the user_security_password property of a UserObject profile.

Routines

Main

PasswordActionHandlers

See Also

Services Folder


help.asp

This file is a placeholder for a help page.

Routines

None.

See Also

Services Folder


Template Folder

The files in this folder provide the basic HTML display layout, and routines for ad and discounts banners. For more information about the page layout, see Page Execution Model.

The following files are contained in this folder.

File | Description
banner.inc | Included by the files layout1.asp and nomenu.asp to display advertising banners for pages in the advertisement page set.
discount.asp | Contains logic for choosing discount banner content.
footer.inc | Provides content that is shown at the bottom of every page that is displayed using the layout1.asp file.
layout1.asp | Provides the HTML display layout for the page content along with an advertising banner, navigation bar, menu, discount banner, and footer.
menu.asp | Prepares and displays the menu bar.
navbar.inc | Included by the file layout1.asp to display the navigation bar.
no_menu.asp | Provides a basic HTML display layout for the page content without a menu, navigation bar, or footer.


banner.inc

This file is included by the files layout1.asp and no_menu.asp to display advertising banners for pages in the advertisement page set.

Routines

None.

See Also

Template Folder


discount.asp

This file contains logic for choosing discount banner content. It is included by the files basket.asp and product.asp.

Routines

CollectBasketItems

CopyProductToItem

GetAncestorCategories

GetBasketDetails

GetInputParameters

GetShownProductsDetails

listGetShownProductsInfo

oCachedDiscountProductInfo

RenderDiscounts

See Also

Template Folder


footer.inc

This file provides content that is shown at the bottom of every page that is displayed using the layout1.asp file.

Routines

None.

See Also

Template Folder


layout1.asp

This file provides the HTML display layout for the page content (htmPageContent) along with an advertising banner, navigation bar, menu, discount banner (htmDiscountBannerSlot), and footer. The htmPageContent and htmDiscountBannerSlot HTML strings are calculated by the Main subroutine.

Routines

None.

See Also

Template Folder


menu.asp

This file is included to display the menu bar.

Routines

htmRenderCatalogSection

htmRenderCustomerServiceSection

htmRenderLoginSection

htmRenderMenu

htmRenderPartnerServiceSection

htmRenderSearchSection

PrepareCatalogSection

PrepareLoginSection

PrepareRenderMenu

See Also

Template Folder


navbar.inc

This file is included by the file layout1.asp to display the navigation bar.

Routines

RenderNavbar

See Also

Template Folder


no_menu.asp

This file provides a basic HTML display layout for the page content without a menu, navigation bar, or footer.

Routines

None.

See Also

Template Folder


Reference

This section provides reference material that can be useful in the course of modifying the Solution Sites to create customized and branded commercial Web sites.

This section contains:

  • Use of Commerce Server Objects. Describes where the various Commerce Server 2000 objects are instantiated in the Solution Sites.

  • Use of App Default Config Settings. Describes where the various App Default Config settings are tested in the Solution Sites code, enabling or disabling the features that affect the differences between the Retail and Supplier Solution Sites.

  • Constants Reference. Describes the constants available for use in the Solution Sites code.

  • Routines Reference. Describes the numerous routines that constitute the majority of the code in the Solution Sites.


Use of Commerce Server Objects

The following table lists the Component Object Model (COM) objects created in the Solution Sites and the files where they are created. For an object created more than once in a file (usually in different routines), the number of times it is created is shown after the file name. Objects with the vendor section of the ProgID equal to "Commerce" are supplied by Commerce Server 2000.

ProgID | File
ADODB.Connection | include\global_profile_lib.asp
ADODB.Connection | opt-out.asp
ADODB.Recordset | opt-out.asp
ADODB.Recordset | include\addr_lib.asp
ADODB.Recordset | services\include\delete_profiles.asp
ADODB.Recordset | services\include\get_profiles.asp
ADODB.Recordset | services\include\save_all_profiles.asp (2)
AdoDB.Stream | _recvpo.asp
AdoDB.Stream | ReceiveStandard.asp
BizTalk.Interchange | ReceiveStandard.asp
BizTalk.Interchange | include\payment.asp
Commerce.Acl | unpack.vbs
Commerce.AdminEventLog | opt-out.asp
Commerce.AppConfig | RefreshApp.asp
Commerce.AdminEventLog | error\500error.asp
Commerce.AppConfig | include\global_siteconfig_lib.asp
Commerce.AppFrameWork | include\global_main_lib.asp (2)
Commerce.AuthManager | ServiceReminder.asp
Commerce.AuthManager | AuthFiles\autocookie.asp
Commerce.AuthManager | AuthFiles\Login.asp
Commerce.AuthManager | AuthFiles\nocookie.asp
Commerce.AuthManager | include\global_profile_lib.asp
Commerce.AuthManager | include\std_access_lib.asp
Commerce.BusinessDataAdmin | include\global_data_lib.asp
Commerce.BusinessDataAdmin | include\global_siteconfig_lib.asp (2)
Commerce.CacheManager | include\global_cache_lib.asp
Commerce.CatalogManager | include\global_catalog_lib.asp
Commerce.CatalogSets | include\catalog.asp (2)
Commerce.CatalogSets | include\global_catalog_lib.asp
Commerce.CatalogToVendorAssociation | _additem.asp
Commerce.ContentSelector | template\banner.inc
Commerce.ContentSelector | template\discount.asp
Commerce.DataFunctions | unpack.vbs
Commerce.DataFunctions | include\global_data_lib.asp
Commerce.DBStorage | services\include\lib.asp (2)
Commerce.Dictionary | _additem.asp
Commerce.Dictionary | pickship.asp (4)
Commerce.Dictionary | redir.asp (2)
Commerce.Dictionary | include\global_cache_lib.asp (8)
Commerce.Dictionary | include\global_catalog_lib.asp (2)
Commerce.Dictionary | include\global_csf_lib.asp (2)
Commerce.Dictionary | include\global_siteconfig_lib.asp
Commerce.Dictionary | include\global_siteterms_lib.asp
Commerce.Dictionary | include\std_util_lib.asp
Commerce.Dictionary | services\include\lib.asp (2)
Commerce.DictionaryXMLTransforms | _recvpo.asp
Commerce.DictionaryXMLTransforms | include\payment.asp
Commerce.EuroDisplay | include\global_internationalization_lib.asp
Commerce.ExpressionEvaluator | include\global_main_lib.asp
Commerce.GenID | AuthFiles\autocookie.asp
Commerce.GenID | AuthFiles\Login.asp
Commerce.GenID | include\global_data_lib.asp
Commerce.ListManager | opt-out.asp
Commerce.MessageManager | include\global_messagemanager_lib.asp
Commerce.OrderGroup | include\std_ordergrp_lib.asp
Commerce.OrderGroupManager | include\std_ordergrp_lib.asp
Commerce.OrderGroupManager | services\include\requisition.asp (2)
Commerce.OrderPipeline | include\global_csf_lib.asp (3)
Commerce.PredictorClient | include\global_predictor_lib.asp
Commerce.PrivateDWMBToAdmin | include\global_siteconfig_lib.asp
Commerce.ProfileService | include\global_profile_lib.asp
Commerce.ProfileService | include\std_profile_lib.asp
Commerce.Shipping | pickship.asp
Commerce.ShippingMethodManager | pickship.asp
Commerce.SimpleFindResultInfo | services\include\requisition.asp (2)
Commerce.SimpleFindSearchInfo | services\include\requisition.asp (2)
Commerce.SimpleList | basket.asp
Commerce.SimpleList | redir.asp (2)
Commerce.SimpleList | include\global_profile_lib.asp
Commerce.SimpleList | include\global_siteterms_lib.asp
Commerce.SimpleList | include\std_util_lib.asp (2)
Commerce.SimpleList | services\include\lib.asp (2)
Commerce.SimpleList | template\discount.asp
Commerce.SiteConfig | unpack.vbs
Commerce.SiteConfig | include\global_siteconfig_lib.asp
Commerce.SiteConfigReadOnly | include\global_data_lib.asp
MSXML.DOMDocument | include\global_messagemanager_lib.asp
MSXML.DOMDOCUMENT | include\payment.asp
Scripting.FileSystemObject | unpack.vbs
Scripting.FileSystemObject | include\std_pipeline_lib.asp
Scripting.FileSystemObject | include\std_util_lib.asp
VBScript.RegExp | include\addr_lib.asp
VBScript.RegExp | include\std_util_lib.asp
VBScript.RegExp | services\include\lib.asp
WindowsInstaller.Installer | unpack.vbs
WScript.Shell | unpack.vbs
Wscript.Shell | include\global_siteconfig_lib.asp

Related Commerce Server 2000 Help Topics

Programmer's Reference\Object Reference

See Also

Initialization


Use of App Default Config Settings

The following table lists the App Default Config properties and where these properties are referenced in the Solution Sites. For a property referenced more than once in a file, the number of times it is referenced is shown after the file name.

Property | Referencing File
f_AltCurrencyConversionRate | include\global_internationalization_lib.asp
i_AddItemRedirectOptions | _additem.asp (2)
i_AddressBookOptions | addrbook.asp basket.asp newaddr.asp include\std_util_lib.asp
i_AltCurrencyLocale | include\global_internationalization_lib.asp
i_AltCurrencyOptions | include\global_creditcards_lib.asp include\global_forms_lib.asp include\std_util_lib.asp
i_AuctionsOptions | Not referenced in the Solution Sites.
i_BaseCurrencyLocale | include\global_internationalization_lib.asp include\std_util_lib.asp
i_BillingOptions | Not referenced in the Solution Sites.
i_BizTalkOptions | _additem.asp include\payment.asp
i_CookiePathCorrectionOptions | include\std_cookie_lib.asp
i_CurrencyDisplayOrderOptions | include\std_util_lib.asp
i_DelegatedAdminOptions | services\include\lib.asp services\include\render_orders.asp template\menu.asp
i_FormLoginOptions | include\std_access_lib.asp (3) login\login.asp (3) login\logoff.asp (3) login\newuser.asp template\menu.asp
i_FormLoginTimeOut | login\login.asp (2) login\newuser.asp (2)
i_HostNameCorrectionOptions | include\std_cookie_lib.asp
i_IsFullTextSearchInstalled | search.asp
i_PaymentOptions | include\global_siteconfig_lib.asp (2)
i_ShipToLevelOptions | Not referenced in the Solution Sites.
i_ShoppingListOptions | Not referenced in the Solution Sites.
i_SiteDefaultLocale | include\std_profile_lib.asp (2)
i_SitePrivacyOptions | include\std_access_lib.asp include\std_profile_lib.asp
i_SiteRegistrationOptions | login\login.asp login\newuser.asp template\menu.asp
i_SiteTicketOptions | stepsrch.asp include\std_access_lib.asp include\std_cache_lib.asp (2) include\std_cookie_lib.asp include\std_profile_lib.asp (3) include\std_url_lib.asp login\login.asp login\newuser.asp template\menu.asp
s_AltCurrencyCode | include\global_internationalization_lib.asp
s_AltCurrencySymbol | include\global_internationalization_lib.asp (2)
s_AnonymousUserDefaultCatalogSet | include\catalog.asp (2)
s_AuthenticatedUserDefaultCatalogSet | include\catalog.asp (2)
s_BaseCurrencyCode | crdtcard.asp po.asp include\global_internationalization_lib.asp
s_BaseCurrencySymbol | include\global_internationalization_lib.asp (2) include\std_util_lib.asp
s_BizDataStoreConnectionString | include\global_data_lib.asp include\global_main_lib.asp include\global_siteconfig_lib.asp (2)
s_BizTalkCatalogDocType | Not referenced in the Solution Sites, but is used in Commerce Server Business Desk.
s_BizTalkConnString | Not referenced in the Solution Sites.
s_BizTalkOrderDocType | include\payment.asp
s_BizTalkSourceQualifierID | include\payment.asp
s_BizTalkSourceQualifierValue | include\payment.asp
s_BizTalkSubmittypeQueue | include\payment.asp
s_CampaignsConnectionString | opt-out.asp include\global_cache_lib.asp
s_CatalogConnectionString | _additem.asp BDRefresh.asp include\catalog.asp (2) include\global_catalog_lib.asp (2) include\std_pipeline_lib.asp
s_CommerceProviderConnectionString | include\global_profile_lib.asp services\include\delete_profiles.asp services\include\save_all_profiles.asp (3)
s_NonSecureHostname | include\global_siteconfig_lib.asp (2) include\std_cookie_lib.asp
s_PageEncodingCharset | include\global_main_lib.asp
s_ProfileServiceConnectionString | include\global_profile_lib.asp include\std_profile_lib.asp
s_SecureHostname | include\global_siteconfig_lib.asp include\std_cookie_lib.asp
s_SiteName | template\layout1.asp template\no_menu.asp
s_SMTPServerName | Not referenced in the Solution Sites.
s_TransactionConfigConnectionString | BDRefresh.asp pickship.asp (2) include\catalog.asp (2) include\global_cache_lib.asp (10) include\global_catalog_lib.asp include\std_pipeline_lib.asp (2)
s_TransactionsConnectionString | include\std_ordergrp_lib.asp (2) services\include\lib.asp (2) services\include\requisition.asp (2)
s_WeightMeasure | Not referenced in the Solution Sites, but is used in Business Desk.

See Also

App Default Config Settings


Constants Reference

Existing global constants are declared in a type library. There are two files named const.asp in the Solution Sites. The distinction between them is their scope—that is, which files include them. The file services\include\const.asp contains constants specific to Partner and Customer Services. An empty file, include\const.asp, is included in all the other Active Server Pages (ASP) pages in the Solution Sites.

This section contains:

  • Partner/Customer Service Constants

  • Global Constants

See Also

Constants


Partner/Customer Service Constants

The file services\include\const.asp contains constants specific to Partner and Customer Services. The following pages include this file:

  • services\customer\account.asp

  • services\customer\orders.asp

  • services\customer\view_order.asp

  • services\partner\account.asp

  • services\partner\edit_user.asp

  • services\partner\orders.asp

  • services\partner\users.asp

  • services\partner\view_order.asp

See Also

Global Constants

Constants Reference

Constants


Global Constants

The AppConsts 1.0 Type Library is included in the global.asa file. The full source code used to compile this type library is in the Microsoft Commerce Server SDK at <Drive>:\Program Files\Microsoft Commerce Server\SDK\Samples\Solution Sites\AppConsts.idl. Use this file as a starting point if you want to change any values in the type library. If you change any of the values in this type library, you will need to recompile the type library for your changes to become effective.

An empty file, include\const.asp, is included in all the Active Server Pages(ASP) pages other than Partner and Customer Services. You can declare constants in it to avoid rebuilding the AppConsts 1.0 Type Library.

The following topics list the constants declared in the AppConsts 1.0 Type Library:

  • HTMLLib Constants

  • Miscellaneous Constants

  • Access Constants

  • AppConfig Values

See Also

Partner Service Constants

Constants Reference

Constants


HTMLLib Constants

The following constants are declared in the AppConsts 1.0 Type Library.

Constant

Data Type

Value

Post types
HTTP_POST | LONG | 1
HTTP_GET | LONG | 2

Collection types
SIMPLELIST_COLLECTION | LONG | 1
DICTIONARY_COLLECTION | LONG | 2
ARRAY_COLLECTION | LONG | 3

Row types
HEADER_ROW | LONG | 1
DATA_ROW | LONG | 2

Commonly used elements
CR | BSTR | L"<BR>"
CRLF | BSTR | L"<P></P>"
BR | BSTR | L"<BR>"
HR | BSTR | L"<HR>"
NBSP | BSTR | L"&nbsp"
NOWRAP | BSTR | L"NOWRAP"
LJ | BSTR | L"LEFT"
RJ | BSTR | L"RIGHT"
CJ | BSTR | L"CENTER"
ALIGN_LEFT | BSTR | L"LEFT"
ALIGN_RIGHT | BSTR | L"RIGHT"
ALIGN_CENTER | BSTR | L"CENTER"

See Also

Miscellaneous Constants

Access Constants

AppConfig Values

Global Constants

Partner Service Constants


Miscellaneous Constants

The following constants are declared in the AppConsts 1.0 Type Library.

Constant

Data Type

Value

Pipeline
BASKET_ERRORS | BSTR | L"_Basket_Errors"
PURCHASE_ERRORS | BSTR | L"_Purchase_Errors"
ORDERFORMS | BSTR | L"OrderForms"
ORDERGROUP_ID | BSTR | L"ordergroup_id"
PREFERRED_BILLING_CURRENCY | BSTR | L"preferred_billing_currency"
FIRST_NAME | BSTR | L"first_name"
LAST_NAME | BSTR | L"last_name"
DEFAULT_ORDERFORM | BSTR | L"Default"
SHIPPING_METHOD_NAME | BSTR | L"shipping_method_name"
ADDRESS_ID | BSTR | L"address_id"
ADDRESS_PARENT_ID | BSTR | L"ID"
ADDRESS_NAME | BSTR | L"address_name"
REGION_NAME | BSTR | L"region_name"
REGION_CODE | BSTR | L"region_code"
POSTAL_CODE | BSTR | L"postal_code"
ADDRESS_COUNTRY | BSTR | L"country_code"

Forms
CONFIRM_PASSWORD | BSTR | L"confirm_password"

General
MODIFIED_BY | BSTR | L"user_id_changed_by"
DATE_REGISTERED | BSTR | L"date_registered"
DATE_CREATED | BSTR | L"date_created"

See Also

HTMLLib Constants

Access Constants

AppConfig Values

Global Constants

Partner Service Constants


Access Constants

The following constants are declared in the AppConsts 1.0 Type Library.

Constant

Data Type

Value

m_UserAccessType
GUEST_VISIT | LONG | 1
IIS_AUTH | LONG | 2
TICKET_AUTH | LONG | 3
ANON_VISIT | LONG | 5

iUserType
ANON_USER | LONG | 1
GUEST_USER | LONG | 2
AUTH_USER | LONG | 4

AuthManager ticket types
GUEST_TICKET | LONG | 1
AUTH_TICKET | LONG | 2

PROFILE_TYPE
GUEST_PROFILE | LONG | 0
REGISTERED_PROFILE | LONG | 1

Cookie names
GUEST_TICKET_NAME | BSTR | L"MSCSProfile"
AUTH_TICKET_NAME | BSTR | L"MSCSAuth"
TEST_COOKIE_NAME | BSTR | L"mscs_test_cookie_name"
TEST_COOKIE_VALUE | BSTR | L"mscs_test_cookie_value"

Ticket modes
WRITE_TICKET_TO_COOKIE | BOOL | -1
WRITE_TICKET_TO_URL | BOOL | 0

Account status
ACCOUNT_INACTIVE | LONG | 0
ACCOUNT_ACTIVE | LONG | 1

Operational environment
PRODUCTION | LONG | 1
DEVELOPMENT | LONG | 0

Site installation point
HOME_DIRECTORY | LONG | 1
VIRTUAL_DIRECTORY | LONG | 2

Format control
CONTROL_ERROR_TEMPLATE | BSTR | L"%1%2"
BRACKETED_TEMPLATE | BSTR | L"[%1]"
SINGLE_QUOTE_TEMPLATE | BSTR | L"'%1'"
SELECT_CLAUSE_TEMPLATE_3 | BSTR | L"SELECT %1 FROM %2 WHERE %3 ORDER BY %4"
LABEL_TEMPLATE | BSTR | L"%1:"
FULLNAME_TEMPLATE | BSTR | L"%1%2"
KEYVALUE_TEMPLATE | BSTR | L"%1=%2"

Buttons, post, and URL keys
MODE | BSTR | L"mode"
ACTION_BTN_CTRL_NAME | BSTR | L"btnAction"
SUBMIT_BUTTON | BSTR | L"btnSubmit"
RESET_BUTTON | BSTR | L"btnReset"
ADDRESS_TYPE | BSTR | L"address_type"
PAGENUMBER_URL_KEY | BSTR | L"Page"
DEF_NAME_URL_KEY | BSTR | L"def_name"
CATALOG_NAME_URL_KEY | BSTR | L"catalog_name"
CATEGORY_NAME_URL_KEY | BSTR | L"category_name"
PRODUCT_ID_URL_KEY | BSTR | L"product_id"
PRODUCT_QTY_URL_KEY | BSTR | L"product_qty"
PRODUCT_ACTION_KEY | BSTR | L"ActionKey"
VARIANT_ID_URL_KEY | BSTR | L"variant_id"
ITEM_INDEX_URL_KEY | BSTR | L"index"
ORDERFORM_NAME | BSTR | L"orderform_name"
ORDER_ID | BSTR | L"order_id"
ORDER_NUMBER | BSTR | L"order_number"
BILLING_USE | BSTR | L"use_for_billing"
CHECKED | BSTR | L"1"
GUIDS | BSTR | L"ID"
SOURCE_PAGE | BSTR | L"SourcePage"
ADD_ACTION | BSTR | L"New"
ADDRBK_MODE | BSTR | L"addrbk_mode"
RETURN_URL | BSTR | L"return_url"
PO_ITEMINDEX_URL_KEY | BSTR | L"po_index"
SHIPPING_METHOD_URL_KEY | BSTR | L"chkShippingMethod"

See Also

HTMLLib Constants

Miscellaneous Constants

AppConfig Values

Global Constants

Partner Service Constants


AppConfig Values

The following constants are declared in the AppConsts 1.0 Type Library.

Constant

Data Type

Value

i_AddressBookOption
ADDRESSBOOK_DISABLED | LONG | 0
ADDRESSBOOK_READONLY | LONG | 1
ADDRESSBOOK_READWRITE | LONG | 2

i_AddItemRedirectOptions
REDIRECT_TO_BASKET | LONG | 0
REDIRECT_TO_PRODUCT | LONG | 1

i_AltCurrencyOptions
ALTCURRENCY_DISPLAY_DISABLED | LONG | 0
ALTCURRENCY_DISPLAY_ENABLED | LONG | 1

i_BillingOptions
NO_BILLING_OPTIONS | LONG | 0
STANDALONE_PO | LONG | 2

i_BizTalkOptions
BIZTALK_PO_XFER_DISABLED | LONG | 0
BIZTALK_PO_XFER_ENABLED | LONG | 1

i_CurrencyDisplayOrderOptions
DISPLAY_BASE_CURRENCY_FIRST | LONG | 0
DISPLAY_ALT_CURRENCY_FIRST | LONG | 1

i_DelegatedAdminOptions
DELEGATED_ADMIN_NOT_SUPPORTED | LONG | 0
DELEGATED_ADMIN_SUPPORTED | LONG | 1

i_FormLoginOptions
FORM_LOGIN_NOT_SUPPORTED | LONG | 0
FORCE_LOGIN_ON_ENTRANCE | LONG | 1
LOGIN_OPTIONAL_ON_ENTRANCE | LONG | 2
FORCE_LOGIN_ON_PURCHASE | LONG | 5
LOGIN_OPTIONAL_ANY_TIME | LONG | 6
USE_IIS_AUTH | LONG | 7

i_PaymentOptions
CREDIT_CARD_PAYMENT_OPTION | LONG | 1
PURCHASE_ORDER_PAYMENT_OPTION | LONG | 4

i_HostNameCorrectionOptions
HOSTNAME_CORRECTION_DISABLED | LONG | 0
HOSTNAME_CORRECTION_ENABLED | LONG | 1

i_CookiePathCorrectionOptions
APP_BASED_CORRECTION | LONG | 1
FILTER_BASED_CORRECTION | LONG | 2

i_SitePrivacyOptions
PROFILE_GUEST_USER | LONG | 1
TRACK_GUEST_VISITS | LONG | 2

i_SiteRegistrationOptions
REGISTRATION_SUPPORTED | LONG | 1
REGISTRATION_NOT_SUPPORTED | LONG | 0

i_SiteTicketOptions
PUT_TICKET_IN_URL | LONG | 1
PUT_TICKET_IN_COOKIE | LONG | 2

GetProfile option
RETURN_NOTHING_ON_NO_PROFILE | BOOL | 0
RETURN_HRESULT_ON_NO_PROFILE | BOOL | -1

Profile fields
PROFILE_TYPE_USER | BSTR | L"UserObject"
PROFILE_TYPE_ADDRESS | BSTR | L"Address"
PROFILE_TYPE_ORG | BSTR | L"Organization"
SCHEMA_CATALOG | BSTR | L"ProfileDefinitions"
PROFILE_SYSTEM_GROUP | BSTR | L"ProfileSystem"
BUSINESS_DESK_GROUP | BSTR | L"BusinessDesk"
GENERAL_INFO_GROUP | BSTR | L"GeneralInfo"
ACCOUNT_INFO_GROUP | BSTR | L"AccountInfo"
FIELD_ORG_ORG_ID | BSTR | L"org_id"
FIELD_ORG_NAME | BSTR | L"name"
FIELD_ORG_CONTACT | BSTR | L"user_id_admin_contact"
FIELD_ORG_DATE_UPDATED | BSTR | L"date_last_changed"
FIELD_ORG_CHANGED_BY | BSTR | L"user_id_changed_by"
FIELD_ORG_PURCHASING_MANAGER | BSTR | L"user_id_purchasing_manager"
FIELD_ORG_RECEIVING_MANAGER | BSTR | L"user_id_receiver"
ORG_CATALOGSET | BSTR | L"GeneralInfo.org_catalog_set"
FIELD_USER_ID | BSTR | L"user_id"
FIELD_USER_LOGIN_NAME | BSTR | L"logon_name"
FIELD_USER_PASSWORD | BSTR | L"user_security_password"
FIELD_USER_FIRST_NAME | BSTR | L"first_name"
FIELD_USER_LAST_NAME | BSTR | L"last_name"
FIELD_USER_CHANGED_BY | BSTR | L"user_id_changed_by"
FIELD_USER_TELEPHONE | BSTR | L"tel_number"
FIELD_USER_TELEPHONE_EXTENSION | BSTR | L"tel_extension"
FIELD_USER_ORGID | BSTR | L"org_id"
FIELD_USER_STATUS | BSTR | L"account_status"
FIELD_USER_DATE_REGISTERED | BSTR | L"date_registered"
FIELD_USER_PARTNERDESK_ROLE | BSTR | L"partner_desk_role"
FIELD_USER_DATE_UPDATED | BSTR | L"date_last_changed"
FIELD_USER_PARENT_DN | BSTR | L"ParentDN"
FIELD_USER_UserAccountControl | BSTR | L"user_account_control"
FIELD_USER_SAMAccountName | BSTR | L"sam_account_name"
FIELD_USER_OLD_PASSWORD | BSTR | L"old_user_password"
FIELD_USER_NEW_PASSWORD | BSTR | L"new_user_password"
FIELD_USER_CONFIRM_PASSWORD | BSTR | L"confirm_password"
ACCOUNT_STATUS | BSTR | L"account_status"
USER_ID | BSTR | L"user_id"
PROFILE_TYPE | BSTR | L"user_type"
LOGON_NAME | BSTR | L"logon_name"
LOGON_PASSWORD | BSTR | L"user_security_password"
USER_LOGIN_NAME | BSTR | L"GeneralInfo.logon_name"
USER_PASSWORD | BSTR | L"GeneralInfo.user_security_password"
USER_FIRST_NAME | BSTR | L"GeneralInfo.first_name"
USER_LAST_NAME | BSTR | L"GeneralInfo.last_name"
USER_CHANGED_BY | BSTR | L"GeneralInfo.user_id_changed_by"
USER_ORGID | BSTR | L"AccountInfo.org_id"
USER_STATUS | BSTR | L"AccountInfo.account_status"
USER_DATE_REGISTERED | BSTR | L"AccountInfo.date_registered"
USER_CATALOGSET | BSTR | L"AccountInfo.user_catalog_set"
USER_PARTNERDESK_ROLE | BSTR | L"BusinessDesk.partner_desk_role"
USER_DATE_UPDATED | BSTR | L"ProfileSystem.date_last_changed"
USER_PARENT_DN | BSTR | L"ProfileSystem.ParentDN"
USER_UserAccountControl | BSTR | L"ProfileSystem.user_account_control"
USER_SAMAccountName | BSTR | L"ProfileSystem.sam_account_name"
FIELD_ADDRESS_ID | BSTR | L"id"
FIELD_ADDRESS_ADDRESS_ID | BSTR | L"address_id"
FIELD_ADDRESS_TYPE | BSTR | L"address_type"
FIELD_ADDRESS_FRIENDLY_NAME | BSTR | L"address_name"
FIELD_ADDRESS_FIRST_NAME | BSTR | L"first_name"
FIELD_ADDRESS_LAST_NAME | BSTR | L"last_name"
FIELD_ADDRESS_ADDRESS1 | BSTR | L"address_line1"
FIELD_ADDRESS_ADDRESS2 | BSTR | L"address_line2"
FIELD_ADDRESS_CITY | BSTR | L"city"
FIELD_ADDRESS_REGION_NAME | BSTR | L"region_name"
FIELD_ADDRESS_REGION_CODE | BSTR | L"region_code"
FIELD_ADDRESS_POSTAL_CODE | BSTR | L"postal_code"
FIELD_ADDRESS_COUNTRY_CODE | BSTR | L"country_code"
FIELD_ADDRESS_COUNTRY_NAME | BSTR | L"country_name"
FIELD_ADDRESS_TELEPHONE | BSTR | L"tel_number"
FIELD_ADDRESS_TELEPHONE_EXTENSION | BSTR | L"tel_extension"
FIELD_ADDRESS_DATE_CREATED | BSTR | L"date_created"
FIELD_ADDRESS_DATE_UPDATED | BSTR | L"date_last_changed"
FIELD_ADDRESS_UPDATED_BY | BSTR | L"user_id_changed_by"
FIELD_ADDRESS_DESCRIPTION | BSTR | L"description"
ADDRESS_ADDRESS1 | BSTR | L"GeneralInfo.address_line1"
ADDRESS_ADDRESS2 | BSTR | L"GeneralInfo.address_line2"
ADDRESS_CITY | BSTR | L"GeneralInfo.city"
ADDRESS_POSTALCODE | BSTR | L"GeneralInfo.postal_code"
ADDRESS_COUNTRY_NAME | BSTR | L"GeneralInfo.country_name"
ADDRESS_TELEPHONE | BSTR | L"GeneralInfo.tel_number"
ADDRESS_TELEPHONE_EXTENSION | BSTR | L"tel_extension"
ADDRESS_DATE_CREATED | BSTR | L"ProfileSystem.date_created"
ADDRESS_DATE_UPDATED | BSTR | L"ProfileSystem.date_last_changed"
ADDRESS_UPDATED_BY | BSTR | L"GeneralInfo.user_id_changed_by"
ADDRESS_DESCRIPTION | BSTR | L"GeneralInfo.description"

Address types
NEUTRAL_ADDRESS | LONG | 0
SHIPPING_ADDRESS | LONG | 1
BILLING_ADDRESS | LONG | 2

User admin roles
ROLE_USER | LONG | 1
ROLE_ADMIN | LONG | 2

Caching
TICKET_REPLACEMENT_TOKEN | BSTR | L"__TICKET__"

Catalog classes
cscCategoryClass | LONG | 1
cscProductVariantClass | LONG | 2
cscProductClass | LONG | 4
cscProductFamilyClass | LONG | 8
cscProductFamilyForVariantsClass | LONG | 16
cscProductVariantsForFamily | LONG | 32

Catalog attributes/properties
DISPLAY_ON_SITE_ATTRIBUTE | BSTR | L"DisplayOnSite"
DISPLAY_NAME_ATTRIBUTE | BSTR | L"DisplayName"
PROPERTY_NAME_ATTRIBUTE | BSTR | L"PropertyName"
DEFINITION_TYPE_PROPERTY_NAME | BSTR | L"i_ClassType"
CATALOG_PRODUCTID_PROPERTY_NAME | BSTR | L"ProductID"
CATALOG_VARIANTID_PROPERTY_NAME | BSTR | L"VariantID"
PRODUCT_NAME_PROPERTY_NAME | BSTR | L"Name"
PRODUCT_DESCRIPTION_PROPERTY_NAME | BSTR | L"description"
PRODUCT_PRICE_PROPERTY_NAME | BSTR | L"cy_list_price"
CATALOG_NAME_PROPERTY_NAME | BSTR | L"CatalogName"
CATEGORY_NAME_PROPERTY_NAME | BSTR | L"CategoryName"
IMAGE_FILENAME_PROPERTY_NAME | BSTR | L"Image_filename"
IMAGE_WIDTH_PROPERTY_NAME | BSTR | L"Image_width"
IMAGE_HEIGHT_PROPERTY_NAME | BSTR | L"Image_height"
PROD_CLASSTYPE_FLDNAME | BSTR | L"i_ClassType"
PROD_CATALOG_FLDNAME | BSTR | L"CatalogName"
PRODUCTLIST_SORT_PROPERTY_NAME | BSTR | L"name"
CATALOG_SEARCH_CATEGORY_NAME | BSTR | L""
CATALOG_ROOT_CATEGORY_NAME | BSTR | L""
ADO_CONNECTION_STRING | BOOL | -1

Pipeline keys
SHIPPING_ADDRESS_ID | BSTR | L"shipping_address_id"
BILLING_ADDRESS_ID | BSTR | L"billing_address_id"
SHIPPING_METHOD_KEY | BSTR | L"shipping_method_id"
PAYMENT_METHOD | BSTR | L"payment_method"
ORDERFORM_PRODUCT_QTY_KEY | BSTR | L"quantity"
TOTAL_LINEITEMS | BSTR | L"total_lineitems"
SHIPPING_TOTAL | BSTR | L"_cy_shipping_total"
HANDLING_TOTAL | BSTR | L"_cy_handling_total"
TAX_TOTAL | BSTR | L"_cy_tax_total"
SAVED_SUBTOTAL | BSTR | L"saved_cy_oadjust_subtotal"
SAVED_SHIPPING_TOTAL | BSTR | L"saved_cy_shipping_total"
SAVED_HANDLING_TOTAL | BSTR | L"saved_cy_handling_total"
SAVED_TAX_TOTAL | BSTR | L"saved_cy_tax_total"
SAVED_TOTAL_TOTAL | BSTR | L"saved_cy_total_total"
SUBTOTAL | BSTR | L"_cy_oadjust_subtotal"
TOTAL_TOTAL | BSTR | L"_cy_total_total"
CC_NAME | BSTR | L"cc_name"
CC_TYPE | BSTR | L"cc_type"
CC_NUMBER | BSTR | L"_cc_number"
CC_MONTH | BSTR | L"_cc_expmonth"
CC_YEAR | BSTR | L"_cc_expyear"
CREDIT_CARD_PAYMENT_METHOD | BSTR | L"credit_card"
PURCHASE_ORDER_PAYMENT_METHOD | BSTR | L"purchase_order"

INI file
CONFIG_FILE | BSTR | L"CSApp.ini"
SITE_NAME | BSTR | L"SiteName"
APP_NAME | BSTR | L"AddressKeyName"

SiteConfig
WEB_SERVER_MACHINE | BSTR | L"s_WebServerMachine"
WEB_SERVER_NAME | BSTR | L"s_WebServerName"
WEB_SERVER_COUNT | BSTR | L"s_NumberOfServers"
CURRENT_WEB_SERVER | BSTR | L"s_CurrentServer"
WEB_SERVER_INSTANCE | BSTR | L"s_WebServerInstance"

Table names
ADDRESS_BOOK_TABLE | BSTR | L"AddressBook"

HRESULTs
HRESULT_E_FAIL | LONG | -2147467259 (0x80004005)
HRESULT_E_NOTIMPL | LONG | -2147467263 (0x80004001)

Input field types
TEXTBOX | LONG | 0
LISTBOX | LONG | 1
PASSWORD | LONG | 2
HIDDEN | LONG | 3
CHECKBOX | LONG | 4
COMBOBOX | LONG | 5
DATETIME | LONG | 7

FileSystemObject
ForReading | LONG | 1
TristateUseDefault | LONG | -2

See Also

HTMLLib Constants

Miscellaneous Constants

Access Constants

Global Constants

Partner Service Constants


Routines Reference

Nearly all of the content displayed in the Commerce Server Solution Sites is constructed dynamically using Microsoft Visual Basic Scripting Edition, running within Active Server Pages (ASP). Numerous routines have been written that can be used as is for building new pages, or the routines can be modified as needed to alter existing pages and to support new pages.

It is crucial that you understand the existing Solution Sites routines in order to avoid rewriting code that has already been written and debugged. There are nearly 700 subroutines and functions in the Solution Sites files.

This reference contains one topic per routine. Each routine topic describes the purpose of the routine. A definition section shows the routine definition from the source file. For the most commonly used routines, the parameters are described in detail, return values are described where they exist, and additional remarks may be present. Each routine topic also contains a link to the topic for the file in which the routine is defined.

All routine topics are interlinked in the same fashion as their calling sequences, so that they can be traversed in the same way. This can be important when modifying existing code, and understanding the potential side effects of those changes. See the sections in each topic named "Routines Called" and "Called By".

To make the number of routines more manageable, the routine topics have been divided alphabetically as indicated.

This section contains:

  • A - D

  • E - G

  • H

  • I - O

  • P - R

  • S - V


A - D

A – D

This section contains topics for the following routines, beginning with the letters A through D.

Routine | File
AddDiscountMessages | include\std_ordergrp_lib.asp
AddDiscountMessages | services\include\logic_orders.asp
AddGroupAndPropertySchemas | include\global_profile_lib.asp
AddPartnerAndCustomerServicePages | services\include\global_service_lib.asp
AddPartnerAndCustomerServiceStyles | services\include\global_service_lib.asp
AddSetClauseAndUpdateUserAccountControl | services\include\save_all_profiles.asp
AddURLArguments | include\std_url_lib.asp
Analysis_ConstructKeyValueString | include\analysis.asp
Analysis_ConstructPRID | include\analysis.asp
Analysis_LogAddToBasket | include\analysis.asp
Analysis_LogEvent | include\analysis.asp
Analysis_LogRemoveFromBasket | include\analysis.asp
Analysis_LogSubmitOrder | include\analysis.asp
Application_OnStart | global.asa
ApplyVendorInfo | _additem.asp
arrPopulateOrderHeaderDetails | services\include\render_orders.asp
arrPopulateProfileDetails | services\include\render_list.asp
arrSearchDept | srchdept.asp
bAddUserToGroup | services\include\ad_routines.asp
bCheckIfProfileExists | services\include\check_profile.asp
bCheckIfThePropertyFeatureIsSupported | services\include\lib.asp
bClickedViewButton | stepsrch.asp
bClickedViewOrSearchButton | stepsrch.asp
bFullTextResultsAreCached | search.asp
bHandlePaintingACLsForUsersInAD | services\include\save_one_profile.asp
bInsertProfile | services\include\save_one_profile.asp
bInsertProfileDetails | services\include\save_one_profile.asp
bInsertProperty | services\include\save_one_profile.asp
bInvalidDate | services\include\lib.asp
bIsAddressNameUnique | newaddr.asp
bIsPropertyValueAdded | services\include\check_profile.asp
bIsSearchDeptPageCached | srchdept.asp
bIsShippingMethodSupported | _setship.asp
bIsSiteTerm | include\global_siteterms_lib.asp
bIsStepSearchPageCached | stepsrch.asp
bMatchesPattern | include\form_lib.asp
Bold | include\html_lib.asp
BooleanToString | include\std_string_lib.asp
bPaintACLForUser | services\include\ad_routines.asp
bProfileHasChanged | services\include\check_profile.asp
bRegistrationPageNotAvailable | login\newuser.asp
bRemoveUserFromGroup | services\include\ad_routines.asp
BRTag | include\html_lib.asp
bSaveProfileAndRedirect | services\include\save_one_profile.asp
bSaveProfileDetails | services\include\save_one_profile.asp
bSaveProperty | services\include\save_one_profile.asp
bSaveReadWriteProperty | services\include\save_one_profile.asp
bValidateLoginNameChars | services\include\lib.asp
bValidatePasswordChars | services\include\lib.asp
CacheFragment | include\std_cache_lib.asp
CacheObject | include\std_cache_lib.asp
CatchErrors | _setship.asp
CatchErrors | addrbook.asp
CatchErrors | pickship.asp
CatchErrors | summary.asp
CatchErrors | newaddr.asp
CatchErrors | _setadrs.asp
CatchErrors | addrform.asp
CatchErrorsForPaymentPages | include\payment.asp
cellRenderReadOnlyProperty | services\include\render_common.asp
ChangeActionHandler | services\include\password_handlers.asp
CheckBasket | basket.asp
CheckIfOrderExists | services\include\lib.asp
CheckIfProfilesExist | services\include\lib.asp
CheckOut | include\payment.asp
CheckPartnerServiceAccess | include\std_access_lib.asp
CloseOrderDetailsActionHandler | services\include\order_handlers.asp
CollectBasketItems | template\discount.asp
colRenderAdvancedSearchTab | services\include\render_common.asp
colRenderCountryNames | services\include\render_common.asp
colRenderForeignKeyProperty | services\include\render_edit_common.asp
colRenderPasswordProperty | services\include\render_edit_common.asp
colRenderPrimaryKeyProperty | services\include\render_edit_common.asp
colRenderProperty | services\include\render_edit_common.asp
colRenderPropertyTip | services\include\render_edit_common.asp
colRenderSimpleSearchTab | services\include\render_common.asp
colRenderUniqueKeyProperty | services\include\render_edit_common.asp
ConvertListToArray | include\std_util_lib.asp
CopyProductToItem | template\discount.asp
CorrectRequest | include\std_cookie_lib.asp
CreateOptOutList | opt-out.asp
CreatePOIndexes | basket.asp
CreateSet | include\std_util_lib.asp
DeleteAllActionHandler | services\include\edit_handlers.asp
DeleteAllProfiles | services\include\delete_profiles.asp
DeleteRegisteredUser | services\include\delete_profiles.asp
DeleteSelectedProfiles | services\include\delete_profiles.asp
DeleteSingleProfile | services\include\delete_profiles.asp
DeSelectAllActionHandler | services\include\edit_handlers.asp
dictAggregatePreviews | pickship.asp
dictGetCatalogAttributes | include\global_catalog_lib.asp
dictGetInitialFieldValues | newaddr.asp
dictGetProfileSchemaForAllProfileTypes | include\global_profile_lib.asp
dictGetpropertyFromList | services\include\lib.asp
dictGetPropertySchema | include\global_forms_lib.asp
dictGetRSFields | include\global_catalog_lib.asp
dictGetSearchDictionaryForPage | services\include\lib.asp
DoubleQuote | include\std_util_lib.asp


AddDiscountMessages (std_ordergrp_lib.asp)

This sub adds a footnote symbol for each discount applied to each line item. The footnote symbol is a "D" plus the campaign ID.

Definition

Sub AddDiscountMessages(

  mscsOrderGrp

)

Parameters

mscsOrderGrp

An initialized OrderGroup object.

Defined in File

include\std_ordergrp_lib.asp

Routines Called

None.

Called By

Main (basket.asp)

Main (summary.asp)


AddDiscountMessages (services\include\logic_orders.asp)

This sub adds a footnote symbol for each discount applied to each line item. The footnote symbol is a "D" plus the campaign ID.

Definition

Sub AddDiscountMessages(

  mscsOrderGrp

)

Parameters

mscsOrderGrp

An initialized OrderGroup object.

Defined in File

services\include\logic_orders.asp

Routines Called

None.

Called By

mscsGetOrderGroupWithDiscountsByID


AddGroupAndPropertySchemas

This sub recursively adds all group and property definitions for a profile to a flat list of Dictionary objects contained in a SimpleList object.

Definition

Sub AddGroupAndPropertySchemas(

  byVal oGroup,

  byRef listProperties,

  byRef oProfileDefsCatalog,

  byRef oSiteTermsProfile

)

Defined in File

include\global_profile_lib.asp

Routines Called

dictGetPropertySchema

GetDictionary

Called By

listGetProfileSchema


AddPartnerAndCustomerServicePages

This sub assigns friendly names to pages used by Customer and Partner Services.

Definition

Sub AddPartnerAndCustomerServicePages(

  byRef dictPage

)

Defined in File

services\include\global_service_lib.asp

Routines Called

None.

Called By

GetSitePages


AddPartnerAndCustomerServiceStyles

This sub adds styles used by Customer and Partner Services.

Definition

Sub AddPartnerAndCustomerServiceStyles(

  byRef objSiteStyle

)

Defined in File

services\include\global_service_lib.asp

Routines Called

None.

Called By

GetSiteStyles


AddSetClauseAndUpdateUserAccountControl

This function updates the PartnerDeskRole property in the profile of the user.

Definition

Function AddSetClauseAndUpdateUserAccountControl(

  byRef bFieldUpdated,

  byRef bFieldSelected

  byVal dictSearchOptions

)

Return Value

A string containing a SQL statement.

Defined in File

services\include\save_all_profiles.asp

Routines Called

GetRequestString

GetUserAccountControl

sAddSetClause

sGetThisPageProperty

UpdateUserAccountControlProperty

Called By

SaveAllSelectedProfiles


AddURLArguments

This function appends property/value pairs to a URL string.

Definition

Function AddURLArguments(

  byVal url,

  byRef arrParams,

  byRef arrVals

)

Parameters

url

A string containing a URL.

arrParams

An array of strings containing the property names.

arrVals

An array of strings containing the values corresponding to the property names.

Return Value

A string containing the new URL string.

Defined in File

include\std_url_lib.asp

Routines Called

None.

Called By

IsPersistentCookieAllowed

Remarks

The format of the resulting URL string is:

   url?property1=value1&property2=value2


Analysis_ConstructKeyValueString

This function constructs a key/value pair for a Commerce event.

Definition

Function Analysis_ConstructKeyValueString(

  byVal sKey,

  byVal sValue

)

Parameters

sKey

A string containing the key.

sValue

A string containing the value corresponding to the key.

Return Value

A string containing the key/value pair.

Defined in File

include\analysis.asp

Routines Called

DoubleQuote

Called By

Analysis_ConstructPRID

Analysis_LogSubmitOrder

Remarks

The format of the string is:

   sKey="sValue"

See Also

Analysis Integration


Analysis_ConstructPRID

This function constructs the PRID property string for "add to basket" and "remove from basket" Commerce events.

Definition

Function Analysis_ConstructPRID(

  byVal sCatalogName,

  sCategoryName,

  byVal sProductID

  byVal sVariantID

)

Parameters

sCatalogName

A string containing the catalog name.

sCategoryName

A string containing the category name.

sProductID

A string containing the product ID.

sVariantID

A string containing the variant ID.

Return Value

A string containing the property.

Defined in File

include\analysis.asp

Routines Called

Analysis_ConstructKeyValueString

Called By

Analysis_LogAddToBasket

Analysis_LogRemoveFromBasket

Remarks

The sCategoryName parameter is not used.

The sVariantID parameter can be Null.

The format of the string is:

   sCatalogName;sProductID;sVariantID

See Also

Analysis Integration


Analysis_LogAddToBasket

This sub logs a Commerce event (CEVT) when an item is added to the basket.

Definition

Sub Analysis_LogAddToBasket(

  byVal sCatalogName,

  byVal sCategoryName,

  byVal sProductID,

  byVal sVariantID

)

Parameters

sCatalogName

A string containing the catalog name.

sCategoryName

A string containing the category name.

sProductID

A string containing the product ID.

sVariantID

A string containing the variant ID.

Defined in File

include\analysis.asp

Routines Called

Analysis_ConstructPRID

Analysis_LogEvent

Called By

Main (_additem.asp)

Remarks

The sCategoryName parameter is not used.

The sVariantID parameter can be Null.

The format of the logged event is:

   CEVT={T=BSK,EVT=AIBSK,sCatalogName;sProductID;sVariantID}

See Also

Analysis Integration


Analysis_LogEvent

This function logs a Commerce event (CEVT) to the Web server log file.

Definition

Sub Analysis_LogEvent(

  byVal sClass,

  byVal sEvent,

  byVal rgKeyValueStrings

)

Parameters

sClass

A string containing the class of the event.

sEvent

A string containing the name of the event.

rgKeyValueStrings

An array of strings containing the properties to log.

Defined in File

include\analysis.asp

Routines Called

None.

Called By

Analysis_LogAddToBasket

Analysis_LogRemoveFromBasket

Analysis_LogSubmitOrder

Remarks

The format of the logged event is:

   CEVT={T=sClass,EVT=sEvent,property1,property2,...}

See Also

Analysis Integration


Analysis_LogRemoveFromBasket

This sub logs a Commerce event (CEVT) when an item is removed from the basket.

Definition

Sub Analysis_LogRemoveFromBasket(

  byVal sCatalogName,

  sCategoryName,

  byVal sProductID,

  byVal sVariantID

)

Parameters

sCatalogName

A string containing the catalog name.

sCategoryName

A string containing the category name.

sProductID

A string containing the product ID.

sVariantID

A string containing the variant ID.

Defined in File

include\analysis.asp

Routines Called

Analysis_ConstructPRID

Analysis_LogEvent

Called By

Main (_delitem.asp)

Remarks

The sCategoryName parameter is not used.

The sVariantID parameter can be Null.

The format of the logged event is:

   CEVT={T=BSK,EVT=RIBSK,sCatalogName;sProductID;sVariantID}

See Also

Analysis Integration


Analysis_LogSubmitOrder

This sub logs a Commerce event when an order is submitted.

Definition

Sub Analysis_LogSubmitOrder(

  byVal sOrderID

)

Parameters

sOrderID

A string containing the order ID.

Defined in File

include\analysis.asp

Routines Called

Analysis_ConstructKeyValueString

Analysis_LogEvent

Called By

SaveBasketAsOrder

Remarks

The format of the logged event is:

   CEVT={T=ORD,EVT=SUBOR,ORID=OrderID}

See Also

Analysis Integration


Application_OnStart

This sub runs when the application starts.

Definition

Sub Application_OnStart()

Defined in File

global.asa

Routines Called

Main (include\global_main_lib.asp)

Remarks

The application starts when the first user requests a file in the application.


ApplyVendorInfo

This sub retrieves the vendor information for the specified catalog and adds that information to the dictionary containing the line item information if BizTalk Server integration is enabled (i_BizTalkOptions = 1).

Definition

Sub ApplyVendorInfo(

  dictItem,

  sCatalogName

)

Parameters

dictItem

A Dictionary object containing the product information.

sCatalogName

A string containing the catalog name.

Defined in File

_additem.asp

Routines Called

None.

Called By

Main (_additem.asp)


arrPopulateOrderHeaderDetails

This function populates an array of table cells representing one order in a recordset of orders. The first cell is a radio button that is selected on the first order.

Definition

Function arrPopulateOrderHeaderDetails(

  byRef iCount,

  byRef rsOrder

)

Parameters

iCount

An integer that determines whether the rendered "RADIO" element contains the CHECKED attribute.

rsOrder

A Recordset object containing order information.

Return Value

The populated array.

Defined in File

services\include\render_orders.asp

Routines Called

htmRenderCurrency

RenderRadioButton

sGetOrderStatusDetails

Called By

tableRenderOrdersListContents

Remarks

The first member of the array specifies an HTML RADIO button INPUT element. The remaining members of the array contain order information.


arrPopulateProfileDetails

This function populates an array with the properties of a profile.

Definition

Function arrPopulateProfileDetails(

  byVal sAction,

  byVal sSubAction,

  byVal Count

  byVal rsProfile

)

Defined in File

services\include\render_list.asp

Routines Called

htmRenderUniqueIDForProfile

listCloneProfileSchema

sGetDisplayValueForProperty

sGetThisPageProperty

Called By

tableRenderMultipleRecords


arrSearchDept

This function retrieves a list of searchable categories from a catalog.

Definition

Function arrSearchDept(

  byRef sItemSeparator

)

Parameters

sItemSeparator

A string containing the character sequence that separates the catalog and category names.

Return Value

A one-dimensional array of strings containing the catalog name, item separator, and category name.

Defined in File

srchdept.asp

Routines Called

GetCatalogForUser

mscsUserCatalogs

Called By

Main (srchdept.asp)

Remarks

The sItemSeparator parameter equals "::::". Thus the format of one of the strings is:

   catalog_name::::category_name


bAddUserToGroup

This function adds a user to an existing Active Directory group.

Definition

Function bAddUserToGroup(

  byVal szGroupName,

  byVal sUserDN

)

Parameters

szGroupName

A string containing the name of the Active Directory group.

sUserDN

A string containing the distinguished name of the user.

Return Value

A Boolean that indicates whether the user was successfully added to the group. True indicates success. False indicates failure.

Defined in File

services\include\ad_routines.asp

Routines Called

rsGetProfile

Called By

bPaintACLForUser


bCheckIfProfileExists

This function determines whether a specific profile already exists.

Definition

Function bCheckIfProfileExists(

  byRef sStatusField,

  byRef iStatusID

)

Defined in File

services\include\check_profile.asp

Routines Called

EnsureUserProfile

GetRequestString

rsGetProfile

sGetThisPageProperty

Called By

PrepareInsertProfile

PrepareSaveProfiles


bCheckIfThePropertyFeatureIsSupported

This function determines whether the featureID attribute for the specified property is set.

Definition

Function bCheckIfThePropertyFeatureIsSupported(

  byVal oProperty

)

Defined in File

services\include\lib.asp

Routines Called

None.

Called By

bInsertProperty

bIsPropertyValueAdded

bProfileHasChanged

bSaveProfileDetails

listGetValidPropertiesForMultiEdit

listReConstructPropertiesSchema

SaveAllSelectedProfiles

tableRenderBlankProfile

tableRenderProfiles

ValidateFields


bClickedViewButton

This function checks whether the user clicked the View button.

Definition

Function bClickedViewButton()

Return Value

A Boolean that indicates whether the View button was clicked. True indicates the button was clicked. False indicates the button was not clicked.

Defined in File

stepsrch.asp

Routines Called

GetRequestString

Called By

PerformSpecificationSearch


bClickedViewOrSearchButton

This function checks whether the user clicked either the View or Search buttons.

Definition

Function bClickedViewOrSearchButton()

Return Value

A Boolean that indicates whether one of the buttons was clicked. True indicates one of the buttons was clicked. False indicates that neither of the buttons were clicked.

Defined in File

stepsrch.asp

Routines Called

GetRequestString

Called By

Main (stepsrch.asp)


bFullTextResultsAreCached

This function checks whether the specified free-text search phrase is cached.

Definition

Function bFullTextResultsAreCached(

  sSearchPhrase,

  byRef htmCachedResult,

  byRef sCacheKey

)

Parameters

sSearchPhrase

A string containing the search phrase.

htmCachedResult

A string containing the HTML cached results.

sCacheKey

A string containing the cache key.

Return Value

A Boolean that indicates whether the phrase is cached. True indicates the phrase is cached. False indicates either the phrase is not cached or that free-text search is not installed.

Defined in File

search.asp

Routines Called

LookupCachedFragment

mscsUserCatalogsetID

RenderText

Called By

Main (search.asp)

Remarks

The cache key consists of the catalog ID concatenated with the search phrase.

If free-text search is not installed, the htmCachedResult parameter contains an error message and the sCacheKey parameter is an empty string.


bHandlePaintingACLsForUsersInAD

This function handles painting of appropriate access control lists (ACLs) for users in Active Directory (adding the users to/from the appropriate Active Directory groups, for example, ADMINGROUP or USERGROUP).

Definition

Function bHandlePaintingACLsForUsersInAD(

  byVal sSubAction,

  byVal sProfileIDs,

  ByVal arrPrevRole

  ByVal arrCurrentRole

)

Parameters

sSubAction

A string containing the subaction (add or copy).

sProfileIDs

A string containing profile IDs separated by the constant PROFILE_ID_SEPARATOR.

arrPrevRole

An array of integers specifying the previous PartnerDesk roles of the users.

arrCurrentRole

An array of integers specifying the current PartnerDesk roles of the users.

Return Value

A Boolean indicating whether the users were successfully added. True indicates success. False indicates failure.

Defined in File

services\include\save_one_profile.asp

Routines Called

bPaintACLForUser

GetUserPropertyFromID

Called By

bInsertProfileDetails

bSaveProfileDetails


bInsertProfile

This function validates the login name and password of a user and, if successful, creates a new profile.

Definition

Function bInsertProfile(

  byVal sSubAction,

  byRef sStatusField,

  byRef sStatusID

  byRef sProfileIDs

)

Parameters

sSubAction

A string containing the subaction (add or copy).

sStatusField

A string containing the status field code.

sStatusID

A string containing the status ID code.

sProfileIDs

A string containing profile IDs separated by the constant PROFILE_ID_SEPARATOR.

Return Value

A Boolean indicating whether the credentials were valid and the profile was created. True indicates the credentials were valid and the profile was created. False indicates either the credentials were invalid or the profile could not be created.

Defined in File

services\include\save_one_profile.asp

Routines Called

bInsertProfileDetails

bValidateLoginNameChars

bValidatePasswordChars

EnsureUserProfile

GetQualifiedName

GetRequestString

sGetThisPageProperty

Called By

PrepareInsertProfile


bInsertProfileDetails

This function inserts property values into an empty profile.

Definition

Function bInsertProfileDetails(

  byVal sSubAction,

  byRef sStatusField,

  byRef sStatusID,

  byVal rsProfiles

  byVal sProfileIDs

)

Parameters

sSubAction

A string containing the subaction (add or copy).

sStatusField

A string containing the status field code.

sStatusID

A string containing the status ID code.

rsProfiles

A Recordset object containing a profile.

sProfileIDs

A string containing profile IDs separated by the constant PROFILE_ID_SEPARATOR.

Return Value

A Boolean indicating whether the property values were successfully added. True indicates success. False indicates failure.

Defined in File

services\include\save_one_profile.asp

Routines Called

bHandlePaintingACLsForUsersInAD

bInsertProperty

DeleteSingleProfile

listCloneProfileSchema

SaveSAMAccountNameProperty

SaveUserAccountControlProperty

SaveUserParentDNProperty

SaveUserPartnerDeskRoleProperty

sGetThisPageProperty

Called By

bInsertProfile


bInsertProperty

This function checks whether the specified property is supported for the user and, if so, adds it to the profile.

Definition

Function bInsertProperty(

  byVal sSubAction,

  byVal oProperty,

  byVal rsProfiles,

  byVal sProfileIDs

)

Parameters

sSubAction

A string containing the subaction (add or copy).

sStatusField

A string containing the status field code.

sStatusID

A string containing the status ID code.

rsProfiles

A Recordset object containing a profile.

sProfileIDs

A string containing profile IDs separated by the constant PROFILE_ID_SEPARATOR.

Return Value

A Boolean indicating whether the property was successfully added. True indicates success. False indicates failure.

Defined in File

services\include\save_one_profile.asp

Routines Called

bCheckIfThePropertyFeatureIsSupported

bSaveReadWriteProperty

iGetCurrentUserPropertyAccessClass

InsertHiddenProperty

SaveReadOnlyProperty

sGetUserAccessForThisProperty

Called By

bInsertProfileDetails


bInvalidDate

This function determines whether a given date is not valid.

Definition

Function bInvalidDate(

  sDate,

  dtDate

)

Defined in File

services\include\lib.asp

Routines Called

None.

Called By

PopulateOrderSearchCriteria

PopulateProfileSearchCriteria


bIsAddressNameUnique

This function determines if the specified address name is unique.

Definition

Function bIsAddressNameUnique(

  byVal sAddrName

)

Parameters

sAddrName

A string containing the address name.

Return Value

A Boolean indicating whether the address name is unique. True indicates the name is unique. False indicates the name already exists.

Defined in File

newaddr.asp

Routines Called

GetUserAddresses

Called By

iValidateSubmittedAddressForAddressBook


bIsPropertyValueAdded

This function determines if any property values were added in the edit page.

Definition

Function bIsPropertyValueAdded()

Defined in File

services\include\check_profile.asp

Routines Called

bCheckIfThePropertyFeatureIsSupported

GetRequestString

iGetCurrentUserPropertyAccessClass

listCloneProfileSchema

sGetUserAccessForThisProperty

Called By

PrepareCloseAction


bIsSearchDeptPageCached

This function checks whether this page has already been generated and cached.

Definition

Function bIsSearchDeptPageCached(

  byRef htmCachedPage,

  byRef iCatalogSetID

)

Parameters

htmCachedPage

A string containing the HTML cached page.

iCatalogSetID

An integer containing the catalog set ID.

Return Value

A Boolean that indicates whether the page is cached. True indicates the page is cached. False indicates the page is not cached.

Defined in File

srchdept.asp

Routines Called

LookupCachedFragment

mscsUserCatalogsetID

Called By

Main (srchdept.asp)


bIsShippingMethodSupported

This function determines whether the specified shipping method is supported.

Definition

Function bIsShippingMethodSupported(

  byVal sSelectedMethodID

)

Defined in File

_setship.asp

Routines Called

None.

Called By

CatchErrors (_setship.asp)


bIsSiteTerm

This function determines whether the specified property is a site term.

Definition

Function bIsSiteTerm(

  byVal oXMLProperty,

  byRef sReferenceString

)

Defined in File

include\global_siteterms_lib.asp

Routines Called

None.

Called By

oGetSiteTermOptions


bIsStepSearchPageCached

This function checks whether this page has already been generated and cached.

Definition

Function bIsStepSearchPageCached(

  sCategoryName,

  sCatalogName,

  byRef htmPageContent,

  byRef sCacheKey

)

Parameters

sCategoryName

A string containing the category name.

sCatalogName

A string containing the category name.

htmPageContent

A string returning the cached page.

sCacheKey

A string returning the cache key.

Return Value

A Boolean that indicates whether the page is cached. True indicates the page is cached. False indicates the page is not cached.

Defined in File

stepsrch.asp

Routines Called

LookupCachedFragment

Called By

Main (stepsrch.asp)

Remarks

If the page is not cached, the htmPageContent parameter returns the empty string. However, the cache key, consisting of the category and catalog names, is still returned.


bMatchesPattern

This function checks whether the value specified by the sValue parameter matches the expression specified by the sPattern parameter. If a match is found, this function returns True; otherwise it returns False.

Definition

Function bMatchesPattern(

  oRegEx,

  sValue,

  sPattern

)

Parameters

oRegEx

A reference to a Visual Basic Scripting Edition RegExp object.

sValue

A string containing text to be tested against the regular expression specified by the sPattern parameter.

sPattern

A string containing a regular expression pattern that is valid for the Visual Basic Scripting Edition RegExp object.

Return Value

A Boolean where True indicates that the sValue parameter was found to match the pattern specified by the sPattern parameter, and False otherwise.

Defined in File

include\form_lib.asp

Routines Called

None.

Called By

bValidateLoginNameChars

bValidatePasswordChars

GetFieldsErrorDictionary


Bold

This function surrounds the string specified by the s parameter with the tags "<B>" and "</B>", and then returns the resulting string.

Definition

Function Bold(

  byVal s

)

Parameters

s

A string that contains the text to be wrapped.

Return Value

A string that contains the wrapped text.

Defined in File

include\html_lib.asp

Routines Called

None.

Called By

colRenderAdvancedSearchTab

colRenderSimpleSearchTab

htmRenderDiscountMessageGroup

htmRenderDiscountsApplied

htmRenderDiscountsDescriptions

rowRenderPropertyGroup

tableRenderFooterInfo

tableRenderMessageBoxPage

tblRenderOrderDetailsContents


BooleanToString

This function converts a Boolean value to a string value.

Definition

Function BooleanToString(

  sValue

)

Defined in File

include\std_string_lib.asp

Routines Called

None.

Called By

ShowRefinedSearch


bPaintACLForUser

This function paints access control lists (ACLs) for a user in an Active Directory store. This is achieved by adding or removing the user to or from <COMPANY_NAME>_ADMINGROUP or <COMPANY_NAME>_USERGROUP.

Definition

Function bPaintACLForUser(

  byVal sUserCN,

  byVal sSubAction,

  byVal iUserPrevPartnerDeskRole,

  byVal iUserPartnerDeskRole

)

Parameters

sUserCN

A string containing the common name for the user.

sSubAction

A string containing the subaction.

iUserPrevPartnerDeskRole

An integer specifying the previous PartnerDesk role of the user.

iUserPartnerDeskRole

An integer specifying the current PartnerDesk role of the user.

Return Value

A Boolean indicating whether the user was successfully added or removed. True indicates success. False indicates failure.

Defined in File

services\include\ad_routines.asp

Routines Called

bAddUserToGroup

bRemoveUserFromGroup

EnsureUserProfile

GetOrgAttributeFromID

Called By

bHandlePaintingACLsForUsersInAD


bProfileHasChanged

This function checks whether the posted values for a profile are different than the values for the profile in the Profile store.

Definition

Function bProfileHasChanged(

  byVal sProfileID

)

Defined in File

services\include\check_profile.asp

Routines Called

bCheckIfThePropertyFeatureIsSupported

GetRequestString

iGetCurrentUserPropertyAccessClass

listCloneProfileSchema

rsGetProfileDetails

sGetUserAccessForThisProperty

Called By

htmRenderMessageBoxPage

PrepareCloseAction


bRegistrationPageNotAvailable

This function determines whether the registration page is unavailable.

Definition

Function bRegistrationPageNotAvailable()

Return Value

A Boolean indicating whether the registration page is unavailable. True indicates the page is not available. False indicates the page is available.

Defined in File

login\newuser.asp

Routines Called

None.

Called By

Main (login\newuser.asp)

Remarks

If any of the following App Default Config properties are set, the registration page is unavailable:

  • i_SiteRegistrationOptions = REGISTRATION_NOT_SUPPORTED

  • i_FormLoginOptions = FORM_LOGIN_NOT_SUPPORTED

  • i_FormLoginOptions = USE_IIS_AUTH


bRemoveUserFromGroup

This function removes a user from an Active Directory group.

Definition

Function bRemoveUserFromGroup(

  byVal szGroupName,

  byVal sUserDN

)

Parameters

szGroupName

A string containing the name of the group to remove the user from.

sUserDN

A string containing the distinguished name of the user.

Return Value

A Boolean indicating whether the user was successfully removed. True indicates success. False indicates failure.

Defined in File

services\include\ad_routines.asp

Routines Called

rsGetProfile

Called By

bPaintACLForUser


BRTag

This function appends the <BR> tag to the end of the string specified by the s parameter, and then returns the resulting string.

Definition

Function BRTag(

  s

)

Parameters

s

A string that contains the text that will have a BR element appended.

Return Value

A string that contains the text passed in the s parameter, appended with the <BR> tag.

Defined in File

include\html_lib.asp

Routines Called

None.

Called By

InsertLineBreaks


bSaveProfileAndRedirect

This function updates the profile properties and redirects the delegated administrator to the services\partner\users.asp page.

Definition

Function bSaveProfileAndRedirect(

  byVal sSubAction,

  byRef sProfileIDs,

  byRef sStatusField,

  byRef iStatusID,

  byVal sActionPage

)

Return Value

A Boolean indicating whether the profile was successfully updated. True indicates success. False indicates failure.

Defined in File

services\include\save_one_profile.asp

Routines Called

bSaveProfileDetails

iGetCountOfProfiles

rsGetProfileDetails

Called By

htmSaveChangesConfirmationHandler


bSaveProfileDetails

This function saves the value of each property in the profile. If this is a user profile and Active Directory is used, the access control lists (ACL) are updated.

Definition

Function bSaveProfileDetails(

  byVal sSubAction,

  byRef sProfileIDs,

  byRef sStatusField,

  byRef sStatusID,

  byVal rsProfiles

)

Defined in File

services\include\save_one_profile.asp

Routines Called

bCheckIfThePropertyFeatureIsSupported

bHandlePaintingACLsForUsersInAD

bSaveProperty

bValidateLoginNameChars

GetRequestString

iGetCountOfProfiles

iGetCurrentUserPropertyAccessClass

listCloneProfileSchema

SaveUserAccountControlProperty

SaveUserPartnerDeskRoleProperty

sGetThisPageProperty

sGetUserAccessForThisProperty

UpdateUserProfile

Called By

bSaveProfileAndRedirect

PrepareSaveProfiles


bSaveProperty

This function saves the specified property.

Definition

Function bSaveProperty(

  byVal sSubAction,

  byVal oProperty,

  byVal rsProfiles,

  byVal sProfileIDs,

  byVal sAccessType

)

Defined in File

services\include\save_one_profile.asp

Routines Called

bSaveReadWriteProperty

SaveReadOnlyProperty

Called By

bSaveProfileDetails


bSaveReadWriteProperty

This function saves a read/write property.

Definition

Function bSaveReadWriteProperty(

  byVal sSubAction,

  byVal oProperty,

  byVal rsProfiles,

  byVal sProfileIDs

)

Defined in File

services\include\save_one_profile.asp

Routines Called

GetRequestString

iGetCountOfProfiles

SaveCommonValueForAllSelectedRecords

Called By

bInsertProperty

bSaveProperty


bValidateLoginNameChars

This function validates the characters in a login name.

Definition

Function bValidateLoginNameChars(

  sLogon

)

Defined in File

services\include\lib.asp

Routines Called

bMatchesPattern

Called By

bInsertProfile

bSaveProfileDetails


bValidatePasswordChars

This function validates the characters in the string specified by the sPassword parameter.

Definition

Function bValidatePasswordChars(

  sPassword

)

Parameters

sPassword

A string containing the password.

Return Value

A Boolean indicating whether the characters in the password are valid. True indicates they are all valid. False indicates at least one is not valid.

Defined in File

services\include\lib.asp

Routines Called

bMatchesPattern

Called By

bInsertProfile

UpdatePasswordActionHandler


CacheFragment

This sub caches an HTML fragment.

Definition

Sub CacheFragment(

  byVal sCacheName,

  byVal sCacheItemName,

  byVal htmlString

)

Parameters

sCacheName

A string containing the name of the cache.

sCacheItemName

A string used to identify the cached HTML fragment.

htmlString

A string containing the HTML fragment to cache.

Defined in File

include\std_cache_lib.asp

Routines Called

GetTicketInUrlArg

Called By

htmCategoryHTML

htmRenderDefaultPage

htmRenderFillOutForm

htmRenderFullTextSearchResults

htmRenderLoginSection

htmRenderMenu

Main (pickship.asp)

Main (product.asp)

Main (srchdept.asp)

Main (stepsrch.asp)

RenderNavbar

Remarks

If the HTML fragment contains a ticket, it is replaced with a token ("__TICKET__"). This token is replaced with the ticket of any user who subsequently calls LookupCachedFragment for the given cache item (sCacheItemName).

The key to the cached item consists of the item name, sCacheItemName, appended with the language used, and a constant identifying whether the ticket of the user is stored in a cookie or in the URL.


CacheObject

This sub caches the specified object.

Definition

Sub CacheObject(

  byVal sCacheName,

  byVal sCacheItemName,

  byVal oObject

)

Parameters

sCacheName

A string containing the name of the cache.

sCacheItemName

A string used to identify the cached object.

oObject

The object to be cached.

Defined in File

include\std_cache_lib.asp

Routines Called

None.

Called By

oCachedDiscountProductInfo


CatchErrors (addrbook.asp)

This sub redirects the user to the addrform.asp page if the address book is disabled, or to the basket.asp page if the basket is empty.

Definition

Sub CatchErrors(

  byVal iAddrType

)

Parameters

iAddrType

An integer constant representing the address type (shipping or billing).

Defined in File

addrbook.asp

Routines Called

GenerateURL

LoadBasket

Called By

Main (addrbook.asp)


CatchErrors (addrform.asp)

This sub redirects the user to the basket.asp page if the basket is empty.

Definition

Sub CatchErrors(

  byVal mscsOrderGrp

)

Parameters

mscsOrderGrp

An initialized OrderGroup object.

Defined in File

addrform.asp

Routines Called

GenerateURL

Called By

Main (addrform.asp)


CatchErrors (newaddr.asp)

This sub redirects the user to the addrform.asp page if the address book is disabled or set to read-only, to the basket.asp page if the basket is empty, or to the addrbook.asp page if trying to edit or delete a non-existent address.

Definition

Sub CatchErrors(

  byVal iAddrType,

  byVal sAction,

  byVal sAddrID,

  byVal rsAddr

)

Defined in File

newaddr.asp

Routines Called

GenerateURL

LoadBasket

Called By

SetupAddressForm


CatchErrors (pickship.asp)

This sub redirects the user to the basket.asp page if the basket is empty, or to the addrform.asp or addrbook.asp page if each item in the order does not have an associated shipping address.

Definition

Sub CatchErrors(

  byVal mscsOrderGrp

)

Parameters

mscsOrderGrp

An initialized OrderGroup object.

Defined in File

pickship.asp

Routines Called

GenerateURL

GetAddressPage

RemoveEmptyOrderForms

Called By

PreparePickShipForm


CatchErrors (summary.asp)

This sub redirects the user to the appropriate page if an error is encountered.

Definition

Sub CatchErrors(

  byVal mscsOrderGrp,

  listMethods

)

Parameters

mscsOrderGrp

An initialized OrderGroup object.

listMethods

A SimpleList object that contains payments methods for the user.

Defined in File

summary.asp

Routines Called

GenerateURL

GetAddressPage

RemoveEmptyOrderForms

Called By

InitializeSummaryPage

Remarks

This sub redirects the user to the basket.asp page if the basket is empty, to an error page if there are no applicable payment methods, to the pickship.asp page if each item in the order does not have an associated shipping method, or to the addrform.asp or addrbook.asp page if each item in the order does not have an associated shipping address or the order does not have a billing address.


CatchErrors (_setadrs.asp)

This sub redirects the user to the basket.asp page if the basket is empty, or to the addrbook.asp page if the address is not valid.

Definition

Sub CatchErrors(

  byVal mscsOrderGrp,

  byVal sAddrID,

  byVal rsAddr

)

Defined in File

_setadrs.asp

Routines Called

GenerateURL

Called By

Main (_setadrs.asp)


CatchErrors (_setship.asp)

This sub redirects the user to the basket.asp page if the basket is empty, or to the pickship.asp page if the shipping method is not valid.

Definition

Sub CatchErrors(

  mscsOrderGrp,

  byVal sSelectedMethodID

)

Parameters

mscsOrderGrp

An initialized OrderGroup object.

sSelectedMethodID

A string containing the shipping method ID.

Defined in File

_setship.asp

Routines Called

bIsShippingMethodSupported

GenerateURL

Called By

Main (_setship.asp)


CatchErrorsForPaymentPages

This sub redirects the user to the appropriate page if an error is encountered when initializing the credit card or purchase order pages.

Definition

Sub CatchErrorsForPaymentPages(

  mscsOrderGrp,

  listMethods,

  sPaymentMethod,

  byRef sVerifyWithTotal

)

Defined in File

include\payment.asp

Routines Called

EnsureSupportForPaymentMethod

GenerateURL

GetAddressPage

GetRequestString

RemoveEmptyOrderForms

Called By

InitializeCreditcardPage

InitializePO


cellRenderReadOnlyProperty

This function prepares a read-only property to be rendered.

Definition

Function cellRenderReadOnlyProperty(

  byVal sFieldName,

  byVal sDisplayName,

  byVal sFieldValue,

  byVal sDisplayValue

)

Defined in File

services\include\render_common.asp

Routines Called

htmRenderBlankSpaces

RenderHiddenField

TRTag

Called By

rowRenderReadOnlyProperty

tblRenderOrderDetailsContents


ChangeActionHandler

This function handles the "change password" action.

Definition

Function ChangeActionHandler(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs

)

Defined in File

services\include\password_handlers.asp

Routines Called

htmRenderChangePasswordPage

Called By

PasswordActionHandlers


CheckBasket

This sub runs the basket pipeline to retrieve the latest basket information.

Definition

Sub CheckBasket(

  mscsOrderGrp,

  byRef bBasketIsEmpty,

  byRef iErrorCount,

  byRef bMustSaveBasket,

  byRef oOrderFormDisplayOrder

)

Defined in File

basket.asp

Routines Called

GetErrorCount

GetLineItemsCount

GetPipelineLogFile

RemoveEmptyOrderForms

RunMtsPipeline

SortDictionaryKeys

Called By

Main (basket.asp)


CheckIfOrderExists

This sub redirects the user or delegated administrator to the services\error\noorder.asp page if the specified order does not exist.

Definition

Sub CheckIfOrderExists(

  byVal sSubAction,

  byVal sProfileIDs

)

Defined in File

services\include\lib.asp

Routines Called

GenerateURL

iGetCountOfProfiles

rsGetOrderDetails

Called By

Main (services\customer\view_order.asp)

Main (services\partner\view_order.asp)


CheckIfProfilesExist

This sub determines whether the specified profiles exist.

Definition

Sub CheckIfProfilesExist(

  byVal sSubAction,

  byVal sProfileIDs

)

Defined in File

services\include\lib.asp

Routines Called

GenerateURL

iGetCountOfProfiles

rsGetProfileDetails

Called By

Main (services\change_password.asp)

Main (services\customer\account.asp)

Main (services\partner\account.asp)

Main (services\partner\edit_user.asp)


CheckOut

This function runs the basket, total, and checkout pipelines.

Definition

Function CheckOut(

  mscsOrderGrp,

  byVal sVerifyWithTotal

)

Defined in File

include\payment.asp

Routines Called

GenerateURL

GetErrorCount

GetPipelineLogFile

RunMtsPipeline

Called By

InitSitePipelines

RunMtsPipeline

ValidateSubmittedCreditCardData

ValidateSubmittedPurchaseOrderData


CheckPartnerServiceAccess

This sub implements page-level access control. It grants access to users who have their PartnerDeskRoleFlags set to ROLE_ADMIN. All others are redirected to an error page.

Definition

Sub CheckPartnerServiceAccess()

Defined in File

include\std_access_lib.asp

Routines Called

GenerateURL

GetCurrentUserProfile

Called By

Main (services\partner\account.asp)

Main (services\partner\edit_user.asp)

Main (services\partner\orders.asp)

Main (services\partner\users.asp)

Main (services\partner\view_order.asp)


CloseOrderDetailsActionHandler

This sub handles the "close order details" action.

Definition

Sub CloseOrderDetailsActionHandler(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byVal sSourcePage,

  byVal sProfileListPage

)

Parameters

sAction

A string containing the action.

sSubAction

A string containing the subaction.

sProfileIDs

A string containing profile IDs separated by a constant.

sSourcePage

A string containing the name of the page where this action occurred.

sProfileListPage

A string containing the name of the page that lists the profiles.

Defined in File

services\include\order_handlers.asp

Routines Called

GenerateURL

sGetThisPageProperty

Called By

Main (services\customer\view_order.asp)

Main (services\partner\view_order.asp)


CollectBasketItems

This function retrieves all the items in the specified OrderGroup object.

Definition

Function CollectBasketItems(

  oOrderGrp

)

Parameters

oOrderGrp

An OrderGroup object representing an order.

Return Value

A SimpleList object containing all the items in an order.

Defined in File

template\discount.asp

Routines Called

None.

Called By

GetBasketDetails

RenderBasketPage


colRenderAdvancedSearchTab

This function adds the advanced search option tab to list-type pages.

Definition

Function colRenderAdvancedSearchTab(

  sCriteria

)

Defined in File

services\include\render_common.asp

Routines Called

Bold

RenderLink

sReConstructPageURL

Called By

formRenderOrderSearchOptions

formRenderProfileSearchOptions


colRenderCountryNames

This function prepares the rendering of all country names.

Definition

Function colRenderCountryNames(

  byVal oProperty,

  byVal sPropertyValue

)

Defined in File

services\include\render_common.asp

Routines Called

ConvertListToArray

GetCountryNamesList

htmRenderCountries

Called By

None.


colRenderForeignKeyProperty

This function renders hidden fields that contain a variety of content, depending on whether a pre-existing profile exists, whether a new profile is being created, and so on. A button is rendered to allow the user to submit the selected information.

Definition

Function colRenderForeignKeyProperty(

  byVal sAction,

  byVal sSubAction,

  byVal oProperty,

  byVal sProfileIDs,

  byVal varPropertyValue

)

Defined in File

services\include\render_edit_common.asp

Routines Called

iGetCountOfProfiles

RenderHiddenField

RenderSubmitButton

sGetSelectActionPropertyName

sGetUserLoginName

Called By

colRenderProperty


colRenderPasswordProperty

This function prepares the rendering of the value for the user_security_password property.

Definition

Function colRenderPasswordProperty(

  byVal sAction,

  byVal sSubAction,

  byVal oProperty,

  byVal varPropertyValue

)

Defined in File

services\include\render_edit_common.asp

Routines Called

RenderPasswordBox

RenderSubmitButton

Called By

colRenderProperty


colRenderPrimaryKeyProperty

This function prepares the rendering of the value for the primary key property.

Definition

Function colRenderPrimaryKeyProperty(

  byVal sAction,

  byVal sSubAction,

  byVal oProperty,

  byVal sProfileIDs,

  byVal varPropertyValue,

  byVal bDisplayPostedValues

)

Defined in File

services\include\render_edit_common.asp

Routines Called

iGetCountOfProfiles

RenderHiddenField

RenderTextBox

sGetThisPageProperty

Called By

rowRenderProperty


colRenderProperty

This function prepares the rendering of a property.

Definition

Function colRenderProperty(

  byVal sAction,

  byVal sSubAction,

  byVal oProperty,

  byVal sProfileIDs,

  byVal varPropertyValue

)

Defined in File

services\include\render_edit_common.asp

Routines Called

colRenderForeignKeyProperty

colRenderPasswordProperty

htmRenderBoolean

htmRenderPartnerDeskRoles

htmRenderSiteTerm

htmRenderUserStatusOptions

RenderTextBox

Called By

rowRenderBlankProperty

rowRenderProperty


colRenderPropertyTip

This function prepares a warning message for a property that fails validation.

Definition

Function colRenderPropertyTip(

  byVal sTip

)

Parameters

sTip

A string that contains the message.

Return Value

A string that contains the HTML message.

Defined in File

services\include\render_edit_common.asp

Routines Called

FormatOutput

RenderText

Called By

rowRenderPropertyTip


colRenderSimpleSearchTab

This function adds the simple search option tab to list-type pages.

Definition

Function colRenderSimpleSearchTab(

  byVal sCriteria

)

Defined in File

services\include\render_common.asp

Routines Called

Bold

RenderLink

sReConstructPageURL

Called By

formRenderOrderSearchOptions

formRenderProfileSearchOptions


colRenderUniqueKeyProperty

This function prepares the rendering of the value for the unique key property.

Definition

Function colRenderUniqueKeyProperty(

  byVal sAction,

  byVal sSubAction,

  byVal oProperty,

  byVal sProfileIDs,

  byVal varPropertyValue

)

Defined in File

services\include\render_edit_common.asp

Routines Called

iGetCountOfProfiles

RenderHiddenField

RenderTextBox

Called By

rowRenderProperty


ConvertListToArray

This function converts a SimpleList object to an array.

Definition

Function ConvertListToArray(

  byVal list

)

Parameters

list

A SimpleList object.

Return Value

The array.

Defined in File

include\std_util_lib.asp

Routines Called

None.

Called By

colRenderCountryNames


CopyProductToItem

This function copies product information into a Dictionary object.

Definition

Function CopyProductToItem(

  rsProduct,

  item,

  arrParentCategories

)

Parameters

rsProduct

A Recordset object containing information on a product.

item

A Dictionary object to contain the product information.

arrParentCategories

An array containing the parent categories for the product.

Return Value

None.

Defined in File

template\discount.asp

Routines Called

None.

Called By

listGetShownProductsInfo


CorrectRequest

This sub corrects a cookie for URL case-sensitivity. This correction is performed to ensure that cookies are always read/written from the exact same hostname and path (cookie paths are case sensitive).

Definition

Sub CorrectRequest()

Defined in File

include\std_cookie_lib.asp

Routines Called

GetCorrectedCookiePath

GetCorrectedHostName

Called By

SetupPage

Remarks

If the App Default Config i_CookiePathCorrectionOptions property is set to APP_BASED_CORRECTION (1), the case of the path property of the cookie is converted to match the IIS application name.

If the App Default Config i_HostNameCorrectionOptions property is set to HOSTNAME_CORRECTION_ENABLED (1), the case of the domain name property of the cookie is converted to match the true host name.

If either correction is applied, the user is redirected to the URL, which now has the correct case.


CreateOptOutList

This function creates a new empty mailing list, which is used to opt-out of a direct mail campaign.

Definition

Function CreateOptOutList(

  listmanager,

  campitem_id

)

Parameters

listmanager

An initialized ListManager object.

campitem_id

A GUID representing the campaign item ID of the direct mail item.

Return Value

A GUID representing the new list ID.

Defined in File

opt-out.asp

Routines Called

None.

Called By

OptOut


CreatePOIndexes

This sub adds temporary item indices to each item in the specified OrderGroup object.

Definition

Sub CreatePOIndexes(

  mscsOrderGrp

)

Parameters

mscsOrderGrp

An initialized OrderGroup object.

Defined in File

basket.asp

Routines Called

None.

Called By

htmRenderBasket


CreateSet

This function creates a set from an array of items.

Definition

Function CreateSet(

  byVal arrItems

)

Parameters

arrItems

An array.

Return Value

A string containing the set.

Defined in File

include\std_util_lib.asp

Routines Called

None.

Called By

InitPageSets

Remarks

This function is passed an array of strings.

A "set" in this context is a comma-separated string.


DeleteAllActionHandler

This sub checks the user action on the DeleteAll message box page, and redirects to the profile list page with the appropriate parameters.

Definition

Sub DeleteAllActionHandler(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byVal sProfileListPage

)

Defined in File

services\include\edit_handlers.asp

Routines Called

ReDirectToPage

Called By

htmEditPageActionHandlers


DeleteAllProfiles

This sub deletes all the profiles returned by the search criteria in the corresponding list page.

Definition

Sub DeleteAllProfiles(

  byVal dictSearchOptions

)

Defined in File

services\include\delete_profiles.asp

Routines Called

GetTableNameAndWhereClause

sConstructWHEREclause

sGetWhereClauseForCurrentUser

Called By

PrepareDeleteAllAction

Remarks

This function uses ADO to access data directly.


DeleteRegisteredUser

This sub deletes a specific registered user profile.

Definition

Sub DeleteRegisteredUser(

  byVal sID

)

Defined in File

services\include\delete_profiles.asp

Routines Called

None.

Called By

DeleteSingleProfile


DeleteSelectedProfiles

This sub deletes all the selected profiles.

Definition

Sub DeleteSelectedProfiles(

  byVal sSubAction,

  byVal sProfileIDs

)

Defined in File

services\include\delete_profiles.asp

Routines Called

DeleteSingleProfile

iGetCountOfProfiles

Called By

PrepareDeleteAction


DeleteSingleProfile

This sub deletes the specified profile.

Definition

Sub DeleteSingleProfile(

  byVal sProfileID

)

Parameters

sProfileID

A string containing the profile ID.

Defined in File

services\include\delete_profiles.asp

Routines Called

DeleteRegisteredUser

sGetThisPageProperty

Called By

bInsertProfileDetails

DeleteSelectedProfiles


DeSelectAllActionHandler

This sub redirects the user in a "Select All" action.

Definition

Sub DeSelectAllActionHandler(

  byVal sProfileListPage

)

Defined in File

services\include\edit_handlers.asp

Routines Called

ReDirectToPage

Called By

htmEditPageActionHandlers


dictAggregatePreviews

This function aggregates shipping preview totals across the OrderGroup object.

Definition

Function dictAggregatePreviews(

  dictPreviewsPerOrderForm

)

Defined in File

pickship.asp

Routines Called

None.

Called By

PreparePickShipForm


dictGetCatalogAttributes

This function retrieves all the property definitions that exist in the Product Catalog System and places them in a Dictionary object for fast access.

Definition

Function dictGetCatalogAttributes(

  MSCSCatalogManager

)

Parameters

MSCSCatalogManager

An initialized CatalogManager object.

Return Value

A Dictionary object that contains all the property definitions that exist in the Product Catalog System.

Defined in File

include\global_catalog_lib.asp

Routines Called

dictGetRSFields

GetDictionary

Called By

Main (include\global_main_lib.asp)


dictGetInitialFieldValues

This function returns a Dictionary object containing the default form field values for the address.

Definition

Function dictGetInitialFieldValues(

  byVal listFlds,

  byVal sAction,

  byVal rsAddr,

  byVal iAddrType

)

Defined in File

newaddr.asp

Routines Called

GetDictionary

RsToDict

Called By

SetupAddressForm


dictGetProfileSchemaForAllProfileTypes

This function returns a Dictionary object representing the schema of all profile types.

Definition

Function dictGetProfileSchemaForAllProfileTypes(

  byVal oProfileService

)

Defined in File

include\global_profile_lib.asp

Routines Called

GetDictionary

listGetProfileSchema

oGetBizDataObject

oGetProfile

Called By

Main (include\global_main_lib.asp)

ProfileRefresh


dictGetpropertyFromList

This function retrieves the specified property from a list of properties.

Definition

Function dictGetpropertyFromList(

  byVal sPropertyName,

  byVal listValidProperties

)

Defined in File

services\include\lib.asp

Routines Called

None.

Called By

listReConstructPropertiesSchema


dictGetPropertySchema

This function creates and returns a Dictionary object containing property attributes. These attributes are used in the application for standard form validations, rendering functions, and profile updates.

Definition

Function dictGetPropertySchema (

  byVal oGroup,

  byVal oProperty,

  byRef oProfileDefsCatalog,

  byRef oSiteTermsProfile

)

Defined in File

include\global_forms_lib.asp

Routines Called

GetDictionary

oGetSiteTermOptions

Called By

AddGroupAndPropertySchemas


dictGetRSFields

This function creates and returns a Dictionary object containing items whose values correspond to the field values of the Recordset object specified by the rs parameter.

Definition

Function dictGetRSFields(

  rs

)

Defined in File

include\global_catalog_lib.asp

Routines Called

GetDictionary

Called By

dictGetCatalogAttributes


dictGetSearchDictionaryForPage

This function retrieves the filter criteria for the current user and page.

Definition

Function dictGetSearchDictionaryForPage(

  byVal sPageName

)

Defined in File

services\include\lib.asp

Routines Called

GetAttributeValueFromProfile

Called By

PrepareDeleteAllAction

PrepareSaveAllAction


DoubleQuote

This function applies double quotes to a string.

Definition

Function DoubleQuote(

  byVal s

)

Defined in File

include\std_util_lib.asp

Routines Called

None.

Called By

Analysis_ConstructKeyValueString

PredictedPropToHREF

TDTag

THTag


E - G

This section contains topics for the following routines, beginning with the letters E through G.

Routine | File
EnsureAccess | include\std_access_lib.asp
EnsureAuthAccess | include\std_access_lib.asp
EnsureSupportForPaymentMethod | include\payment.asp
EnsureUpToDateUserProfile | include\std_profile_lib.asp
EnsureUserHasRightsToCatalog | include\catalog.asp
EnsureUserProfile | include\std_profile_lib.asp
ErrorOut | opt-out.asp
FetchCategoryData | category.asp
FetchData | addrbook.asp
FetchData | _setadrs.asp
FetchData | newaddr.asp
FormatOutput | include\std_util_lib.asp
formRenderBlankEditPageBody | services\include\render_edit_blank.asp
formRenderChangePasswordPageContents | services\include\render_password.asp
formRenderEditPageBody | services\include\render_edit_common.asp
formRenderListPageContents | services\include\render_list.asp
formRenderOrderContents | services\include\render_orders.asp
formRenderOrderSearchOptions | services\include\render_orders.asp
formRenderOrdersListContents | services\include\render_orders.asp
formRenderPagingButtons | services\include\render_common.asp
formRenderProfileSearchOptions | services\include\render_list.asp
GenerateURL | include\std_url_lib.asp
GetActiveUsersOnly | services\include\save_one_profile.asp
GetAddressBookAddressFieldDefinitions | include\global_addressbook_lib.asp
GetAddresses | include\addr_lib.asp
GetAddressFieldDefinitions | include\global_addressbook_lib.asp
GetAddressPage | include\std_util_lib.asp
GetAddressType | include\addr_lib.asp
GetAncestorCategories | template\discount.asp
GetAnyLineItem | include\std_ordergrp_lib.asp
GetAnyOrderForm | include\std_ordergrp_lib.asp
GetAnySavedAddressID | addrform.asp
GetAppConfigObject | include\global_siteconfig_lib.asp
GetArrayFromList | include\std_util_lib.asp
GetAttributeValueFromProfile | services\include\get_profiles.asp
GetAuthManagerObject | include\std_access_lib.asp
GetBaseURL | include\global_siteconfig_lib.asp
GetBasketDetails | template\discount.asp
GetBillToCurrenciesListItems | include\global_internationalization_lib.asp
GetBillToCurrenciesListValues | include\global_internationalization_lib.asp
GetBillToCurrencyFieldDefinition | include\global_internationalization_lib.asp
GetCatalogForUser | include\catalog.asp
GetCommerceSiteInstallPoint | include\global_siteconfig_lib.asp
GetCommerceSiteName | include\global_siteconfig_lib.asp
GetComputerName | include\global_siteconfig_lib.asp
GetConfigDictionary | include\global_siteconfig_lib.asp
GetCorrectedCookiePath | include\std_cookie_lib.asp
GetCorrectedHostName | include\std_cookie_lib.asp
GetCountryCodesList | include\global_internationalization_lib.asp
GetCountryNamesList | include\global_internationalization_lib.asp
GetCreditCardCodesList | include\global_creditcards_lib.asp
GetCreditCardFieldDefinitions | include\global_creditcards_lib.asp
GetCreditCardNamesList | include\global_creditcards_lib.asp
GetCurrentUserProfile | include\std_profile_lib.asp
GetDefaultPaymentMethodForUser | include\payment.asp
GetDefaultValueForNameOnCard | crdtcard.asp
GetDefaultValuesForAddressFormFields | addrform.asp
GetDefaultValuesForCreditCardFields | crdtcard.asp
GetDefaultValuesForPurchaseOrderFields | po.asp
GetDictionary | include\std_util_lib.asp
GetDiscountDescription | include\std_util_lib.asp
GetDWConnectionString | include\global_data_lib.asp
GetErrorCount | include\std_ordergrp_lib.asp
GetErrorSource | include\std_util_lib.asp
GetFieldsErrorDictionary | include\form_lib.asp
GetFileSystemObject | include\std_util_lib.asp
GetFormDefinitions | include\global_forms_lib.asp
GetIISApplicationName | include\std_cookie_lib.asp
GetINIFileName | include\global_siteconfig_lib.asp
GetINIString | include\global_siteconfig_lib.asp
GetInputParameters | template\discount.asp
GetKeyValue | include\std_util_lib.asp
GetLineItemsCount | include\std_ordergrp_lib.asp
GetListItemIndex | include\std_util_lib.asp
GetLoginFieldDefinitions | include\global_forms_lib.asp
GetMachineBaseURL | include\global_siteconfig_lib.asp
GetMessageManagerObject | include\global_messagemanager_lib.asp
GetMonthCodesList | include\std_dates_lib.asp
GetMonthNamesList | include\std_dates_lib.asp
GetNewGuestUserProfile | include\std_profile_lib.asp
GetObjectInstanceDictionary | include\std_util_lib.asp
GetODBCTimeStamp | services\include\profiles_common.asp
GetOptOutList | opt-out.asp
GetOrderGroup | include\std_ordergrp_lib.asp
GetOrderGroupManager | include\std_ordergrp_lib.asp
GetOrganizationAddresses | include\addr_lib.asp
GetOrgAttributeFromID | services\include\get_profiles.asp
GetPartnerAndCustomerServicePageAttributes | services\include\global_service_lib.asp
GetPasswordFieldDefinition | include\global_forms_lib.asp
GetPaymentMethodDisplayName | include\payment.asp
GetPaymentMethodsForSite | include\global_siteconfig_lib.asp
GetPaymentMethodsForUser | include\payment.asp
GetPaymentPageFromPaymentMethod | include\payment.asp
GetPipelineLogFile | include\std_pipeline_lib.asp
GetPriceAndCurrency | include\catalog.asp
GetProductQuantity | _additem.asp
GetProfileFromDB | include\std_profile_lib.asp
GetProfileService | include\std_profile_lib.asp
GetPurchaseOrderFieldDefinitions | include\global_forms_lib.asp
GetQualifiedName | include\std_util_lib.asp
GetRecordCount | include\std_util_lib.asp
GetRegExp | include\std_util_lib.asp
GetRegistrationFieldDefinitions | include\global_forms_lib.asp
GetRepeatStyle | include\html_lib.asp
GetRequestString | include\std_url_lib.asp
GetRequestStringRange | include\std_url_lib.asp
GetRequestType | include\std_cookie_lib.asp
GetRootPath | include\global_siteconfig_lib.asp
GetSavedAddressID | addrform.asp
GetSearchDictionaryForThisPage | services\include\lib.asp
GetSecurePagesDictionary | include\global_siteconfig_lib.asp
GetShippingMethodNameFromID | _setship.asp
GetShipToAddressFieldDefinitions | include\global_addressbook_lib.asp
GetShownProductsDetails | template\discount.asp
GetSimpleList | include\std_util_lib.asp
GetSiteConfigObject | include\global_siteconfig_lib.asp
GetSitePages | include\global_siteconfig_lib.asp
GetSiteStyles | include\global_ui_lib.asp
GetSpecificationSearchClauses | stepsrch.asp
GetStatusFieldAndID | services\include\edit_handlers.asp
GetStyles | include\global_ui_lib.asp
GetSubmittedFieldValues | include\form_lib.asp
GetTableNameAndWhereClause | services\include\profiles_common.asp
GetTicketInUrlArg | include\std_url_lib.asp
GetTicketLocation | include\std_url_lib.asp
GetUserAccountControl | services\include\save_all_profiles.asp
GetUserAddresses | include\addr_lib.asp
GetUserInfo | include\std_access_lib.asp
GetUserProfileByLoginName | include\std_profile_lib.asp
GetUserPropertyFromID | services\include\get_profiles.asp
GetXMLForVendorItems | include\payment.asp
GetYearsListItems | include\std_dates_lib.asp
GetYearsListValues | include\std_dates_lib.asp


EnsureAccess

This sub implements page-level access control. It grants access to users who are either authenticated to Internet Information Services (IIS), using Basic/Integrated Windows authentication, or have tickets. Call this sub from within the Main subroutine on every page that requires such access control. A call to this sub must appear before any other statement in the Main subroutine.

Definition

Sub EnsureAccess()

Defined in File

include\std_access_lib.asp

Routines Called

EnsureUserProfile

GenerateURL

GetCurrentUserProfile

GetNewGuestUserProfile

GetQualifiedName

IsFormLoginRequired

IsPersistentCookieAllowed

sGetUserIDForNewGuestUser

Called By

Main (_additem.asp)

Main (_delall.asp)

Main (_delitem.asp)

Main (_editqty.asp)

Main (_setship.asp)

Main (addrform.asp)

Main (basket.asp)

Main (category.asp)

Main (confirm.asp)

Main (crdtcard.asp)

Main (default.asp)

Main (dispatch.asp)

Main (pickship.asp)

Main (product.asp)

Main (search.asp)

Main (srchdept.asp)

Main (stepsrch.asp)

Main (summary.asp)

RecordClickToBasket


EnsureAuthAccess

This function implements page-level access control. It grants access to users who are either authenticated to Internet Information Services (IIS), using Basic/Integrated Windows authentication, or have an AUTH_TICKET. Call this function from within the Main subroutine on every page that requires such access control. A call to this function must appear before any other statement in the Main subroutine.

Definition

Function EnsureAuthAccess()

Return Value

Users who do not have a current profile are redirected to the "missing profile" error page (error\profile.asp). Otherwise, the function returns a Recordset object containing the current profile of the user.

Defined in File

include\std_access_lib.asp

Routines Called

EnsureUserProfile

GenerateURL

Called By

Main (_setadrs.asp)

Main (addrbook.asp)

Main (newaddr.asp)

Main (po.asp)

Main (services\change_password.asp)

Main (services\customer\account.asp)

Main (services\customer\orders.asp)

Main (services\customer\view_order.asp)

Main (services\partner\account.asp)

Main (services\partner\edit_user.asp)

Main (services\partner\orders.asp)

Main (services\partner\users.asp)

Main (services\partner\view_order.asp)


EnsureSupportForPaymentMethod

This sub checks whether the selected payment method is supported for the user; if it is not, the user is redirected to the default payment method page for the user.

Definition

Sub EnsureSupportForPaymentMethod(

  listMethods,

  sPaymentMethod

)

Defined in File

include\payment.asp

Routines Called

GenerateURL

GetDefaultPaymentMethodForUser

GetPaymentPageFromPaymentMethod

IsEntityInList

Called By

CatchErrorsForPaymentPages


EnsureUpToDateUserProfile

This sub retrieves the profile of the user from the cache if it is up-to-date. Otherwise, the profile is retrieved from the Profiles store.

Definition

Sub EnsureUpToDateUserProfile(

  byRef rsUser

)

Defined in File

include\std_profile_lib.asp

Routines Called

GetProfileFromDB

Called By

GetCurrentUserProfile

GetUserProfileByLoginName

Remarks

For more information on profile caching and related Web farm issues, see Profiles.


EnsureUserHasRightsToCatalog

This sub ensures that the user has access rights to the given catalog. If not, the user is redirected to the "bad catalog item" error page (error\baditem.asp).

Definition

Sub EnsureUserHasRightsToCatalog(

  byVal sCatalogName,

  byVal sUserID

)

Parameters

sCatalogName

A string containing the name of the catalog.

sUserID

A string containing the user ID.

Defined in File

include\catalog.asp

Routines Called

GenerateURL

mscsUserCatalogsetID

Called By

GetCatalogForUser

Main (category.asp)

Main (product.asp)


EnsureUserProfile

This function ensures that the profile of the user exists. If not, the user is redirected to the "missing profile" error page (error\profile.asp).

Definition

Function EnsureUserProfile()

Return Value

Users who do not have a current profile are redirected to the "missing profile" error page. Otherwise, the function returns a Recordset object containing the current profile of the user.

Defined in File

include\std_profile_lib.asp

Routines Called

GenerateURL

GetCurrentUserProfile

Called By

bCheckIfProfileExists

bInsertProfile

bPaintACLForUser

EnsureAccess

EnsureAuthAccess

iGetCurrentUserPropertyAccessClass

PrepareLoginSection

PrepareOrderList

rsGetOrdersList

SaveReadOnlyProperty

sGetWhereClauseForCurrentUser

UpdateSelectActionPropertyName

UpdateUserPasswordProperty


ErrorOut

This sub displays an error message, logs the error to the event log, and stops script execution.

Definition

Sub ErrorOut()

Defined in File

opt-out.asp

Routines Called

This routine does not call any other routines defined in the Solution Sites files.

Called By

Main (opt-out.asp)

OptOut

Remarks

This routine produces a different error message depending on whether the global variable MSCSENV is set to the constant PRODUCTION or the constant DEVELOPMENT.


FetchCategoryData

This sub initializes the variables passed to it.

Definition

Sub FetchCategoryData(

  byRef sPageTitle,

  byRef sCatalogName,

  byRef sCategoryName,

  byRef iPageNumber

)

Parameters

sPageTitle

A string that this sub initializes to a constant string stored in the MessageManager object.

sCatalogName

A string that this sub initializes to the request variable CATALOG_NAME_URL_KEY.

sCategoryName

A string that this sub initializes to the request variable CATEGORY_NAME_URL_KEY.

iPageNumber

A number that this sub initializes to the request variable PAGENUMBER_URL_KEY.

Defined in File

category.asp

Routines Called

GetRequestString

Called By

Main (category.asp)


FetchData (addrbook.asp)

This sub retrieves the address information for the current user, initializing the iAddrType and rsAddresses parameters. If the rsAddresses Recordset object is not empty, the sCheckedAddrID parameter is also initialized.

Definition

Sub FetchData(

  ByRef iAddrType,

  ByRef rsAddresses,

  ByRef sCheckedAddrID

)

Defined in File

addrbook.asp

Routines Called

GetAddressType

GetUserAddresses

Called By

Main (addrbook.asp)


FetchData (newaddr.asp)

This sub initializes the iAddrType and sAction parameters. If the sAction parameter is equal to "add", "edit", or "delete", the sAddrID parameter is initialized. If the sAddrID parameter is not Null, the rsAddr parameter is initialized to a Recordset object containing the address information for the current user.

Definition

Sub FetchData(

  ByRef iAddrType,

  ByRef sAction,

  ByRef sAddrID,

  ByRef rsAddr

)

Defined in File

newaddr.asp

Routines Called

GetAddressType

rsGetProfile

Called By

SetupAddressForm


FetchData (_setadrs.asp)

This function initializes its parameters. The sAddrID parameter is initialized to the request variable ADDRESS_ID. The mscsOrderGroup parameter is initialized to the contents of the basket for the current user. The rsAddr parameter is initialized to a Recordset object containing address information for the current user.

Definition

Function FetchData(

  ByRef mscsOrderGrp,

  ByRef sAddrID,

  ByRef rsAddr

)

Defined in File

_setadrs.asp

Routines Called

GetRequestString

LoadBasket

rsGetProfile

Called By

Main (_setadrs.asp)


FormatOutput (std_util_lib.asp)

This function formats a string, replacing variables in the sTemplate parameter of the form %1, %2, and so on, with strings supplied in the arrArgs array parameter.

Definition

Function FormatOutput(

  byVal sTemplate,

  arrArgs

)

Parameters

sTemplate

A string containing replaceable substrings of the form %1, %2, and so on.

arrArgs

An array of strings to replace the substrings of the form %1, %2, and so on, in the sTemplate parameter. The first string in the array will replace the %1 substring, the second string in the array will replace the %2 substring, and so on.

Return Value

A string in which the specified replacements have been made.

Defined in File

include\std_util_lib.asp

Routines Called

This routine does not call any routines defined in the Solution Sites files.

Called By

colRenderPropertyTip

GetAddresses

GetDefaultValueForNameOnCard

GetErrorSource

GetLoginFieldDefinitions

GetPasswordFieldDefinition

htmRenderCategoryPage

htmRenderConfirmationPage

htmRenderFillOutForm

htmRenderPaymentOptionsForUser

htmRenderUserDefinedProductProperties

JoinWebFarm

RenderSearchResultRow

rowRenderStatusInfo

tableRenderFooterInfo


formRenderBlankEditPageBody

This function prepares the HTML that will render a blank profile editing form.

Definition

Function formRenderBlankEditPageBody(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byVal bValidPostedValues,

  byVal bDisplayPostedValues,

  byVal listProfileSchema

)

Defined in File

services\include\render_edit_blank.asp

Routines Called

GenerateURL

RenderForm

RenderHiddenField

tableRenderBlankProfile

tableRenderEditPageTasks

Called By

htmRenderBlankEditPage


formRenderChangePasswordPageContents

This function prepares the HTML that will render the change password form.

Definition

Function formRenderChangePasswordPageContents(

  sAction,

  sSubAction,

  sProfileIDs,

  rsUser,

  bValidPostedValues,

  bDisplayPostedValues

)

Defined in File

services\include\render_password.asp

Routines Called

GenerateURL

GetRequestString

RenderForm

RenderHiddenField

tableChangePasswordTasks

tableRenderChangePasswordContents

Called By

htmRenderChangePasswordPage


formRenderEditPageBody

This function prepares the HTML that will render a profile editing form.

Definition

Function formRenderEditPageBody(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byVal rsProfiles,

  byVal bValidPostedValues,

  byVal bDisplayPostedValues,

  byVal listProfileSchema

)

Defined in File

services\include\render_edit_common.asp

Routines Called

GenerateURL

RenderForm

RenderHiddenField

tableRenderEditPageTasks

tableRenderProfiles

Called By

htmRenderEditPage


formRenderListPageContents

This function prepares the HTML that will render a profile list form.

Definition

Function formRenderListPageContents(

  byVal sAction,

  byVal sSubAction,

  byVal rsProfiles,

  byRef iPageNumber,

  byRef iTotalRecords,

  byRef iTotalPages,

  byRef bIsEmpty

)

Defined in File

services\include\render_list.asp

Routines Called

GenerateURL

GetRequestString

RenderForm

RenderHiddenField

sGetSelectActionPropertyName

sGetThisPageProperty

tableRenderListPageTasks

tableRenderMultipleRecords

Called By

htmRenderProfilesList


formRenderOrderContents

This function prepares the HTML that will render an order details form.

Definition

Function formRenderOrderContents(

  sAction,

  sSubAction,

  sProfileIDs,

  rsOrder

)

Defined in File

services\include\render_orders.asp

Routines Called

GenerateURL

GetRequestString

RenderForm

RenderHiddenField

tblOrderDetailsTasks

tblRenderOrderDetailsContents

Called By

htmRenderOrderDetails


formRenderOrderSearchOptions

This function prepares the HTML that will render either a simple or advanced order searching form, based on the value of the sCriteria parameter.

Definition

Function formRenderOrderSearchOptions(

  byVal dictSearchOptions,

  byVal mscsUserProfile,

  sCriteria

)

Defined in File

services\include\render_orders.asp

Routines Called

colRenderAdvancedSearchTab

colRenderSimpleSearchTab

RenderForm

RenderHiddenField

RenderSubmitButton

RenderTable

rowRenderAdvancedSearchOptionsForOrders

rowRenderSimpleSearchOptionsForOrders

sReConstructPageURL

TRTag

Called By

htmRenderOrderList


formRenderOrdersListContents

This function prepares the HTML that will render an orders list form.

Definition

Function formRenderOrdersListContents(

  byVal sAction,

  byVal sSubAction,

  byVal rsOrders,

  byRef iPageNumber,

  byRef iTotalRecords,

  byRef iTotalPages,

  byVal sTargetPage

)

Defined in File

services\include\render_orders.asp

Routines Called

GenerateURL

RenderForm

tableRenderOrdersListContents

tableRenderOrdersListTasks

Called By

htmRenderOrderList


formRenderPagingButtons

This function prepares the HTML that will render paging buttons. These buttons are wrapped in a form that gets posted when a paging button is clicked.

Definition

Function formRenderPagingButtons(

  byVal sAction,

  byVal sSubAction,

  byVal iPageNumber,

  byVal iTotalPages,

  byVal bRequiresLastPageCtrl

)

Defined in File

services\include\render_common.asp

Routines Called

RenderForm

RenderHiddenField

RenderSubmitButton

RenderTextBox

sReConstructPageURL

Called By

tableRenderFooterInfo


formRenderProfileSearchOptions

This function prepares the HTML that will render either a simple or advanced profile searching form, based on the value of the request variable QUERY_STRING_CRITERIA.

Definition

Function formRenderProfileSearchOptions(

  byVal sAction,

  byVal sSubAction,

  byVal dictSearchOptions

)

Defined in File

services\include\render_list.asp

Routines Called

colRenderAdvancedSearchTab

colRenderSimpleSearchTab

GetRequestString

RenderForm

RenderHiddenField

RenderSubmitButton

RenderTable

rowsRenderAdvanceSearchOptionsForProfiles

rowsRenderSimpleSearchOptionsForProfiles

sReConstructPageURL

TRTag

Called By

htmRenderProfilesList


GenerateURL

This function checks whether the page is defined as supporting the Secure Socket Layer (SSL) protocol, and whether the ticket is stored in a cookie or in the URL. This information, along with the parameters, is passed to the GetURL method of the AuthManager object.

Definition

Function GenerateURL(

  byVal sPageName,

  ByRef arrParams,

  ByRef arrVals

)

Defined in File

include\std_url_lib.asp

Routines Called

None.

Called By

CatchErrors (_setadrs.asp)

CatchErrors (_setship.asp)

CatchErrors (addrbook.asp)

CatchErrors (addrform.asp)

CatchErrors (newaddr.asp)

CatchErrors (pickship.asp)

CatchErrors (summary.asp)

CatchErrorsForPaymentPages

CheckIfOrderExists

CheckIfProfilesExist

CheckOut

CheckPartnerServiceAccess

CloseOrderDetailsActionHandler

EnsureAccess

EnsureAuthAccess

EnsureSupportForPaymentMethod

EnsureUserHasRightsToCatalog

EnsureUserProfile

formRenderBlankEditPageBody

formRenderChangePasswordPageContents

formRenderEditPageBody

formRenderListPageContents

formRenderOrderContents

formRenderOrdersListContents

GetCatalogForUser

GetTicketInUrlArg

htmChangePasswordActionHandler

htmEditPageActionHandlers

htmListPageActionHandlers

htmRenderAddressBook

htmRenderAddressBookPage

htmRenderAddressForm

htmRenderAddressRows

htmRenderBasket

htmRenderBlankEditPage

htmRenderChangePasswordPage

htmRenderCheckoutButton

htmRenderConfirmationPage

htmRenderCreditCardPage

htmRenderCustomerServiceSection

htmRenderEditPage

htmRenderLoginPage

htmRenderLoginSection

htmRenderMessageBoxForCancel

htmRenderMessageBoxForDelete

htmRenderMessageBoxForDeleteAll

htmRenderMessageBoxForSave

htmRenderMessageBoxForSelect

htmRenderOrderDetails

htmRenderOrderForm

htmRenderOrderList

htmRenderPartnerServiceSection

htmRenderPaymentOptionsForUser

htmRenderPickshipForm

htmRenderProfilesList

htmRenderSearchDeptPageContent

htmRenderSearchSection

htmRenderShippingMethods

htmRenderVerifyWithForm

InitializeConfirmationPage

InitializeCreditcardPage

InitializePO

InitializeSummaryPage

Main (_additem.asp)

Main (_delall.asp)

Main (_delitem.asp)

Main (_editqty.asp)

Main (_setadrs.asp)

Main (_setship.asp)

Main (addrform.asp)

Main (category.asp)

Main (dispatch.asp)

Main (error\badurl.asp)

Main (error\noauth.asp)

Main (login\_guest.asp)

Main (login\login.asp)

Main (login\newuser.asp)

Main (product.asp)

Main (services\change_password.asp)

Main (services\customer\account.asp)

Main (services\customer\view_order.asp)

Main (services\partner\account.asp)

Main (services\partner\view_order.asp)

Main (stepsrch.asp)

mscsGetCategoryObject

PasswordActionHandlers

PredictedPropToHREF

PrepareCloseAction

PrepareLoginPage

PrepareLogoffPage

PrepareNewUserPage

PreparePickShipForm

PrepareSelectActionHandlerForEdit

PrepareShippingMethods

RedirectOrderDetailsForIDs

ReDirectToPage

RedirectToPOConfirmation

RenderBasketPage

RenderCategoryURL

RenderNavbar

RenderProductURL

SelectedActionHandlerForList

SetupAddressForm

ShowRefinedSearch


GetActiveUsersOnly

This function examines the semicolon-separated list of user profile IDs, and returns a similar list containing only those user profile IDs that correspond to users that have an account status of ACCOUNT_ACTIVE.

Definition

Function GetActiveUsersOnly(

  byVal sProfileIDs

)

Parameters

sProfileIDs

A string containing a semicolon-separated list of user profile IDs.

Return Value

A string containing a semicolon-separated list of user profile IDs corresponding to users that are specified in the list provided by the sProfileIDs parameter, and that have an account status of ACCOUNT_ACTIVE.

Defined in File

services\include\save_one_profile.asp

Routines Called

GetUserPropertyFromID

Called By

SaveUserAccountControlProperty


GetAddressBookAddressFieldDefinitions

This function initializes the form field definitions for address book entries.

Definition

Function GetAddressBookAddressFieldDefinitions()

Return Value

A SimpleList object containing the form field definitions for address book entries.

Defined in File

include\global_addressbook_lib.asp

Routines Called

GetAddressFieldDefinitions

GetDictionary

GetSimpleList

Called By

GetFormDefinitions

Remarks

For more information about forms processing in the Solution Sites, see Forms Processing.


GetAddresses

This function returns a Recordset object of address information for either a user or an organization, based on the value of the sAddrParentID parameter.

Definition

Function GetAddresses(

  byVal sAddrParentID

)

Defined in File

include\addr_lib.asp

Routines Called

FormatOutput

GetQualifiedName

Called By

GetOrganizationAddresses

GetUserAddresses

Remarks

This function uses ActiveX Data Objects (ADO) and the OLEDB Provider for Commerce Server for direct database access.


GetAddressFieldDefinitions

This function initializes the form field definitions for address fields used in address book entries and on shipping and billing address forms.

Definition

Function GetAddressFieldDefinitions()

Return Value

A SimpleList object containing the form field definitions for common address fields.

Defined in File

include\global_addressbook_lib.asp

Routines Called

GetCountryCodesList

GetCountryNamesList

GetDictionary

GetSimpleList

Called By

GetAddressBookAddressFieldDefinitions

GetFormDefinitions

GetShipToAddressFieldDefinitions

Remarks

For more information about forms processing in the Solution Sites, see Forms Processing.


GetAddressPage

This function returns the name of the page used to enter or select an address. If the user is a guest user or if address book functionality is disabled, the name of the address form page is returned. Otherwise, the name of the address book page is returned.

Definition

Function GetAddressPage()

Return Value

A string containing the name of either the address form page or the address book page.

Defined in File

include\std_util_lib.asp

Routines Called

None.

Called By

CatchErrors (pickship.asp)

CatchErrors (summary.asp)

CatchErrorsForPaymentPages

Remarks

For more information about how addresses are managed in the Solution Sites, see Address Management.


GetAddressType

This function returns the address type from the request variable ADDRESS_TYPE.

Definition

Function GetAddressType()

Return Value

One of the two constant values, BILLING_ADDRESS or SHIPPING_ADDRESS.

Defined in File

include\addr_lib.asp

Routines Called

None.

Called By

FetchData (addrbook.asp)

FetchData (newaddr.asp)

Main (_setadrs.asp)

Main (addrform.asp)

Remarks

This function defaults to SHIPPING_ADDRESS.


GetAncestorCategories

This function returns an array containing the ancestor categories for the specified category.

Definition

Function GetAncestorCategories(

  byVal mscsCategory,

  byVal sCategoryName

)

Defined in File

template\discount.asp

Routines Called

None.

Called By

listGetShownProductsInfo


GetAnyLineItem

This function returns an arbitrary line item from the specified OrderGroup object, which is useful when all line items contain similar information. This is accomplished by searching each OrderForm object in the specified OrderGroup object, and returning the first line item found.

Definition

Function GetAnyLineItem(

  mscsOrderGrp

)

Defined in File

include\std_ordergrp_lib.asp

Routines Called

None.

Called By

GetAnySavedAddressID

GetSavedAddressID

InitializeSummaryPage

PrepareShippingMethods

sGetDefaultShippingMethod


GetAnyOrderForm

This function searches the specified OrderGroup object, and returns the first OrderForm object it finds.

Definition

Function GetAnyOrderForm(

  mscsOrderGrp

)

Defined in File

include\std_ordergrp_lib.asp

Routines Called

None.

Called By

GetAnySavedAddressID

GetDefaultValueForNameOnCard

GetDefaultValuesForCreditCardFields

GetDefaultValuesForPurchaseOrderFields

GetSavedAddressID

InitializeSummaryPage

tblRenderOrderDetailsContents

ValidateSubmittedCreditCardData

ValidateSubmittedPurchaseOrderData


GetAnySavedAddressID

This function retrieves an Address ID from the OrderGroup object specified by the mscsOrderGroup parameter and tries to find a corresponding address of the specified type (shipping or billing). If one cannot be found, it searches for a corresponding address of the other type.

Definition

Function GetAnySavedAddressID(

  mscsOrderGrp,

  byVal iAddrType

)

Defined in File

addrform.asp

Routines Called

GetAnyLineItem

GetAnyOrderForm

Called By

GetDefaultValuesForAddressFormFields


GetAppConfigObject

This function returns an initialized AppConfig object. It sets the global variable dictConfig to the Dictionary object returned by the GetOptionsDictionary method of the AppConfig object, and adds the s_SecureHostName and s_NonSecureHostName values from the SiteConfig object to the dictConfig dictionary.

Definition

Function GetAppConfigObject()

Return Value

An initialized AppConfig object.

Defined in File

include\global_siteconfig_lib.asp

Routines Called

GetSiteConfigObject

Called By

GetConfigDictionary

Main (include\global_main_lib.asp)


GetArrayFromList

This function creates and returns an array containing the items in the specified SimpleList object.

Definition

Function GetArrayFromList(

  byVal listFields

)

Defined in File

include\std_util_lib.asp

Routines Called

None.

Called By

htmRenderOrderForm


GetAttributeValueFromProfile

This function retrieves a property value from a profile.

Definition

Function GetAttributeValueFromProfile(

  byVal objProfile,

  byVal sPropertyName

)

Defined in File

services\include\get_profiles.asp

Routines Called

None.

Called By

dictGetSearchDictionaryForPage

GetOrgAttributeFromID

GetUserPropertyFromID


GetAuthManagerObject

This function creates, initializes, and returns an AuthManager object.

Definition

Function GetAuthManagerObject()

Defined in File

include\std_access_lib.asp

Routines Called

None.

Called By

SetupPage


GetBaseURL

This function returns the base URL for this application.

Definition

Function GetBaseURL()

Defined in File

include\global_siteconfig_lib.asp

Routines Called

GetCommerceSiteInstallPoint

Called By

InitCSF


GetBasketDetails

This function retrieves basket details.

Definition

Function GetBasketDetails()

Return Value

A SimpleList object that contains one item for each item in all the OrderForm objects in the OrderGroup object for the current user. This process flattens the OrderGroup/OrderForm hierarchy.

Defined in File

template\discount.asp

Routines Called

CollectBasketItems

GetOrderGroup

GetPipelineLogFile

LoadBasket

RunMtsPipeline

Called By

None.

Remarks

This function loads the basket and runs the product pipeline. If the basket is already loaded, use the CollectBasketItems function.


GetBillToCurrenciesListItems

This function creates and returns a SimpleList object containing three items: the MessageManager "L_SelectOne_Text" message, the base currency symbol, and the alternate currency symbol.

Definition

Function GetBillToCurrenciesListItems()

Defined in File

include\global_internationalization_lib.asp

Routines Called

GetSimpleList

Called By

GetBillToCurrencyFieldDefinition


GetBillToCurrenciesListValues

This function creates and returns a SimpleList object containing three items: the integer –1, the base currency code, and the alternate currency code.

Definition

Function GetBillToCurrenciesListValues()

Defined in File

include\global_internationalization_lib.asp

Routines Called

GetSimpleList

Called By

GetBillToCurrencyFieldDefinition


GetBillToCurrencyFieldDefinition

This function initializes the form field definitions for the bill-to currency field.

Definition

Function GetBillToCurrencyFieldDefinition()

Return Value

A SimpleList object containing the form field definitions for the bill-to currency field.

Defined in File

include\global_internationalization_lib.asp

Routines Called

GetBillToCurrenciesListItems

GetBillToCurrenciesListValues

GetDictionary

Called By

GetCreditCardFieldDefinitions

GetPurchaseOrderFieldDefinitions

Remarks

For more information about forms processing in the Solution Sites, see Forms Processing.


GetCatalogForUser

This function returns the ProductCatalog object specified by the sCatalogName parameter. If the user does not have rights to this catalog, the user is redirected to the "bad catalog item" error page (error\baditem.asp).

Definition

Function GetCatalogForUser(

  byVal sCatalogName,

  byVal sUserID

)

Defined in File

include\catalog.asp

Routines Called

EnsureUserHasRightsToCatalog

GenerateURL

Called By

arrSearchDept

Main (_additem.asp)

Main (stepsrch.asp)


GetCommerceSiteInstallPoint

This function returns one of the constants HOME_DIRECTORY or VIRTUAL_DIRECTORY, depending on whether the application was installed at the root of the website or in a virtual directory, respectively.

Definition

Function GetCommerceSiteInstallPoint()

Defined in File

include\global_siteconfig_lib.asp

Routines Called

None.

Called By

GetBaseURL

GetMachineBaseURL


GetCommerceSiteName

This function returns the Commerce Server site name stored in the global page variable MSCSCommerceSiteName.

Definition

Function GetCommerceSiteName()

Defined in File

include\global_siteconfig_lib.asp

Routines Called

None.

Called By

GetErrorSource


GetComputerName

This function returns the name of the computer.

Definition

Function GetComputerName()

Defined in File

include\global_siteconfig_lib.asp

Routines Called

None.

Called By

GetMachineBaseURL

JoinWebFarm


GetConfigDictionary

This function returns the Dictionary object returned by a call to the GetOptionsDictionary method of the AppConfig object.

Definition

Function GetConfigDictionary()

Defined in File

include\global_siteconfig_lib.asp

Routines Called

GetAppConfigObject

Called By

Main (include\global_main_lib.asp)


GetCorrectedCookiePath

This function converts the case of a cookie path to match the Internet Information Services (IIS) application name, returning True if any character case was converted, and False otherwise.

Definition

Function GetCorrectedCookiePath(

  ByRef url

)

Defined in File

include\std_cookie_lib.asp

Routines Called

GetIISApplicationName

Called By

CorrectRequest

Remarks

The corrected cookie path, if correction was required, is returned in the url parameter.

Sites call this function to ensure that any cookies that are set match the case of subsequently generated URLs (because cookies are case-sensitive).


GetCorrectedHostName

This function corrects the host name in the url parameter, if needed. It returns True if the host name was corrected, and False otherwise.

The purpose of this correction is so that cookies use the same host name as used in the generated URLs (so that the cookies will be preserved).

Definition

Function GetCorrectedHostName(

  ByRef url

)

Defined in File

include\std_cookie_lib.asp

Routines Called

None.

Called By

CorrectRequest

Remarks

The corrected hostname, if correction was required, is returned in the url parameter.


GetCountryCodesList

This function returns a SimpleList object that has "-1" as the first item, and the codes corresponding to the countries returned by the GetCountryNamesList method of the AppConfig object as the subsequent items.

Definition

Function GetCountryCodesList()

Defined in File

include\global_internationalization_lib.asp

Routines Called

GetCountryNamesList

GetSimpleList

Called By

GetAddressFieldDefinitions


GetCountryNamesList

This function returns a SimpleList object that has the string corresponding to the MessageManager constant L_SelectOne_Text as the first item, and the names of the countries returned by the GetCountryNamesList method of the AppConfig object as the subsequent items.

Definition

Function GetCountryNamesList()

Defined in File

include\global_internationalization_lib.asp

Routines Called

GetSimpleList

Called By

colRenderCountryNames

GetAddressFieldDefinitions

GetCountryCodesList


GetCreditCardCodesList

This function returns the same SimpleList object as the GetCreditCardNamesList function, except that the first item is set to the string "-1".

Definition

Function GetCreditCardCodesList()

Defined in File

include\global_creditcards_lib.asp

Routines Called

GetCreditCardNamesList

Called By

GetCreditCardFieldDefinitions


GetCreditCardFieldDefinitions

This function initializes and returns the form field definitions for credit card fields.

Definition

Function GetCreditCardFieldDefinitions()

Return Value

A SimpleList object containing the form field definitions for credit card fields.

Defined in File

include\global_creditcards_lib.asp

Routines Called

GetBillToCurrencyFieldDefinition

GetCreditCardCodesList

GetCreditCardNamesList

GetDictionary

GetMonthCodesList

GetMonthNamesList

GetSimpleList

GetYearsListItems

GetYearsListValues

Called By

GetFormDefinitions

Remarks

For more information about forms processing in the Solution Sites, see Forms Processing.


GetCreditCardNamesList

This function returns a SimpleList object that has the string corresponding to the MessageManager constant L_SelectOne_Text as the first item, and the names of the accepted credit cards as the subsequent items.

The credit card names are also retrieved from the MessageManager object, using the constants L_AmericanExpress_Text, L_Discover_Text, L_MasterCard_Text, and L_VISA_Text.

Definition

Function GetCreditCardNamesList()

Defined in File

include\global_creditcards_lib.asp

Routines Called

GetSimpleList

Called By

GetCreditCardCodesList

GetCreditCardFieldDefinitions


GetCurrentUserProfile

This function gets the profile of the current user, if the user has one.

This function also ensures that the profile returned is the latest version available on the Web farm.

Definition

Function GetCurrentUserProfile()

Defined in File

include\std_profile_lib.asp

Routines Called

EnsureUpToDateUserProfile

GetProfileFromDB

Called By

CheckPartnerServiceAccess

EnsureAccess

EnsureUserProfile

GetUserProfileByLoginName

mscsTransferGuestUserProfile

mscsUserCatalogsetID

PrepareLoginPage

PrepareNewUserPage

PrepareRenderMenu

RenderDiscounts

rsGetUserDetails

RunMtsPipeline

Remarks

This function is optimized to return Nothing when the user is known to not have a profile, and to cache the user profile in the page variable Private_CurrentUserProfile in case this function is called again on the same page.

For more information about profiles and Web farm issues, see Profiles.


GetDefaultPaymentMethodForUser

This function returns the first payment method in the passed SimpleList object.

Definition

Function GetDefaultPaymentMethodForUser(

  listMethods

)

Defined in File

include\payment.asp

Routines Called

None.

Called By

EnsureSupportForPaymentMethod

htmRenderVerifyWithForm

sLookUpPaymentMethod


GetDefaultValueForNameOnCard

This function searches the specified OrderGroup object for the first and last name associated with the billing address, combines the names into a single string, and then returns that string.

Definition

Function GetDefaultValueForNameOnCard(

  mscsOrderGrp

)

Defined in File

crdtcard.asp

Routines Called

FormatOutput

GetAnyOrderForm

Called By

GetDefaultValuesForCreditCardFields


GetDefaultValuesForAddressFormFields

This function creates and returns a Dictionary object that contains default address values of the specified type, retrieved from the specified OrderGroup object. If these address values cannot be retrieved, a Dictionary object with the single key "ADDRESS_COUNTRY", set to a value of "–1", is returned.

Definition

Function GetDefaultValuesForAddressFormFields(

  mscsOrderGrp,

  listFlds,

  byVal iAddrType

)

Defined in File

addrform.asp

Routines Called

GetAnySavedAddressID

GetDictionary

Called By

Main (addrform.asp)

Remarks

For more conceptual information about forms processing, see Forms Processing.


GetDefaultValuesForCreditCardFields

This function creates and returns a Dictionary object that contains default credit card values retrieved from the specified OrderGroup object. The values to retrieve are determined by the credit card fields schema specified by the listFlds parameter. If any of these values cannot be retrieved, a value of "–1" is set for that value.

Definition

Function GetDefaultValuesForCreditCardFields(

  mscsOrderGrp,

  listFlds

)

Defined in File

crdtcard.asp

Routines Called

GetAnyOrderForm

GetDefaultValueForNameOnCard

GetDictionary

Called By

InitializeCreditcardPage

Remarks

For more conceptual information about forms processing, see Forms Processing.


GetDefaultValuesForPurchaseOrderFields

This function returns a Dictionary object of default values copied from the first OrderForm object in the specified OrderGroup object. The values to retrieve are determined by the purchase order fields schema specified by the listFlds parameter.

Definition

Function GetDefaultValuesForPurchaseOrderFields(

  mscsOrderGrp,

  listFlds

)

Defined in File

po.asp

Routines Called

GetAnyOrderForm

GetDictionary

Called By

Main (po.asp)

Remarks

For more conceptual information about forms processing, see Forms Processing.


GetDictionary

This function creates and returns a Dictionary object.

Definition

Function GetDictionary()

Defined in File

include\std_util_lib.asp

Routines Called

None.

Called By

AddGroupAndPropertySchemas

dictGetCatalogAttributes

dictGetInitialFieldValues

dictGetProfileSchemaForAllProfileTypes

dictGetPropertySchema

dictGetRSFields

GetAddressBookAddressFieldDefinitions

GetAddressFieldDefinitions

GetBillToCurrencyFieldDefinition

GetCreditCardFieldDefinitions

GetDefaultValuesForAddressFormFields

GetDefaultValuesForCreditCardFields

GetDefaultValuesForPurchaseOrderFields

GetFieldsErrorDictionary

GetFormDefinitions

GetLoginFieldDefinitions

GetObjectInstanceDictionary

GetPartnerAndCustomerServicePageAttributes

GetPasswordFieldDefinition

GetPurchaseOrderFieldDefinitions

GetSecurePagesDictionary

GetShipToAddressFieldDefinitions

GetSitePages

GetSiteStyles

GetStyles

GetSubmittedFieldValues

htmRenderDiscountMessageGroup

htmRenderDiscountsApplied

htmRenderDiscountsDescriptions

htmRenderPredictions

InitCacheManager

InitSitePipelines

iValidateSubmittedRegistrationData

listGetShownProductsInfo

RsToDict

RunMtsPipeline

ValidateSubmittedLoginData


GetDiscountDescription

This function searches the content list and returns the description of the discount that has been applied to the item.

Definition

Function GetDiscountDescription(

  byVal ciid,

  byVal oContentList

)

Defined in File

include\std_util_lib.asp

Routines Called

None.

Called By

htmRenderDiscountMessageGroup

htmRenderDiscountsApplied

htmRenderDiscountsDescriptions


GetDWConnectionString

This function returns the SQL Server OLEDB connection string for the Data Warehouse that corresponds to the Web site.

Definition

Function GetDWConnectionString()

Defined in File

include\global_data_lib.asp

Routines Called

None.

Called By

InitPredictor


GetErrorCount

This function returns the error count in each order form.

Definition

Function GetErrorCount(

  byVal mscsOrderGrp,

  byVal sCollectionName

)

Defined in File

include\std_ordergrp_lib.asp

Routines Called

None.

Called By

CheckBasket

CheckOut

InitializeSummaryPage


GetErrorSource

This function returns the site and function names of the error source.

Definition

Function GetErrorSource(

  byVal sFunctionName

)

Defined in File

include\std_util_lib.asp

Routines Called

FormatOutput

GetCommerceSiteName

Called By

JoinWebFarm


GetFieldsErrorDictionary

This function returns a Dictionary object. The keys are the names of the form post fields and the values are the associated field validation error messages. Examples of errors include empty fields where input is required, incorrect password length, invalid characters, and so on.

Definition

Function GetFieldsErrorDictionary(

  listFields,

  dictFieldVals

)

Parameters

listFields

A SimpleList object that contains the field definitions for this form. The SimpleList object contains a collection of Dictionary objects, where each of the Dictionary objects contains information about a form field. This parameter is one of the form field Dictionary objects initialized within the function GetFormDefinitions.

dictFieldVals

A Dictionary object that contains the form post values corresponding to the fields specified by the listFields parameter. The keys for these values are the field names, as specified in the listFields parameter. This parameter is constructed using the function GetSubmittedFieldValues.

Return Value

A Dictionary object that contains error message strings corresponding to the fields specified by the listFields parameter. The keys for these messages are the field names, as specified in the listFields parameter.

Defined in File

include\form_lib.asp

Routines Called

bMatchesPattern

GetDictionary

IsEntityInList

Called By

iValidateSubmittedAddress

iValidateSubmittedAddressForAddressBook

iValidateSubmittedRegistrationData

ValidateSubmittedCreditCardData

ValidateSubmittedLoginData

ValidateSubmittedPurchaseOrderData

Remarks

For more conceptual information about forms processing, see Forms Processing.


GetFileSystemObject

This function creates and returns a Scripting.FileSystemObject object.

Definition

Function GetFileSystemObject()

Defined in File

include\std_util_lib.asp

Routines Called

None.

Called By

GetINIString


GetFormDefinitions

This function returns a Dictionary object of field definitions (including variables such as maximum and minimum field lengths, whether the field is required, and so on) for the following fields: Login, Registration, BillToAddress, ShipToAddress, AddressBookAddress, CreditCard, and PurchaseOrder.

Definition

Function GetFormDefinitions()

Defined in File

include\global_forms_lib.asp

Routines Called

GetAddressBookAddressFieldDefinitions

GetAddressFieldDefinitions

GetCreditCardFieldDefinitions

GetDictionary

GetLoginFieldDefinitions

GetPurchaseOrderFieldDefinitions

GetRegistrationFieldDefinitions

GetShipToAddressFieldDefinitions

Called By

Main (include\global_main_lib.asp)

Remarks

The GetMessageManagerObject function must be called before this function is called.


GetIISApplicationName

This function returns the Internet Information Services (IIS) application name.

Definition

Function GetIISApplicationName()

Defined in File

include\std_cookie_lib.asp

Routines Called

None.

Called By

GetCorrectedCookiePath

SetTestCookie


GetINIFileName

This function returns the file name for the .ini file containing the site configuration information.

Definition

Function GetINIFileName()

Defined in File

include\global_siteconfig_lib.asp

Routines Called

GetRootPath

Called By

Main (include\global_main_lib.asp)


GetINIString

This function returns the value of the specified key or "" (an empty string) if the key or its value cannot be found.

Definition

Function GetINIString(

  byVal sFileName,

  byVal sKey

)

Defined in File

include\global_siteconfig_lib.asp

Routines Called

GetFileSystemObject

GetKeyValue

Called By

Main (include\global_main_lib.asp)


GetInputParameters

This sub retrieves the request parameters required by the GetShownProductsDetails function.

Definition

Sub GetInputParameters (

  ByRef sCatalogName,

  ByRef sCategoryName,

  ByRef nPageNumber,

  ByRef sProductID

)

Defined in File

template\discount.asp

Routines Called

GetRequestString

Called By

GetShownProductsDetails


GetKeyValue

This function returns the value part of a key/value pair line in an INI file.

Definition

Function GetKeyValue(

  byVal sKeyValuePair,

  byVal sKey

)

Defined in File

include\std_util_lib.asp

Routines Called

None.

Called By

GetINIString


GetLineItemsCount

This function returns the number of items in the basket.

Definition

Function GetLineItemsCount(

  byVal mscsOrderGrp

)

Defined in File

include\std_ordergrp_lib.asp

Routines Called

None.

Called By

CheckBasket


GetListItemIndex

This function returns the index of the specified item in the list.

Definition

Function GetListItemIndex(

  byVal sItem,

  list

)

Defined in File

include\std_util_lib.asp

Routines Called

None.

Called By

InitializeCreditcardPage

Main (po.asp)


GetLoginFieldDefinitions

This function returns the login form field definitions.

Definition

Function GetLoginFieldDefinitions()

Defined in File

include\global_forms_lib.asp

Routines Called

FormatOutput

GetDictionary

GetPasswordFieldDefinition

GetSimpleList

Called By

GetFormDefinitions

GetRegistrationFieldDefinitions

Remarks

For best results, keep the RegExp object pattern specified in the Pattern entry of the form field schema dictionary the same as the one used in Business Desk and the Partner Services.

For more conceptual information about forms processing, see Forms Processing.


GetMachineBaseURL

This function returns the base URL for this application, and specifically for this server.

Definition

Function GetMachineBaseURL()

Defined in File

include\global_siteconfig_lib.asp

Routines Called

GetCommerceSiteInstallPoint

GetComputerName

iGetWebServerPort

Called By

InitCacheManager

Remarks

If you use Commerce Server Business Desk production refresh capabilities (present in BDRefresh.asp) from a browser outside the local area network (LAN), this function must be changed so that it returns a computer-specific URL that works outside the LAN.


GetMessageManagerObject

This function reads the MessageManager object entries from the file rc.xml.

Definition

Function GetMessageManagerObject()

Defined in File

include\global_messagemanager_lib.asp

Routines Called

GetRootPath

Called By

Main (include\global_main_lib.asp)


GetMonthCodesList

This function returns a list of numeric month codes.

Definition

Function GetMonthCodesList()

Defined in File

include\std_dates_lib.asp

Routines Called

GetSimpleList

Called By

GetCreditCardFieldDefinitions


GetMonthNamesList

This function returns a list of month names.

Definition

Function GetMonthNamesList()

Defined in File

include\std_dates_lib.asp

Routines Called

GetSimpleList

Called By

GetCreditCardFieldDefinitions


GetNewGuestUserProfile

If the privacy options of the Site Configuration dictionary is set to PROFILE_GUEST_USER, this function creates a new user profile, sets the user_id_changed_by field to the newly generated user ID, sets the user_type field to GUEST_PROFILE, the account_status field to ACCOUNT_ACTIVE, the partner_desk_role field to ROLE_USER, and the date_created field to the current time. After the profile is created, the function passes it to the UpdateUserProfile routine to perform common functions the sites require when saving profiles.

Definition

Function GetNewGuestUserProfile()

Defined in File

include\std_profile_lib.asp

Routines Called

UpdateUserProfile

Called By

EnsureAccess

Main (login\_guest.asp)


GetObjectInstanceDictionary

This function creates and returns a Dictionary object. The Dictionary object contains an item called "Dictionary" that contains an empty Dictionary object. The Dictionary object also contains an item called "SimpleList" that contains an empty SimpleList object.

Definition

Function GetObjectInstanceDictionary()

Defined in File

include\std_util_lib.asp

Routines Called

GetDictionary

GetSimpleList

Called By

Main (include\global_main_lib.asp)


GetODBCTimeStamp

This function converts a date variant to an Open Database Connectivity (ODBC) timestamp format { ts 'yyyy-mm-dd hh:mm:ss' }.

Definition

Function GetODBCTimeStamp(

  varTime

)

Defined in File

services\include\profiles_common.asp

Routines Called

None.

Called By

sAddEndDate

sAddStartDate


GetOptOutList

This function returns the list ID of the opt-out list associated with the campaign item, or Null if there is no opt-out list associated with the campaign item.

Definition

Function GetOptOutList(

  conn_campaigns,

  listmanager,

  campitem_id

)

Defined in File

opt-out.asp

Routines Called

None.

Called By

OptOut


GetOrderGroup

This function returns an initialized OrderGroup object.

Definition

Function GetOrderGroup(

  byVal sOrderID

)

Defined in File

include\std_ordergrp_lib.asp

Routines Called

None.

Called By

GetBasketDetails

InitializeConfirmationPage

LoadBasket

Main (_recvpo.asp)

mscsGetOrderGroupWithDiscountsByID


GetOrderGroupManager

This function returns an OrderGroupManager object.

Definition

Function GetOrderGroupManager()

Defined in File

include\std_ordergrp_lib.asp

Routines Called

None.

Called By

MoveBasketItems

SaveBasketAsOrder


GetOrganizationAddresses

This function serves as a wrapper function to the GetAddresses function, passing the sOrgID parameter to retrieve the corresponding address as a Recordset object.

Definition

Function GetOrganizationAddresses(

  byVal sOrgID

)

Defined in File

include\addr_lib.asp

Routines Called

GetAddresses

Called By

None.


GetOrgAttributeFromID

This function returns the value of the specified property for an Organization profile.

Definition

Function GetOrgAttributeFromID(

  byVal sAttributeName,

  byVal sID

)

Defined in File

services\include\get_profiles.asp

Routines Called

GetAttributeValueFromProfile

rsGetProfileByKey

Called By

bPaintACLForUser

SaveUserParentDNProperty

sGetParentDN


GetPartnerAndCustomerServicePageAttributes

This function retrieves the properties for all Partner and Customer Services pages.

Definition

Function GetPartnerAndCustomerServicePageAttributes(

  MSCSSitePages

)

Defined in File

services\include\global_service_lib.asp

Routines Called

GetDictionary

Called By

Main (include\global_main_lib.asp)


GetPasswordFieldDefinition

This function returns a Dictionary object of field definitions for the password field in the new user and login forms. The field definitions include size constraint settings, invalid characters, and so on.

Definition

Function GetPasswordFieldDefinition()

Defined in File

include\global_forms_lib.asp

Routines Called

FormatOutput

GetDictionary

Called By

GetLoginFieldDefinitions

GetRegistrationFieldDefinitions

Remarks

For best results, keep the RegExp object pattern specified in the Pattern entry of the form field schema dictionary the same as the one used in Business Desk and the Partner Services.


GetPaymentMethodDisplayName

This function returns the display name for the specified payment method.

Definition

Function GetPaymentMethodDisplayName(

  byVal sPaymentMethod

)

Defined in File

include\payment.asp

Routines Called

None.

Called By

htmRenderPaymentOptionsForUser


GetPaymentMethodsForSite

This function returns the payment methods for the site. This function must run after the MessageManager object is assigned.

Definition

Function GetPaymentMethodsForSite()

Defined in File

include\global_siteconfig_lib.asp

Routines Called

GetSimpleList

IsBitValueSet

Called By

Main (include\global_main_lib.asp)


GetPaymentMethodsForUser

This function returns the payment methods for the user.

Definition

Function GetPaymentMethodsForUser()

Defined in File

include\payment.asp

Routines Called

GetSimpleList

IsEntityInList

Called By

InitializeCreditcardPage

InitializePO

InitializeSummaryPage

Main (dispatch.asp)


GetPaymentPageFromPaymentMethod

This function returns the friendly name of either the crdtcard.asp or po.asp page, depending on the value of the sPaymentMethod parameter.

Definition

Function GetPaymentPageFromPaymentMethod(

  byVal sPaymentMethod

)

Defined in File

include\payment.asp

Routines Called

None.

Called By

EnsureSupportForPaymentMethod

htmRenderVerifyWithForm

Main (dispatch.asp)


GetPipelineLogFile

This function returns the log file path along with the user ID in the file name.

Definition

Function GetPipelineLogFile(

  byVal s

)

Defined in File

include\std_pipeline_lib.asp

Routines Called

None.

Called By

CheckBasket

CheckOut

GetBasketDetails

InitializeSummaryPage

PreparePickShipForm

RunOrderPipeline


GetPriceAndCurrency

This sub retrieves both the price and a formatted price string for a product.

Definition

Sub GetPriceAndCurrency(

  ByRef rsProducts,

  ByRef cyProductPrice,

  ByRef cyCurrency

)

Parameters

rsProducts

A Recordset object containing product information.

cyProductPrice

A currency variant containing the price of the product.

cyCurrency

A currency variant containing the price of the product as a string formatted to the locale.

Defined in File

include\catalog.asp

Routines Called

htmRenderCurrency

Called By

htmRenderProductsTable


GetProductQuantity

This function uses the RequestNumber method of the AppFrameWork object to retrieve and return the value of the PRODUCT_QTY_URL_KEY. If this value is Null, or outside the range of 1 to 999, the value is reset to -1.

Definition

Function GetProductQuantity()

Defined in File

_additem.asp

Routines Called

IsNumberInRange

Called By

Main (_additem.asp)


GetProfileFromDB

This sub retrieves the specified profile from the Profiles store.

Definition

Sub GetProfileFromDB(

  ByRef rsProfile

)

Defined in File

include\std_profile_lib.asp

Routines Called

None.

Called By

EnsureUpToDateUserProfile

GetCurrentUserProfile

GetUserProfileByLoginName

rsGetProfile

rsGetProfileByKey


GetProfileService

This function creates and initializes a ProfileService object.

Definition

Function GetProfileService()

Defined in File

include\std_profile_lib.asp

Routines Called

None.

Called By

None.


GetPurchaseOrderFieldDefinitions

This function returns a Dictionary object of form field definitions, including name, size constraint settings, and so on. A billing currency field is created if an alternate currency can be used on the site.

Definition

Function GetPurchaseOrderFieldDefinitions()

Defined in File

include\global_forms_lib.asp

Routines Called

GetBillToCurrencyFieldDefinition

GetDictionary

GetSimpleList

Called By

GetFormDefinitions

Remarks

For more conceptual information about forms processing, see Forms Processing.


GetQualifiedName

This function constructs a qualified name from the group name and fieldname, resulting in a string of the form sGroupName.sFieldName.

Definition

Function GetQualifiedName(

  byVal sGroupName,

  byVal sFieldName

)

Defined in File

include\std_util_lib.asp

Routines Called

None.

Called By

bInsertProfile

EnsureAccess

GetAddresses

GetUserInfo

htmRenderMenu

mscsNewRegisteredUserProfile

mscsTransferGuestUserProfile

PrepareLoginPage

PrepareLoginSection

PrepareNewUserPage

rsGetProfilesList

SaveReadOnlyProperty

sGetWhereClauseForCurrentUser

UpdateSelectActionPropertyName

UpdateUserPasswordProperty

ValidateSubmittedLoginData


GetRecordCount

This function returns the number of records in the specified Recordset object.

Definition

Function GetRecordCount(

  ByRef rs

)

Defined in File

include\std_util_lib.asp

Routines Called

None.

Called By

PrepareCatalogSection

PrepareDefaultPage


GetRegExp

This function creates and returns the VBScript.RegExp object.

Definition

Function GetRegExp()

Defined in File

include\std_util_lib.asp

Routines Called

None.

Called By

None.


GetRegistrationFieldDefinitions

This function returns a Dictionary object of field definitions for the registration form.

Definition

Function GetRegistrationFieldDefinitions()

Defined in File

include\global_forms_lib.asp

Routines Called

GetLoginFieldDefinitions

GetPasswordFieldDefinition

Called By

GetFormDefinitions

Remarks

For more conceptual information about forms processing, see Forms Processing.


GetRepeatStyle

This function creates an array with the number of array elements specified by the iCount parameter. Each array element is assigned the attribute string specified by the sAttList parameter. This is used to construct a table style array initialized to a common value.

Definition

Function GetRepeatStyle(

  byVal iCount,

  byVal sAttList

)

Parameters

iCount

A number indicating the size of the array to be created.

sAttList

A string to be assigned to each element of the array. The string is a list of space-separated attribute/value pairs to be associated with an HTML element.

Return Value

An array with the number of elements specified by the iCount parameter, where each element is assigned the value of the string contained in the sAttList parameter.

Defined in File

include\html_lib.asp

Routines Called

None.

Called By

htmRenderFillOutForm


GetRequestString

This function removes double quotes, and opening and closing element characters (< and >) from strings obtained through the Request object.

Definition

Function GetRequestString(

  byVal sName,

  byVal vtDefault

)

Defined in File

include\std_url_lib.asp

Routines Called

None.

Called By

AddSetClauseAndUpdateUserAccountControl

bCheckIfProfileExists

bClickedViewButton

bClickedViewOrSearchButton

bInsertProfile

bIsPropertyValueAdded

bProfileHasChanged

bSaveProfileDetails

bSaveReadWriteProperty

CatchErrorsForPaymentPages

FetchCategoryData

FetchData (_setadrs.asp)

formRenderChangePasswordPageContents

formRenderListPageContents

formRenderOrderContents

formRenderProfileSearchOptions

GetInputParameters

GetSearchDictionaryForThisPage

GetSpecificationSearchClauses

GetSubmittedFieldValues

GetUserAccountControl

htmCancelUpdatePasswordAction

htmRenderMenu

htmRenderMessageBoxForCancel

htmRenderMessageBoxForSave

htmRenderMessageBoxForSelect

InitializeConfirmationPage

listGetValidPropertiesForMultiEdit

listReConstructPropertiesSchema

Main (_additem.asp)

Main (_delitem.asp)

Main (_setadrs.asp)

Main (_setship.asp)

Main (dispatch.asp)

Main (product.asp)

Main (search.asp)

Main (stepsrch.asp)

PopulateOrderSearchCriteria

PopulateProfileSearchCriteria

PrepareCloseAction

PrepareCloseOrderDetailsAction

PrepareOrderList

PrepareSaveChangesConfirmation

PrepareSaveProfiles

rowRenderAdvancedSearchOptionsForOrders

rowRenderStatusInfo

rsGetOrderDetails

SaveAllSelectedProfiles

SaveCommonValueForAllSelectedRecords

SaveSAMAccountNameProperty

SaveUserAccountControlProperty

SaveUserPartnerDeskRoleProperty

sGetAction

sGetIDFromForm

sGetSelectActionPropertyName

sGetSelectedIDs

sGetSubAction

ShowRefinedSearch

tableRenderChangePasswordContents

tableRenderMessageBoxPageButtons

UpdatePasswordActionHandler

UpdateSelectActionPropertyName

ValidateFields

varGetValueFromRequestObject

Remarks

For more information about security issues, see Security.


GetRequestStringRange

This function removes double quotes, and opening and closing element characters (< and >) from strings obtained through the Request object.

This function also ensures that the requested string is within the length range specified by the iMinLength and iMaxLength parameters.

Definition

Function GetRequestStringRange(

  byVal sName,

  byVal vtDefault,

  byVal iMinLength,

  byVal iMaxLength

)

Defined in File

include\std_url_lib.asp

Routines Called

None.

Called By

None.

Remarks

For more information about security issues, see Security.


GetRequestType

This function returns the type of request (POST or GET).

Definition

Function GetRequestType()

Defined in File

include\std_cookie_lib.asp

Routines Called

None.

Called By

None.


GetRootPath

This function returns the file path to the root of the application.

Definition

Function GetRootPath()

Defined in File

include\global_siteconfig_lib.asp

Routines Called

None.

Called By

GetINIFileName

GetMessageManagerObject

InitSitePipelines


GetSavedAddressID

This function returns a shipping or billing address ID, depending on the value of the iAddrType parameter.

Definition

Function GetSavedAddressID(

  mscsOrderGrp,

  byVal iAddrType

)

Defined in File

addrform.asp

Routines Called

GetAnyLineItem

GetAnyOrderForm

Called By

SaveAddressToOrderGroup


GetSearchDictionaryForThisPage

This function stores and retrieves the search criteria for the current user and current page.

Definition

Function GetSearchDictionaryForThisPage(

  byVal sAction,

  ByRef sStatusField,

  ByRef iStatusID

)

Defined in File

services\include\lib.asp

Routines Called

GetRequestString

PopulateOrderSearchCriteria

PopulateProfileSearchCriteria

sGetThisPageProperty

Called By

htmRenderProfilesList

PrepareOrderList


GetSecurePagesDictionary

This function returns the Dictionary object containing the names of the secure site pages.

Definition

Function GetSecurePagesDictionary()

Parameters

None.

Return Value

A Dictionary object containing the names of the secure site pages.

Defined in File

include\global_siteconfig_lib.asp

Routines Called

GetDictionary

Called By

Main (include\global_main_lib.asp)

Remarks

Any page requiring secure access must be in this dictionary.


GetShippingMethodNameFromID

This function returns the shipping method name corresponding to the specified shipping method ID.

Definition

Function GetShippingMethodNameFromID(

  byVal sSelectedMethodID

)

Defined in File

_setship.asp

Routines Called

None.

Called By

Main (_setship.asp)


GetShipToAddressFieldDefinitions

This function creates and returns a SimpleList object containing field definitions for the ship-to-address field. Most of the SimpleList is populated by a call to the GetAddressFieldDefinitions function. A Dictionary object containing items such as Name, Label, InputType, and so on, is also included in the SimpleList.

Definition

Function GetShipToAddressFieldDefinitions()

Defined in File

include\global_addressbook_lib.asp

Routines Called

GetAddressFieldDefinitions

GetDictionary

Called By

GetFormDefinitions

Remarks

For more conceptual information about forms processing, see Forms Processing.


GetShownProductsDetails

This function retreives the product details for the products shown on the page.

Definition

Function GetShownProductsDetails()

Defined in File

template\discount.asp

Routines Called

GetInputParameters

GetSimpleList

IsEntityInSet

oCachedDiscountProductInfo

Called By

Main (product.asp)


GetSimpleList

This function creates and returns a SimpleList object.

Definition

Function GetSimpleList()

Parameters

None.

Return Value

An empty SimpleList object.

Defined in File

include\std_util_lib.asp

Routines Called

None.

Called By

GetAddressBookAddressFieldDefinitions

GetAddressFieldDefinitions

GetBillToCurrenciesListItems

GetBillToCurrenciesListValues

GetCountryCodesList

GetCountryNamesList

GetCreditCardFieldDefinitions

GetCreditCardNamesList

GetLoginFieldDefinitions

GetMonthCodesList

GetMonthNamesList

GetObjectInstanceDictionary

GetPaymentMethodsForSite

GetPaymentMethodsForUser

GetPurchaseOrderFieldDefinitions

GetShownProductsDetails

GetYearsListItems

htmRenderDiscountsApplied

htmRenderPaymentOptionsForUser

htmRenderPredictions

listGetShownProductsInfo

listGetVariantPropertiesToShow

ValidateSubmittedLoginData


GetSiteConfigObject

This function creates, initializes, and returns a SiteConfig object.

Definition

Function GetSiteConfigObject()

Parameters

None.

Return Value

An initialized SiteConfig object.

Defined in File

include\global_siteconfig_lib.asp

Routines Called

None.

Called By

GetAppConfigObject

iGetWebServerPort

JoinWebFarm


GetSitePages

This function assigns friendly names to pages in the site. Friendly names are also used by PageSets and the GetSecurePagesDictionary function.

Definition

Function GetSitePages()

Defined in File

include\global_siteconfig_lib.asp

Routines Called

AddPartnerAndCustomerServicePages

GetDictionary

Called By

Main (include\global_main_lib.asp)


GetSiteStyles

This function returns the site styles, which are used by HTML library functions.

Definition

Function GetSiteStyles()

Defined in File

include\global_ui_lib.asp

Routines Called

AddPartnerAndCustomerServiceStyles

GetDictionary

Called By

Main (include\global_main_lib.asp)

Remarks

For more information about how styles are used in the Solution Sites, see Customizing Styles.


GetSpecificationSearchClauses

This sub generates search clauses.

Definition

Sub GetSpecificationSearchClauses(

  byRef sSearchHandle,

  byRef rsFields,

  byRef oCatalog,

  byRef arr1,

  byref arr2,

  byRef iConstraintFieldsCount,

  byRef iNonConstraintFieldsCount

)

Defined in File

stepsrch.asp

Routines Called

GetRequestString

Called By

PrepareSpecificationSearch


GetStatusFieldAndID

This sub updates the status message for the "Save" action.

Definition

Sub GetStatusFieldAndID(

  byVal sSubAction,

  byVal bValidPostedValues,

  byVal bUpdated,

  byVal bProfileExists,

  byRef sStatusField,

  byRef sStatusID

)

Defined in File

services\include\edit_handlers.asp

Routines Called

None.

Called By

None.


GetStyles

This function returns a Dictionary object containing the size attribute for standard text and password boxes.

Definition

Function GetStyles()

Return Value

A Dictionary object containing the size attribute for standard text and password boxes.

Defined in File

include\global_ui_lib.asp

Routines Called

GetDictionary

Called By

None.


GetSubmittedFieldValues

This function retrieves form post values from the request, based on the expected fields specified by the listFlds parameter, placing them in a Dictionary object where the corresponding keys are the names of the fields.

Definition

Function GetSubmittedFieldValues(

  listFlds

)

Parameters

listFlds

A SimpleList object that contains a collection of Dictionary objects. Each of the Dictionary objects contains information about a form field. This parameter is one of the form field Dictionary objects initialized within the function GetFormDefinitions.

Return Value

A Dictionary object that contains form post value strings corresponding to the fields specified by the listFlds parameter. The keys for these value strings are the field names, as specified in the listFlds parameter.

Defined in File

include\form_lib.asp

Routines Called

GetDictionary

GetRequestString

Called By

InitializeCreditcardPage

Main (addrform.asp)

Main (po.asp)

PrepareLoginPage

PrepareNewUserPage

SetupAddressForm

Remarks

For more conceptual information about forms processing, see Forms Processing.


GetTableNameAndWhereClause

This sub gets the database table name and uses a WHERE clause to search for a given organization ID.

Definition

Sub GetTableNameAndWhereClause(

  ByRef sTableName,

  ByRef sOrgIDWhereClause

)

Parameters

sTableName

A string containing the name of the database table storing a given profile type.

sOrgIDWhereClause

A string containing a WHERE clause to search for a given organization ID.

Defined in File

services\include\profiles_common.asp

Routines Called

sGetThisPageProperty

Called By

DeleteAllProfiles

rsGetProfilesList

SaveAllSelectedProfiles

UpdateUserAccountControlProperty


GetTicketInUrlArg

This function retrieves the ticket from a URL string.

Definition

Function GetTicketInUrlArg()

Defined in File

include\std_url_lib.asp

Routines Called

GenerateURL

Called By

CacheFragment

LookupCachedFragment


GetTicketLocation

This function returns the location of a ticket.

Definition

Function GetTicketLocation()

Parameters

None.

Return Value

An integer equal to one of the following values:

  • 0 - no ticket available (anonymous users or users authenticated to IIS)

  • 1 - the ticket is stored in the URL

  • 2 - the ticket is stored in a cookie

Defined in File

include\std_url_lib.asp

Routines Called

None.

Called By

SetupPage


GetUserAccountControl

This function determines whether to update the User Account Status and User Partner Desk Role properties.

Definition

Function GetUserAccountControl(

  ByRef sSQLStmt,

  ByRef bFieldSelected

)

Defined in File

services\include\save_all_profiles.asp

Routines Called

GetRequestString

sAddWhereClauseForActiveUsers

Called By

AddSetClauseAndUpdateUserAccountControl


GetUserAddresses

This function retrieves the address for a user. It calls the more generic GetAddresses function to retrieve and return the required address as a Recordset object.

Definition

Function GetUserAddresses(

  byVal sUserID

)

Defined in File

include\addr_lib.asp

Routines Called

GetAddresses

Called By

bIsAddressNameUnique

FetchData (addrbook.asp)


GetUserInfo

This sub, called from the include\setupenv.asp file, assigns the user ID, user type and user access type into the following global variables:

m_userID (user ID)

m_UserType (AUTH_USER, GUEST_USER, or ANON_USER)

m_UserAccessType (IIS_AUTH, TICKET_AUTH, GUEST_VISIT, or ANON_VISIT)

Definition

Sub GetUserInfo()

Defined in File

include\std_access_lib.asp

Routines Called

GetQualifiedName

GetUserProfileByLoginName

Called By

SetupPage

Remarks

For more information about users, see User Tracking.


GetUserProfileByLoginName

This function returns the profile for the given login name.

Definition

Function GetUserProfileByLoginName(

  byVal sLogonName

)

Defined in File

include\std_profile_lib.asp

Routines Called

EnsureUpToDateUserProfile

GetCurrentUserProfile

GetProfileFromDB

Called By

GetUserInfo


GetUserPropertyFromID

This function returns the value of a property from the profile of a user.

Definition

Function GetUserPropertyFromID(

  byVal sPropertyName,

  byVal sID

)

Parameters

Defined in File

services\include\get_profiles.asp

Routines Called

GetAttributeValueFromProfile

rsGetUserDetails

Called By

bHandlePaintingACLsForUsersInAD

GetActiveUsersOnly

SaveUserPartnerDeskRoleProperty

sGetAdminsOnly

sGetUserFullName

sGetUserLoginName

sGetUsersOnly


GetXMLForVendorItems

This function creates and returns an XML document containing the line items corresponding to the specified order form and vendor. The oVendor parameter is a list of line items to be associated with a vendor, and is generated in the Splitter component of the checkout pipeline.

Definition

Function GetXMLForVendorItems(

  byVal mscsOrderForm,

  byVal oVendor

)

Defined in File

include\payment.asp

Routines Called

None.

Called By

InvokeBizTalk


GetYearsListItems

This function creates and returns a SimpleList object of items. The first item contains the MessageManager object "L_SelectOne_Text" message; the next item contains the current year; the following four items contain the next four year values (for example, if the current year is 2002, then the four items would contain 2003 through 2006).

Definition

Function GetYearsListItems()

Defined in File

include\std_dates_lib.asp

Routines Called

GetSimpleList

Called By

GetCreditCardFieldDefinitions

GetYearsListValues


GetYearsListValues

This function creates and returns a SimpleList object of items. The first item contains the integer "-1"; the next item contains the current year; the next four items contain the next four year values (for example, if the current year is 2002, then the four items would contain 2003 through 2006).

Definition

Function GetYearsListValues()

Defined in File

include\std_dates_lib.asp

Routines Called

GetYearsListItems

Called By

GetCreditCardFieldDefinitions


H

This section contains topics for the following routines, beginning with the letter H.

Routine | File
HandleSingleQuote | services\include\profiles_common.asp
htmAddActionHandler | services\include\edit_handlers.asp
htmCachedProductList | category.asp
htmCachedShippingMethods | pickship.asp
htmCancelUpdatePasswordAction | services\include\password_handlers.asp
htmCategoryHTML | category.asp
htmChangePasswordActionHandler | services\include\edit_handlers.asp
htmCloseActionHandler | services\include\edit_handlers.asp
htmCopyActionHandler | services\include\edit_handlers.asp
htmDeleteActionHandler | services\include\edit_handlers.asp
htmEditAction | services\include\edit_handlers.asp
htmEditAllProfiles | services\include\edit_handlers.asp
htmEditPageActionHandlers | services\partner\edit_user.asp
htmInsertProfile | services\include\edit_handlers.asp
htmListPageActionHandlers | services\partner\users.asp
htmOrderDetailsActionHandler | services\include\order_handlers.asp
htmOrderListActionHandler | services\partner\orders.asp
htmRenderAddressBook | addrbook.asp
htmRenderAddressBookPage | addrbook.asp
htmRenderAddress | summary.asp
htmRenderAddressForm | newaddr.asp
htmRenderAddressRows | addrbook.asp
htmRenderBasket | basket.asp
htmRenderBasketWarnings | basket.asp
htmRenderBlankEditPage | services\include\render_edit_blank.asp
htmRenderBlankSpaces | services\include\render_common.asp
htmRenderBoolean | services\include\render_common.asp
htmRenderBuiltInProperties | product.asp
htmRenderCatalogList | include\catalog.asp
htmRenderCatalogSection | template\menu.asp
htmRenderCategoriesList | include\catalog.asp
htmRenderCategoryPage | include\catalog.asp
htmRenderChangePasswordPage | services\include\render_password.asp
htmRenderCheckoutButton | basket.asp
htmRenderConfirmationPage | confirm.asp
htmRenderCountries | services\include\render_common.asp
htmRenderCreditCardPage | crdtcard.asp
htmRenderCurrency | include\std_util_lib.asp
htmRenderCustomerServiceSection | template\menu.asp
htmRenderDefaultPage | default.asp
htmRenderDiscountMessageGroup | basket.asp
htmRenderDiscountMessages | basket.asp
htmRenderDiscountsApplied | basket.asp
htmRenderDiscountsDescriptions | summary.asp
htmRenderEditPage | services\include\render_edit_common.asp
htmRenderEmptyRecordSet | services\include\render_common.asp
htmRenderFillOutForm | include\form_lib.asp
htmRenderFullTextSearchResults | search.asp
htmRenderGrandTotals | summary.asp
htmRenderLoginPage | login\login.asp
htmRenderLoginSection | template\menu.asp
htmRenderLogoffPage | login\logoff.asp
htmRenderMenu | template\menu.asp
htmRenderMessageBoxForCancel | services\include\render_messagebox.asp
htmRenderMessageBoxForDeleteAll | services\include\render_messagebox.asp
htmRenderMessageBoxForDelete | services\include\render_messagebox.asp
htmRenderMessageBoxForSave | services\include\render_messagebox.asp
htmRenderMessageBoxForSelect | services\include\render_messagebox.asp
htmRenderMessageBoxPage | services\include\render_messagebox.asp
htmRenderNewUserPage | login\newuser.asp
htmRenderOrderDateTypes | services\include\render_common.asp
htmRenderOrderDetails | services\include\render_orders.asp
htmRenderOrderDetailsForIDs | services\include\order_handlers.asp
htmRenderOrderForm | summary.asp
htmRenderOrderList | services\include\render_orders.asp
htmRenderOrderStatusOptions | services\include\render_common.asp
htmRenderPartnerDeskRoles | services\include\render_common.asp
htmRenderPartnerServiceSection | template\menu.asp
htmRenderPaymentOptionsForUser | include\payment.asp
htmRenderPaymentOptionsPage | po.asp
htmRenderPickshipForm | pickship.asp
htmRenderPredictions | basket.asp
htmRenderProductsTable | include\catalog.asp
htmRenderProfilesList | services\include\render_list.asp
htmRenderSearchDeptPageContent | srchdept.asp
htmRenderSearchSection | template\menu.asp
htmRenderSelectEndTag | services\include\render_common.asp
htmRenderSelectTag | services\include\render_common.asp
htmRenderShippingMethods | pickship.asp
htmRenderShippingOptionsEx | pickship.asp
htmRenderSiteTerm | services\include\render_common.asp
htmRenderStepSearchPageContent | stepsrch.asp
htmRenderSummaryPage | summary.asp
htmRenderUniqueIDForProfile | services\include\render_list.asp
htmRenderUserDefinedProductProperties | product.asp
htmRenderUserStatusOptions | services\include\render_common.asp
htmRenderVariantsList | product.asp
htmRenderVerifyWithForm | summary.asp
htmSaveActionHandler | services\include\edit_handlers.asp
htmSaveAllActionHandler | services\include\edit_handlers.asp
htmSaveChangesConfirmationHandler | services\include\messagebox_handlers.asp
htmSaveProfiles | services\include\edit_handlers.asp
htmSelectActionHandlerForEdit | services\include\edit_handlers.asp
htmSelectedActionHandlerForEdit | services\include\edit_handlers.asp


HandleSingleQuote

This function replaces a single quote with a double quote for processing profiles.

Definition

Function HandleSingleQuote(

  byVal sSQLValue

)

Defined in File

services\include\profiles_common.asp

Routines Called

None.

Called By

sAddSQLString


htmAddActionHandler

This function renders a blank edit page for any profile, and serves as a wrapper function to the htmRenderBlankEditPage function.

Definition

Function htmAddActionHandler(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byVal sStatusField,

  byVal iStatusID,

  byVal bValidPostedValues,

  byVal bDisplayPostedValues,

  byVal listProfileSchema

)

Defined in File

services\include\edit_handlers.asp

Routines Called

htmRenderBlankEditPage

Called By

htmEditPageActionHandlers


htmCachedProductList

This function attempts to find a specific HTML fragment in the cache ProductListCache. The fragment is specified by the passed catalog and category names, and a page number. The cache key is constructed by concatenating these three values together. If found, the HTML fragment is returned; otherwise, Null is returned.

Definition

Function htmCachedProductList(

  sCatalogName,

  sCategoryName,

  iPageNumber,

  byRef sCacheKey

)

Parameters

sCatalogName

A string containing the name of a catalog, used as the first component of the cache key constructed by this function.

sCategoryName

A string containing the name of a category, used as the second component of the cache key constructed by this function.

iPageNumber

An integer containing a page number, used as the third component of the cache key constructed by this function.

sCacheKey

A string used to return the constructed cache key.

Return Value

If found in the cache, a string containing the HTML representation of the products in the requested catalog, category, and page number.

Defined in File

category.asp.

Routines Called

LookupCachedFragment

Called By

Main (category.asp)


htmCachedShippingMethods

This function searches the cache StaticSectionsCache for the shipping methods HTML fragment. If the fragment is found, this function returns that fragment; otherwise, Null is returned.

Definition

Function htmCachedShippingMethods()

Return Value

If the fragment is found, this function returns that fragment; otherwise, Null is returned.

Defined in File

pickship.asp

Routines Called

LookupCachedFragment

Called By

Main (pickship.asp)


htmCancelUpdatePasswordAction

This function cancels the update of the user_security_password property of the user.

Definition

Function htmCancelUpdatePasswordAction(

  byRef sAction,

  byVal sSubAction,

  byVal sProfileIDs

)

Defined in File

services\include\password_handlers.asp

Routines Called

GetRequestString

Called By

PasswordActionHandlers


htmCategoryHTML

This function constructs an HTML representation of a particular set of products as specified by several parameters. The constructed HTML fragment is also cached for future use using the specified cache key.

Definition

Function htmCategoryHTML(

  oCatalog,

  sCatalogName,

  sCategoryName,

  oCategory,

  rsProducts,

  iPageNumber,

  nOutPagesTotal,

  sCacheKey

)

Parameters

oCatalog

A reference to a ProductCatalog object, passed through to the function htmRenderCategoryPage.

sCatalogName

A string containing the name of the catalog, used as the page title when the category string is Null, and passed through to the function htmRenderCategoryPage.

sCategoryName

A string containing the name of the category, used as the page title when not Null, and passed through to the function htmRenderCategoryPage.

oCategory

A reference to a Category object, passed through to the function htmRenderCategoryPage.

rsProducts

A reference to a Recordset object containing products to be represented in HTML, passed through to the function htmRenderCategoryPage.

iPageNumber

An integer that specifies a particular page of products to be represented in HTML, passed through to the function htmRenderCategoryPage.

nOutPagesTotal

An integer that specifies the total number of pages of products represented in the rsProducts parameter Recordset object, passed through to the function htmRenderCategoryPage.

sCacheKey

A string containing a key under which the constructed HTML will be cached in the cache ProductListCache.

Return Value

A string containing the HTML representation of the products in the requested catalog, category, and page number.

Defined in File

category.asp.

Routines Called

CacheFragment

htmRenderCategoryPage

RenderText

Called By

Main (category.asp)

Remarks

This function uses the function htmRenderCategoryPage to perform the bulk of the work of creating the HTML representation of the requested product list. Many of the parameters are passed straight through to this function.

The constructed HTML string is cached for future use in the cache ProductListCache under the key specified by the sCacheKey parameter.


htmChangePasswordActionHandler

This function is called by EDIT-type pages for changing the user_security_password property. It is called before the execution is passed to the change_password.asp page.

Definition

Function htmChangePasswordActionHandler(

  byRef sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byRef sPreviousAction,

  byRef listProfileSchema,

  byRef bValidPostedValues,

  byRef bDisplayPostedValues

)

Defined in File

services\include\edit_handlers.asp

Routines Called

GenerateURL

htmSaveChangesConfirmationHandler

Called By

htmEditPageActionHandlers

Main (services\customer\account.asp)


htmCloseActionHandler

This function provides rendering for the "Close" action handler.

Definition

Function htmCloseActionHandler(

  byRef sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  ByVal sActionPage,

  byVal sPreviousAction,

  byVal sStatusField,

  byVal iStatusID,

  byVal bValidPostedValues,

  byVal bDisplayPostedValues,

  byVal listProfileSchema,

  byVal sSourcePage,

  byVal bDirty

)

Defined in File

services\include\edit_handlers.asp

Routines Called

htmRenderBlankEditPage

htmRenderEditPage

htmRenderMessageBoxForCancel

Called By

htmEditPageActionHandlers


htmCopyActionHandler

This function provides rendering for the "Copy" action handler.

Definition

Function htmCopyActionHandler(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byVal iProfileCount,

  byVal iStatusID,

  byVal sStatusField,

  byVal bValidPostedValues,

  byVal bDisplayPostedValues,

  byVal sProfileListPage,

  byVal listProfileSchema

)

Defined in File

services\include\edit_handlers.asp

Routines Called

htmRenderEditPage

ReDirectToPage

Called By

htmEditPageActionHandlers


htmDeleteActionHandler

This function provides rendering for the "Delete" action handler.

Definition

Function htmDeleteActionHandler(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byVal sProfileListPage,

  byVal iProfileCount

)

Defined in File

services\include\edit_handlers.asp

Routines Called

htmRenderMessageBoxForDelete

htmRenderMessageBoxForDeleteAll

ReDirectToPage

Called By

htmEditPageActionHandlers


htmEditAction

This function provides the "Edit" action handler. It supports single-edit, multi-edit, and SelectAll+Edit scenarios. Business logic to prepare for this display is in the PrepareEditAction sub.

Definition

Function htmEditAction(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byVal iProfileCount,

  byRef listProfileSchema

)

Defined in File

services\include\edit_handlers.asp

Routines Called

htmRenderEditPage

ReDirectToPage

sGetThisPageProperty

Called By

htmEditPageActionHandlers

Main (services\customer\account.asp)

Main (services\partner\account.asp)


htmEditAllProfiles

This function serves as a wrapper function for the htmRenderEditPage function, and renders the edit page contents.

Definition

Function htmEditAllProfiles(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byVal iStatusID,

  byVal sStatusField,

  byVal bValidPostedValues,

  byVal bDisplayPostedValues,

  byVal listProfileSchema

)

Defined in File

services\include\edit_handlers.asp

Routines Called

htmRenderEditPage

Called By

None.


htmEditPageActionHandlers

This function calls appropriate handlers for all the EDIT-type pages. It can be used for all the profiles.

Definition

Function htmEditPageActionHandlers(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs

)

Defined in File

services\partner\edit_user.asp

Routines Called

DeleteAllActionHandler

DeSelectAllActionHandler

GenerateURL

htmAddActionHandler

htmChangePasswordActionHandler

htmCloseActionHandler

htmCopyActionHandler

htmDeleteActionHandler

htmEditAction

htmSaveActionHandler

PrepareAddAction

PrepareCloseAction

PrepareCopyAction

PrepareDeleteAction

PrepareDeleteAllAction

PrepareDeselectAllAction

PrepareEditAction

PrepareSaveAction

PrepareSaveChangesConfirmation

PrepareSelectAllAction

SelectAllActionHandler

Called By

Main (services\partner\edit_user.asp)


htmInsertProfile

This function renders the edit page by calling the htmRenderEditPage function if the profile has been successfully inserted during the profile save operation that calls this function; otherwise, it renders the edit page by calling the htmRenderBlankEditPage function.

Definition

Function htmInsertProfile(

  byVal sAction,

  byVal sSubAction,

  byVal bInserted,

  byVal sProfileIDs,

  byVal sStatusField,

  byVal iStatusID,

  byVal bValidPostedValues,

  byVal bDisplayPostedValues,

  byVal listProfileSchema

)

Defined in File

services\include\edit_handlers.asp

Routines Called

htmRenderEditPage

Called By

htmSaveActionHandler


htmListPageActionHandlers

This function provides rendering for the "List" page action handler.

Definition

Function htmListPageActionHandlers(

  byRef sAction,

  byVal sSubAction,

  byVal sProfileIDs

)

Defined in File

services\partner\users.asp

Routines Called

GenerateURL

htmRenderProfilesList

InitializePagingVariables

SelectedActionHandlerForList

Called By

Main (services\partner\users.asp)


htmOrderDetailsActionHandler

This function provides rendering for the "Order details" action handler.

Definition

Function htmOrderDetailsActionHandler(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byVal iProfileCount

)

Defined in File

services\include\order_handlers.asp

Routines Called

htmRenderOrderDetailsForIDs

RedirectOrderDetailsForIDs

Called By

Main (services\customer\view_order.asp)

Main (services\partner\view_order.asp)


htmOrderListActionHandler

This function provides rendering for the "Order List" action handler.

Definition

Function htmOrderListActionHandler(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs

)

Defined in File

services\partner\orders.asp

Routines Called

htmRenderOrderList

InitializePagingVariables

Called By

Main (services\partner\orders.asp)


htmRenderAddress

This function renders an address.

Definition

Function htmRenderAddress(

  addr_dict

)

Defined in File

summary.asp

Routines Called

None.

Called By

htmRenderSummaryPage

Remarks

The source code also illustrates how to use an alternative address format, based on the site configuration default locale.


htmRenderAddressBook

This function renders the address book.

Definition

Function htmRenderAddressBook(

  byVal iAddrType,

  byRef rsAddresses,

  byVal sCheckedAddrID

)

Defined in File

addrbook.asp

Routines Called

GenerateURL

htmRenderAddressRows

RenderCheckBox

RenderForm

RenderSubmitButton

RenderText

Called By

htmRenderAddressBookPage


htmRenderAddressBookPage

This function renders the address book page.

Definition

Function htmRenderAddressBookPage(

  byVal iAddrType,

  rsAddresses,

  byVal sCheckedAddrID

)

Defined in File

addrbook.asp

Routines Called

GenerateURL

RenderLink

htmRenderAddressBook

RenderText

Called By

Main (addrbook.asp)


htmRenderAddressForm

This function renders the address form page.

Definition

Function htmRenderAddressForm(

  byRef dictFldVals,

  byRef dictFldErrs,

  byVal iAddrType,

  byVal sAction,

  byVal sAddrID

)

Defined in File

newaddr.asp

Routines Called

GenerateURL

htmRenderFillOutForm

RenderText

Called By

Main (newaddr.asp)


htmRenderAddressRows

This function renders the address rows on the address book page.

Definition

Function htmRenderAddressRows(

  byVal iAddrType,

  byVal rsAddresses,

  byVal sCheckedAddrID

)

Defined in File

addrbook.asp

Routines Called

GenerateURL

RenderLink

RenderRadioButton

RenderTable

RenderTableDataRow

RenderTableHeaderRow

RenderText

Called By

htmRenderAddressBook


htmRenderBasket

This function is called by the subroutine RenderBasketPage to construct the table (embedded within a form) that displays the current contents of the basket.

Definition

Function htmRenderBasket(

  mscsOrderGrp,

  oOrderFormDisplayOrder

)

Parameters

mscsOrderGrp

A reference to an OrderGroup object containing the basket contents to be displayed.

oOrderFormDisplayOrder

A reference to a SimpleList object that contains an alphabetically sorted list of keys corresponding to the OrderForm objects within the OrderGroup object. This allows the OrderForm objects to be processed in alphabetical order regardless of their relative positions with the OrderGroup object.

Return Value

A string containing the HTML representation of the contents of the basket, formatted as a table within a form.

Defined in File

basket.asp.

Routines Called

CreatePOIndexes

GenerateURL

htmRenderCurrency

RenderForm

RenderLink

RenderSubmitButton

RenderTable

RenderTableDataRow

RenderTableHeaderRow

RenderText

RenderTextBox

Called By

RenderBasketPage


htmRenderBasketWarnings

This function renders the basket warnings.

Definition

Function htmRenderBasketWarnings(

  mscsOrderGrp,

  oOrderFormDisplayOrder,

  sErrCollectionName

)

Defined in File

basket.asp

Routines Called

RenderText

Called By

RenderBasketPage


htmRenderBlankEditPage

This function renders a blank edit page for any profile.

Definition

Function htmRenderBlankEditPage(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byVal sStatusField,

  byVal iStatusID,

  byVal bValidPostedValues,

  byVal bDisplayPostedValues,

  byVal listProfileSchema

)

Defined in File

services\include\render_edit_blank.asp

Routines Called

formRenderBlankEditPageBody

GenerateURL

RenderForm

RenderTable

RenderText

rowRenderHeader

rowRenderStatusInfo

sGetPageHeading

Called By

htmAddActionHandler

htmCloseActionHandler

htmInsertProfile


htmRenderBlankSpaces

This function renders HTML blank spaces (&nbsp).

Definition

Function htmRenderBlankSpaces(

  byVal nSpaces

)

Defined in File

services\include\render_common.asp

Routines Called

None.

Called By

cellRenderReadOnlyProperty

rowRenderAdvancedSearchOptionsForOrders

rowRenderEditSheetBlankLine

rowRenderLineItemHeader

rowRenderListHeading

rowRenderListHeadingForOrders

rowRenderMessageBoxPageContents

rowRenderPropertyGroup

rowRenderPropertyTip

rowRenderSearchOptionForDate

rowRenderStatusInfo

sRenderHTMLPreFixForProperty

tableChangePasswordTasks

tableRenderEditPageTasks

tableRenderFooterInfo

tableRenderListPageTasks

tblRenderOrderDetailsContents


htmRenderBoolean

This function renders a check box corresponding to a Boolean property.

Definition

Function htmRenderBoolean(

  byVal sPropertyName,

  byVal varPropertyValue

)

Defined in File

services\include\render_common.asp

Routines Called

RenderCheckBox

Called By

colRenderProperty


htmRenderBuiltInProperties

This function constructs an HTML representation of the built-in product price property, formatted with a string retrieved from the global MessageManager object.

Definition

Function htmRenderBuiltInProperties(

  byVal rsProperties,

  byVal sPropertyName,

  byVal style

)

Parameters

rsProperties

A Recordset object containing the values of the properties of a product.

sPropertyName

A string containing the name of a built-in currency property, typically the product price. In the single instance where this function is called (in the file product.asp), the constant PRODUCT_PRICE_PROPERTY_NAME is passed as the value of this parameter.

style

A string containing a list of attributes to be associated with the text rendered within a FONT element. In the single instance where this function is called (in the file product.asp), the value of MSCSSiteStyle.Body is passed as the value of this parameter.

Return Value

A string containing the HTML representation of a built-in currency property value, presented in the format "S: X", where "S" is the language-specific string associated with "L_Product_Price_DisplayName_HTMLText" in the current language, and "X" is the HTML produced by the htmRenderCurrency function.

Defined in File

product.asp.

Routines Called

htmRenderCurrency

RenderText

Called By

Main (product.asp)

Remarks

The fact that this function renders the specified property value as a currency value and formatted with a display string designed for product prices means that it actually has a much narrower purpose than implied by its name and the presence of the sPropertyName parameter.


htmRenderCatalogList

This function creates a string that contains a series of links to different catalogs, separated by carriage returns.

Definition

Function htmRenderCatalogList(

  byVal rsCatalogs,

  byVal style

)

Parameters

rsCatalogs

A Recordset object that contains a number of catalog records. There must be a Fields entry corresponding to the constant "CATALOG_NAME_PROPERTY_NAME".

style

A set of attributes corresponding to the FONT element, used when creating the HTML representation of the catalog name.

Return Value

A string containing the HTML representation of a series of links to different catalogs, where the link text is the name of the catalog, and where each link is separated by a carriage return.

Defined in File

include\catalog.asp

Routines Called

RenderCatalogLink

Called By

htmRenderCatalogSection

htmRenderDefaultPage


htmRenderCatalogSection

This function creates the HTML representation of the catalog section of the menu, including an appropriate header, and an indication of no catalogs being available, a list of categories in a single catalog, or a list of multiple catalogs.

Definition

Function htmRenderCatalogSection(

  byVal style,

  byVal rsCatalogs,

  byVal iCatalogCount,

  byVal oCatalog,

  byVal sCatalogName,

  byVal rsCategories

)

Parameters

style

A set of attributes corresponding to the FONT element, used when creating the HTML representation of the catalog name.

rsCatalogs

A reference to a copy of a Recordset object that contains a number of catalog records. There must be a Fields entry corresponding to the constant "CATALOG_NAME_PROPERTY_NAME".

iCatalogCount

An integer that indicates the number of catalogs in the rsCatalogs parameter.

oCatalog

A reference to a copy of a ProductCatalog object.

sCatalogName

A string containing the name of a category.

rsCategories

A reference to a copy of a Recordset object that contains a number of category records/

Return Value

A string containing the HTML representation of the catalog section of the menu area. This string contains one of the following:

  • When no catalogs are found, a catalog header and a string indicating that no catalogs were found.

  • When more than one catalog is found, a catalog header and a list of links to the multiple catalogs.

  • When one catalog is found, a list of links to the categories in the single catalog.

Defined in File

template\menu.asp

Routines Called

htmRenderCatalogList

htmRenderCategoriesList

RenderText

Called By

htmRenderMenu

Remarks

This function depends on a preceding call to the PrepareCatalogSection function to establish its parameters.


htmRenderCategoriesList

This function creates the HTML representation of a list of links to the categories within the passed Recordset object.

Definition

Function htmRenderCategoriesList(

  byVal oCatalog,

  byVal rsCategories,

  byVal style

)

Parameters

oCatalog

A reference to a copy of a ProductCatalog object. Not used in this function.

rsCategories

A reference to a copy of a Recordset object that contains a number of category records. There must be Fields entries corresponding to the constants "CATALOG_NAME_PROPERTY_NAME" and "CATEGORY_NAME_PROPERTY_NAME".

style

A set of attributes corresponding to the FONT element, used when creating the HTML representation of the category name.

Return Value

A string containing the HTML representation of a list of links to the categories in the passed Recordset object, separated by carriage returns.

Defined in File

include\catalog.asp

Routines Called

RenderCategoryLink

Called By

htmRenderCatalogSection

htmRenderCategoryPage


htmRenderCategoryPage

This function renders a category page, which lists subcategories and products within a category.

Definition

Function htmRenderCategoryPage(

  byVal oCatalog,

  byVal sCatalogName,

  byVal sCategoryName,

  byVal oCategory,

  byVal rsProducts,

  byVal nPageNumber,

  byVal nOutPagesTotal

)

Parameters

oCatalog

A reference to a copy of a ProductCatalog object.

sCatalogName

A string containing the name of a catalog.

sCategoryName

A string containing the name of a category.

oCategory

A reference to a copy of a Category object.

rsProducts

A reference to a copy of a Recordset object that contains a number of product records corresponding to the current catalog and category. This parameter is passed through to the function htmRenderProductsTable.

nPageNumber

A number indicating the page to be displayed.

nOutPagesTotal

A number indicating the total number of pages available for display.

Return Value

A string containing the HTML representation of a category page, which consists of the following sections:

  • If there are more than one pages that can be displayed, a line of numbered links to different pages within the category.

  • If displaying the first page of category information, a list of links to sub-categories.

  • A list of associated products, as created by the function htmRenderProductsTable.

If there are no sub-categories or products, a string indicating that is displayed in place of the second two sections.

Defined in File

include\catalog.asp

Routines Called

FormatOutput

htmRenderCategoriesList

htmRenderProductsTable

mscsGetSubCategoriesList

RenderCategoryURL

RenderLink

RenderText

Called By

htmCategoryHTML

htmRenderDefaultPage


htmRenderChangePasswordPage

This function renders the change password page.

Definition

Function htmRenderChangePasswordPage(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byVal sStatusField,

  byVal iStatusID,

  byVal bValidPostedValues,

  byVal bDisplayPostedValues

)

Defined in File

services\include\render_password.asp

Routines Called

formRenderChangePasswordPageContents

GenerateURL

iGetCountOfProfiles

RenderForm

RenderTable

RenderText

rowRenderHeader

rowRenderStatusInfo

rsGetProfileDetails

sGetPageHeading

Called By

ChangeActionHandler

UpdatePasswordActionHandler


htmRenderCheckoutButton

This function renders the checkout button.

Definition

Function htmRenderCheckoutButton()

Defined in File

basket.asp

Routines Called

GenerateURL

RenderForm

RenderSubmitButton

Called By

RenderBasketPage


htmRenderConfirmationPage

This function, called by Main, renders the confirmation page.

Definition

Function htmRenderConfirmationPage(

  sOrderID,

  mscsOrderGrp,

  sOrderNumber

)

Defined in File

confirm.asp

Routines Called

FormatOutput

GenerateURL

RenderLink

RenderText

Called By

Main (confirm.asp)


htmRenderCountries

This function renders all the country names in an HTML combo box.

Definition

Function htmRenderCountries(

  byVal oProperty,

  byVal sPropertyValue,

  byVal arrCountryNames

)

Defined in File

services\include\render_common.asp

Routines Called

htmRenderSelectEndTag

htmRenderSelectTag

Called By

colRenderCountryNames


htmRenderCreditCardPage

This function renders the credit card page.

Definition

Function htmRenderCreditCardPage(

  byVal iOrderGroupID,

  byVal bSuccess,

  byVal listMethods,

  byVal listFrmErrs,

  byVal dictFldVals,

  byVal dictFldErrs,

  byVal sVerifyWithTotal,

  byVal urlAction,

  byVal iErrorLevel

)

Defined in File

crdtcard.asp

Routines Called

GenerateURL

htmRenderFillOutForm

htmRenderPaymentOptionsForUser

RenderText

Called By

Main (crdtcard.asp)


htmRenderCurrency

This function renders a monetary value, using the base currency setting. It will also render the monetary value and the alternate currency for the site (for example, the Euro) depending on the settings of the site.

Definition

Function htmRenderCurrency(

  byVal cyCurrency

)

Parameters

cyCurrency

The currency value to be represented in HTML.

Return Value

A string containing the HTML representation of the passed currency value. Depending on the App Default Config settings for the i_AltCurrencyOptions and i_CurrencyDisplayOrderOptions parameters, the currency is displayed as the base currency only, as the base currency followed by the alternate currency, or as the alternate currency followed by the alternate currency.

Defined in File

include\std_util_lib.asp

Routines Called

RenderText

Called By

arrPopulateOrderHeaderDetails

GetPriceAndCurrency

htmRenderBasket

htmRenderBuiltInProperties

htmRenderGrandTotals

htmRenderOrderForm

htmRenderShippingOptionsEx

htmRenderVariantsList

tblRenderOrderDetailsContents


htmRenderCustomerServiceSection

This function renders the HTML representation of the Customer Service section of the menu area.

Definition

Function htmRenderCustomerServiceSection(

  byVal style

)

Parameters

style

A set of attributes corresponding to the FONT element, used when creating the HTML representation of the link text for both user and order management.

Return Value

A string containing the HTML representation of the Customer Service entries in the menu area. These entries include a string indentifying the Customer Service section, and two links: one to the edit the user's profile, and one to list the user's orders.

Defined in File

template\menu.asp

Routines Called

GenerateURL

RenderLink

RenderText

Called By

htmRenderMenu


htmRenderDefaultPage

This function renders the HTML for the home page.

Definition

Function htmRenderDefaultPage(

  byVal CatalogSetID,

  byVal rsCatalogs,

  byVal iCatalogCount,

  byVal sCatalogName,

  byVal oCatalog,

  byVal oCategory,

  byVal rsProducts,

  byVal nPageNumber

)

Defined in File

default.asp

Routines Called

CacheFragment

htmRenderCatalogList

htmRenderCategoryPage

RenderText

Called By

Main (default.asp)


htmRenderDiscountMessageGroup

This function renders the discount messages on the basket.asp page.

Definition

Function htmRenderDiscountMessageGroup(

  mscsOrderGrp,

  sCiidCollection,

  sMessageGroupDescription

)

Defined in File

basket.asp

Routines Called

Bold

GetDictionary

GetDiscountDescription

RenderPreFormattedText

Called By

htmRenderDiscountMessages


htmRenderDiscountMessages

This function renders the discount messages and the discounts applied to the basket by calling the htmRenderDiscountMessageGroup and htmRenderDiscountsApplied functions.

Definition

Function htmRenderDiscountMessages(

  mscsOrderGrp

)

Defined in File

basket.asp

Routines Called

htmRenderDiscountMessageGroup

htmRenderDiscountsApplied

Called By

RenderBasketPage


htmRenderDiscountsApplied

This function renders the discounts applied to the basket.

Definition

htmRenderDiscountsApplied(

  mscsOrderGrp

)

Defined in File

basket.asp

Routines Called

Bold

GetDictionary

GetDiscountDescription

GetSimpleList

RenderPreFormattedText

Called By

htmRenderDiscountMessages


htmRenderDiscountsDescriptions

This function renders the discount descriptions on the summary.asp page.

Definition

Function htmRenderDiscountsDescriptions(

  mscsOrderGrp

)

Defined in File

summary.asp

Routines Called

Bold

GetDictionary

GetDiscountDescription

RenderPreFormattedText

Called By

htmRenderSummaryPage


htmRenderEditPage

This function renders the contents of any EDIT-type page.

Definition

Function htmRenderEditPage(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byVal sStatusField,

  byVal iStatusID,

  byVal bValidPostedValues,

  byVal bDisplayPostedValues,

  byVal ©

)

Defined in File

services\include\render_edit_common.asp

Routines Called

formRenderEditPageBody

GenerateURL

iGetCountOfProfiles

RenderForm

RenderTable

RenderText

rowRenderHeader

rowRenderStatusInfo

rsGetProfileDetails

sGetPageHeading

Called By

htmCloseActionHandler

htmCopyActionHandler

htmEditAction

htmEditAllProfiles

htmInsertProfile

htmSaveAllActionHandler

htmSaveChangesConfirmationHandler

htmSaveProfiles

htmSelectedActionHandlerForEdit


htmRenderEmptyRecordSet

This function renders the HTML table for an empty recordset.

Definition

Function htmRenderEmptyRecordSet(

  byRef sMsg

)

Defined in File

services\include\render_common.asp

Routines Called

RenderTable

TRTag

Called By

htmRenderOrderList

htmRenderProfilesList

tableRenderMultipleRecords

tableRenderOrdersListContents


htmRenderFillOutForm

This function prepares the HTML that renders the form specified by the sFormName parameter in the forms Dictionary object stored in the intrinsic Application object, which is under the name "MSCSForms".

Definition

Function htmRenderFillOutForm(

  byVal urlAction,

  byVal sFormName,

  dictFieldVals,

  dictMessages

)

Parameters

urlAction

A string containing the URL to which the form will be posted when it is submitted.

sFormName

A string containing the name of the form specification Dictionary object within the forms Dictionary object stored in the intrinsic Application object, which is under the name "MSCSForms".

dictFieldVals

A Dictionary object of the posted form values, if any. The dictionary keys are the field names, and the corresponding values are the posted form values. If this parameter is set to Nothing, a blank form is rendered. If values are provided, the form is rendered with one or more values filled in.

dictMessages

A Dictionary object containing error messages for each of the posted form values, if any. The dictionary keys are the field names, and the corresponding values are the error message strings. If a field name is found to be a key in this Dictionary object, the corresponding error message is rendered below the field that produced the error.

Return Value

A string containing the HTML that results in the rendering of the specified form.

Defined in File

include\form_lib.asp

Routines Called

CacheFragment

FormatOutput

GetRepeatStyle

LookupCachedFragment

RenderCheckBox

RenderForm

RenderHiddenField

RenderListBoxFromSimpleList

RenderPasswordBox

RenderResetButton

RenderSubmitButton

RenderTable

RenderTableDataRow

RenderText

RenderTextBox

Called By

htmRenderAddressForm

htmRenderCreditCardPage

htmRenderLoginPage

htmRenderNewUserPage

htmRenderPaymentOptionsPage

Main (addrform.asp)

Remarks

If the form is blank, this function attempts to retrieve it from the cache StaticSectionsCache using the value of the sFormName parameter as the cache key.

If this function has constructed the HTML for a blank form, the HTML string containing the form is stored in the cache StaticSectionsCache using the value of the sFormName parameter as the cache key.

For more conceptual information about forms processing, see Forms Processing.


htmRenderFullTextSearchResults

This function renders the results of a full text search.

Definition

Function htmRenderFullTextSearchResults(

  byRef sPhrase,

  byRef rsResultSet,

  sCacheKey,

  iRecordCount

)

Parameters

sPhrase

A string containing the free text string for which to search.

rsResultSet

A reference to a Recordset object containing the search results, passed through to the function RenderSearchResults.

sCacheKey

A string containing a key under which the constructed HTML will be cached in the FTSearchPageCache cache.

iRecordCount

An integer that specifies the number of search results found.

Return Value

A string containing the HTML representation of the search results title and search results content.

Defined in File

search.asp

Routines Called

CacheFragment

RenderSearchResults

RenderText

Called By

Main (search.asp)


htmRenderGrandTotals

This function renders the grand total of the order.

Definition

Function htmRenderGrandTotals(

  mscsOrderGrp

)

Defined in File

summary.asp

Routines Called

htmRenderCurrency

RenderTableDataRow

Called By

htmRenderSummaryPage


htmRenderLoginPage

This function renders the login page.

Definition

Function htmRenderLoginPage(

  bSuccess,

  bMustTransferBasket,

  bDisplayGuestOption,

  bDisplayNewUserRegistrationOption,

  sUserID,

  iErrorLevel,

  rsLoginUser,

  mscsGuestUser,

  dictFldVals,

  dictFldErrs,

  listFlds,

  listFrmErrs,

  urlAction

)

Defined in File

login\login.asp

Routines Called

GenerateURL

htmRenderFillOutForm

RenderLink

RenderText

Called By

Main (login\login.asp)


htmRenderLoginSection

This function renders the login section of the menu.asp page.

Definition

Function htmRenderLoginSection(

  byVal sAuthUser,

  byVal bFormLoginSupported,

  byVal mscsUser,

  byVal sLoginName

)

Parameters

sAuthUser

A string containing the login name of the authorized user, passed through to the function RenderText.

bFormLoginSupported

A Boolean value indicating whether login is supported.

mscsUser

A reference to a User object.

sLoginName

A string containing the login name of the user, passed through to the function RenderText.

Return Value

A string containing the HTML representation of the login section of the menu.asp page.

Defined in File

template\menu.asp

Routines Called

CacheFragment

GenerateURL

LookupCachedFragment

RenderLink

RenderText

Called By

htmRenderMenu


htmRenderLogoffPage

This function renders the logoff page.

Definition

Function htmRenderLogoffPage(

  byVal bReEnterWithFormLogin,

  byVal bReEnterAsGuestOption

)

Defined in File

login\logoff.asp

Routines Called

RenderLink

RenderText

Called By

Main (login\logoff.asp)


htmRenderMenu

This function renders the HTML for a menu, and contains calls to business logic functions as necessary.

Definition

Function htmRenderMenu(

  byVal mscsUser,

  byVal CatalogSetID

)

Parameters

mscsUser

A reference to a User object, passed through to the functions PrepareLoginSection and htmRenderLoginSection.

CatalogSetID

The ID of the catalog set, passed through to the functions CacheFragment and LookupCachedFragment.

Return Value

A string containing the HTML representation of the menu.

Defined in File

template\menu.asp

Routines Called

CacheFragment

GetQualifiedName

GetRequestString

htmRenderCatalogSection

htmRenderCustomerServiceSection

htmRenderLoginSection

htmRenderPartnerServiceSection

htmRenderSearchSection

LookupCachedFragment

PrepareCatalogSection

PrepareLoginSection

RenderTable

Called By

This routine is called by code outside of any routine (sub or function) in the file template\menu.asp.


htmRenderMessageBoxForCancel

This function renders the message box page for a cancel action.

Definition

Function htmRenderMessageBoxForCancel(

  byVal sAction,

  byVal sProfileIDs

)

Defined in File

services\include\render_messagebox.asp

Routines Called

GenerateURL

GetRequestString

tableRenderMessageBoxPage

Called By

htmCloseActionHandler


htmRenderMessageBoxForDelete

This function renders the message box page while deleting entity records.

Definition

Function htmRenderMessageBoxForDelete

Defined in File

services\include\render_messagebox.asp

Routines Called

GenerateURL

tableRenderMessageBoxPage

Called By

htmDeleteActionHandler


htmRenderMessageBoxForDeleteAll

This function renders the message box page for a "DeleteAll" action.

Definition

Function htmRenderMessageBoxForDeleteAll

Parameters

None.

Defined in File

services\include\render_messagebox.asp

Routines Called

GenerateURL

tableRenderMessageBoxPage

Called By

htmDeleteActionHandler


htmRenderMessageBoxForSave

This function renders the message box page with save options.

Definition

Function htmRenderMessageBoxForSave(

  byVal sAction,

  byVal sProfileIDs

)

Defined in File

services\include\render_messagebox.asp

Routines Called

GenerateURL

GetRequestString

tableRenderMessageBoxPage

Called By

None.


htmRenderMessageBoxForSelect

This function renders the message box page for a "Select" action.

Definition

Function htmRenderMessageBoxForSelect(

  byVal sAction,

  byVal sSelectFieldName,

  byVal sProfileIDs

)

Defined in File

services\include\render_messagebox.asp

Routines Called

GenerateURL

GetRequestString

tableRenderMessageBoxPage

Called By

htmRenderMessageBoxPage


htmRenderMessageBoxPage

This function renders the message box page.

Definition

Function htmRenderMessageBoxPage(

  byVal sAction,

  byVal sSubAction,

  byVal sActionPage,

  byVal sProfileIDs

)

Defined in File

services\include\render_messagebox.asp

Routines Called

bProfileHasChanged

htmRenderMessageBoxForSelect

iGetCountOfProfiles

sGetSelectActionPropertyName

Called By

htmSaveChangesConfirmationHandler


htmRenderNewUserPage

This function renders the new user page.

Definition

Function htmRenderNewUserPage(

  urlAction,

  dictFldVals,

  dictFldErrs,

  sLanguage

)

Defined in File

login\newuser.asp

Routines Called

htmRenderFillOutForm

RenderText

Called By

Main (login\newuser.asp)


htmRenderOrderDateTypes

This function renders the order date type for both user and organization orders.

Definition

Function htmRenderOrderDateTypes(

  byVal sFieldValue

)

Defined in File

services\include\render_common.asp

Routines Called

htmRenderSelectEndTag

htmRenderSelectTag

Called By

rowRenderSearchOptionForInteger


htmRenderOrderDetails

This function renders the order details.

Definition

Function htmRenderOrderDetails(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byVal rsOrder

)

Defined in File

services\include\render_orders.asp

Routines Called

formRenderOrderContents

GenerateURL

RenderForm

RenderTable

RenderText

rowRenderHeader

sGetPageHeading

Called By

htmRenderOrderDetailsForIDs


htmRenderOrderDetailsForIDs

This function redirects the user back to the order list page, because multiple orders cannot be viewed at once.

Definition

Function htmRenderOrderDetailsForIDs(

  sAction,

  sSubAction,

  sProfileIDs

)

Defined in File

services\include\order_handlers.asp

Routines Called

htmRenderOrderDetails

rsGetOrderDetails

Called By

htmOrderDetailsActionHandler


htmRenderOrderForm

This function renders the order form.

Definition

Function htmRenderOrderForm(

  mscsOrderForm

)

Defined in File

summary.asp

Routines Called

GenerateURL

GetArrayFromList

htmRenderCurrency

RenderLink

RenderTable

RenderTableDataRow

RenderTableHeaderRow

RenderText

RenderUnorderedList

Called By

htmRenderSummaryPage


htmRenderOrderList

This function renders the order list.

Definition

Function htmRenderOrderList(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byRef iPageNumber,

  byRef iTotalRecords,

  byRef iTotalPages

)

Defined in File

services\include\render_orders.asp

Routines Called

formRenderOrderSearchOptions

formRenderOrdersListContents

GenerateURL

htmRenderEmptyRecordSet

PrepareOrderList

RenderForm

RenderTable

RenderText

rowRenderHeader

rowRenderStatusInfo

sGetPageHeading

tableRenderFooterInfo

Called By

htmOrderListActionHandler

Main (services\customer\orders.asp)


htmRenderOrderStatusOptions

This function renders the order status options.

Definition

Function htmRenderOrderStatusOptions(

  byVal sFieldValue

)

Defined in File

services\include\render_common.asp

Routines Called

htmRenderSelectEndTag

htmRenderSelectTag

Called By

rowRenderSearchOptionForInteger


htmRenderPartnerDeskRoles

This function renders the user i_PartnerDeskRoleFlags options.

Definition

Function htmRenderPartnerDeskRoles(

  byVal sFieldValue,

  byVal bIsRequired

)

Defined in File

services\include\render_common.asp

Routines Called

htmRenderSelectEndTag

htmRenderSelectTag

Called By

colRenderProperty

rowRenderSearchOptionForInteger


htmRenderPartnerServiceSection

This function renders the Partner Service section.

Definition

Function htmRenderPartnerServiceSection(

  byVal style

)

Parameters

style

A set of attributes corresponding to the FONT element, passed through to the fuction RenderText.

Return Value

A string containing the HTML representation of the Partner Services section of the menu.asp page.

Defined in File

template\menu.asp

Routines Called

GenerateURL

RenderLink

RenderText

Called By

htmRenderMenu


htmRenderPaymentOptionsForUser

This function renders the payment options for the user.

Definition

Function htmRenderPaymentOptionsForUser(

  listMethods,

  byVal sVerifyWithTotal

)

Defined in File

include\payment.asp

Routines Called

FormatOutput

GenerateURL

GetPaymentMethodDisplayName

GetSimpleList

RenderForm

RenderHiddenField

RenderListBoxFromSimpleList

RenderSubmitButton

RenderText

Called By

htmRenderCreditCardPage

htmRenderPaymentOptionsPage


htmRenderPaymentOptionsPage

This function renders the payment options page.

Definition

Function htmRenderPaymentOptionsPage(

  iPaymentMethodsCount,

  urlAction,

  dictFldVals,

  dictFldErrs

)

Defined in File

po.asp

Routines Called

htmRenderFillOutForm

htmRenderPaymentOptionsForUser

RenderText

Called By

Main (po.asp)


htmRenderPickshipForm

This function renders the page for selecting the shipment method.

Definition

Function htmRenderPickshipForm(

  byVal mscsOrderGrp,

  byVal objContext,

  byVal dictAggregate,

  bNoMethodsAvailable

)

Defined in File

pickship.asp

Routines Called

GenerateURL

htmRenderShippingOptionsEx

RenderForm

RenderLink

RenderSubmitButton

RenderText

Called By

Main (pickship.asp)


htmRenderPredictions

This function renders predictions.

Definition

Function htmRenderPredictions(

  mscsOrderGrp,

  oOrderFormDisplayOrder

)

Parameters

mscsOrderGrp

A reference to an OrderGroup object containing the basket contents.

oOrderFormDisplayOrder

A reference to a SimpleList object that contains an alphabetically sorted list of keys corresponding to the OrderForm objects within the OrderGroup object. This allows the OrderForm objects to be processed in alphabetical order regardless of their relative positions with the OrderGroup object.

Return Value

A string containing the HTML representation of the predictions.

Defined in File

basket.asp

Routines Called

GetDictionary

GetSimpleList

PredictedPropToHREF

Called By

RenderBasketPage


htmRenderProductsTable

This function renders a Recordset object containing products in a table format. The table has the following four columns: identifying property (for example SKU), name, description, and price. If the identifying property and name are the same, only three columns are shown.

Definition

Function htmRenderProductsTable(

  byVal oCatalog,

  byVal rsProducts,

  byVal sCategoryName

)

Parameters

oCatalog

A reference to a ProductCatalog object.

rsProducts

A reference to a Recordset object containing products to be represented in HTML, passed through to the function rsPriceAndCurrency.

sCategoryName

A string containing the name of a category, passed through to RenderProductLink.

Return Value

A string containing the HTML representation of the products in a table format.

Defined in File

include\catalog.asp

Routines Called

GetPriceAndCurrency

RenderProductLink

RenderTable

RenderTableDataRow

RenderTableHeaderRow

Called By

htmRenderCategoryPage


htmRenderProfilesList

This function renders the contents for any LIST-type page.

Definition

Function htmRenderProfilesList(

  byRef sAction,

  byVal sSubAction,

  byRef iPageNumber,

  byRef iTotalPages

)

Defined in File

services\include\render_list.asp

Routines Called

formRenderListPageContents

formRenderProfileSearchOptions

GenerateURL

GetSearchDictionaryForThisPage

htmRenderEmptyRecordSet

RenderForm

RenderTable

RenderText

rowRenderHeader

rowRenderStatusInfo

rsGetProfilesList

sGetPageHeading

tableRenderFooterInfo

Called By

htmListPageActionHandlers


htmRenderSearchDeptPageContent

This function renders the content from the array generated by the arrSearchDept function.

Definition

Function htmRenderSearchDeptPageContent(

  arrData,

  sItemSeparator

)

Parameters

arrData

An array that contains the items.

sItemSeparator

A separator string that separates the catalog name from the category name in every element of the arrData parameter.

Return Value

A string containing the HTML representation of the content in the array generated by the arrSearchDept function.

Defined in File

srchdept.asp

Routines Called

GenerateURL

RenderLink

RenderText

Called By

Main (srchdept.asp)


htmRenderSearchSection

This function renders the search section on the navigation pane.

Definition

Function htmRenderSearchSection(

  byVal dictSectionTitleStyle,

  byVal dictSectionBodyStyle,

  sSearchValue

)

Parameters

dictSectionTitleStyle

A dictionary variable that defines the font style of the title for the search section, passed through to the function RenderText

dictSectionBodyStyle

A dictionary variable that defines the font style of the body text in the search section.

sSearchValue

A string containing the search value, passed through to the function RenderTextBox.

Return Value

A string containing the HTML representation search section on the navigation pane.

Defined in File

template\menu.asp

Routines Called

GenerateURL

RenderForm

RenderLink

RenderSubmitButton

RenderText

RenderTextBox

Called By

htmRenderMenu


htmRenderSelectEndTag

This function renders the HTML end select tag, </SELECT>.

Definition

Function htmRenderSelectEndTag

Defined in File

services\include\render_common.asp

Routines Called

None.

Called By

htmRenderCountries

htmRenderOrderDateTypes

htmRenderOrderStatusOptions

htmRenderPartnerDeskRoles

htmRenderSiteTerm

htmRenderUserStatusOptions


htmRenderSelectTag

This function renders the select tag.

Definition

Function htmRenderSelectTag(

  byVal sSelectName

)

Defined in File

services\include\render_common.asp

Routines Called

None.

Called By

htmRenderCountries

htmRenderOrderDateTypes

htmRenderOrderStatusOptions

htmRenderPartnerDeskRoles

htmRenderSiteTerm

htmRenderUserStatusOptions


htmRenderShippingMethods

This function renders the shipping methods.

Definition

Function htmRenderShippingMethods(

  mscsOrderGrp,

  rs

)

Defined in File

pickship.asp

Routines Called

GenerateURL

RenderForm

RenderLink

RenderRadioButton

RenderSubmitButton

RenderTable

RenderTableDataRow

RenderTableHeaderRow

RenderText

Called By

Main (pickship.asp)


htmRenderShippingOptionsEx

This function renders the shipping options, along with a preview of the cost for each shipping method.

Definition

Function htmRenderShippingOptionsEx(

  byVal mscsOrderGrp,

  byVal dictAggregate

)

Defined in File

pickship.asp

Routines Called

htmRenderCurrency

RenderRadioButton

RenderTable

RenderTableDataRow

RenderTableHeaderRow

sGetDefaultShippingMethod

Called By

htmRenderPickshipForm


htmRenderSiteTerm

This function renders a list box corresponding to a SiteTerm property.

Definition

Function htmRenderSiteTerm(

  byVal oProperty,

  byVal varPropertyValue

)

Defined in File

services\include\render_common.asp

Routines Called

htmRenderSelectEndTag

htmRenderSelectTag

Called By

colRenderProperty


htmRenderStepSearchPageContent

This function renders the results of a step search.

Definition

Function htmRenderStepSearchPageContent (

  sCategoryName,

  sCatalogName,

  byRef oCatalog,

  bViewResults,

  byRef rsFields,

  byRef rsResults,

  sSearchHandle,

  iMatchesFound,

  iConstraintFieldsCount,

  iNonConstraintFieldsCount,

  arr1,

  arr2,

  bNoValues,

  bClosestMatches

)

Parameters

sCategoryName

A string containing the category name, passed through to the functions RenderText and ShowRefinedSearch.

sCatalogName

A string containing the catalog name, passed through to the function ShowRefinedSearch.

oCatalog

A reference to a ProductCatalog object, passed through to the function ShowSearchMatches.

bViewResults

A Boolean indicating whether to view the search matches (True) or the refined search (False).

rsFields

A reference to a Recordset object containing the searchable fields, passed through to the function ShowRefinedSearch.

rsResults

A reference to a Recordset object containing the search results, passed through to the function ShowSearchMatches.

sSearchHandle

A string containing the search handle.

iMatchesFound

An integer that specifies the number of matches found, passed through to the functions ShowRefinedSearch and ShowSearchMatches.

iConstraintFieldsCount

An integer that specifies the number of constraint fields, passed through to the function ShowRefinedSearch.

iNonConstraintFieldsCount

An integer that specifies the number of non-constraint fields, passed through to the function ShowRefinedSearch.

arr1

An array of non-constraining searchable properties, passed through to the function ShowRefinedSearch.

arr2

An array of constraining searchable properties, passed through to the function ShowRefinedSearch.

bNoValues

A boolean indicating whether there are no values, passed through to the function ShowRefinedSearch.

bClosestMatches

A boolean indicating whether to search for closest matches.

Return Value

A string containing the HTML representation of the step search.

Defined in File

stepsrch.asp

Routines Called

RenderText

ShowRefinedSearch

ShowSearchMatches

Called By

Main (stepsrch.asp)


htmRenderSummaryPage

This function renders the summary.asp page.

Definition

Function htmRenderSummaryPage(

  mscsOrderGrp,

  mscsAnyOrderform,

  dictAnyItem,

  listMethods,

  bBadVerify

)

Defined in File

summary.asp

Routines Called

htmRenderAddress

htmRenderDiscountsDescriptions

htmRenderGrandTotals

htmRenderOrderForm

htmRenderVerifyWithForm

RenderTable

RenderTableDataRow

RenderTableHeaderRow

RenderText

SortDictionaryKeys

Called By

Main (summary.asp)


htmRenderUniqueIDForProfile

This function adds a globally unique profile identifier to the LIST page.

Definition

Function htmRenderUniqueIDForProfile(

  byVal sAction,

  byVal sSubAction,

  byVal oProperty,

  byVal Count,

  byVal rsProfile

)

Defined in File

services\include\render_list.asp

Routines Called

RenderCheckBox

RenderHiddenField

RenderRadioButton

Called By

arrPopulateProfileDetails


htmRenderUserDefinedProductProperties

This function renders the user-defined properties of the product. Certain properties are treated specially, such as IMAGE_FILENAME_PROPERTY_NAME.

Definition

Function htmRenderUserDefinedProductProperties(

  byVal rsProperties,

  byVal style

)

Parameters

rsProperties

A Recordset object containing the values of the properties of a product.

style

A set of attributes corresponding to the FONT element.

Return Value

A string containing the HTML representation of the user-defined properties of the product.

Defined in File

product.asp

Routines Called

FormatOutput

PeekField

RenderImage

RenderText

sGetPropertyDisplayName

Called By

Main (product.asp)


htmRenderUserStatusOptions

This function renders the user status options.

Definition

Function htmRenderUserStatusOptions(

  byVal sFieldValue,

  byVal bIsRequired

)

Defined in File

services\include\render_common.asp

Routines Called

htmRenderSelectEndTag

htmRenderSelectTag

Called By

colRenderProperty

rowRenderSearchOptionForInteger


htmRenderVariantsList

This function renders all variants of the given product with a radio button in front of the product so the user can select which product variant they want to purchase.

Definition

Function htmRenderVariantsList(

  byVal sIdentifyingVariantProperty,

  byVal rsVariants,

  byVal sSelectedVariantID

)

Parameters

sIdentifyingVariantProperty

A string containing the variant name, passed through to the function RenderRadioButton.

rsVariants

A reference to a Recordset object containing the variants for the given product, passed through to the function listGetVariantPropertiesToShow.

sSelectedVariantID

A string containing the variant ID.

Return Value

A string containing the HTML representation of all the variants of the given product.

Defined in File

product.asp

Routines Called

htmRenderCurrency

listGetVariantPropertiesToShow

RenderRadioButton

RenderTable

RenderTableDataRow

RenderTableHeaderRow

sGetPropertyDisplayName

Called By

Main (product.asp)


htmRenderVerifyWithForm

This function renders a hidden field containing the "verify_with_total" value. To verify that an order has not been altered between the time it was last shown to the user and the time the user completes the purchase, the order total shown to the user is stored in a hidden field; during the purchase, this value is verified to determine whether it matches the order total recalculated after running the total pipeline. If there is a discrepancy, the user is redirected to the order summary with an error.

Definition

Function htmRenderVerifyWithForm(

  mscsOrderGrp,

  listMethods

)

Defined in File

summary.asp

Routines Called

GenerateURL

GetDefaultPaymentMethodForUser

GetPaymentPageFromPaymentMethod

IsEntityInList

RenderForm

RenderHiddenField

RenderSubmitButton

Called By

htmRenderSummaryPage


htmSaveActionHandler

This function checks if the user is saving profiles returned by the search criteria in the corresponding list page, then calls an appropriate handler to handle the following cases: SELECTALL_ACTION; ADD_ACTION; COPY_ACTION; EDIT_ACTION.

Definition

Function htmSaveActionHandler(

  byRef sAction,

  byVal sSubAction,

  byRef sProfileIDs

)

Defined in File

services\include\edit_handlers.asp

Routines Called

htmInsertProfile

htmSaveAllActionHandler

htmSaveProfiles

PrepareInsertProfile

PrepareSaveAllAction

PrepareSaveProfiles

Called By

htmEditPageActionHandlers

Main (services\customer\account.asp)

Main (services\partner\account.asp)


htmSaveAllActionHandler

This function renders the "Save All" action output.

Definition

Function htmSaveAllActionHandler(

  byVal sAction,

  byRef sSubAction,

  byRef sProfileIDs,

  byVal StatusField,

  byVal iStatusID,

  byVal bValidPostedValues,

  byVal bDisplayPostedValues,

  byVal listProfileSchema

)

Defined in File

services\include\edit_handlers.asp

Routines Called

htmRenderEditPage

Called By

htmSaveActionHandler


htmSaveChangesConfirmationHandler

This function renders the "Save Changes Confirmation" action.

Definition

Function htmSaveChangesConfirmationHandler(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byVal sActionPage,

  byRef sPreviousAction,

  byRef listProfileSchema,

  byRef bValidPostedValues,

  byRef bDisplayPostedValues

)

Defined in File

services\include\messagebox_handlers.asp

Routines Called

bSaveProfileAndRedirect

htmRenderEditPage

htmRenderMessageBoxPage

Called By

htmChangePasswordActionHandler

htmSelectActionHandlerForEdit


htmSaveProfiles

This function renders the "Save Profiles" action output.

Definition

Function htmSaveProfiles(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byVal bUpdated,

  byVal sSourcePage,

  byVal sStatusField,

  byVal iStatusID,

  byVal bValidPostedValues,

  byVal bDisplayPostedValues,

  byVal listProfileSchema

)

Defined in File

services\include\edit_handlers.asp

Routines Called

htmRenderEditPage

Called By

htmSaveActionHandler


htmSelectActionHandlerForEdit

This function renders the "Select" action.

Definition

Function htmSelectActionHandlerForEdit(

  byRef sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byVal sActionPage,

  byVal sPreviousAction,

  byVal listProfileSchema,

  byVal bValidPostedValues,

  byVal bDisplayPostedValues

)

Defined in File

services\include\edit_handlers.asp

Routines Called

htmSaveChangesConfirmationHandler

Called By

Main (services\partner\account.asp)


htmSelectedActionHandlerForEdit

This function renders the "Selected" action.

Definition

Function htmSelectedActionHandlerForEdit(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byVal sStatusField,

  byVal iStatusID,

  byVal bValidPostedValues,

  byVal bDisplayPostedValues,

  byVal listProfileSchema

)

Defined in File

services\include\edit_handlers.asp

Routines Called

htmRenderEditPage

Called By

Main (services\partner\account.asp)


I - O

This section contains topics for the following routines, beginning with the letters I through O.

Routine | File
iGetCountOfProfiles | services\include\lib.asp
iGetCurrentUserPropertyAccessClass | services\include\lib.asp
iGetWebServerPort | include\global_siteconfig_lib.asp
InitAltCurrencyDisp | include\global_internationalization_lib.asp
InitAuthManager | include\global_profile_lib.asp
InitCacheManager | include\global_cache_lib.asp
InitCatalogManager | include\global_catalog_lib.asp
InitCatalogSets | include\global_catalog_lib.asp
InitCSF | include\global_csf_lib.asp
InitDataFunctions | include\global_data_lib.asp
InitializeBasketPage | basket.asp
InitializeConfirmationPage | confirm.asp
InitializeCreditcardPage | crdtcard.asp
InitializePagingVariables | services\include\lib.asp
InitializePartnerDesk | services\include\initialize.asp
InitializePO | po.asp
InitializeSummaryPage | summary.asp
InitPageSets | include\global_siteconfig_lib.asp
InitPredictor | include\global_predictor_lib.asp
InitProfileService | include\global_profile_lib.asp
InitSitePipelines | include\global_siteconfig_lib.asp
InsertBlankSpace | include\html_lib.asp
InsertHiddenProperty | services\include\save_one_profile.asp
InsertLineBreaks | include\html_lib.asp
InsertParagraphBreaks | include\html_lib.asp
InvokeBizTalk | include\payment.asp
IsActiveDirectoryPresent | include\global_siteconfig_lib.asp
IsBitValueSet | include\std_util_lib.asp
IsEntityInArray | include\std_util_lib.asp
IsEntityInList | include\std_util_lib.asp
IsEntityInSet | include\std_util_lib.asp
IsFormLoginRequired | include\std_access_lib.asp
IsFormSubmitted | include\form_lib.asp
IsNumberInRange | include\std_util_lib.asp
IsPersistentCookieAllowed | include\std_access_lib.asp
IsZipCodeValid | include\addr_lib.asp
Italic | include\html_lib.asp
iValidateSubmittedAddress | addrform.asp
iValidateSubmittedAddressForAddressBook | newaddr.asp
iValidateSubmittedRegistrationData | login\newuser.asp
JoinWebFarm | include\global_siteconfig_lib.asp
listCloneProfileSchema | services\include\lib.asp
listGetProfileSchema | include\global_profile_lib.asp
listGetShownProductsInfo | template\discount.asp
listGetValidPropertiesForMultiEdit | services\include\lib.asp
listGetVariantPropertiesToShow | product.asp
listReConstructPropertiesSchema | services\include\lib.asp
LoadBasket | include\std_ordergrp_lib.asp
LookupCachedFragment | include\std_cache_lib.asp
LookupCachedObject | include\std_cache_lib.asp
LookupRegion | include\addr_lib.asp
Main | _additem.asp
Main | _delall.asp
Main | _delitem.asp
Main | _editqty.asp
Main | _recvpo.asp
Main | _setadrs.asp
Main | _setship.asp
Main | addrbook.asp
Main | addrform.asp
Main | basket.asp
Main | category.asp
Main | confirm.asp
Main | crdtcard.asp
Main | default.asp
Main | dispatch.asp
Main | newaddr.asp
Main | opt-out.asp
Main | pickship.asp
Main | po.asp
Main | product.asp
Main | redir.asp
Main | search.asp
Main | srchdept.asp
Main | stepsrch.asp
Main | summary.asp
Main | welcome.asp
Main | error\baditem.asp
Main | error\badurl.asp
Main | error\closed.asp
Main | error\construc.asp
Main | error\noauth.asp
Main | error\profile.asp
Main | include\global_main_lib.asp
Main | login\_guest.asp
Main | login\login.asp
Main | login\logoff.asp
Main | login\newuser.asp
Main | services\change_password.asp
Main | services\customer\account.asp
Main | services\customer\orders.asp
Main | services\customer\view_order.asp
Main | services\error\badaction.asp
Main | services\error\noaccess.asp
Main | services\error\noorder.asp
Main | services\error\noorgprofile.asp
Main | services\error\noprofile.asp
Main | services\partner\account.asp
Main | services\partner\edit_user.asp
Main | services\partner\orders.asp
Main | services\partner\users.asp
Main | services\partner\view_order.asp
MoveBasketItems | login\login.asp
mscsGetCategoryObject | include\catalog.asp
mscsGetOrderGroupWithDiscountsByID | services\include\logic_orders.asp
mscsGetProductList | include\catalog.asp
mscsGetSubCategoriesList | include\catalog.asp
mscsNewRegisteredUserProfile | login\newuser.asp
mscsTransferGuestUserProfile | login\newuser.asp
mscsUserCatalogs | include\catalog.asp
mscsUserCatalogsetID | include\catalog.asp
mscsUserCatalogsFromID | include\catalog.asp
oCachedDiscountProductInfo | template\discount.asp
oGetBizDataObject | include\global_data_lib.asp
oGetGenIDObject | include\global_data_lib.asp
oGetOpenConnectionObject | include\global_profile_lib.asp
oGetProfile | include\global_profile_lib.asp
oGetSiteTermOptions | include\global_siteterms_lib.asp
OptOut | opt-out.asp
OrderListActionHandler | services\customer\orders.asp


iGetCountOfProfiles

This function returns –1 if the sSubAction parameter is equal to the constant SELECTALL_ACTION. Otherwise, it returns the number of profiles in the string specified by the sProfileIDs parameter.

Definition

Function iGetCountOfProfiles(

  byVal sSubAction,

  byVal sProfileIDs

)

Defined in File

services\include\lib.asp

Routines Called

None.

Called By

bSaveProfileAndRedirect

bSaveProfileDetails

bSaveReadWriteProperty

CheckIfOrderExists

CheckIfProfilesExist

colRenderForeignKeyProperty

colRenderPrimaryKeyProperty

colRenderUniqueKeyProperty

DeleteSelectedProfiles

htmRenderChangePasswordPage

htmRenderEditPage

htmRenderMessageBoxPage

PrepareCloseAction

PrepareCopyAction

PrepareDeleteAction

PrepareEditAction

PrepareOrderDetailsAction

PrepareSaveProfiles

rowRenderHiddenProperty

rowRenderReadOnlyProperty

SaveReadOnlyProperty

SaveUserAccountControlProperty

SaveUserPartnerDeskRoleProperty

SelectedActionHandlerForList

sRenderHTMLPreFixForProperty

tableChangePasswordTasks

tableRenderEditPageTasks

tableRenderProfiles

UpdateSelectActionPropertyName

UpdateUserPasswordProperty

varUpdateValueForCurrentAction


iGetCurrentUserPropertyAccessClass

This function is used in Partner Services to determine whether the current user is a guest, a registered user, or a delegated administrator.

Definition

Function iGetCurrentUserPropertyAccessClass()

Defined in File

services\include\lib.asp

Routines Called

EnsureUserProfile

Called By

bInsertProperty

bIsPropertyValueAdded

bProfileHasChanged

bSaveProfileDetails

listGetValidPropertiesForMultiEdit

listReConstructPropertiesSchema

SaveAllSelectedProfiles

tableRenderBlankProfile

tableRenderProfiles

ValidateFields


iGetWebServerPort

This function returns the Web server port number being used for the site. For Web farms, it is assumed that the sites on all servers are using the same port number.

Definition

Function iGetWebServerPort()

Defined in File

include\global_siteconfig_lib.asp

Routines Called

GetSiteConfigObject

Called By

GetMachineBaseURL


InitAltCurrencyDisp

This function creates, initializes, and returns a EuroDisplay object. This enables the display of the Euro as an alternate currency.

Definition

InitAltCurrencyDisp()

Defined in File

include\global_internationalization_lib.asp

Routines Called

None.

Called By

Main (include\global_main_lib.asp)


InitAuthManager

This function creates an AuthManager object and returns a reference to it.

Definition

Function InitAuthManager()

Defined in File

include\global_profile_lib.asp

Routines Called

None.

Called By

Main (include\global_main_lib.asp)


InitCacheManager

This function creates, initializes, and returns a CacheManager object. For more information about the individual caches created, see Remarks.

Definition

Function InitCacheManager(

  oEvaluator

)

Defined in File

include\global_cache_lib.asp

Routines Called

GetDictionary

GetMachineBaseURL

Called By

Main (include\global_main_lib.asp)

Remarks

Individual caches are created with the following names:

advertising

DefaultPageCache

DiscountProductInfo

discounts

FTSearchPageCache

ProductListCache

ProductPageCache

QueryCatalogInfoCache

SampleRegionalTaxCache

SearchDeptPageCache

ShippingManagerCache

StaticSectionsCache

StepSearchPageCache

For more information about caching in the Solution Sites, see Caching.


InitCatalogManager

This function creates, initializes, and returns a CatalogManager object.

Definition

Function InitCatalogManager()

Defined in File

include\global_catalog_lib.asp

Routines Called

None.

Called By

Main (include\global_main_lib.asp)


InitCatalogSets

This function creates and initializes a CatalogSets object. Then it creates, initializes, and returns a reference to a Dictionary object of Dictionary objects, where each subordinate dictionary represents a CatalogSets object, and each entry in the subordinate dictionaries represents a catalog in the corresponding CatalogSets object.

Definition

Function InitCatalogSets()

Defined in File

include\global_catalog_lib.asp

Routines Called

None.

Called By

Main (include\global_main_lib.asp)


InitCSF

This sub creates and initializes the global context Dictionary objects and the event recording pipeline for the Content Selection Framework (CSF).

Definition

Sub InitCSF(

  oPipelineMap,

  oCacheManager,

  oExpressionEvaluator

)

Defined in File

include\global_csf_lib.asp

Routines Called

GetBaseURL

Called By

Main (include\global_main_lib.asp)

Remarks

The following three entries are assigned to the intrinsic Application object:

CSFAdvertisingContext

CSFDiscountContext

CampaignsCSFEventPipe


InitDataFunctions

This function creates a DataFunctions object and returns a reference to it, setting the default locale before returning.

Definition

Function InitDataFunctions()

Defined in File

include\global_data_lib.asp

Routines Called

None.

Called By

Main (include\global_main_lib.asp)


InitializeBasketPage

This sub initializes its parameters in preparation for displaying the basket.asp page.

Definition

Sub InitializeBasketPage(

  byRef objOrderGroup,

  byRef bBasketIsEmpty,

  byRef bMustSaveBasket,

  byRef oOrderFormDisplayOrder

)

Defined in File

basket.asp

Routines Called

LoadBasket

Called By

Main (basket.asp)


InitializeConfirmationPage

This sub initializes its parameters in preparation for displaying the order confirmation page.

Definition

Sub InitializeConfirmationPage(

  byRef sOrderID,

  byRef mscsOrderGrp,

  byRef sOrderNumber

)

Defined in File

confirm.asp

Routines Called

GenerateURL

GetOrderGroup

GetRequestString

Called By

Main (confirm.asp)


InitializeCreditcardPage

This sub initializes its parameters in preparation for displaying the crdtcard.asp page.

Definition

Sub InitializeCreditcardPage(

  byRef iOrderGroupID,

  byRef bSuccess,

  byRef listMethods,

  byRef listFrmErrs,

  byRef dictFldVals,

  byRef dictFldErrs,

  byRef sVerifyWithTotal,

  byRef urlAction,

  byRef iErrorLevel

)

Defined in File

crdtcard.asp

Routines Called

CatchErrorsForPaymentPages

GenerateURL

GetDefaultValuesForCreditCardFields

GetListItemIndex

GetPaymentMethodsForUser

GetSubmittedFieldValues

IsFormSubmitted

LoadBasket

SaveBasketAsOrder

ValidateSubmittedCreditCardData

Called By

Main (crdtcard.asp)


InitializePagingVariables

This sub initializes paging variables for Customer and Partner Services. The iPageNumber and iTotalPages parameters are initialized based on the values of the sAction and bIsProfilePage parameters.

Definition

Sub InitializePagingVariables(

  byRef sAction,

  byRef iPageNumber,

  byRef iTotalPages,

  byVal bIsProfilePage

)

Defined in File

services\include\lib.asp

Routines Called

None.

Called By

htmListPageActionHandlers

htmOrderListActionHandler

OrderListActionHandler


InitializePartnerDesk

This sub initializes its parameters for use in all Customer and Partner Services pages.

Definition

Sub InitializePartnerDesk(

  byRef sAction,

  byRef sSubAction,

  byRef sProfileIDs

)

Defined in File

services\include\initialize.asp

Routines Called

sGetAction

sGetSelectedIDs

sGetSubAction

Called By

Main (services\change_password.asp)

Main (services\customer\account.asp)

Main (services\customer\orders.asp)

Main (services\customer\view_order.asp)

Main (services\partner\account.asp)

Main (services\partner\edit_user.asp)

Main (services\partner\orders.asp)

Main (services\partner\users.asp)

Main (services\partner\view_order.asp)


InitializePO

This sub initializes its parameters in preparation for displaying the po.asp page.

Definition

Sub InitializePO(

  byRef mscsOrderGrp,

  byRef listMethods,

  byRef sVerifyWithTotal,

  byRef bSuccess,

  byRef dictFldVals,

  byRef dictFldErrs,

  byRef listFlds,

  byRef urlAction

)

Defined in File

po.asp

Routines Called

CatchErrorsForPaymentPages

GenerateURL

GetPaymentMethodsForUser

LoadBasket

Called By

Main (po.asp)


InitializeSummaryPage

This sub initializes its parameters in preparation for displaying the summary.asp page. It also runs the basket and total pipelines.

Definition

Sub InitializeSummaryPage(

  byRef mscsOrderGrp,

  byRef listMethods,

  byRef mscsAnyOrderForm,

  byRef dictAnyItem

)

Defined in File

summary.asp

Routines Called

CatchErrors

GenerateURL

GetAnyLineItem

GetAnyOrderForm

GetErrorCount

GetPaymentMethodsForUser

GetPipelineLogFile

LoadBasket

RunMtsPipeline

Called By

Main (summary.asp)


InitPageSets

This function creates sets of related pages, which are returned in a Dictionary object, where each entry in the dictionary is a string of comma-separated page names.

Definition

Function InitPageSets(

  MSCSSitePages

)

Defined in File

include\global_siteconfig_lib.asp

Routines Called

CreateSet

Called By

Main (include\global_main_lib.asp)

Remarks

Page sets are useful, for example, when you have a set of pages on which you want to show a particular advertisement. The IsEntityInSet function is used to test whether an item is in a given set.

The following three dictionary entries (page sets) are created:

PurchasePageSet

ProductPageSet

AdvertisementPageSet


InitPredictor

This function creates, initializes, and returns a PredictorClient object. Before returning, it also loads the Transaction prediction model from the Data Warehouse, and sets prediction properties.

Definition

Function InitPredictor()

Defined in File

include\global_predictor_lib.asp

Routines Called

GetDWConnectionString

Called By

Main (include\global_main_lib.asp)


InitProfileService

This function creates and initializes a ProfileService object, and returns a reference to it.

Definition

Function InitProfileService()

Defined in File

include\global_profile_lib.asp

Routines Called

None.

Called By

Main (include\global_main_lib.asp)

ProfileRefresh


InitSitePipelines

This function creates and initializes a Dictionary object with an entry for each pipeline configuration file (PCF) used in the site. It also establishes pipeline logging settings.

Definition

Function InitSitePipelines()

Defined in File

include\global_siteconfig_lib.asp

Routines Called

CheckOut

GetDictionary

GetRootPath

Called By

Main (include\global_main_lib.asp)

Remarks

The returned Dictionary object contains an entry for each pipeline PCF file, stored using the following keys:

Advertising

Basket

Checkout

Discounts

Fragment

Product

ReceivePO

RecordEvent

Total


InsertBlankSpace

This function returns a string containing space characters, where the number of space characters is equal to the number of items in the passed array.

Definition

Function InsertBlankSpace(

  byVal arrLines

)

Parameters

arrLines

An array in which the number of items in the array determines the number of space characters in the returned string.

Return Value

A string containing zero or more space characters, based on the number of items in the array specified by the arrLines parameter.

Defined in File

include\html_lib.asp

Routines Called

None.

Called By

None.


InsertHiddenProperty

This sub copies particular, hidden properties from the current user profile to the specified profile Recordset object. Currently, only the organization ID of the user can be copied.

Definition

Sub InsertHiddenProperty(

  byVal oProperty,

  byVal rsProfile

)

Defined in File

services\include\save_one_profile.asp

Routines Called

None.

Called By

bInsertProperty


InsertLineBreaks

This function returns a string containing a concatenation of each of the strings in the passed array, separated by BR elements, and ending with a BR element. In other words, it concatenates the strings in the array, appending a <BR> tag to each string in the process.

Definition

Function InsertLineBreaks(

  byVal arrLines

)

Parameters

arrLines

An array of strings that are concatenated together and returned as a single string, with a <BR> tag appended to each string in the process.

Return Value

A string containing a concatenation of each string in the array specified by the arrLines parameter, with a <BR> tag appended to each string in the process.

Defined in File

include\html_lib.asp

Routines Called

BRTag

Called By

None.


InsertParagraphBreaks

This function returns a string containing a concatenation of each of the strings in the passed array, where each source string is wrapped in a P element. In other words, it concatenates the strings in the array, prepending a <P> tag to the beginning of each source string and appending a </P> tag to the end of each source string.

Definition

Function InsertParagraphBreaks(

  byVal arrLines

)

Parameters

arrLines

An array of strings that are concatenated together and returned as a single string, where each source string in the array is wrapped in a P element in the process.

Return Value

A string containing a concatenation of each string in the array specified by the arrLines parameter, where each source string in the array is wrapped in a P element in the process.

Defined in File

include\html_lib.asp

Routines Called

PTag

Called By

None.


InvokeBizTalk

This sub submits purchase orders to the appropriate vendors using BizTalk Server when BizTalk Server integration is enabled.

Definition

Sub InvokeBizTalk(

  byVal mscsOrderGrp

)

Defined in File

include\payment.asp

Routines Called

GetXMLForVendorItems

SubmitUsingBizTalk

Called By

SaveBasketAsOrder

Remarks

For more information about how this routine is used to enable integration with Biztalk Server, see BizTalk Server Integration.


IsActiveDirectoryPresent

This function determines whether Active Directory is being used by the Profile Service, returning True if it is being used, and False otherwise.

Definition

Function IsActiveDirectoryPresent()

Defined in File

include\global_siteconfig_lib.asp

Routines Called

None.

Called By

Main (include\global_main_lib.asp)

ProfileRefresh


IsBitValueSet

This function determines whether every bit in the iBitValue parameter is also set in the iValue parameter, returning True if so, and False otherwise.

Definition

Function IsBitValueSet(

  byVal iValue,

  byVal iBitValue

)

Defined in File

include\std_util_lib.asp

Routines Called

None.

Called By

GetPaymentMethodsForSite

Remarks

Examples:

If iBitValue=5 (0x00000101) and iValue=7 (0x00000111), this function returns True.

If iBitValue=5 (0x00000101) and iValue=6 (0x00000110), this function returns False.


IsEntityInArray

This function determines whether the string specified by the sEntity parameter is equal to one of the strings in the array specified by the arrItems parameter, returning True if so, and False otherwise.

Definition

Function IsEntityInArray(

  byVal sEntity,

  byVal arrItems

)

Defined in File

include\std_util_lib.asp

Routines Called

None.

Called By

JoinWebFarm


IsEntityInList

This function determines whether the string specified by the sEntity parameter is equal to one of the strings in the SimpleList object specified by the list parameter, returning True if so, and False otherwise.

Definition

Function IsEntityInList(

  byVal sEntity,

  list

)

Defined in File

include\std_util_lib.asp

Routines Called

None.

Called By

EnsureSupportForPaymentMethod

GetFieldsErrorDictionary

GetPaymentMethodsForUser

htmRenderVerifyWithForm

Main (dispatch.asp)

sLookUpPaymentMethod


IsEntityInSet

This function determines whether the string specified by the sEntity parameter is equal to one of the substrings in the comma-separated string specified by the sSet parameter, returning True if so, and False otherwise.

Definition

Function IsEntityInSet(

  byVal sEntity,

  byVal sSet

)

Defined in File

include\std_util_lib.asp

Routines Called

None.

Called By

GetShownProductsDetails

IsFormLoginRequired


IsFormLoginRequired

This function determines whether login is required on the current page. It returns True if logging in is always required, or if logging in is required for a purchase and the current page is in the purchase page set. Otherwise, it returns False.

Definition

Function IsFormLoginRequired()

Defined in File

include\std_access_lib.asp

Routines Called

IsEntityInSet

Called By

EnsureAccess


IsFormSubmitted

This function is used to test whether the current request contains a query string or form post variable with the name "mode" that has a value that can be successfully converted to a number.

Definition

Function IsFormSubmitted()

Return Value

A Boolean, where True indicates that the current request contains a query string or form post variable with the name "mode", and for which the value can be successfully converted to a number; otherwise it returns False.

Defined in File

include\form_lib.asp

Routines Called

None.

Called By

InitializeCreditcardPage

Main (addrform.asp)

Main (po.asp)

PrepareLoginPage

PrepareNewUserPage

SetupAddressForm

Remarks

For more conceptual information about forms processing, see Forms Processing.


IsNumberInRange

This function determines whether the number specified by the iNumber parameter is in the range specified by the iMin and iMax parameters (inclusive), returning True if so, and False otherwise.

Definition

Function IsNumberInRange(

  iNumber,

  iMin,

  iMax

)

Defined in File

include\std_util_lib.asp

Routines Called

None.

Called By

GetProductQuantity


IsPersistentCookieAllowed

This function determines whether persistent cookies are enabled in the current user's browser, returning True if so, and False otherwise. A test cookie and page redirection are used to make the determination.

Definition

Function IsPersistentCookieAllowed()

Defined in File

include\std_access_lib.asp

Routines Called

AddURLArguments

SetTestCookie

Called By

EnsureAccess

Main (login\_guest.asp)


IsZipCodeValid

This function determines whether the basic format of the zip code specified by the sZipCode parameter is correct, returning True if so, and False otherwise. For additional information, see the Remarks.

Definition

Function IsZipCodeValid(

  sZipCode

)

Defined in File

include\addr_lib.asp

Routines Called

None.

Called By

iValidateSubmittedAddress

iValidateSubmittedAddressForAddressBook

Remarks

The following formats are considered valid:

Format, where "d" is a digit | Example
ddddd-dddd | 98052-0000
ddddddddd | 980520000
ddddd dddd | 98052 0000
ddddd- | 98052-
ddddd | 98052

You may add further validation logic to this function to ensure zip code entered is in existence or that it matches the state entered by the user.


Italic

This function surrounds the string specified by the s parameter with the tags <I> and </I> and then returns the resulting string.

Definition

Function Italic(

  byVal s

)

Parameters

s

A string that contains the text to be wrapped in an I element, and then returned.

Return Value

A string that contains the text passed in the s parameter, surrounded by <I> and </I> tags.

Defined in File

include\html_lib.asp

Routines Called

None.

Called By

None.


iValidateSubmittedAddress

This function determines whether an address supplied during a purchase is valid, returning zero (0) if so, and one (1) otherwise.

Definition

Function iValidateSubmittedAddress(

  listFlds,

  dictFldVals,

  dictFldErrs

)

Defined in File

addrform.asp

Routines Called

GetFieldsErrorDictionary

IsZipCodeValid

LookupRegion

Called By

Main (addrform.asp)

Remarks

Insert your specific address validation logic inside this function.

The default implementation supports basic validation for international addresses:

  • Ensures that all required fields contain data.

  • Ensures that the region field is a required field for countries that have regions defined.

  • Accepts region name or region code as input; validates them against regions table.

  • Expands region code to region name on subsequent renderings of address form.

  • Performs zip code validation for US addresses.

For more conceptual information about forms processing, see Forms Processing.


iValidateSubmittedAddressForAddressBook

This function determines whether an address supplied while working in the address book is valid, returning zero (0) if so, and one (1) otherwise.

Definition

Function iValidateSubmittedAddressForAddressBook(

  listFlds,

  dictFldVals,

  dictFldErrs,

  byVal sAction,

  byRef sAddrID,

  rsAddr

)

Defined in File

newaddr.asp

Routines Called

bIsAddressNameUnique

GetFieldsErrorDictionary

IsZipCodeValid

LookupRegion

Called By

SetupAddressForm

Remarks

Insert your specific address validation logic inside this function.

The default implementation supports basic validation for international addresses:

  • Ensures that all required fields contain data.

  • Ensures that the region field is a required field for countries that have regions defined.

  • Accepts region name or region code as input; validates them against regions table.

  • Expands region code to region name on subsequent renderings of address form.

  • Performs zip code validation for US addresses.

For more conceptual information about forms processing, see Forms Processing.


iValidateSubmittedRegistrationData

This function checks that the user name submitted on the registration page (login\newuser.asp) is unique, verifies that the submitted password is syntactically valid, and that the password matches the confirm password entry.

Definition

Function iValidateSubmittedRegistrationData(

  listFlds,

  dictFldVals,

  dictFldErrs,

  listFrmErrs

)

Parameters

listFlds

A SimpleList object containing the information about the form fields.

dictFldVals

A Dictionary object containing the form field values.

dictFldErrs

A Dictionary object that is initialized with field error messages by calling the function GetFieldsErrorDictionary.

listFrmErrs

A SimpleList object that is not used.

Return Value

A number indicating whether the submitted registration data is valid, where zero (0) indicates valid data and one (1) indicates data that is not valid.

Defined in File

login\newuser.asp

Routines Called

GetDictionary

GetFieldsErrorDictionary

rsGetProfile

Called By

PrepareNewUserPage

Remarks

For more conceptual information about forms processing, see Forms Processing.


JoinWebFarm

This sub adds the current Web server to the Web farm, if the machine is not already recognized as being so. This routine will run in the case where a site was replicated using Microsoft Application Center 2000, or other cases where the site was not installed using Commerce Site Packager.

This routine updates the Commerce Server Administration database and Data Warehouse as necessary.

Definition

Sub JoinWebFarm(

  byRef iWebServerCount

)

Defined in File

include\global_siteconfig_lib.asp

Routines Called

FormatOutput

GetComputerName

GetErrorSource

GetSiteConfigObject

IsEntityInArray

Called By

Main (include\global_main_lib.asp)


listCloneProfileSchema

This function creates and returns a SimpleList object that contains a copy of the profile schema associated with the page specified by the sPageName parameter.

Definition

Function listCloneProfileSchema(

  byVal sPageName

)

Defined in File

services\include\lib.asp

Routines Called

sGetThisPageProperty

Called By

arrPopulateProfileDetails

bInsertProfileDetails

bIsPropertyValueAdded

bProfileHasChanged

bSaveProfileDetails

listReConstructPropertiesSchema

PopulateProfileSearchCriteria

PrepareAddAction

PrepareCloseAction

PrepareCopyAction

PrepareEditAction

PrepareEditAllAction

PrepareInsertProfile

PrepareSaveAllAction

PrepareSaveChangesConfirmation

PrepareSaveProfiles

PrepareSelectedAction

rowRenderListHeading

rowsRenderAdvanceSearchOptionsForProfiles

rowsRenderSimpleSearchOptionsForProfiles

rsGetProfilesList

SaveAllSelectedProfiles

sConstructWHEREclause


listGetProfileSchema

This function creates and returns a SimpleList object of Dictionary objects that represent the schema specified by the parameters.

Definition

Function listGetProfileSchema (

  byVal oProfile,

  byVal oProfileDefsCatalog,

  byVal oSiteTermsProfile

)

Defined in File

include\global_profile_lib.asp

Routines Called

AddGroupAndPropertySchemas

Called By

dictGetProfileSchemaForAllProfileTypes


listGetShownProductsInfo

This function creates and returns a SimpleList object of Dictionary objects, where each Dictionary object contains information about a single product in the catalog, category, and so on, specified by the parameters.

Definition

Function listGetShownProductsInfo(

  byVal sCatalogName,

  byVal sCategoryName,

  byVal sProductID,

  byVal nPageNumber

)

Defined in File

template\discount.asp

Routines Called

CopyProductToItem

GetAncestorCategories

GetDictionary

GetSimpleList

mscsGetCategoryObject

mscsGetProductList

Called By

oCachedDiscountProductInfo


listGetValidPropertiesForMultiEdit

This function creates, initializes, and returns a SimpleList object that contains those profile properties from the SimpleList object specified by the listProfileSchema parameter that are valid participants in the current multi-edit operation.

Definition

Function listGetValidPropertiesForMultiEdit(

  byVal listProfileSchema

)

Defined in File

services\include\lib.asp

Routines Called

bCheckIfThePropertyFeatureIsSupported

GetRequestString

iGetCurrentUserPropertyAccessClass

sGetUserAccessForThisProperty

Called By

PrepareSaveAllAction

PrepareSaveProfiles


listGetVariantPropertiesToShow

This function creates, initializes, and returns a SimpleList object that contains an entry for each property specified by the fldsProps parameter that is configured as displayable. The SimpleList object entries are strings containing the name of the corresponding property, and the built-in property TimeStamp is excluded regardless of its displayable setting.

Definition

Function listGetVariantPropertiesToShow(

  byVal fldsProps

)

Defined in File

product.asp

Routines Called

GetSimpleList

Called By

htmRenderVariantsList


listReConstructPropertiesSchema

This function reconstructs the profile schema to include the properties that have failed validation.

Definition

Function listReConstructPropertiesSchema(

  byVal listValidProperties

)

Defined in File

services\include\lib.asp

Routines Called

bCheckIfThePropertyFeatureIsSupported

dictGetpropertyFromList

GetRequestString

iGetCurrentUserPropertyAccessClass

listCloneProfileSchema

sGetUserAccessForThisProperty

Called By

PrepareSaveAllAction

PrepareSaveProfiles


LoadBasket

This function retrieves and returns the OrderGroup object associated with the current user, calling its LoadBasket method before returning.

Definition

Function LoadBasket(

  byVal sUserID

)

Defined in File

include\std_ordergrp_lib.asp

Routines Called

GetOrderGroup

Called By

CatchErrors (addrbook.asp)

CatchErrors (newaddr.asp)

FetchData (_setadrs.asp)

GetBasketDetails

InitializeBasketPage

InitializeCreditcardPage

InitializePO

InitializeSummaryPage

Main (_additem.asp)

Main (_delall.asp)

Main (_delitem.asp)

Main (_editqty.asp)

Main (_setship.asp)

Main (addrform.asp)

Main (dispatch.asp)

MoveBasketItems

PreparePickShipForm

PrepareShippingMethods

RecordClickToBasket


LookupCachedFragment

This function searches the LRUCache object specified by the sCacheName parameter for the fragment (a string) associated with name specified by the sCacheItemName parameter, returning the fragment if it is found, and Null otherwise.

Definition

Function LookupCachedFragment(

  byVal sCacheName,

  byVal sCacheItemName

)

Defined in File

include\std_cache_lib.asp

Routines Called

GetTicketInUrlArg

Called By

bFullTextResultsAreCached

bIsSearchDeptPageCached

bIsStepSearchPageCached

htmCachedProductList

htmCachedShippingMethods

htmRenderFillOutForm

htmRenderLoginSection

htmRenderMenu

Main (default.asp)

Main (product.asp)

RenderNavbar

Remarks

The source code includes sample debug code that will show if a fragment was cached.


LookupCachedObject

This function searches the LRUCache object specified by the sCacheName parameter for the object associated with name specified by the sCacheItemName parameter, returning the object if it is found, and Nothing otherwise.

Definition

Function LookupCachedObject(

  byVal sCacheName,

  byVal sCacheItemName

)

Defined in File

include\std_cache_lib.asp

Routines Called

None.

Called By

oCachedDiscountProductInfo


LookupRegion

This function returns the region name associated with the passed parameters. The sRegion parameter might specify a region name, in which case that name is returned, or it might specify a region code, in which case the corresponding region name is returned. If the region name cannot be determined, Null is returned.

Definition

Function LookupRegion(

  byVal sRegion,

  sCountryCode

)

Defined in File

include\addr_lib.asp

Routines Called

None.

Called By

iValidateSubmittedAddress

iValidateSubmittedAddressForAddressBook


Main (_additem.asp)

This sub serves as the entry point into the file _additem.asp, which adds an item to the user's basket.

Definition

Sub Main()

Defined in File

_additem.asp

Routines Called

Analysis_LogAddToBasket

ApplyVendorInfo

EnsureAccess

GenerateURL

GetCatalogForUser

GetProductQuantity

GetRequestString

LoadBasket

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.

Remarks

This sub gets the catalog, loads the basket, adds the item to the appropriate order form, saves the basket, logs the AddToBasket action, and depending on configuration settings, redirects to either the product.asp or basket.asp page.


Main (_delall.asp)

This sub serves as the entry point into the file _delall.asp, which deletes all items from the user's basket.

Definition

Sub Main()

Defined in File

_delall.asp

Routines Called

EnsureAccess

GenerateURL

LoadBasket

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.

Remarks

This sub loads the basket, clears all items from the basket, saves the basket, and redirects to the basket.asp page.


Main (_delitem.asp)

This sub serves as the entry point into the file _delitem.asp, which deletes an item from the user's basket.

Definition

Sub Main()

Defined in File

_delitem.asp

Routines Called

Analysis_LogRemoveFromBasket

EnsureAccess

GenerateURL

GetRequestString

LoadBasket

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.

Remarks

This sub loads the basket, checks the Request object for the item index, removes the item, saves the basket, logs the removal, and redirects to the basket.asp page.


Main (_editqty.asp)

This sub serves as the entry point into the file _editqty.asp, which changes the quantity of an item in the user's basket.

Definition

Sub Main()

Defined in File

_editqty.asp

Routines Called

EnsureAccess

GenerateURL

LoadBasket

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.

Remarks

This sub loads the basket, gets the PRODUCTQTY_URL_KEY from the Request string, sets the current quantity or removes the item if the quantity is zero (0), saves the basket, and redirects to the basket page.


Main (_recvpo.asp)

This sub serves as the entry point into the file _recvpo.asp, which receives a purchase order form in XML format, transforms the data into a Dictionary object, adds it to the OrderGroup object, and runs the Receive Purchase Order Pipeline.

Definition

Sub Main()

Defined in File

_recvpo.asp

Routines Called

GetOrderGroup

ParseRequestForm

RunOrderPipeline

Called By

This routine is called by code outside of any routine (sub or function) in the file _recvpo.asp.

Remarks

For more information about how this routine is used to enable integration with Biztalk Server, see BizTalk Server Integration.


Main (_setadrs.asp)

This sub serves as the entry point into the file _setadrs.asp, which sets a shipping or billing address in the user's basket.

Definition

Sub Main()

Defined in File

_setadrs.asp

Routines Called

CatchErrors

EnsureAuthAccess

FetchData

GenerateURL

GetAddressType

GetRequestString

RsToDict

SetKeyOnOrderForms

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (_setship.asp)

This sub serves as the entry point into the file _setship.asp, which sets shipping method information in the OrderGroup object.

Definition

Sub Main()

Defined in File

_setship.asp

Routines Called

CatchErrors

EnsureAccess

GenerateURL

GetRequestString

GetShippingMethodNameFromID

LoadBasket

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.

Remarks

This sub loads the basket, sets shipping information in the OrderGroup object, saves the basket, and redirects to the order summary.asp page.


Main (addrbook.asp)

This sub serves as the entry point into the file addrbook.asp, which retrieves and displays the address book for editing.

Definition

Sub Main()

Defined in File

addrbook.asp

Routines Called

CatchErrors

EnsureAuthAccess

FetchData

htmRenderAddressBookPage

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (addrform.asp)

This sub serves as the entry point into the file addrform.asp, which displays a page for editing the billing or shipping address.

Definition

Sub Main()

Defined in File

addrform.asp

Routines Called

CatchErrors

EnsureAccess

GenerateURL

GetAddressType

GetDefaultValuesForAddressFormFields

GetSubmittedFieldValues

htmRenderFillOutForm

IsFormSubmitted

iValidateSubmittedAddress

LoadBasket

RenderText

SaveAddressToOrderGroup

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (basket.asp)

This sub serves as the entry point into the file basket.asp, which displays the user's basket.

Definition

Sub Main()

Defined in File

basket.asp

Routines Called

AddDiscountMessages

CheckBasket

EnsureAccess

InitializeBasketPage

RenderBasketPage

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.

Remarks

This sub runs the basket pipeline, adds discount messages to each line item, saves the basket, and prepares the HTML that will render the basket.asp page.

This sub will also display predictions, where available.


Main (category.asp)

This sub serves as the entry point into the file category.asp, which displays the product list and sub-categories of the specified catalog, category, and page number.

Definition

Sub Main()

Defined in File

category.asp

Routines Called

EnsureAccess

EnsureUserHasRightsToCatalog

FetchCategoryData

GenerateURL

htmCachedProductList

htmCategoryHTML

mscsGetCategoryObject

mscsGetProductList

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (confirm.asp)

This sub serves as the entry point into the file confirm.asp, which displays the confirmation page for a basket order.

Definition

Sub Main()

Defined in File

confirm.asp

Routines Called

EnsureAccess

htmRenderConfirmationPage

InitializeConfirmationPage

TerminateConfirmationPage

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (crdtcard.asp)

This sub serves as the entry point into the file crdtcard.asp, which displays an input screen for credit card information when checking out.

Definition

Sub Main()

Defined in File

crdtcard.asp

Routines Called

EnsureAccess

htmRenderCreditCardPage

InitializeCreditcardPage

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (default.asp)

This sub serves as the entry point into the file default.asp, which prepares the HTML from which the home page is rendered.

Definition

Sub Main()

Defined in File

default.asp

Routines Called

EnsureAccess

htmRenderDefaultPage

LookupCachedFragment

mscsUserCatalogsetID

PrepareDefaultPage

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (dispatch.asp)

This sub serves as the entry point into the file dispatch.asp, which dispatches the user to the payment method page (crdtcard.asp or po.asp) when checking out.

Definition

Sub Main()

Defined in File

dispatch.asp

Routines Called

EnsureAccess

GenerateURL

GetPaymentMethodsForUser

GetPaymentPageFromPaymentMethod

GetRequestString

IsEntityInList

LoadBasket

sLookUpPaymentMethod

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (newaddr.asp)

This sub serves as the entry point into the file newaddr.asp, from which the user can add, edit, or delete addressbook addresses.

Definition

Sub Main()

Defined in File

newaddr.asp

Routines Called

EnsureAuthAccess

htmRenderAddressForm

SetupAddressForm

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (opt-out.asp)

This sub serves as the entry point into the file opt-out.asp, which adds the user to the opt-out list of a direct mail campaign.

Definition

Sub Main()

Defined in File

opt-out.asp

Routines Called

ErrorOut

OptOut

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.

Remarks

If a campaign item is not specified, then the user is added to the global opt-out list for the site.


Main (pickship.asp)

This sub serves as the entry point into the file pickship.asp, from which displays a page for selecting the shipping method.

Definition

Sub Main()

Defined in File

pickship.asp

Routines Called

CacheFragment

EnsureAccess

htmCachedShippingMethods

htmRenderPickshipForm

htmRenderShippingMethods

PreparePickShipForm

PrepareShippingMethods

rsGetShippingMethods

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.

Remarks

The source code shows two ways of showing the shipping options: one calculates shipping cost previews, the other does not (the latter exhibits better performance).


Main (po.asp)

This sub serves as the entry point into the file po.asp, from which displays an input screen for purchase order information when the user is checking out.

Definition

Sub Main()

Defined in File

po.asp

Routines Called

EnsureAuthAccess

GetDefaultValuesForPurchaseOrderFields

GetListItemIndex

GetSubmittedFieldValues

htmRenderPaymentOptionsPage

InitializePO

IsFormSubmitted

RedirectToPOConfirmation

TerminatePO

ValidateSubmittedPurchaseOrderData

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.

Remarks

This sub validates submitted purchase order data, and constructs the HTML that will render the payment options.


Main (product.asp)

This sub serves as the entry point into the file product.asp, which displays a page of product details.

Definition

Sub Main()

Defined in File

product.asp

Routines Called

CacheFragment

EnsureAccess

EnsureUserHasRightsToCatalog

GenerateURL

GetRequestString

GetShownProductsDetails

htmRenderBuiltInProperties

htmRenderUserDefinedProductProperties

htmRenderVariantsList

LookupCachedFragment

RenderDiscounts

RenderForm

RenderHiddenField

RenderSubmitButton

RenderText

RenderTextBox

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.

Remarks

This sub attempts to use a cached catalog fragment. If the fragment is not cached, it is constructed and cached for future use. This sub also generates the AddToBasket form, and populates the discount banner slot.


Main (redir.asp)

This sub serves as the entry point into the file redir.asp, which handles click-throughs and other events on marketing campaign items, invoking a pipeline that records the events in memory and to the Internet Information Services (IIS) log file.

Definition

Sub Main()

Defined in File

redir.asp

Routines Called

RecordClickToBasket

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (search.asp)

This sub serves as the entry point into the file search.asp, which performs a free text search and displays the result.

Definition

Sub Main()

Defined in File

search.asp

Routines Called

bFullTextResultsAreCached

EnsureAccess

GetRequestString

htmRenderFullTextSearchResults

rsFreeTextSearch

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.

Remarks

This sub gets the search phrase, checks the cache for the results, runs the query, and displays the results.


Main (srchdept.asp)

This sub serves as the entry point into the file srchdept.asp, which displays a list of searchable categories from a catalog.

Definition

Sub Main()

Defined in File

srchdept.asp

Routines Called

arrSearchDept

bIsSearchDeptPageCached

CacheFragment

EnsureAccess

htmRenderSearchDeptPageContent

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.

Remarks

This sub checks whether the page has already been generated and is cached, generates the HTML that will render a list of catalog names and category names, and caches the page.


Main (stepsrch.asp)

This sub serves as the entry point into the file stepsrch.asp, which performs a product specification search and displays the results.

Definition

Sub Main()

Defined in File

stepsrch.asp

Routines Called

bClickedViewOrSearchButton

bIsStepSearchPageCached

CacheFragment

EnsureAccess

GenerateURL

GetCatalogForUser

GetRequestString

htmRenderStepSearchPageContent

PrepareSpecificationSearch

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.

Remarks

This sub gets the catalog name and instantiates the catalog object, gets the category name, checks for cached pages, prepares for and performs the search, and prepares the HTML that will render the results or the search options.


Main (summary.asp)

This sub serves as the entry point into the file summary.asp, which displays an order summary that includes the grand total.

Definition

Sub Main()

Defined in File

summary.asp

Routines Called

AddDiscountMessages

EnsureAccess

htmRenderSummaryPage

InitializeSummaryPage

TerminateSummaryPage

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.

Remarks

This sub removes unreferenced addresses from the order form, adds discount messages to each line item, checks for VerifyWith errors, saves the basket, and prepares the HTML that will render the page.


Main (welcome.asp)

This sub serves as the entry point into the file welcome.asp, which displays a welcome page.

Definition

Sub Main()

Defined in File

welcome.asp

Routines Called

RenderLink

RenderText

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.

Remarks

A user is redirected to this page by the routine EnsureAccess when a user with a registered profile only has a profile ticket (as is the case when they return to the site after closing their browser). For more information about logging in, see Login.


Main (error\baditem.asp)

This sub serves as the entry point into the file error\baditem.asp, which displays the message that a catalog item is unavailable.

Definition

Sub Main()

Defined in File

error\baditem.asp

Routines Called

RenderText

RenderUnorderedList

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (error\badurl.asp)

This sub serves as the entry point into the file error\badurl.asp, which displays the message that the URL is not valid.

Definition

Sub Main()

Defined in File

error\badurl.asp

Routines Called

GenerateURL

RenderLink

RenderText

RenderUnorderedList

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (error\closed.asp)

This sub serves as the entry point into the file error\closed.asp, which displays the message that the site is closed.

Definition

Sub Main()

Defined in File

error\closed.asp

Routines Called

RenderText

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (error\construc.asp)

This sub serves as the entry point into the file error\construc.asp, which displays the message that the site is under construction.

Definition

Sub Main()

Defined in File

error\construc.asp

Routines Called

RenderText

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (error\noauth.asp)

This sub serves as the entry point into the file error\noauth.asp, which displays the message that the user is not authorized to access the page.

Definition

Sub Main()

Defined in File

error\noauth.asp

Routines Called

GenerateURL

RenderLink

RenderText

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (error\profile.asp)

This sub serves as the entry point into the file error\profile.asp, which displays the message that the user's account (profile) could not be found.

Definition

Sub Main()

Defined in File

error\profile.asp

Routines Called

RenderLink

RenderText

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (include\global_main_lib.asp)

This sub serves as the entry point into the file global.asa, which creates and initializes many of the objects supplied by Commerce Server 2000. References to these objects are stored in the intrinsic Application object so that they can be retrieved and used from Web site pages.

Definition

Sub Main()

Defined in File

include\global_main_lib.asp

Routines Called

dictGetCatalogAttributes

dictGetProfileSchemaForAllProfileTypes

GetAppConfigObject

GetConfigDictionary

GetFormDefinitions

GetINIFileName

GetINIString

GetMessageManagerObject

GetObjectInstanceDictionary

GetPartnerAndCustomerServicePageAttributes

GetPaymentMethodsForSite

GetSecurePagesDictionary

GetSitePages

GetSiteStyles

InitAltCurrencyDisp

InitAuthManager

InitCacheManager

InitCatalogManager

InitCatalogSets

InitCSF

InitDataFunctions

InitPageSets

InitPredictor

InitProfileService

InitSitePipelines

IsActiveDirectoryPresent

JoinWebFarm

oGetGenIDObject

oGetOpenConnectionObject

sGetActiveDirectoryDefaultNamingContext

Called By

Application_OnStart

Remarks

This sub creates instances of the following Commerce Server objects: AppConfig, ProfileService, CacheManager, AuthManager, Pipeline, MessageManager, DataFunctions, CatalogManager, ExpressionEvaluator, and Predictor.

This sub gets the Commerce Server site application names from the configuration file, gets the Active Directory domain name (if the Active Directory data store is used), gets the Dictionary object for all the profiles and profile properties, and gets the Dictionary object of Dictionary objects containing properties for all pages.


Main (login\_guest.asp)

This sub serves as the entry point into the file login\_guest.asp, which generally redirects the user to the home page (default.asp) as a guest user.

Definition

Sub Main()

Defined in File

login\_guest.asp

Routines Called

GenerateURL

GetNewGuestUserProfile

IsPersistentCookieAllowed

sGetUserIDForNewGuestUser

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.

Remarks

For more detailed information about logging in, see Login.


Main (login\login.asp)

This sub serves as the entry point into the file login\login.asp, which displays the login page.

Definition

Sub Main()

Defined in File

login\login.asp

Routines Called

GenerateURL

htmRenderLoginPage

PrepareLoginPage

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.

Remarks

For more detailed information about logging in, see Login.


Main (login\logoff.asp)

This sub serves as the entry point into the file login\logoff.asp, which displays the logoff page.

Definition

Sub Main()

Defined in File

login\logoff.asp

Routines Called

htmRenderLogoffPage

PrepareLogoffPage

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.

Remarks

For more detailed information about logging in, see Login.


Main (login\newuser.asp)

This sub serves as the entry point into the file login\newuser.asp, which allows a new user to register and checks the user name and password for validity.

Definition

Sub Main()

Defined in File

login\newuser.asp

Routines Called

bRegistrationPageNotAvailable

GenerateURL

htmRenderNewUserPage

PrepareNewUserPage

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (services\change_password.asp)

This sub serves as the entry point into the file services\change_password.asp, which allows Partner Services passwords to be changed.

Definition

Sub Main()

Defined in File

services\change_password.asp

Routines Called

CheckIfProfilesExist

EnsureAuthAccess

GenerateURL

InitializePartnerDesk

PasswordActionHandlers

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (services\customer\account.asp)

This sub serves as the entry point into the file services\customer\account.asp, which allows users to view and modify their own profile.

Definition

Sub Main()

Defined in File

services\customer\account.asp

Routines Called

CheckIfProfilesExist

EnsureAuthAccess

GenerateURL

htmChangePasswordActionHandler

htmEditAction

htmSaveActionHandler

InitializePartnerDesk

PrepareEditAction

PrepareSaveAction

PrepareSaveChangesConfirmation

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (services\customer\orders.asp)

This sub serves as the entry point into the file services\customer\orders.asp, which allows users to search for their orders.

Definition

Sub Main()

Defined in File

services\customer\orders.asp

Routines Called

EnsureAuthAccess

htmRenderOrderList

InitializePartnerDesk

OrderListActionHandler

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (services\customer\view_order.asp)

This sub serves as the entry point into the file services\customer\view_order.asp, which allows users to view their orders.

Definition

Sub Main()

Defined in File

services\customer\view_order.asp

Routines Called

CheckIfOrderExists

CloseOrderDetailsActionHandler

EnsureAuthAccess

GenerateURL

htmOrderDetailsActionHandler

InitializePartnerDesk

PrepareCloseOrderDetailsAction

PrepareOrderDetailsAction

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (services\error\badaction.asp)

This sub serves as the entry point into the file services\error\badaction.asp, which displays the message that an invalid action was requested.

Definition

Sub Main()

Defined in File

services\error\badaction.asp

Routines Called

RenderText

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (services\error\noaccess.asp)

This sub serves as the entry point into the file services\error\noaccess.asp, which displays the message that the user does not have the necessary privileges to access the page.

Definition

Sub Main()

Defined in File

services\error\noaccess.asp

Routines Called

RenderText

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (services\error\noorder.asp)

This sub serves as the entry point into the file services\error\noorder.asp, which displays the message that the requested order is not available.

Definition

Sub Main()

Defined in File

services\error\noorder.asp

Routines Called

RenderText

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (services\error\noorgprofile.asp)

This sub serves as the entry point into the file services\error\noorgprofile.asp, which displays the message that the user does not belong to an organization.

Definition

Sub Main()

Defined in File

services\error\noorgprofile.asp

Routines Called

RenderText

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (services\error\noprofile.asp)

This sub serves as the entry point into the file services\error\noprofile.asp, which displays the message that posted profiles are invalid.

Definition

Sub Main()

Defined in File

services\error\noprofile.asp

Routines Called

RenderText

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (services\partner\account.asp)

This sub serves as the entry point into the file services\partner\account.asp, which allows administrators to view and modify the profile for their organization.

Definition

Sub Main()

Defined in File

services\partner\account.asp

Routines Called

CheckIfProfilesExist

CheckPartnerServiceAccess

EnsureAuthAccess

GenerateURL

htmEditAction

htmSaveActionHandler

htmSelectActionHandlerForEdit

htmSelectedActionHandlerForEdit

InitializePartnerDesk

PrepareEditAction

PrepareSaveAction

PrepareSelectActionHandlerForEdit

PrepareSelectedAction

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (services\partner\edit_user.asp)

This sub serves as the entry point into the file services\partner\edit_user.asp, which allows administrators to add, delete, or modify profiles that belong to members of their organization.

Definition

Sub Main()

Defined in File

services\partner\edit_user.asp

Routines Called

CheckIfProfilesExist

CheckPartnerServiceAccess

EnsureAuthAccess

htmEditPageActionHandlers

InitializePartnerDesk

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (services\partner\orders.asp)

This sub serves as the entry point into the file services\partner\orders.asp, which allows administrators to search for orders made by members of their organization.

Definition

Sub Main()

Defined in File

services\partner\orders.asp

Routines Called

CheckPartnerServiceAccess

EnsureAuthAccess

htmOrderListActionHandler

InitializePartnerDesk

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (services\partner\users.asp)

This sub serves as the entry point into the file services\partner\users.asp, which allows administrators to search for and manage the user profiles associated with their organization.

Definition

Sub Main()

Defined in File

services\partner\users.asp

Routines Called

CheckPartnerServiceAccess

EnsureAuthAccess

htmListPageActionHandlers

InitializePartnerDesk

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


Main (services\partner\view_order.asp)

This sub serves as the entry point into the file services\partner\view_order.asp, which allows administrators to view orders made by members of their organization.

Definition

Sub Main()

Defined in File

services\partner\view_order.asp

Routines Called

CheckIfOrderExists

CheckPartnerServiceAccess

CloseOrderDetailsActionHandler

EnsureAuthAccess

GenerateURL

htmOrderDetailsActionHandler

InitializePartnerDesk

PrepareCloseOrderDetailsAction

PrepareOrderDetailsAction

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


MoveBasketItems

This function moves the items in the source basket to the destination basket. The source basket must exist and contain at least one item; the destination basket may or may not exist.

Definition

Function MoveBasketItems(

  byVal sSourceBasketID,

  byVal sDestinationBasketID

)

Defined in File

login\login.asp

Routines Called

GetOrderGroupManager

LoadBasket

Called By

PrepareLoginPage


mscsGetCategoryObject

This function gets the Category object for the given category name. If the category name is "" (meaning the root category), this function returns Nothing, as the catalog does not have a Category object for the root category.

Definition

Function mscsGetCategoryObject(

  byVal oCatalog,

  byVal sCategoryName

)

Defined in File

include\catalog.asp

Routines Called

GenerateURL

Called By

listGetShownProductsInfo

Main (category.asp)

PrepareDefaultPage


mscsGetOrderGroupWithDiscountsByID

This function retrieves the OrderGroup object associated with the current user, loads the order specified by the iID parameter, adds discount messages, and then returns a reference to the OrderGroup object.

Definition

Function mscsGetOrderGroupWithDiscountsByID(

  iID

)

Defined in File

services\include\logic_orders.asp

Routines Called

AddDiscountMessages

GetOrderGroup

Called By

tblRenderOrderDetailsContents


mscsGetProductList

This function returns the product Recordset object for a specified category, using the specified paging information.

Definition

Function mscsGetProductList(

  oCatalog,

  oCategory,

  nPageNumber,

  nOutRecordsTotal,

  nOutPagesTotal

)

Defined in File

include\catalog.asp

Routines Called

None.

Called By

listGetShownProductsInfo

Main (category.asp)

PrepareDefaultPage

Remarks

The nOutRecordsTotal and nOutPagesTotal parameters are used to return data to the caller.

If the oCategory parameter is Nothing, this function returns the Recordset object returned by the RootProducts property of the catalog.


mscsGetSubCategoriesList

This function returns the child categories Recordset object for the Category object specified by the oCategory parameter.

Definition

Function mscsGetSubCategoriesList(

  byVal oCatalog,

  byVal oCategory

)

Defined in File

include\catalog.asp

Routines Called

None.

Called By

htmRenderCategoryPage

PrepareCatalogSection

Remarks

If the oCategory parameter is Nothing, this function returns the Recordset object returned by the RootCategories property of the catalog.


mscsNewRegisteredUserProfile

This function creates, initializes, and then returns a reference to a ProfileObject object for a new user.

Definition

Function mscsNewRegisteredUserProfile(

  byVal sLoginName,

  byVal sLoginPassword

)

Defined in File

login\newuser.asp

Routines Called

GetQualifiedName

UpdateUserProfile

Called By

mscsTransferGuestUserProfile

PrepareNewUserPage


mscsTransferGuestUserProfile

This function attempts to retrieve a profile for the current user. If found, this function updates the profile to reflect the fact that the user is now registered. If not found, this function creates and initializes a profile for the new user. In both cases, the resulting ProfileObject object is returned.

Definition

Function mscsTransferGuestUserProfile(

  byVal sLoginName,

  byVal sLoginPassword

)

Defined in File

login\newuser.asp

Routines Called

GetCurrentUserProfile

GetQualifiedName

mscsNewRegisteredUserProfile

UpdateUserProfile

Called By

PrepareNewUserPage


mscsUserCatalogs

This function returns a Recordset object that contains the catalogs associated with the current user.

Definition

Function mscsUserCatalogs()

Defined in File

include\catalog.asp

Routines Called

None.

Called By

arrSearchDept

PrepareCatalogSection

sUserCatalogsAsString


mscsUserCatalogsetID

This function returns the ID of the catalog set associated with the current user. If it is not found, the ID of the catalog set associated with the user's organization is returned. If it is not found, the ID of the default catalog set for the type of the current user is returned.

Definition

Function mscsUserCatalogsetID()

Defined in File

include\catalog.asp

Routines Called

GetCurrentUserProfile

rsGetProfileByKey

Called By

bFullTextResultsAreCached

bIsSearchDeptPageCached

EnsureUserHasRightsToCatalog

Main (default.asp)

PrepareRenderMenu


mscsUserCatalogsFromID

This function returns a Recordset object containing the catalogs associated catalog set ID specified by the CatalogSetID parameter.

Definition

Function mscsUserCatalogsFromID(

  byVal CatalogSetID

)

Defined in File

include\catalog.asp

Routines Called

None.

Called By

PrepareDefaultPage


oCachedDiscountProductInfo

This function serves as a caching wrapper for function listGetShownProductsInfo. It attempts to retrieve the requested information from the "DiscountProductInfo" cache, and if not found, generates it, caches it, and returns it.

Definition

Function oCachedDiscountProductInfo(

  sCatalogName,

  sCategoryName,

  nPageNumber,

  sProductID

)

Defined in File

template\discount.asp

Routines Called

CacheObject

listGetShownProductsInfo

LookupCachedObject

Called By

GetShownProductsDetails


oGetBizDataObject

This function creates an instance of the BusinessDataAdmin object and returns a reference to it, calling its Connect method before returning.

Definition

Function oGetBizDataObject()

Defined in File

include\global_data_lib.asp

Routines Called

None.

Called By

dictGetProfileSchemaForAllProfileTypes


oGetGenIDObject

This function creates an instance of the GenID object and returns a reference to it.

Definition

Function oGetGenIDObject()

Defined in File

include\global_data_lib.asp

Routines Called

None.

Called By

Main (include\global_main_lib.asp)


oGetOpenConnectionObject

This function creates an ADO Connection object and returns a reference to it, opening a connection to the Commercer Server OLEDB Provider before returning.

Definition

Function oGetOpenConnectionObject()

Defined in File

include\global_profile_lib.asp

Routines Called

None.

Called By

Main (include\global_main_lib.asp)

Remarks

The performance characterstics of the Commerce Provider dictate that the Solution Sites use a global connection. Most other providers recommend the creation of connections on a per-page basis.


oGetProfile

This function returns an XML DOMDocument object that contains the profile specified by the sProfileName parameter.

Definition

Function oGetProfile(

  byVal oBizData,

  byVal sProfileName

)

Defined in File

include\global_profile_lib.asp

Routines Called

None.

Called By

dictGetProfileSchemaForAllProfileTypes


oGetSiteTermOptions

This function returns a SimpleList object of Dictionary objects, where each dictionary contains a single key/value pair. Each key/value pair represents the display name and value of one site term choice associated with the property specified by the sPropertyName parameter.

Definition

Function oGetSiteTermOptions (

  byVal sPropertyName,

  byRef oProfileDefsCatalog,

  byRef oSiteTermsProfile

)

Defined in File

include\global_siteterms_lib.asp

Routines Called

bIsSiteTerm

sGetReferenceString

Called By

dictGetPropertySchema


OptOut

This sub adds the e-mail recipient specified by the rcp_email parameter to the opt-out list specified by the campitem_id parameter. If the campitem_id parameter is Null, a site-wide optout is performed.

Definition

Sub OptOut(

  rcp_email,

  campitem_id

)

Defined in File

opt-out.asp

Routines Called

CreateOptOutList

ErrorOut

GetOptOutList

SetOptOutList

Called By

Main (opt-out.asp)


OrderListActionHandler

This sub serves as a wrapper for the sub InitializePagingVariables, passing its parameters through as is, and passing False for the bIsProfilePage parameter of sub InitializePagingVariables.

Definition

Sub OrderListActionHandler(

  byVal sAction,

  byRef iPageNumber,

  byRef iTotalPages

)

Defined in File

services\customer\orders.asp

Routines Called

InitializePagingVariables

Called By

Main (services\customer\orders.asp)


P - R

This section contains topics for the following routines, beginning with the letters P through R.

Routine | File
ParseRequestForm | _recvpo.asp
PasswordActionHandlers | services\change_password.asp
PeekField | product.asp
PerformSpecificationSearch | stepsrch.asp
PopulateOrderSearchCriteria | services\include\lib.asp
PopulateProfileSearchCriteria | services\include\lib.asp
PredictedPropToHREF | basket.asp
PrepareAddAction | services\include\edit_handlers.asp
PrepareCatalogSection | template\menu.asp
PrepareCloseAction | services\include\edit_handlers.asp
PrepareCloseOrderDetailsAction | services\include\order_handlers.asp
PrepareCopyAction | services\include\edit_handlers.asp
PrepareDefaultPage | default.asp
PrepareDeleteAction | services\include\edit_handlers.asp
PrepareDeleteAllAction | services\include\edit_handlers.asp
PrepareDeselectAllAction | services\include\edit_handlers.asp
PrepareEditAction | services\include\edit_handlers.asp
PrepareEditAllAction | services\include\edit_handlers.asp
PrepareInsertProfile | services\include\edit_handlers.asp
PrepareLoginPage | login\login.asp
PrepareLoginSection | template\menu.asp
PrepareLogoffPage | login\logoff.asp
PrepareNewUserPage | login\newuser.asp
PrepareOrderDetailsAction | services\include\order_handlers.asp
PrepareOrderList | services\include\logic_orders.asp
PreparePickShipForm | pickship.asp
PrepareRenderMenu | template\menu.asp
PrepareSaveAction | services\include\edit_handlers.asp
PrepareSaveAllAction | services\include\edit_handlers.asp
PrepareSaveChangesConfirmation | services\include\messagebox_handlers.asp
PrepareSaveProfiles | services\include\edit_handlers.asp
PrepareSelectActionHandlerForEdit | services\include\edit_handlers.asp
PrepareSelectAllAction | services\include\edit_handlers.asp
PrepareSelectedAction | services\include\edit_handlers.asp
PrepareShippingMethods | pickship.asp
PrepareSpecificationSearch | stepsrch.asp
ProfileRefresh | RefreshApp.asp
PTag | include\html_lib.asp
RecordClickToBasket | redir.asp
RedirectOrderDetailsForIDs | services\include\order_handlers.asp
ReDirectToPage | services\include\lib.asp
RedirectToPOConfirmation | po.asp
RelocateRecordPointer2 | services\include\render_list.asp
RelocateRecordPointer | services\include\lib.asp
RemoveBlankItemsFromArray | include\std_string_lib.asp
RemoveCreditCardInfo | po.asp
RemoveEmptyOrderForms | include\std_ordergrp_lib.asp
RemovePurchaseOrderInfo | crdtcard.asp
RenderBasketPage | basket.asp
RenderCatalogLink | include\catalog.asp
RenderCatalogURL | include\catalog.asp
RenderCategoryLink | include\catalog.asp
RenderCategoryURL | include\catalog.asp
RenderCheckBox | include\html_lib.asp
RenderDetailedInfoList | error\500error.asp
RenderDiscounts | template\discount.asp
RenderElement | include\html_lib.asp
RenderErrorType | error\500error.asp
RenderForm | include\html_lib.asp
RenderHiddenField | include\html_lib.asp
RenderImageButton | include\html_lib.asp
RenderImage | include\html_lib.asp
RenderLink | include\html_lib.asp
RenderListBox | include\html_lib.asp
RenderListBoxFromArray | include\html_lib.asp
RenderListBoxFromSimpleList | include\html_lib.asp
RenderListFromSimpleList | include\html_lib.asp
RenderNavbar | template\navbar.inc
RenderPageInfo | error\500error.asp
RenderPasswordBox | include\html_lib.asp
RenderPostData | error\500error.asp
RenderPreFormattedText | include\html_lib.asp
RenderProductLink | include\catalog.asp
RenderProductURL | include\catalog.asp
RenderRadioButton | include\html_lib.asp
RenderResetButton | include\html_lib.asp
RenderSearchResultRow | include\catalog.asp
RenderSearchResults | include\catalog.asp
RenderSubmitButton | include\html_lib.asp
RenderTable | include\html_lib.asp
RenderTableDataRow | include\html_lib.asp
RenderTableHeaderRow | include\html_lib.asp
RenderTableRow | include\html_lib.asp
RenderTextBox | include\html_lib.asp
RenderText | include\html_lib.asp
RenderTime | error\500error.asp
RenderUnorderedList | include\html_lib.asp
RenderUnorderedListFromSimpleList | include\html_lib.asp
rowRenderAdvancedSearchOptionsForOrders | services\include\render_orders.asp
rowRenderBlankProperty | services\include\render_edit_blank.asp
rowRenderEditSheetBlankLine | services\include\render_common.asp
rowRenderHeader | services\include\render_common.asp
rowRenderHiddenProperty | services\include\render_edit_common.asp
rowRenderLineItemHeader | services\include\render_orders.asp
rowRenderListHeading | services\include\render_list.asp
rowRenderListHeadingForOrders | services\include\render_orders.asp
rowRenderMessageBoxPageContents | services\include\render_messagebox.asp
rowRenderProperty | services\include\render_edit_common.asp
rowRenderPropertyGroup | services\include\render_edit_common.asp
rowRenderPropertyTip | services\include\render_edit_common.asp
rowRenderReadOnlyProperty | services\include\render_edit_common.asp
rowRenderSearchOptionForDate | services\include\render_common.asp
rowRenderSearchOptionForInteger | services\include\render_common.asp
rowRenderSearchOptionForString | services\include\render_common.asp
rowRenderSimpleSearchOptionsForOrders | services\include\render_orders.asp
rowRenderStatusInfo | services\include\render_common.asp
rowsRenderAdvanceSearchOptionsForProfiles | services\include\render_list.asp
rowsRenderSimpleSearchOptionsForProfiles | services\include\render_list.asp
rsFreeTextSearch | include\catalog.asp
rsGetOrderDetails | services\include\requisition.asp
rsGetOrdersList | services\include\requisition.asp
rsGetOrgDetails | services\include\get_profiles.asp
rsGetProfileByKey | include\std_profile_lib.asp
rsGetProfile | include\std_profile_lib.asp
rsGetProfileDetails | services\include\get_profiles.asp
rsGetProfilesList | services\include\get_profiles.asp
rsGetShippingMethods | pickship.asp
rsGetUserDetails | services\include\get_profiles.asp
RsToDict | include\std_util_lib.asp
RunMtsPipeline | include\std_pipeline_lib.asp
RunOrderPipeline | _recvpo.asp


ParseRequestForm

This function converts a posted form to UNICODE characters and returns it as a string.

Definition

Function ParseRequestForm()

Return Value

A string containing the posted form, converted to UNICODE characters.

Defined in File

_recvpo.asp

Routines Called

None.

Called By

Main (_recvpo.asp)


PasswordActionHandlers

This function distributes the actual work to one of three other functions based on the value of the sAction parameter, and the return value of those functions is returned as the return value of this function.

Definition

Function PasswordActionHandlers(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs

)

Return Value

This function returns the value returned by one of the three functions ChangeActionHandler, UpdatePasswordActionHandler, or htmCancelUpdatePasswordAction.

Defined in File

services\change_password.asp

Routines Called

ChangeActionHandler

GenerateURL

htmCancelUpdatePasswordAction

UpdatePasswordActionHandler

Called By

Main (services\change_password.asp)

Remarks

If the sAction parameter is not equal to CHANGE_ACTION, SAVE_ACTION, or CANCEL_ACTION, the user is redirected to an error page.


PeekField

This function attempts to read a field from a Recordset object. If the field does not exist, it returns Null.

Definition

Function PeekField(

  byVal rs,

  byVal sFieldName

)

Defined in File

product.asp

Routines Called

None.

Called By

htmRenderUserDefinedProductProperties


PerformSpecificationSearch

This sub provides business logic to help perform a specification search.

Definition

Sub PerformSpecificationSearch(

  byRef bViewResults,

  byRef oCatalog,

  byRef rsResults,

  byRef rsFields,

  byRef iMatchesFound,

  byVal sSearchHandle,

  byRef bClosestMatches

)

Defined in File

stepsrch.asp

Routines Called

bClickedViewButton

Called By

PrepareSpecificationSearch


PopulateOrderSearchCriteria

This sub retrieves search criteria related to an order from the HTTP request and places it into the passed Dictionary object. It also performs validation for some date-related criteria.

Definition

Sub PopulateOrderSearchCriteria(

  byRef oSearchDictionary

)

Defined in File

services\include\lib.asp

Routines Called

bInvalidDate

GetRequestString

Called By

GetSearchDictionaryForThisPage


PopulateProfileSearchCriteria

This sub retrieves search criteria related to a profile from the HTTP request and places it into the passed Dictionary object. It also performs validation for some date-related criteria.

Definition

Sub PopulateProfileSearchCriteria(

  byRef oSearchDictionary

)

Defined in File

services\include\lib.asp

Routines Called

bInvalidDate

GetRequestString

listCloneProfileSchema

Called By

GetSearchDictionaryForThisPage


PredictedPropToHREF

This function constructs a hyperlink into the catalog from the products recommended by the Predictor resource.

Definition

Function PredictedPropToHREF(

  strProp

)

Defined in File

basket.asp

Routines Called

DoubleQuote

GenerateURL

Called By

htmRenderPredictions


PrepareAddAction

This sub initializes its five parameters in preparation for adding a user in Partner Services.

Definition

Sub PrepareAddAction(

  byRef sStatusField,

  byRef iStatusID,

  byRef bValidPostedValues,

  byRef bDisplayPostedValues,

  byRef listProfileSchema

)

Defined in File

services\include\edit_handlers.asp

Routines Called

listCloneProfileSchema

Called By

htmEditPageActionHandlers


PrepareCatalogSection

This sub prepares for the call to the function htmRenderCatalogSection by initializing the values of the passed parameters.

Definition

Sub PrepareCatalogSection(

  byRef rsCatalogs,

  byRef iCatalogCount,

  byRef oCatalog,

  byRef sCatalogName,

  byRef rsCategories

)

Defined in File

template\menu.asp

Routines Called

GetRecordCount

mscsGetSubCategoriesList

mscsUserCatalogs

Called By

htmRenderMenu

Remarks

This sub is called to prepare for creating the catalog section of the menu area.

The rsCatalogs parameter is initialized to a Recordset object of the catalogs associated with the user, and the iCatalogCount parameter is initialized to the number of catalogs in that Recordset object.

If the number of catalogs is one (1), then the remaining three parameters are set to reference the corresponding Catalog object, the name of the catalog, and a Recordset object of the categories in that catalog, respectively.


PrepareCloseAction

This sub prepares for the call to the function htmCloseActionHandler by initializing the values of all of the passed parameters other than the first two.

Definition

Sub PrepareCloseAction(

  byVal sSubAction,

  byVal sProfileIDs,

  byRef sActionPage,

  byRef sPreviousAction,

  byRef sStatusField,

  byRef iStatusID,

  byRef bValidPostedValues,

  byRef bDisplayPostedValues,

  byRef listProfileSchema,

  byRef sSourcePage,

  byRef bDirty

)

Defined in File

services\include\edit_handlers.asp

Routines Called

bIsPropertyValueAdded

bProfileHasChanged

GenerateURL

GetRequestString

iGetCountOfProfiles

listCloneProfileSchema

sGetThisPageProperty

Called By

htmEditPageActionHandlers


PrepareCloseOrderDetailsAction

This sub prepares for the call to the sub CloseOrderDetailsActionHandler by initializing the values of the passed parameters.

Definition

Sub PrepareCloseOrderDetailsAction(

  byRef sProfileListPage,

  byRef sSourcePage

)

Defined in File

services\include\order_handlers.asp

Routines Called

GetRequestString

sGetThisPageProperty

Called By

Main (services\customer\view_order.asp)

Main (services\partner\view_order.asp)


PrepareCopyAction

This sub prepares for the call to the function htmCopyActionHandler by initializing the values of all of the passed parameters other than the first two.

Definition

Sub PrepareCopyAction(

  byVal sSubAction,

  byVal sProfileIDs,

  byRef iProfileCount,

  byRef iStatusID,

  byRef sStatusField,

  byRef bValidPostedValues,

  byRef bDisplayPostedValues,

  byRef sProfileListPage,

  byRef listProfileSchema

)

Defined in File

services\include\edit_handlers.asp

Routines Called

iGetCountOfProfiles

listCloneProfileSchema

sGetThisPageProperty

Called By

htmEditPageActionHandlers


PrepareDefaultPage

This sub prepares for the call to the function htmRenderDefaultPage by initializing the values of all of the passed parameters other than the first one.

Definition

Sub PrepareDefaultPage(

  byVal CatalogSetID,

  byRef rsCatalogs,

  byRef iCatalogCount,

  byRef sCatalogName,

  byRef oCatalog,

  byRef oCategory,

  byRef rsProducts,

  byRef nPageNumber

)

Defined in File

default.asp

Routines Called

GetRecordCount

mscsGetCategoryObject

mscsGetProductList

mscsUserCatalogsFromID

Called By

Main (default.asp)


PrepareDeleteAction

This sub prepares for the call to the function htmDeleteActionHandler by initializing the values of the last two parameters.

Definition

Sub PrepareDeleteAction(

  byVal sSubAction,

  byVal sProfileIDs,

  byRef sProfileListPage,

  byRef iProfileCount

)

Defined in File

services\include\edit_handlers.asp

Routines Called

DeleteSelectedProfiles

iGetCountOfProfiles

sGetThisPageProperty

Called By

htmEditPageActionHandlers

Remarks

If the sSubAction parameter is set to MSGBOX_ACTION_YES, the sub DeleteSelectedProfiles is called to delete the profiles specified by the sProfileIDs parameter.


PrepareDeleteAllAction

This sub prepares for the call to the sub DeleteAllActionHandler by initializing the value of its one parameter.

Definition

Sub PrepareDeleteAllAction(

  byRef sProfileListPage

)

Defined in File

services\include\edit_handlers.asp

Routines Called

DeleteAllProfiles

dictGetSearchDictionaryForPage

sGetThisPageProperty

Called By

htmEditPageActionHandlers

Remarks

If the user chose "yes" in the associated message box, the sub DeleteAllProfiles is called to delete all profiles matching the search criteria.


PrepareDeselectAllAction

This sub prepares for the call to the sub DeSelectAllActionHandler by initializing the value of its one parameter.

Definition

Sub PrepareDeselectAllAction(

  byRef sProfileListPage

)

Defined in File

services\include\edit_handlers.asp

Routines Called

sGetThisPageProperty

Called By

htmEditPageActionHandlers


PrepareEditAction

This sub prepares for the call to the function htmEditAction by initializing the values of the last two parameters.

Definition

Sub PrepareEditAction(

  byVal sSubAction,

  byVal sProfileIDs,

  byRef iProfileCount,

  byRef listProfileSchema

)

Defined in File

services\include\edit_handlers.asp

Routines Called

iGetCountOfProfiles

listCloneProfileSchema

Called By

htmEditPageActionHandlers

Main (services\customer\account.asp)

Main (services\partner\account.asp)

Remarks

The listProfileSchema parameter is only initialized if the iProfileCount parameter is initialized to a value greater than zero (0).


PrepareEditAllAction

This sub initializes the parameters passed to it.

Definition

Sub PrepareEditAllAction(

  byRef iStatusID,

  byRef sStatusField,

  byRef bValidPostedValues,

  byRef bDisplayPostedValues,

  byRef listProfileSchema

)

Defined in File

services\include\edit_handlers.asp

Routines Called

listCloneProfileSchema

Called By

None.


PrepareInsertProfile

This sub prepares for the call to the function htmInsertProfile by initializing the values of all parameters other than sSubAction and sProfileIDs.

Definition

Sub PrepareInsertProfile(

  byVal sSubAction,

  byRef bInserted,

  byRef sProfileIDs,

  byRef sStatusField,

  byRef iStatusID,

  byRef bValidPostedValues,

  byRef bDisplayPostedValues,

  byRef listProfileSchema

)

Defined in File

services\include\edit_handlers.asp

Routines Called

bCheckIfProfileExists

bInsertProfile

listCloneProfileSchema

ValidateFields

Called By

htmSaveActionHandler

Remarks

This sub checks whether the specified profile exists before attempting to add it.

The sStatusField and iStatusID parameters are used to indicate errors.


PrepareLoginPage

This sub prepares for the call to the function htmRenderLoginPage by initializing the values of all parameters passed to it.

Definition

Sub PrepareLoginPage(

  byRef bSuccess,

  byRef bMustTransferBasket,

  byRef bDisplayGuestOption,

  byRef bDisplayNewUserRegistrationOption,

  byRef sUserID,

  byRef iErrorLevel,

  byRef rsLoginUser,

  byRef mscsGuestUser,

  byRef dictFldVals,

  byRef dictFldErrs,

  byRef listFlds,

  byRef listFrmErrs,

  byRef urlAction

)

Defined in File

login\login.asp

Routines Called

GenerateURL

GetCurrentUserProfile

GetQualifiedName

GetSubmittedFieldValues

IsFormSubmitted

MoveBasketItems

SetTestCookie

ValidateSubmittedLoginData

Called By

Main (login\login.asp)

Remarks

This sub performs a lot of processing, including retrieving data from a login form, if present, basket transfer where appropriate, and cookie and ticket processing.


PrepareLoginSection

This sub prepares for the call to the function htmRenderLoginSection by initializing the values of the passed parameters.

This function gets the current user profile and sets the sLoginName parameter to the current user name.

Definition

Sub PrepareLoginSection(

  byRef sAuthUser,

  byRef bFormLoginSupported,

  byRef mscsUser,

  byRef sLoginName

)

Defined in File

template\menu.asp

Routines Called

EnsureUserProfile

GetQualifiedName

Called By

htmRenderMenu

Remarks

This sub is called to prepare for the creation of the login section of the menu area.

The mscsUser and sLoginName parameters are not initialized in all cases.


PrepareLogoffPage

This sub prepares for the call to the function htmRenderLogoffPage by initializing the values of the parameters passed to it.

Definition

Sub PrepareLogoffPage(

  byRef bReEnterWithFormLogin,

  byRef bReEnterAsGuestOption

)

Defined in File

login\logoff.asp

Routines Called

GenerateURL

Called By

Main (login\logoff.asp)

Remarks

This function logs off the current user by causing the associated cookies to expire.


PrepareNewUserPage

This sub prepares for the call to the function htmRenderNewUserPage by initializing the values of the parameters passed to it. It also validates submitted form data and registers the user.

Definition

Sub PrepareNewUserPage(

  byRef urlAction,

  byRef dictFldVals,

  byRef dictFldErrs

)

Defined in File

login\newuser.asp

Routines Called

GenerateURL

GetCurrentUserProfile

GetQualifiedName

GetSubmittedFieldValues

IsFormSubmitted

iValidateSubmittedRegistrationData

mscsNewRegisteredUserProfile

mscsTransferGuestUserProfile

SetTestCookie

Called By

Main (login\newuser.asp)

Remarks

If the submitted form data is invalid or no form was submitted, this sub prepares to render the new user form.


PrepareOrderDetailsAction

This sub prepares for the call to the function htmOrderDetailsActionHandler by initializing the value of the iProfileCount parameter.

Definition

Sub PrepareOrderDetailsAction(

  byVal sSubAction,

  byVal sProfileIDs,

  byRef iProfileCount

)

Defined in File

services\include\order_handlers.asp

Routines Called

iGetCountOfProfiles

Called By

Main (services\customer\view_order.asp)

Main (services\partner\view_order.asp)


PrepareOrderList

This sub prepares for the calls to the routines formRenderOrderSearchOptions, formRenderOrdersListContents, rowRenderStatusInfo, and tableRenderFooterInfo by initializing the values of all parameters other than the first.

Definition

Sub PrepareOrderList(

  byVal sAction,

  byRef dictSearchOptions,

  byRef mscsUserProfile,

  byRef sStatusField,

  byRef iStatusID,

  byRef rsOrders,

  byRef iPageNumber,

  byRef iTotalRecords,

  byRef iTotalPages,

  byRef sCriteria,

  byRef sTargetPage

)

Defined in File

services\include\logic_orders.asp

Routines Called

EnsureUserProfile

GetRequestString

GetSearchDictionaryForThisPage

rsGetOrdersList

sGetThisPageProperty

Called By

htmRenderOrderList


PreparePickShipForm

This sub prepares for the call to the function htmRenderPickshipForm by initializing the values of the parameters passed to it.

Definition

Sub PreparePickShipForm(

  byRef mscsOrderGrp,

  byRef objContext,

  byRef dictAggregate,

  byRef bNoMethodsAvailable

)

Defined in File

pickship.asp

Routines Called

CatchErrors

dictAggregatePreviews

GenerateURL

GetPipelineLogFile

LoadBasket

rsGetShippingMethods

RunMtsPipeline

Called By

Main (pickship.asp)

Remarks

This sub performs a lot of processing in preparation for rendering the shipping method form, including loading the basket, running the basket pipeline, and creating and populating a Shipping object.


PrepareRenderMenu

This sub prepares for the call to the function htmRenderMenu by initializing the values of the parameters passed to it.

Definition

Sub PrepareRenderMenu(

  byRef mscsUser,

  byRef CatalogSetID

)

Defined in File

template\menu.asp

Routines Called

GetCurrentUserProfile

mscsUserCatalogsetID

Called By

This routine is called by code outside of any routine (sub or function) in the file template\menu.asp.


PrepareSaveAction

This sub currently performs no processing at all, but is called before calls to the function htmSaveActionHandler. If you modify the latter function and need to perform special preparation before calling it, consider adding the preparation code to this function.

Definition

Sub PrepareSaveAction()

Defined in File

services\include\edit_handlers.asp

Routines Called

None.

Called By

htmEditPageActionHandlers

Main (services\customer\account.asp)

Main (services\partner\account.asp)


PrepareSaveAllAction

This sub prepares for the call to the function htmSaveAllActionHandler by initializing the values of the parameters passed to it. When the profile changes are found to be valid, the sub SaveAllSelectedProfiles is called to save the changes.

Definition

Sub PrepareSaveAllAction(

  byRef StatusField,

  byRef iStatusID,

  byRef bValidPostedValues,

  byRef bDisplayPostedValues,

  byRef listProfileSchema

)

Defined in File

services\include\edit_handlers.asp

Routines Called

dictGetSearchDictionaryForPage

listCloneProfileSchema

listGetValidPropertiesForMultiEdit

listReConstructPropertiesSchema

SaveAllSelectedProfiles

sGetThisPageProperty

ValidateFields

Called By

htmSaveActionHandler

Remarks

When found to be valid, this sub saves the new property values entered by the user in all profiles returned from the search criteria in the corresponding list page.


PrepareSaveChangesConfirmation

This sub prepares for the call to the function htmChangePasswordActionHandler by initializing the values of all parameters passed to it other than the first. This sub is also called by PrepareSelectActionHandlerForEdit to help initialize its parameters.

Definition

Sub PrepareSaveChangesConfirmation(

  byVal sSubAction,

  byRef sPreviousAction,

  byRef listProfileSchema,

  byRef bValidPostedValues,

  byRef bDisplayPostedValues

)

Defined in File

services\include\messagebox_handlers.asp

Routines Called

GetRequestString

listCloneProfileSchema

ValidateFields

Called By

htmEditPageActionHandlers

Main (services\customer\account.asp)

PrepareSelectActionHandlerForEdit


PrepareSaveProfiles

This sub prepares for the call to the function htmSaveProfiles by initializing the values of all parameters passed to it other than the first three.

Definition

Sub PrepareSaveProfiles(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byRef bUpdated,

  byRef sSourcePage,

  byRef sStatusField,

  byRef iStatusID,

  byRef bValidPostedValues,

  byRef bDisplayPostedValues,

  byRef listProfileSchema

)

Defined in File

services\include\edit_handlers.asp

Routines Called

bCheckIfProfileExists

bSaveProfileDetails

GetRequestString

iGetCountOfProfiles

listCloneProfileSchema

listGetValidPropertiesForMultiEdit

listReConstructPropertiesSchema

rsGetProfileDetails

ValidateFields

Called By

htmSaveActionHandler


PrepareSelectActionHandlerForEdit

This sub prepares for the call to the function htmSelectActionHandlerForEdit by initializing the values of all parameters passed to it other than the first three.

Definition

Sub PrepareSelectActionHandlerForEdit(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byRef sActionPage,

  byRef sPreviousAction,

  byRef listProfileSchema,

  byRef bValidPostedValues,

  byRef bDisplayPostedValues

)

Defined in File

services\include\edit_handlers.asp

Routines Called

GenerateURL

PrepareSaveChangesConfirmation

sGetSelectActionPropertyName

Called By

Main (services\partner\account.asp)


PrepareSelectAllAction

This sub prepares for the call to the sub SelectAllActionHandler by initializing the value of the sProfileListPage parameter.

Definition

Sub PrepareSelectAllAction(

  byRef sProfileListPage

)

Defined in File

services\include\edit_handlers.asp

Routines Called

sGetThisPageProperty

Called By

htmEditPageActionHandlers


PrepareSelectedAction

This sub prepares for the call to the function htmSelectedActionHandlerForEdit by initializing the values of the last three parameters.

Definition

Sub PrepareSelectedAction(

  byRef sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byRef sStatusField,

  byRef iStatusID,

  byRef bValidPostedValues,

  byRef bDisplayPostedValues,

  byRef listProfileSchema

)

Defined in File

services\include\edit_handlers.asp

Routines Called

listCloneProfileSchema

UpdateSelectActionPropertyName

Called By

Main (services\partner\account.asp)

Remarks

This sub is called when the user has returned from a list page.


PrepareShippingMethods

This sub prepares for the call to the function htmRenderShippingMethods by initializing the value of the first parameter. The sSelectedMethodID parameter is initialized to the last shipping method chosen by the user, if any.

Definition

Sub PrepareShippingMethods(

  byRef mscsOrderGrp,

  byRef sSelectedMethodID

)

Defined in File

pickship.asp

Routines Called

GenerateURL

GetAnyLineItem

LoadBasket

Called By

Main (pickship.asp)

Remarks

This sub loads the basket and if found to be empty, redirects the user to the basket page.


PrepareSpecificationSearch

This sub prepares for the call to the function htmRenderStepSearchPageContent by initializing the values of the parameters passed to it. It does this by actually performing the indicated specification search.

Definition

Sub PrepareSpecificationSearch(

  byRef sCategoryName,

  byRef sCatalogName,

  byRef oCatalog,

  byRef bViewResults,

  byRef rsFields,

  byRef rsResults,

  byRef sSearchHandle,

  byRef iMatchesFound,

  byRef iConstraintFieldsCount,

  byRef iNonConstraintFieldsCount,

  byRef arr1,

  byRef arr2,

  byRef bNoValues,

  byRef bClosestMatches

)

Defined in File

stepsrch.asp

Routines Called

GetSpecificationSearchClauses

PerformSpecificationSearch

Called By

Main (stepsrch.asp)


ProfileRefresh

This sub refreshes the Profile Service.

Definition

Sub ProfileRefresh()

Defined in File

RefreshApp.asp

Routines Called

dictGetProfileSchemaForAllProfileTypes

InitProfileService

IsActiveDirectoryPresent

sGetActiveDirectoryDefaultNamingContext

Called By

This routine is called by code outside of any routine (sub or function) in the file RefreshApp.asp.


PTag

This function surrounds the string specified by the s parameter with the tags <P> and </P>, and then returns the resulting string.

Definition

Function PTag(

  s

)

Parameters

s

A string that contains the text to be wrapped in a P element, and then returned.

Return Value

A string that contains the text passed in the s parameter, surrounded by <P> and </P> tags.

Defined in File

include\html_lib.asp

Routines Called

None.

Called By

InsertParagraphBreaks


RecordClickToBasket

This sub records clicks associated with click-required discounts into the OrderGroup object for later use by the OrderDiscount component.

Definition

Sub RecordClickToBasket(

  ciid

)

Defined in File

redir.asp

Routines Called

EnsureAccess

LoadBasket

Called By

Main (redir.asp)


RedirectOrderDetailsForIDs

This sub is used to redirect the user to a page from which they can choose which order to retrieve details for.

Definition

Sub RedirectOrderDetailsForIDs()

Defined in File

services\include\order_handlers.asp

Routines Called

GenerateURL

sGetThisPageProperty

Called By

htmOrderDetailsActionHandler


ReDirectToPage

This sub generates a URL for the specified page and appends name/value argument pairs based on the corresponding values in the arrKeys and arrValues array parameters. It then redirects the user using the constructed URL.

Definition

Sub ReDirectToPage(

  byVal sPageName,

  byVal arrKeys,

  byVal arrValues

)

Defined in File

services\include\lib.asp

Routines Called

GenerateURL

Called By

DeleteAllActionHandler

DeSelectAllActionHandler

htmCopyActionHandler

htmDeleteActionHandler

htmEditAction

SelectAllActionHandler


RedirectToPOConfirmation

This sub saves the basket as an order and then redirects the user to the purchase order confirmation page.

Definition

Sub RedirectToPOConfirmation(

  mscsOrderGrp

)

Defined in File

po.asp

Routines Called

GenerateURL

SaveBasketAsOrder

Called By

Main (po.asp)


RelocateRecordPointer

This sub initializes local variables used in the paging mechanism of the page that lists orders. It also sets the current record in the Recordset object specified by the rs parameter to the beginning of the specified page number.

Definition

Sub RelocateRecordPointer(

  byRef Count,

  byRef nPage,

  byRef nCountTemp,

  byRef bRecordCountPresent,

  byVal rs,

  byRef iPageNumber,

  byRef iTotalRecords

)

Defined in File

services\include\lib.asp

Routines Called

None.

Called By

tableRenderOrdersListContents


RelocateRecordPointer2

This sub initializes local variables used in the paging mechanism of the page that lists profiles. It also sets the current record in the Recordset object specified by the rs parameter to the beginning of the specified page number.

Definition

Sub RelocateRecordPointer2(

  byRef Count,

  byRef nPage,

  byRef nCountTemp,

  byRef bRecordCountPresent,

  byVal rs,

  byRef iPageNumber,

  byRef iTotalRecords

)

Defined in File

services\include\render_list.asp

Routines Called

None.

Called By

tableRenderMultipleRecords


RemoveBlankItemsFromArray

This sub copies all non-empty strings from the array specified by the arrItems parameter into the array specified by the arrNew parameter, discarding any previous contents of the latter.

Definition

Sub RemoveBlankItemsFromArray(

  byRef arrItems,

  byRef arrNew

)

Defined in File

include\std_string_lib.asp

Routines Called

None.

Called By

ShowRefinedSearch


RemoveCreditCardInfo

This function removes credit card information from the specified OrderGroup object. It is used when a user wants to change from using a credit card order to using a purchase order.

Definition

Function RemoveCreditCardInfo(

  mscsOrderGrp

)

Parameters

mscsOrderGrp

A reference to the OrderGroup object from which all credit card information should be removed.

Return Value

Even though it is a function, this routine does not return any value.

Defined in File

po.asp

Routines Called

None.

Called By

SetPurchaseOrderInfo


RemoveEmptyOrderForms

This sub removes empty OrderForm objects from the specified OrderGroup object.

Definition

Sub RemoveEmptyOrderForms(

  mscsOrderGrp

)

Parameters

mscsOrderGrp

A reference to the OrderGroup object from which all empty OrderForm objects should be removed.

Defined in File

include\std_ordergrp_lib.asp

Routines Called

None.

Called By

CatchErrors (pickship.asp)

CatchErrors (summary.asp)

CatchErrorsForPaymentPages

CheckBasket


RemovePurchaseOrderInfo

This function removes purchase order information from the passed OrderGroup object. It is used when a user wants to change from using a purcahse order to using a credit card.

Definition

Function RemovePurchaseOrderInfo(

  mscsOrderGrp

)

Parameters

mscsOrderGrp

A reference to the OrderGroup object from which the all purchase order information should be removed.

Return Value

Even though it is a function, this routine does not return any value.

Defined in File

crdtcard.asp

Routines Called

None.

Called By

SetCreditCardInfo


RenderBasketPage

This sub renders the basket page, including the basket contents, discounts, and errors. It establishes the appropriate content in the two content variables htmPageContent and htmDiscountBannerSlot.

Definition

Sub RenderBasketPage(

  mscsOrderGrp,

  oOrderFormDisplayOrder,

  bBasketIsEmpty,

  iErrorCount

)

Defined in File

basket.asp

Routines Called

CollectBasketItems

GenerateURL

htmRenderBasket

htmRenderBasketWarnings

htmRenderCheckoutButton

htmRenderDiscountMessages

htmRenderPredictions

RenderDiscounts

RenderLink

RenderText

Called By

Main (basket.asp)


RenderCatalogLink

This function prepares the HTML that will render a link to the specified catalog, using the specified FONT element attributes for the link text style.

Definition

Function RenderCatalogLink(

  sCatalogName,

  style

)

Parameters

sCatalogName

A string that specifies the name of the catalog for which the link will be constructed.

style

A string that contains attributes appropriate for the FONT element, used when rendering the catalog link text.

Return Value

A string containing the HTML that will render the constructed catalog link.

Defined in File

include\catalog.asp

Routines Called

RenderCatalogURL

RenderLink

RenderText

Called By

htmRenderCatalogList


RenderCatalogURL

This function constructs the URL for a catalog. This produces the same result as calling the RenderCategoryURL function with an empty string for the sCategory parameter and the number one (1) for the nPage parameter.

Definition

Function RenderCatalogURL(

  sCatalogName

)

Parameters

sCatalogName

A string containing the name of the catalog for which the URL will be constructed.

Return Value

A string containing the constructed catalog URL.

Defined in File

include\catalog.asp

Routines Called

RenderCategoryURL

Called By

RenderCatalogLink


RenderCategoryLink

This function prepares the HTML that will render a link to the specified catalog, category, and page number, using the specified FONT element attributes for the link text style.

Definition

Function RenderCategoryLink(

  sCatalogName,

  sCategory,

  nPage,

  style

)

Parameters

sCatalogName

A string containing the name of the catalog for which the link will be constructed.

sCategory

A string containing the name of the category for which the link will be constructed.

nPage

A number corresponding to the page within the category for which the link will be constructed.

style

A string that contains attributes appropriate for the FONT element, which will be used when rendering the category link text.

Return Value

A string containing the HTML that will render the constructed category link.

Defined in File

include\catalog.asp

Routines Called

RenderCategoryURL

RenderLink

RenderText

Called By

htmRenderCategoriesList

RenderSearchResultRow

ShowSearchMatches


RenderCategoryURL

This function constructs the URL for a category by appending the specified catalog, category, and page number as arguments to the category page URL stored in the MSCSSitePages Dictionary object.

Definition

Function RenderCategoryURL(

  sCatalogName,

  sCategory,

  nPage

)

Parameters

sCatalogName

A string containing the name of the catalog for which the URL will be constructed.

sCategory

A string containing the name of the category for which the URL will be constructed.

nPage

A number corresponding to the page within the category for which the URL will be constructed.

Return Value

A string containing the constructed category URL.

Defined in File

include\catalog.asp

Routines Called

GenerateURL

Called By

htmRenderCategoryPage

RenderCatalogURL

RenderCategoryLink


RenderCheckBox

This function prepares the HTML that will render an INPUT element for which the TYPE attribute has been given a value of "CHECKBOX", and for which other attribute values are supplied by the parameters.

Definition

Function RenderCheckBox(

  byVal sName,

  byVal sValue,

  byVal bChecked,

  byVal sAttList

)

Parameters

sName

A string containing a value to be assigned to the NAME attribute.

sValue

A string containing a value to be assigned to the VALUE attribute.

bChecked

A Boolean, which if set to True, results in the CHECKED attribute being present in the resulting HTML.

sAttList

A string containing any additional, space-separated "attribute=value" pairs to be included in the INPUT element. This string, if non-empty, must begin with a space character.

Return Value

A string containing the HTML that will render the specified checkbox.

Defined in File

include\html_lib.asp

Routines Called

None.

Called By

htmRenderAddressBook

htmRenderBoolean

htmRenderFillOutForm

htmRenderUniqueIDForProfile

sRenderHTMLPreFixForProperty

tableRenderEditPageTasks


RenderDetailedInfoList

This function prepares the HTML that will render an unordered list containing detailed error information.

Definition

Function RenderDetailedInfoList()

Return Value

A string containing the detailed error information, formatted as an unordered list (UL element).

Defined in File

error\500error.asp

Routines Called

RenderErrorType

RenderPageInfo

RenderPostData

RenderTime

Called By

This routine is called by code outside of any routine (sub or function) in the file error\500error.asp.


RenderDiscounts

This function prepares the HTML that will render discount banners, typically in the content area associated with the content variable htmDiscountBannerSlot. The content is produced by calling the GetContent method of a ContentSelector object created within the function.

This function uses the two passed SimpleList objects, BasketDetails and ProductDetails, to give affinity to discounts that are completed by items in the basket, or to items that are shown on the page, respectively.

Definition

Function RenderDiscounts(

  ProductDetails,

  BasketDetails,

  nDiscountsToShow

)

Parameters

ProductDetails

When present, a SimpleList object assigned to a property of the ContentSelector object named "Products".

BasketDetails

When present, a SimpleList object assigned to a property of the ContentSelector object named "Items".

nDiscountsToShow

A number specifying the number of discounts to show, assigned to a property of the ContentSelector object named "NumRequested".

Return Value

A string containing the HTML that will result in the rendering of the appropriate discounts, typically within the content area associated with the content variable htmDiscountBannerSlot.

Defined in File

template\discount.asp

Routines Called

GetCurrentUserProfile

Called By

Main (product.asp)

RenderBasketPage

Remarks

The parameters ProductDetails and BasketDetails, when present, provide information to the associated Content Selection pipeline. This pipeline uses this information to propose discounts related to products being shown on the current page, or items currently in the basket, respectively.


RenderElement

This function prepares the HTML that will render an arbitrary HTML element and its associated attributes and content, as specified by the parameters.

Definition

Function RenderElement(

  byVal sElement,

  byVal sContent,

  byVal sAttList

)

Parameters

sElement

A string containing the name of the HTML element to be constructed for rendering.

sContent

A string containing the content to appear between the element starting and ending tags.

sAttList

A string containing any space-separated "attribute=value" pairs to be included in the starting element tag. This string, if non-empty, must begin with a space character.

Return Value

A string containing the HTML that will render the arbitrary HTML element.

Defined in File

include\html_lib.asp

Routines Called

None.

Called By

None.


RenderErrorType

This function prepares the HTML that will render detailed error information based on the contents of the object returned by a call to the GetLastError method of the intrinsic Server object.

Definition

Function RenderErrorType()

Return Value

A string containing the HTML that will render the detailed error information, formatted to make it more readable.

Defined in File

error\500error.asp

Routines Called

None.

Called By

RenderDetailedInfoList


RenderForm

This function prepares the HTML that will render the specified HTML form.

Definition

Function RenderForm(

  byVal urlAction,

  byVal htmBody,

  byVal iHTTPMethod

)

Parameters

urlAction

A string that contains the URL to be assigned to the ACTION attribute.

htmBody

A string containing the content for the body of the HTML FORM element being constructed. In other words, the content to appear between the <FORM> tag and the </FORM> tag.

iHTTPMethod

A number that specifies the value to be assigned to the METHOD attribute. If this parameter is equal to one (1), the METHOD attribute will be assigned the string "POST"; otherwise it will be assigned the string "GET".

Return Value

A string containing the HTML that will render the specified HTML form.

Defined in File

include\html_lib.asp

Routines Called

None.

Called By

formRenderBlankEditPageBody

formRenderChangePasswordPageContents

formRenderEditPageBody

formRenderListPageContents

formRenderOrderContents

formRenderOrderSearchOptions

formRenderOrdersListContents

formRenderPagingButtons

formRenderProfileSearchOptions

htmRenderAddressBook

htmRenderBasket

htmRenderBlankEditPage

htmRenderChangePasswordPage

htmRenderCheckoutButton

htmRenderEditPage

htmRenderFillOutForm

htmRenderOrderDetails

htmRenderOrderList

htmRenderPaymentOptionsForUser

htmRenderPickshipForm

htmRenderProfilesList

htmRenderSearchSection

htmRenderShippingMethods

htmRenderVerifyWithForm

Main (product.asp)

ShowRefinedSearch

tableRenderMessageBoxPageButtons


RenderHiddenField

This function prepares the HTML that will render an INPUT element for which the TYPE attribute has been given a value of "HIDDEN", and for which other attribute values are supplied by the parameters.

Definition

Function RenderHiddenField(

  byVal sName,

  byVal sValue

)

Parameters

sName

A string containing a value to be assigned to the NAME attribute.

sValue

A string containing a value to be assigned to the VALUE attribute.

Return Value

A string containing the HTML that represents the specified hidden INPUT element.

Defined in File

include\html_lib.asp

Routines Called

None.

Called By

cellRenderReadOnlyProperty

colRenderForeignKeyProperty

colRenderPrimaryKeyProperty

colRenderUniqueKeyProperty

formRenderBlankEditPageBody

formRenderChangePasswordPageContents

formRenderEditPageBody

formRenderListPageContents

formRenderOrderContents

formRenderOrderSearchOptions

formRenderPagingButtons

formRenderProfileSearchOptions

htmRenderFillOutForm

htmRenderPaymentOptionsForUser

htmRenderUniqueIDForProfile

htmRenderVerifyWithForm

Main (product.asp)

rowRenderHiddenProperty

ShowRefinedSearch

tableRenderMessageBoxPageButtons

tableRenderOrdersListContents


RenderImage

This function prepares the HTML that will render an IMG element for which other attribute values are supplied by the parameters.

Definition

Function RenderImage(

  byVal urlSource,

  byVal iWidth,

  byVal iHeight,

  byVal sDesc,

  byVal sAttList

)

Parameters

urlSource

A string containing a URL to be assigned to the SRC attribute.

iWidth

A string containing a value to be assigned to the WIDTH attribute.

iHeight

A string containing a value to be assigned to the HEIGHT attribute.

sDesc

A string containing text to be assigned to the ALT attribute.

sAttList

A string containing any additional, space-separated "attribute=value" pairs to be included in the IMG element. This string, if non-empty, must begin with a space character.

Return Value

A string containing the HTML that will render the specified image.

Defined in File

include\html_lib.asp

Routines Called

None.

Called By

htmRenderUserDefinedProductProperties


RenderImageButton

This function prepares the HTML that will render an INPUT element for which the TYPE attribute has been given a value of "IMAGE", and for which other attribute values are supplied by the parameters.

Definition

Function RenderImageButton(

  byVal sImageName,

  byVal sImageSource,

  byVal sAttList

)

Parameters

sImageName

A string containing text to be assigned to the NAME attribute.

sImageSource

A string containing a URL to be assigned to the SRC attribute.

sAttList

A string containing any additional, space-separated "attribute=value" pairs to be included in the INPUT element. This string, if non-empty, must begin with a space character.

Return Value

A string containing the HTML that will render the specified image button.

Defined in File

include\html_lib.asp

Routines Called

None.

Called By

None.


RenderLink

This function prepares the HTML that will render a link (an HTML A element) for which the attribute values and hot text are supplied by the parameters.

Definition

Function RenderLink(

  byVal url,

  byVal htmText,

  byVal sAttList

)

Parameters

url

A string containing a URL to be assigned to the HREF attribute.

htmText

A string containing the hot text of the link. In other words, the text to appear between the <A> tag and the </A> tag.

sAttList

A string containing any additional, space-separated "attribute=value" pairs to be included in the starting A element. This string, if non-empty, must begin with a space character.

Return Value

A string containing the HTML that will render the specified link.

Defined in File

include\html_lib.asp

Routines Called

None.

Called By

colRenderAdvancedSearchTab

colRenderSimpleSearchTab

htmRenderAddressBookPage

htmRenderAddressRows

htmRenderBasket

htmRenderCategoryPage

htmRenderConfirmationPage

htmRenderCustomerServiceSection

htmRenderLoginPage

htmRenderLoginSection

htmRenderLogoffPage

htmRenderOrderForm

htmRenderPartnerServiceSection

htmRenderPickshipForm

htmRenderSearchDeptPageContent

htmRenderSearchSection

htmRenderShippingMethods

Main (error\badurl.asp)

Main (error\noauth.asp)

Main (error\profile.asp)

Main (welcome.asp)

RenderBasketPage

RenderCatalogLink

RenderCategoryLink

RenderNavbar

RenderProductLink


RenderListBox

This function prepares the HTML that will render a SELECT element and its subordinate OPTION elements, populating the values for the various attributes and content based on the values supplied by the parameters.

Definition

Function RenderListBox(

  byVal iSource,

  byVal sName,

  colItemNames,

  colItemValues,

  byVal sSelectedOption,

  byVal iSize,

  byVal bMultiple,

  byVal sAttList

)

Parameters

iSource

A number that specifies the type of the colItemNames and colItemValues parameters. Legal values are the constants SIMPLELIST_COLLECTION, DICTIONARY_COLLECTION, and ARRAY_COLLECTION, each specifying the indicated type of collection.

sName

A string containing a value to be assigned to the NAME attribute.

colItemNames

A SimpleList object, a Dictionary object, or an array that contains the names of the selection choices that the user will see in the listbox, specified as content of the corresponding OPTION elements. The iSource parameter specifies the type of this parameter.

colItemValues

A SimpleList object, a Dictionary object, or an array that contains the values of the selection choices, used as the values assigned to the VALUE attributes of the corresponding OPTION elements. The iSource parameter specifies the type of this parameter.

sSelectedOption

A string that, if found to match one of the values supplied in the colItemValues parameter, results in the SELECTED attribute being present in the corresponding OPTION element.

iSize

A number containing a value to be assigned to the SIZE attribute.

bMultiple

A Boolean, which if set to True, results in the MULTIPLE attribute being present in the SELECT element.

sAttList

A string containing any additional, space-separated "attribute=value" pairs to be included in the SELECT element. This string, if non-empty, must begin with a space character.

Return Value

A string containing the HTML that will render the specified listbox.

Defined in File

include\html_lib.asp

Routines Called

None.

Called By

RenderListBoxFromArray

RenderListBoxFromSimpleList

Remarks

The pair of SimpleList objects, Dictionary objects, or arrays specified by the colItemNames and colItemValues parameters must each have the same number items.


RenderListBoxFromArray

This function prepares the HTML that will render a SELECT element and its subordinate OPTION elements, populating the values for the various attributes and content based on the values supplied by the parameters. It serves as a wrapper for the function RenderListBox, hardcoding the iSource parameter to the constant ARRAY_COLLECTION, and passing through all other parameters as is.

Definition

Function RenderListBoxFromArray(

  byVal sName,

  arrItemNames,

  arrItemValues,

  byVal sSelectedOption,

  byVal iSize,

  byVal bMultiple,

  byVal sAttList

)

Parameters

sName

A string containing a value to be assigned to the NAME attribute.

arrItemNames

An array that contains the names of the selection choices that the user will see in the listbox, specified as content of the corresponding OPTION elements.

arrItemValues

An array that contains the values of the selection choices, used as the values assigned to the VALUE attributes of the corresponding OPTION elements.

sSelectedOption

A string that, if found to match one of the values supplied in the colItemValues parameter, results in the SELECTED attribute being present in the corresponding OPTION element.

iSize

A number containing a value to be assigned to the SIZE attribute.

bMultiple

A Boolean, which if set to True, results in the MULTIPLE attribute being present in the SELECT element.

sAttList

A string containing any additional, space-separated "attribute=value" pairs to be included in the SELECT element. This string, if non-empty, must begin with a space character.

Return Value

A string containing the HTML that will render the specified listbox.

Defined in File

include\html_lib.asp

Routines Called

RenderListBox

Called By

ShowRefinedSearch

Remarks

The pair of arrays specified by the colItemNames and colItemValues parameters must each have the same number items.


RenderListBoxFromSimpleList

This function prepares the HTML that will render a SELECT element and its subordinate OPTION elements, populating the values for the various attributes and content based on the values supplied by the parameters. It serves as a wrapper for the function RenderListBox, hardcoding the iSource parameter to the constant SIMPLELIST_COLLECTION, and passing through all other parameters as is.

Definition

Function RenderListBoxFromSimpleList(

  byVal sName,

  listItemNames,

  listItemValues,

  byVal sSelectedOption,

  byVal iSize,

  byVal bMultiple,

  byVal sAttList

)

Parameters

sName

A string containing a value to be assigned to the NAME attribute.

listItemNames

A SimpleList object that contains the names of the selection choices that the user will see in the listbox, specified as content of the corresponding OPTION elements.

listItemValues

A SimpleList object that contains the values of the selection choices, used as the values assigned to the VALUE attributes of the corresponding OPTION elements.

sSelectedOption

A string that, if found to match one of the values supplied in the colItemValues parameter, results in the SELECTED attribute being present in the corresponding OPTION element.

iSize

A number containing a value to be assigned to the SIZE attribute.

bMultiple

A Boolean, which if set to True, results in the MULTIPLE attribute being present in the SELECT element.

sAttList

A string containing any additional, space-separated "attribute=value" pairs to be included in the SELECT element. This string, if non-empty, must begin with a space character.

Return Value

A string containing the HTML that will render the specified listbox.

Defined in File

include\html_lib.asp

Routines Called

RenderListBox

Called By

htmRenderFillOutForm

htmRenderPaymentOptionsForUser

Remarks

The pair of SimpleList objects specified by the colItemNames and colItemValues parameters must each have the same number items.


RenderListFromSimpleList

This function prepares the HTML that will render a sequence of formatted text items, each followed by the BR element.

Definition

Function RenderListFromSimpleList(

  listItems,

  style

)

Parameters

listItems

A SimpleList object containing strings to be rendered using the FONT element attributes specified by the style parameter, and each followed by a BR element.

style

A string containing a space-separated list of "attribute=value" pairs to be passed to the RenderText function as its sAttList parameter, and used as attributes to the FONT element. This string, if non-empty, must begin with a space character.

Return Value

A string containing the HTML that will render the specified list of formatted text items, where each item is followed by a BR element so that it will render on its own line.

Defined in File

include\html_lib.asp

Routines Called

RenderText

Called By

None.


RenderNavbar

This function prepares the HTML that will render the navigation bar, which includes links to the home page, the catalog, and the basket, surrounded by square brackets.

Definition

Function RenderNavbar(

  byVal style

)

Parameters

style

This parameter is not used.

Return Value

A string containing the HTML that will render the navigation bar.

Defined in File

template\navbar.inc

Routines Called

CacheFragment

GenerateURL

LookupCachedFragment

RenderLink

RenderText

Tag

Called By

This routine is called by code outside of any routine (sub or function) in the file template\navbar.inc.


RenderPageInfo

This function prepares the HTML that will render the contents of the server request variables REQUEST_METHOD and SCRIPT_NAME, and is called as part of the error information formatted by the function RenderDetailedInfoList.

Definition

Function RenderPageInfo()

Return Value

A string containing the HTML that will render the contents of the server request variables REQUEST_METHOD and SCRIPT_NAME.

Defined in File

error\500error.asp

Routines Called

None.

Called By

RenderDetailedInfoList


RenderPasswordBox

This function prepares the HTML that will render an INPUT element for which the TYPE attribute has been given a value of "PASSWORD", and for which other attribute values are supplied by the parameters.

Definition

Function RenderPasswordBox(

  byVal sName,

  byVal sValue,

  byVal iSize,

  byVal iMaxLength,

  byVal sAttList

)

Parameters

sName

A string containing a value to be assigned to the NAME attribute.

sValue

A string containing a value to be assigned to the VALUE attribute.

iSize

A number containing a value to be assigned to the SIZE attribute.

iMaxLength

A number containing a value to be assigned to the MAXLENGTH attribute.

sAttList

A string containing any additional, space-separated "attribute=value" pairs to be included in the INPUT element. This string, if non-empty, must begin with a space character.

Return Value

A string containing the HTML that will render the specified password box.

Defined in File

include\html_lib.asp

Routines Called

None.

Called By

colRenderPasswordProperty

htmRenderFillOutForm

tableRenderChangePasswordContents


RenderPostData

This function prepares the HTML that will render the contents of a posted form, and is called as part of the error information formatted by the function RenderDetailedInfoList. Only the first lngMaxFormBytes will be included, and the contents will be HTML encoded.

Definition

Function RenderPostData()

Return Value

A string containing the HTML that will render the first lngMaxFormBytes bytes of the posted form.

Defined in File

error\500error.asp

Routines Called

None.

Called By

RenderDetailedInfoList


RenderPreFormattedText

This function prepares the HTML that will render the passed string as pre-formatted text.

Definition

Function RenderPreFormattedText(

  byVal s,

  byVal style

)

Parameters

s

A string containing the text to be placed within PRE tags.

style

This parameter is not used.

Return Value

A string containing the contents of the s parameters, surrounded with <PRE> and </PRE> tags.

Defined in File

include\html_lib.asp

Routines Called

Tag

Called By

htmRenderDiscountMessageGroup

htmRenderDiscountsApplied

htmRenderDiscountsDescriptions


RenderProductLink

This function prepares the HTML that will render a link to the product specified by the parameters, using the specified FONT element attributes for the link text style.

Definition

Function RenderProductLink(

  sCatalogName,

  sProductCategory,

  sProductName,

  sProductID,

  style

)

Parameters

sCatalogName

A string that specifies the name of the catalog in which the product appears, used to construct the URL for the link.

sProductCategory

A string that specifies the name of the category in which the product appears, used to construct the URL for the link.

sProductName

A string that specifies the name of the product, used for the hot text of the link.

sProductID

A string that specifies the product ID, used to construct the URL for the link.

style

A string that contains attributes appropriate for the FONT element, used when rendering the hot text of the link.

Return Value

A string containing the HTML that will render the constructed product link.

Defined in File

include\catalog.asp

Routines Called

RenderLink

RenderProductURL

RenderText

Called By

htmRenderProductsTable

RenderSearchResultRow

ShowSearchMatches


RenderProductURL

This function constructs the URL for the specified product.

Definition

Function RenderProductURL(

  sCatalogName,

  sProductCategory,

  sProductID

)

Parameters

sCatalogName

A string that specifies the name of the catalog in which the product appears, used to construct the URL for the product.

sProductCategory

A string that specifies the name of the category in which the product appears, used to construct the URL for the product.

sProductID

A string that specifies the product ID, used to construct the URL for the product.

Return Value

A string containing the URL for the product.

Defined in File

include\catalog.asp

Routines Called

GenerateURL

Called By

RenderProductLink


RenderRadioButton

This function prepares the HTML that will render an INPUT element for which the TYPE attribute has been given a value of "RADIO", and for which other attribute values are supplied by the parameters.

Definition

Function RenderRadioButton(

  byVal sName,

  byVal sValue,

  byVal bChecked,

  byVal sAttList

)

Parameters

sName

A string containing a value to be assigned to the NAME attribute.

sValue

A string containing a value to be assigned to the VALUE attribute.

bChecked

A Boolean, which if set to True, results in the CHECKED attribute being present in the resulting HTML.

sAttList

A string containing any additional, space-separated "attribute=value" pairs to be included in the INPUT element. This string, if non-empty, must begin with a space character.

Return Value

A string containing the HTML that will render the specified radio button.

Defined in File

include\html_lib.asp

Routines Called

None.

Called By

arrPopulateOrderHeaderDetails

htmRenderAddressRows

htmRenderShippingMethods

htmRenderShippingOptionsEx

htmRenderUniqueIDForProfile

htmRenderVariantsList


RenderResetButton

This function prepares the HTML that will render an INPUT element for which the TYPE attribute has been given a value of "RESET", and for which other attribute values are supplied by the parameters.

Definition

Function RenderResetButton(

  byVal sBtnName,

  byVal sBtnText,

  byVal sAttList

)

Parameters

sBtnName

A string containing a value to be assigned to the NAME attribute.

sBtnText

A string containing a value to be assigned to the VALUE attribute, which will appear as the text of the Reset button.

sAttList

A string containing any additional, space-separated "attribute=value" pairs to be included in the INPUT element. This string, if non-empty, must begin with a space character.

Return Value

A string containing the HTML that will render the specified Reset button.

Defined in File

include\html_lib.asp

Routines Called

None.

Called By

htmRenderFillOutForm


RenderSearchResultRow

This function prepares the HTML that will render the current record from a Recordset object containing search results.

Definition

Function RenderSearchResultRow(

  rsResult,

  style

)

Parameters

rsResult

A Recordset object from which the current record will be used to provide data for the HMTL to be constructed.

style

A string containing a space-separated list of "attribute=value" pairs to be passed to the RenderText function as its sAttList parameter, and used as attributes to the FONT element. This string, if non-empty, must begin with a space character.

Return Value

A string containing the HTML that will render the current record from the passed search results Recordset object.

Defined in File

include\catalog.asp

Routines Called

FormatOutput

RenderCategoryLink

RenderProductLink

RenderText

Called By

RenderSearchResults


RenderSearchResults

This function prepares the HTML that will render the search results contained in the passed Recordset object.

Definition

Function RenderSearchResults(

  byVal sPhrase,

  byVal rsResult,

  byVal iRecordCount,

  byVal style

)

Parameters

sPhrase

A string containing the search criteria, to be included in the resulting HTML.

rsResult

A Recordset object containing the search results to include in the resulting HTML.

iRecordCount

A number specifying the number of records in the Recordset object specified by the rsResult parameter, to be included in the resulting HTML.

style

A string containing a space-separated list of "attribute=value" pairs to be passed to the RenderText function as its sAttList parameter, and used as attributes to the FONT element. This string, if non-empty, must begin with a space character.

Return Value

A string containing the HTML that will render the search results contained in the passed Recordset object.

Defined in File

include\catalog.asp

Routines Called

RenderSearchResultRow

RenderText

Called By

htmRenderFullTextSearchResults


RenderSubmitButton

This function prepares the HTML that will render an INPUT element for which the TYPE attribute has been given a value of "SUBMIT", and for which other attribute values are supplied by the parameters.

Definition

Function RenderSubmitButton(

  byVal sBtnName,

  byVal sBtnText,

  byVal sAttList

)

Parameters

sBtnName

A string containing a value to be assigned to the NAME attribute.

sBtnText

A string containing a value to be assigned to the VALUE attribute, which will appear as the text of the Submit button.

sAttList

A string containing any additional, space-separated "attribute=value" pairs to be included in the INPUT element. This string, if non-empty, must begin with a space character.

Return Value

A string containing the HTML that will render the specified Submit button.

Defined in File

include\html_lib.asp

Routines Called

None.

Called By

colRenderForeignKeyProperty

colRenderPasswordProperty

formRenderOrderSearchOptions

formRenderPagingButtons

formRenderProfileSearchOptions

htmRenderAddressBook

htmRenderBasket

htmRenderCheckoutButton

htmRenderFillOutForm

htmRenderPaymentOptionsForUser

htmRenderPickshipForm

htmRenderSearchSection

htmRenderShippingMethods

htmRenderVerifyWithForm

Main (product.asp)

ShowRefinedSearch

tableChangePasswordTasks

tableRenderEditPageTasks

tableRenderListPageTasks

tableRenderMessageBoxPageButtons

tableRenderOrdersListTasks

tblOrderDetailsTasks


RenderTable

This function prepares the HTML that will render a TABLE element for which the attributes and content are supplied by the parameters.

Definition

Function RenderTable(

  byVal htmRows,

  byVal sAttList

)

Parameters

htmRows

A string containing the contents of the table, presumably a series of TR elements.

sAttList

A string containing any space-separated "attribute=value" pairs to be included in the starting TABLE tag. This string, if non-empty, must begin with a space character.

Return Value

A string containing the HTML that will render the specified table.

Defined in File

include\html_lib.asp

Routines Called

None.

Called By

formRenderOrderSearchOptions

formRenderProfileSearchOptions

htmRenderAddressRows

htmRenderBasket

htmRenderBlankEditPage

htmRenderChangePasswordPage

htmRenderEditPage

htmRenderEmptyRecordSet

htmRenderFillOutForm

htmRenderMenu

htmRenderOrderDetails

htmRenderOrderForm

htmRenderOrderList

htmRenderProductsTable

htmRenderProfilesList

htmRenderShippingMethods

htmRenderShippingOptionsEx

htmRenderSummaryPage

htmRenderVariantsList

tableChangePasswordTasks

tableRenderBlankProfile

tableRenderChangePasswordContents

tableRenderEditPageTasks

tableRenderFooterInfo

tableRenderListPageTasks

tableRenderMessageBoxPage

tableRenderMessageBoxPageButtons

tableRenderMultipleRecords

tableRenderOrdersListContents

tableRenderOrdersListTasks

tableRenderProfiles

tblOrderDetailsTasks

tblRenderOrderDetailsContents


RenderTableDataRow

This function prepares the HTML that will render a row of data within a table. In other words, a series of TD elements wrapped in a TR element. It serves as a wrapper for the function RenderTableRow, hardcoding the iRowType parameter to the constant DATA_ROW, and passing through all other parameters as is.

Definition

Function RenderTableDataRow(

  arrData,

  arrDataAttLists,

  byVal sRowAttList

)

Parameters

arrData

An array of data to be displayed in the row, one array element per table column (TD element). The value Null and an empty string ("") are acceptable values for elements in this array.

arrDataAttLists

An array of strings, where each string contains a space-separated list of "attribute=value" pairs to be included in the corresponding TD element. These strings, if non-empty, must begin with a space character. If the array is not empty, it must have the same number of elements as the array specified by the arrData parameter. If the array is empty, the series of TD elements produced will not have any attributes associated with them.

sRowAttList

A string containing a space-separated list of "attribute=value" pairs to be included in the TR element, thereby affecting the entire row.

Return Value

A string containing the HTML that will render the specified row of data in the table.

Defined in File

include\html_lib.asp

Routines Called

RenderTableRow

Called By

htmRenderAddressRows

htmRenderBasket

htmRenderFillOutForm

htmRenderGrandTotals

htmRenderOrderForm

htmRenderProductsTable

htmRenderShippingMethods

htmRenderShippingOptionsEx

htmRenderSummaryPage

htmRenderVariantsList

Remarks

If table cells have identical alignment (for example, center-aligned), there is no need to align cells individually. Simply specify the alignment for the row in the sRowAttList parameter and set the arrDataAttLists parameter to an empty array.


RenderTableHeaderRow

This function prepares the HTML that will render a header row within a table. In other words, a series of TH elements wrapped in a TR element. It serves as a wrapper for the function RenderTableRow, hardcoding the iRowType parameter to the constant HEADER_ROW, and passing through all other parameters as is.

Definition

Function RenderTableHeaderRow(

  arrData,

  arrDataAttLists,

  byVal sRowAttList

)

Parameters

arrData

An array of header strings to be displayed in the row, one array element per table column (TH element). The value Null and an empty string ("") are acceptable values for elements in this array.

arrDataAttLists

An array of strings, where each string contains a space-separated list of "attribute=value" pairs to be included in the corresponding TH element. These strings, if non-empty, must begin with a space character. If the array is not empty, it must have the same number of elements as the array specified by the arrData parameter. If the array is empty, the series of TH elements produced will not have any attributes associated with them.

sRowAttList

A string containing a space-separated list of "attribute=value" pairs to be included in the TR element, thereby affecting the entire row.

Return Value

A string containing the HTML that will render the specified header row in the table.

Defined in File

include\html_lib.asp

Routines Called

RenderTableRow

Called By

htmRenderAddressRows

htmRenderBasket

htmRenderOrderForm

htmRenderProductsTable

htmRenderShippingMethods

htmRenderShippingOptionsEx

htmRenderSummaryPage

htmRenderVariantsList

Remarks

If table cells have identical alignment (for example, center-aligned), there is no need to align cells individually. Simply specify the alignment for the row in the sRowAttList parameter and set the arrDataAttLists parameter to an empty array.


RenderTableRow

This function prepares the HTML that will render a header or data row within a table. In other words, a series of either TH or TD elements wrapped in a TR element. It performs the real work for the functions RenderTableHeaderRow and RenderTableDataRow, which hardcode the iRowType parameter to the constants HEADER_ROW and DATA_ROW, respectively, and passing through all other parameters as is.

Definition

Function RenderTableRow(

  arrData,

  arrDataAttLists,

  byVal sRowAttList,

  byVal iRowType

)

Parameters

arrData

An array of header strings or data to be displayed in the row, one array element per table column (either TH or TD elements, depending on the value of the iRowType parameter). The value Null and an empty string ("") are acceptable values for elements in this array.

arrDataAttLists

An array of strings, where each string contains a space-separated list of "attribute=value" pairs to be included in the corresponding TH or TD element. These strings, if non-empty, must begin with a space character. If the array is not empty, it must have the same number of elements as the array specified by the arrData parameter. If the array is empty, the series of TH or TD elements produced will not have any attributes associated with them.

sRowAttList

A string containing a space-separated list of "attribute=value" pairs to be included in the TR element, thereby affecting the entire row.

iRowType

A number which must be set to one of the two constants HEADER_ROW or DATA_ROW, specifying the use of TH or TD tags, respectively.

Return Value

A string containing the HTML that will render the specified header or data row in the table.

Defined in File

include\html_lib.asp

Routines Called

None.

Called By

RenderTableDataRow

RenderTableHeaderRow

Remarks

If table cells have identical alignment (for example, center-aligned), there is no need to align cells individually. Simply specify the alignment for the row in the sRowAttList parameter and set the arrDataAttLists parameter to an empty array.


RenderText

This function prepares the HTML that will render the specified string wrapped in FONT tags, and assigned the specified FONT-specific attributes.

Definition

Function RenderText(

  byVal str,

  byVal sAttList

)

Parameters

str

A string containing the text to be wrapped in FONT tags.

sAttList

A string containing a space-separated list of "attribute=value" pairs to be associated with the FONT element. This string, if non-empty, must begin with a space character.

Return Value

A string containing the HTML that will render the passed string as specified by the FONT-specific attributes in the sAttList parameter.

Defined in File

include\html_lib.asp

Routines Called

None.

Called By

bFullTextResultsAreCached

colRenderPropertyTip

htmCategoryHTML

htmRenderAddressBook

htmRenderAddressBookPage

htmRenderAddressForm

htmRenderAddressRows

htmRenderBasket

htmRenderBasketWarnings

htmRenderBlankEditPage

htmRenderBuiltInProperties

htmRenderCatalogSection

htmRenderCategoryPage

htmRenderChangePasswordPage

htmRenderConfirmationPage

htmRenderCreditCardPage

htmRenderCurrency

htmRenderCustomerServiceSection

htmRenderDefaultPage

htmRenderEditPage

htmRenderFillOutForm

htmRenderFullTextSearchResults

htmRenderLoginPage

htmRenderLoginSection

htmRenderLogoffPage

htmRenderNewUserPage

htmRenderOrderDetails

htmRenderOrderForm

htmRenderOrderList

htmRenderPartnerServiceSection

htmRenderPaymentOptionsForUser

htmRenderPaymentOptionsPage

htmRenderPickshipForm

htmRenderProfilesList

htmRenderSearchDeptPageContent

htmRenderSearchSection

htmRenderShippingMethods

htmRenderStepSearchPageContent

htmRenderSummaryPage

htmRenderUserDefinedProductProperties

Main (addrform.asp)

Main (error\baditem.asp)

Main (error\badurl.asp)

Main (error\closed.asp)

Main (error\construc.asp)

Main (error\noauth.asp)

Main (error\profile.asp)

Main (product.asp)

Main (services\error\badaction.asp)

Main (services\error\noaccess.asp)

Main (services\error\noorder.asp)

Main (services\error\noorgprofile.asp)

Main (services\error\noprofile.asp)

Main (welcome.asp)

RenderBasketPage

RenderCatalogLink

RenderCategoryLink

RenderListFromSimpleList

RenderNavbar

RenderProductLink

RenderSearchResultRow

RenderSearchResults

RenderUnorderedList

rowRenderStatusInfo

ShowRefinedSearch

ShowSearchMatches

tableRenderFooterInfo


RenderTextBox

This function prepares the HTML that will render an INPUT element for which the TYPE attribute has been given a value of "TEXT", and for which other attribute values are supplied by the parameters.

Definition

Function RenderTextBox(

  byVal sName,

  byVal sValue,

  byVal iSize,

  byVal iMaxLength,

  byVal sAttList

)

Parameters

sName

A string containing a value to be assigned to the NAME attribute.

sValue

A string containing a value to be assigned to the VALUE attribute.

iSize

A number containing a value to be assigned to the SIZE attribute.

iMaxLength

A number containing a value to be assigned to the MAXLENGTH attribute.

sAttList

A string containing any additional, space-separated "attribute=value" pairs to be included in the INPUT element. This string, if non-empty, must begin with a space character.

Return Value

A string containing the HTML that will render the specified text box.

Defined in File

include\html_lib.asp

Routines Called

None.

Called By

colRenderPrimaryKeyProperty

colRenderProperty

colRenderUniqueKeyProperty

formRenderPagingButtons

htmRenderBasket

htmRenderFillOutForm

htmRenderSearchSection

Main (product.asp)

rowRenderAdvancedSearchOptionsForOrders

rowRenderSearchOptionForDate

rowRenderSearchOptionForString


RenderTime

This function prepares the HTML that will render the current time, appropriately formatted, and is called as part of the error information formatted by the function RenderDetailedInfoList.

Definition

Function RenderTime()

Return Value

A string containing the HTML that will render the current time, appropriately formatted.

Defined in File

error\500error.asp

Routines Called

None.

Called By

RenderDetailedInfoList


RenderUnorderedList

This function prepares the HTML that will render an unordered list from the data in the passed array. In other words, a series of LI elements wrapped in a UL element.

Definition

Function RenderUnorderedList(

  byVal arrItem,

  byVal sty

)

Parameters

arrItem

An array of data for which each contained element will be wrapped in an LI element.

sty

A string containing a space-separated list of "attribute=value" pairs appropriate for the FONT element, within which each item within the array specified by the arrItem parameter will be wrapped. This string, if non-empty, must begin with a space character.

Return Value

A string containing the HTML that will render the data specified by the arrItem parameter as an unordered list, where the font of each list item is styled as specified by the sty parameter.

Defined in File

include\html_lib.asp

Routines Called

RenderText

Called By

htmRenderOrderForm

Main (error\baditem.asp)

Main (error\badurl.asp)


RenderUnorderedListFromSimpleList

This function prepares the HTML that will render a series of list elements from the data in the passed SimpleList object. In other words, a series of LI elements.

Definition

Function RenderUnorderedListFromSimpleList(

  listItems,

  byVal sAttList

)

Parameters

listItems

A SimpleList object containing the strings to be displayed in the list, one string per list item.

sAttList

A string containing a space-separated list of "attribute=value" pairs appropriate for the LI element, to be associated with each LI element in the resulting string. This string, if non-empty, must begin with a space character.

Return Value

A string containing the HTML that will render the data specified by the listItems parameter as a series of LI elements, which must then be appropriately wrapped outside this function (for example, in an OL or UL element).

Defined in File

include\html_lib.asp

Routines Called

None.

Called By

None.

Remarks

Despite its name, this function only produces a series of LI elements, and does not wrap them in an UL element. Since the caller must provide this functionality, you could wrap the list in either an OL or an UL element.


rowRenderAdvancedSearchOptionsForOrders

This function prepares the HTML that will render advanced search options within the orders form in Partner Services.

Definition

Function rowRenderAdvancedSearchOptionsForOrders(

  byVal dictSearchOptions,

  byVal mscsUserProfile

)

Defined in File

services\include\render_orders.asp

Routines Called

GetRequestString

htmRenderBlankSpaces

RenderTextBox

rowRenderSearchOptionForInteger

rowRenderSearchOptionForString

TRTag

Called By

formRenderOrderSearchOptions

Remarks

This function is used only by Partner and/or Customer Services.


rowRenderBlankProperty

This function prepares the HTML that will render a row in a table that corresponds to a blank property. This row contains three cells: either an image or a checkbox, the display name, and the value, respectively.

An additional row is added if there is an error associated with the property. This second row contains three cells: two blank cells followed by a cell in which a validation failure message can be displayed.

Definition

Function rowRenderBlankProperty(

  byVal sAction,

  byVal sSubAction,

  byVal oProperty,

  byVal listProfileSchema,

  byVal bValidPostedValues,

  byVal sProfileIDs,

  byVal bDisplayPostedValues

)

Defined in File

services\include\render_edit_blank.asp

Routines Called

colRenderProperty

rowRenderPropertyTip

sRenderHTMLPreFixForProperty

TRTag

varGetValueFromPropertyDictionaries

varGetValueFromRequestObject

Called By

tableRenderBlankProfile

Remarks

This function is used only by Partner and/or Customer Services.


rowRenderEditSheetBlankLine

This function prepares the HTML that will render a blank line in an edit sheet table.

Definition

Function rowRenderEditSheetBlankLine()

Defined in File

services\include\render_common.asp

Routines Called

htmRenderBlankSpaces

TRTag

Called By

tableRenderBlankProfile

tableRenderProfiles

Remarks

This function is used only by Partner and/or Customer Services.


rowRenderHeader

This function allows you to put a common toolbar (containing, for example, a Help button) at the top of every page. It currently does nothing.

Definition

Function rowRenderHeader()

Defined in File

services\include\render_common.asp

Routines Called

None.

Called By

htmRenderBlankEditPage

htmRenderChangePasswordPage

htmRenderEditPage

htmRenderOrderDetails

htmRenderOrderList

htmRenderProfilesList

Remarks

This function is used only by Partner and/or Customer Services.


rowRenderHiddenProperty

This function prepares the HTML that will include hidden properties as INPUT elements with their TYPE attribute set to "HIDDEN".

Definition

Function rowRenderHiddenProperty(

  byVal sAction,

  byVal sSubAction,

  byVal oProperty,

  byVal rsProfile,

  byVal sProfileIDs

)

Defined in File

services\include\render_edit_common.asp

Routines Called

iGetCountOfProfiles

RenderHiddenField

Called By

tableRenderProfiles

Remarks

This function is used only by Partner and/or Customer Services.


rowRenderLineItemHeader

This function prepares the HTML that will render the header row for a table of line items in an order.

Definition

Function rowRenderLineItemHeader()

Defined in File

services\include\render_orders.asp

Routines Called

htmRenderBlankSpaces

TRTag

Called By

tblRenderOrderDetailsContents

Remarks

This function is used only by Partner and/or Customer Services.


rowRenderListHeading

This function prepares the HTML that will render the header row for a table of profile properties, skipping properties that are designated as not to be shown.

Definition

Function rowRenderListHeading()

Defined in File

services\include\render_list.asp

Routines Called

htmRenderBlankSpaces

listCloneProfileSchema

TRTag

Called By

tableRenderMultipleRecords

Remarks

This function is used only by Partner and/or Customer Services.


rowRenderListHeadingForOrders

This function prepares the HTML that will render the header row for a table of orders.

Definition

Function rowRenderListHeadingForOrders()

Defined in File

services\include\render_orders.asp

Routines Called

htmRenderBlankSpaces

TRTag

Called By

tableRenderOrdersListContents

Remarks

This function is used only by Partner and/or Customer Services.


rowRenderMessageBoxPageContents

This function prepares the HTML that will render the contents for the message box page.

Definition

Function rowRenderMessageBoxPageContents(

  byVal arrBody,

  byVal bNumberList

)

Defined in File

services\include\render_messagebox.asp

Routines Called

htmRenderBlankSpaces

TRTag

Called By

tableRenderMessageBoxPage

Remarks

This function is used only by Partner and/or Customer Services.


rowRenderProperty

This function prepares the HTML that will render a row in a table that corresponds to a property that is accessible to the current user. This row contains three cells: either an image or a checkbox, the display name, and the value, respectively.

An additional row is added if there is an error associated with the property. This second row contains three cells: two blank cells followed by a cell in which a validation failure message can be displayed.

Definition

Function rowRenderProperty(

  byVal sAction,

  byVal sSubAction,

  byVal oProperty,

  byVal listProfileSchema,

  byVal bValidPostedValues,

  byVal rsProfile,

  byVal sProfileIDs,

  byVal bDisplayPostedValues

)

Defined in File

services\include\render_edit_common.asp

Routines Called

colRenderPrimaryKeyProperty

colRenderProperty

colRenderUniqueKeyProperty

rowRenderPropertyTip

sRenderHTMLPreFixForProperty

TRTag

varGetPropertyValue

Called By

tableRenderProfiles

Remarks

This function is used only by Partner and/or Customer Services.


rowRenderPropertyGroup

This function prepares the HTML that will render a row containing a property group heading.

Definition

Function rowRenderPropertyGroup(

  byVal oProperty

)

Defined in File

services\include\render_edit_common.asp

Routines Called

Bold

htmRenderBlankSpaces

TRTag

Called By

tableRenderBlankProfile

tableRenderProfiles

Remarks

This function is used only by Partner and/or Customer Services.


rowRenderPropertyTip

This function examines the specified property, and if found to have an error associated with it, adds a table row that displays an error message in the third of three cells.

Definition

Function rowRenderPropertyTip(

  byVal oProperty,

  byVal listProfileSchema

)

Defined in File

services\include\render_edit_common.asp

Routines Called

colRenderPropertyTip

htmRenderBlankSpaces

TRTag

Called By

rowRenderBlankProperty

rowRenderProperty

Remarks

This function is used only by Partner and/or Customer Services.


rowRenderReadOnlyProperty

This function prepares the HTML that will render a row in a table that corresponds to a read-only property. This row contains three cells: blank, the display name, and the value, respectively.

An INPUT element of with TYPE attribute set to "HIDDEN" is also added, which also includes the field name and value as the values of the NAME and VALUE attributes, respectively.

Definition

Function rowRenderReadOnlyProperty(

  byVal sAction,

  byVal sSubAction,

  byVal oProperty,

  byVal bValidPostedValues,

  byVal sProfileIDs,

  byVal rsProfile

)

Defined in File

services\include\render_edit_common.asp

Routines Called

cellRenderReadOnlyProperty

iGetCountOfProfiles

varGetValueFromRequestObject

Called By

tableRenderBlankProfile

tableRenderProfiles

Remarks

This function is used only by Partner and/or Customer Services.


rowRenderSearchOptionForDate

This function prepares the HTML that will render a row in a table that contains two columns: the property display name, and a pair of text boxes that correspond to a starting and ending date.

Definition

Function rowRenderSearchOptionForDate(

  byVal oProperty,

  byVal dictSearchOptions

)

Defined in File

services\include\render_common.asp

Routines Called

htmRenderBlankSpaces

RenderTextBox

TRTag

Called By

rowsRenderAdvanceSearchOptionsForProfiles

rowsRenderSimpleSearchOptionsForProfiles

Remarks

This function allows searching on properties of type DATETIME.

This function is used only by Partner and/or Customer Services.


rowRenderSearchOptionForInteger

This function prepares the HTML that will render a row in a table that contains two columns: the property display name, and a list box displaying options appropriate for one of four possible properties: user status, partner services role, order status, and types of dates associated with the order.

Definition

Function rowRenderSearchOptionForInteger(

  byVal sFieldName,

  byVal sDisplayName,

  byVal iFieldValue

)

Defined in File

services\include\render_common.asp

Routines Called

htmRenderOrderDateTypes

htmRenderOrderStatusOptions

htmRenderPartnerDeskRoles

htmRenderUserStatusOptions

TRTag

Called By

rowRenderAdvancedSearchOptionsForOrders

rowsRenderAdvanceSearchOptionsForProfiles

rowsRenderSimpleSearchOptionsForProfiles

Remarks

This function is used only by Partner and/or Customer Services.


rowRenderSearchOptionForString

This function prepares the HTML that will render a row in a table that contains two columns: the property display name, and a text box for entering a string value for which to search.

Definition

Function rowRenderSearchOptionForString(

  byVal sFieldDisplayText,

  byVal sFieldName,

  byVal bFieldMessage,

  byVal iMaxSize,

  byVal varFieldValue

)

Defined in File

services\include\render_common.asp

Routines Called

RenderTextBox

TRTag

Called By

rowRenderAdvancedSearchOptionsForOrders

rowRenderSimpleSearchOptionsForOrders

rowsRenderAdvanceSearchOptionsForProfiles

rowsRenderSimpleSearchOptionsForProfiles

Remarks

This function is used only by Partner and/or Customer Services.


rowRenderSimpleSearchOptionsForOrders

This function prepares the HTML that will render simple search options within the orders form in Partner Services.

Definition

Function rowRenderSimpleSearchOptionsForOrders(

  byVal dictSearchOptions,

  byVal mscsUserProfile

)

Defined in File

services\include\render_orders.asp

Routines Called

rowRenderSearchOptionForString

Called By

formRenderOrderSearchOptions

Remarks

This function is used only by Partner and/or Customer Services.


rowRenderStatusInfo

This function prepares the HTML that will render a row in a table that contains one column in which status information is placed based on the values of the parameters.

Definition

Function rowRenderStatusInfo(

  byVal sStatusField,

  byVal iStatusID,

  byVal iProfileCount,

  byVal bDisplayCount

)

Defined in File

services\include\render_common.asp

Routines Called

FormatOutput

GetRequestString

htmRenderBlankSpaces

RenderText

TRTag

Called By

htmRenderBlankEditPage

htmRenderChangePasswordPage

htmRenderEditPage

htmRenderOrderList

htmRenderProfilesList

Remarks

This function is used only by Partner and/or Customer Services.


rowsRenderAdvanceSearchOptionsForProfiles

This function prepares the HTML that will render a series of rows in a table where each row allows advanced search criterion for profiles to be specified.

Definition

Function rowsRenderAdvanceSearchOptionsForProfiles(

  byVal dictSearchOptions

)

Defined in File

services\include\render_list.asp

Routines Called

listCloneProfileSchema

rowRenderSearchOptionForDate

rowRenderSearchOptionForInteger

rowRenderSearchOptionForString

Called By

formRenderProfileSearchOptions

Remarks

This function is used only by Partner and/or Customer Services.


rowsRenderSimpleSearchOptionsForProfiles

This function prepares the HTML that will render a series of rows in a table where each row allows simple search criterion for profiles to be specified.

Definition

Function rowsRenderSimpleSearchOptionsForProfiles(

  byVal dictSearchOptions

)

Defined in File

services\include\render_list.asp

Routines Called

listCloneProfileSchema

rowRenderSearchOptionForDate

rowRenderSearchOptionForInteger

rowRenderSearchOptionForString

Called By

formRenderProfileSearchOptions

Remarks

This function is used only by Partner and/or Customer Services.


rsFreeTextSearch

This function performs a free text search and returns the results as a Recordset object. The number of records retrieved is set in the iRecordCount parameter.

Definition

Function rsFreeTextSearch(

  byVal sPhrase,

  byVal iStartingRecord,

  byVal iRecordsToRetrieve,

  byRef iRecordCount

)

Defined in File

include\catalog.asp

Routines Called

sUserCatalogsAsString

Called By

Main (search.asp)


rsGetOrderDetails

This function retrieves the detailed information for the specified order and returns the result as a Recordset object.

Definition

Function rsGetOrderDetails(

  byVal sID

)

Defined in File

services\include\requisition.asp

Routines Called

GetRequestString

Called By

CheckIfOrderExists

htmRenderOrderDetailsForIDs

Remarks

This function is used only by Partner and/or Customer Services.


rsGetOrdersList

This function retrieves orders based on the specified filter criteria and returns the result as a Recordset object.

Definition

Function rsGetOrdersList(

  byVal dictSearchOptions,

  byRef iPageNumber,

  byRef iTotalRecords,

  byRef iTotalPages

)

Defined in File

services\include\requisition.asp

Routines Called

EnsureUserProfile

Called By

PrepareOrderList

Remarks

This function is used only by Partner and/or Customer Services.


rsGetOrgDetails

This function retrieves detailed information about the specified organization and returns the result as a Recordset object.

Definition

Function rsGetOrgDetails(

  byVal sID

)

Defined in File

services\include\get_profiles.asp

Routines Called

rsGetProfileByKey

Called By

rsGetProfileDetails

Remarks

This function is used only by Partner and/or Customer Services.


rsGetProfile

This function retrieves the specified profile and returns it in a Recordset object.

Definition

Function rsGetProfile(

  byVal sProfileID,

  byVal sProfileType,

  byVal bForceDBLookUp

)

Defined in File

include\std_profile_lib.asp

Routines Called

GetProfileFromDB

Called By

bAddUserToGroup

bCheckIfProfileExists

bRemoveUserFromGroup

FetchData (_setadrs.asp)

FetchData (newaddr.asp)

iValidateSubmittedRegistrationData

ValidateSubmittedLoginData

Remarks

The bForceDBLookUp parameter is used to force a database lookup, overruling the value in the variable m_iGlobalProfileLookUpOption.


rsGetProfileByKey

This function retrieves the profile specified by the passed key name/value pair, and returns it in a Recordset object.

Definition

Function rsGetProfileByKey(

  byVal sKeyName,

  byVal sKeyValue,

  byVal sProfileType,

  byVal bForceDBLookUp

)

Defined in File

include\std_profile_lib.asp

Routines Called

GetProfileFromDB

Called By

GetOrgAttributeFromID

mscsUserCatalogsetID

rsGetOrgDetails

rsGetUserDetails

SaveUserPropertyForID

Remarks

The bForceDBLookUp parameter is used to force a database lookup, overruling the value in the variable m_iGlobalProfileLookUpOption.


rsGetProfileDetails

This function retrieves detailed information about the specified user or organization profile and returns the result as a Recordset object. It serves as a dispatch function for the functions rsGetOrgDetails and rsGetUserDetails, which do the real work.

Definition

Function rsGetProfileDetails(

  byVal sProfileIDs

)

Defined in File

services\include\get_profiles.asp

Routines Called

rsGetOrgDetails

rsGetUserDetails

sGetThisPageProperty

Called By

bProfileHasChanged

bSaveProfileAndRedirect

CheckIfProfilesExist

htmRenderChangePasswordPage

htmRenderEditPage

PrepareSaveProfiles

UpdateSelectActionPropertyName

Remarks

This function is used only by Partner and/or Customer Services.


rsGetProfilesList

This function retrieves a set of user profiles based on the specified filter criteria, returning the result as a Recordset object.

Definition

Function rsGetProfilesList(

  byVal dictSearchOptions,

  byRef iTotalRecords

)

Defined in File

services\include\get_profiles.asp

Routines Called

GetQualifiedName

GetTableNameAndWhereClause

listCloneProfileSchema

sConstructWHEREclause

Called By

htmRenderProfilesList

Remarks

This function uses ADO to execute a SQL command directly.

This function is used only by Partner and/or Customer Services.


rsGetShippingMethods

This function retrieves the available shipping methods using the ShippingMethodManager object, and returning the result in a Recordset object containing columns for the shipping method ID, name, and description, respectively.

Definition

Function rsGetShippingMethods()

Defined in File

pickship.asp

Routines Called

None.

Called By

Main (pickship.asp)

PreparePickShipForm


rsGetUserDetails

This function retrieves the profile for the specified user, and returns the results in a Recordset object.

Definition

Function rsGetUserDetails(

  byVal sID

)

Defined in File

services\include\get_profiles.asp

Routines Called

GetCurrentUserProfile

rsGetProfileByKey

Called By

GetUserPropertyFromID

rsGetProfileDetails

UpdateUserPasswordProperty

Remarks

This function is used only by Partner and/or Customer Services.


RsToDict

This function creates a new Dictionary object and populates it with the fields of the current record in the passed Recordset object. The field names are used as the dictionary keys, and the field values are assigned to the corresponding keys.

Definition

Function RsToDict(

  rs

)

Defined in File

include\std_util_lib.asp

Routines Called

GetDictionary

Called By

dictGetInitialFieldValues

Main (_setadrs.asp)


RunMtsPipeline

This function runs one of four pipelines on the passed OrderGroup object: Product, Basket, Total, or Checkout. It establishes the appropriate context dictionary and logging support prior to running the pipeline.

Definition

Function RunMtsPipeline(

  byVal sPipeName,

  byVal sPipeLogName,

  byVal mscsOrderGrp

)

Parameters

sPipeName

A string specifying the type of pipeline to run: Product, Basket, Total, or Checkout.

sPipeLogName

A string specifying the name of the pipeline log file to create, if any.

mscsOrderGrp

A reference to the OrderGroup object for which the pipeline will be run.

Return Value

The number returned by the RunPipe method of the OrderGroup object, indicating whether the pipeline succeeded or failed.

Defined in File

include\std_pipeline_lib.asp

Routines Called

CheckOut

GetCurrentUserProfile

GetDictionary

Called By

CheckBasket

CheckOut

GetBasketDetails

InitializeSummaryPage

PreparePickShipForm

RunOrderPipeline

Remarks

The pipeline is run with or without transaction support based on the value of the variable g_sPipelineProgID, as established in the files include\header.asp and include\txheader.asp.

For moreinformation about the use of pipelines in the Solution Sites, see Pipelines.


RunOrderPipeline

This sub runs the Order Processing pipeline and processes any errors it returns.

Definition

Sub RunOrderPipeline(

  mscsOrderGrp

)

Parameters

mscsOrderGrp

A reference to the OrderGroup object for which the pipeline will be run.

Defined in File

_recvpo.asp

Routines Called

GetPipelineLogFile

RunMtsPipeline

Called By

Main (_recvpo.asp)

Remarks

For more information about the use of pipelines in the Solution Sites, see Pipelines.


S - V

This section contains topics for the following routines, beginning with the letters S through V.

Routine | File
sAddCriteriaToQuery | services\include\profiles_common.asp
sAddEndDate | services\include\profiles_common.asp
sAddSetClause | services\include\profiles_common.asp
sAddSQLNumber | services\include\profiles_common.asp
sAddSQLString | services\include\profiles_common.asp
sAddStartDate | services\include\profiles_common.asp
sAddWhereClauseForActiveUsers | services\include\save_all_profiles.asp
sAddWhereClauseForPartnerRole | services\include\save_all_profiles.asp
SaveAddressToOrderGroup | addrform.asp
SaveAllSelectedProfiles | services\include\save_all_profiles.asp
SaveBasketAsOrder | include\payment.asp
SaveCommonValueForAllSelectedRecords | services\include\save_one_profile.asp
SaveProfileProperty | services\include\save_one_profile.asp
SaveReadOnlyProperty | services\include\save_one_profile.asp
SaveSAMAccountNameProperty | services\include\save_one_profile.asp
SaveUserAccountControlProperty | services\include\save_one_profile.asp
SaveUserParentDNProperty | services\include\save_one_profile.asp
SaveUserPartnerDeskRoleProperty | services\include\save_one_profile.asp
SaveUserPropertyForID | services\include\save_one_profile.asp
sChopOffLeft | include\std_string_lib.asp
sChopOffRight | include\std_string_lib.asp
sConstructWHEREclause | services\include\profiles_common.asp
SelectAllActionHandler | services\include\edit_handlers.asp
SelectedActionHandlerForList | services\include\list_handlers.asp
SetCreditCardInfo | crdtcard.asp
SetGlobalPagingVariables | services\include\lib.asp
SetKeyOnOrderForms | include\std_ordergrp_lib.asp
SetOptOutList | opt-out.asp
SetPurchaseOrderInfo | po.asp
SetTestCookie | include\std_cookie_lib.asp
SetupAddressForm | newaddr.asp
SetupPage | include\setupenv.asp
sGetAction | services\include\initialize.asp
sGetActiveDirectoryDefaultNamingContext | include\global_siteconfig_lib.asp
sGetAddressName | services\include\logic_orders.asp
sGetAdminsOnly | services\include\save_one_profile.asp
sGetDefaultShippingMethod | pickship.asp
sGetDisplayValueForProperty | services\include\lib.asp
sGetIDFromForm | services\include\initialize.asp
sGetOrderStatusDetails | services\include\lib.asp
sGetPageHeading | services\include\render_common.asp
sGetParentDN | services\include\lib.asp
sGetPaymentMethodString | services\include\logic_orders.asp
sGetPropertyDisplayName | product.asp
sGetReferenceString | include\global_siteterms_lib.asp
sGetScriptError | BDRefresh.asp
sGetSelectActionPropertyName | services\include\lib.asp
sGetSelectedIDs | services\include\initialize.asp
sGetSubAction | services\include\initialize.asp
sGetThisPageProperty | services\include\lib.asp
sGetUserAccessForThisProperty | services\include\lib.asp
sGetUserFullName | services\include\get_profiles.asp
sGetUserIDForNewGuestUser | include\std_access_lib.asp
sGetUserLoginName | services\include\get_profiles.asp
sGetUserPartnerDeskRole | services\include\lib.asp
sGetUsersOnly | services\include\save_one_profile.asp
sGetUserStatus | services\include\lib.asp
sGetWhereClauseForCurrentUser | services\include\delete_profiles.asp
ShowRefinedSearch | stepsrch.asp
ShowSearchMatches | stepsrch.asp
sLookUpPaymentMethod | dispatch.asp
SortDictionaryKeys | include\std_util_lib.asp
Space | include\std_string_lib.asp
sReConstructPageURL | services\include\render_common.asp
sRenderAddress | services\include\render_orders.asp
sRenderHTMLPreFixForProperty | services\include\render_edit_common.asp
sReplaceString | services\include\render_common.asp
StringToBoolean | include\std_string_lib.asp
SubmitUsingBizTalk | include\payment.asp
sUserCatalogsAsString | include\catalog.asp
tableChangePasswordTasks | services\include\render_password.asp
tableRenderBlankProfile | services\include\render_edit_blank.asp
tableRenderChangePasswordContents | services\include\render_password.asp
tableRenderEditPageTasks | services\include\render_edit_common.asp
tableRenderFooterInfo | services\include\render_common.asp
tableRenderListPageTasks | services\include\render_list.asp
tableRenderMessageBoxPageButtons | services\include\render_messagebox.asp
tableRenderMessageBoxPage | services\include\render_messagebox.asp
tableRenderMultipleRecords | services\include\render_list.asp
tableRenderOrdersListContents | services\include\render_orders.asp
tableRenderOrdersListTasks | services\include\render_orders.asp
tableRenderProfiles | services\include\render_edit_common.asp
Tag | include\html_lib.asp
tblOrderDetailsTasks | services\include\render_orders.asp
tblRenderOrderDetailsContents | services\include\render_orders.asp
TDTag | services\include\lib.asp
TerminateConfirmationPage | confirm.asp
TerminatePO | po.asp
TerminateSummaryPage | summary.asp
THTag | services\include\lib.asp
TRTag | services\include\lib.asp
UpdateAddressBook | newaddr.asp
UpdatePasswordActionHandler | services\include\password_handlers.asp
UpdateSelectActionPropertyName | services\include\save_one_profile.asp
UpdateUserAccountControlProperty | services\include\save_all_profiles.asp
UpdateUserPasswordProperty | services\include\save_one_profile.asp
UpdateUserProfile | include\std_profile_lib.asp
ValidateFields | services\include\lib.asp
ValidateSubmittedCreditCardData | crdtcard.asp
ValidateSubmittedLoginData | login\login.asp
ValidateSubmittedPurchaseOrderData | po.asp
varGetPropertyValue | services\include\render_edit_common.asp
varGetValueFromPropertyDictionaries | services\include\render_edit_common.asp
varGetValueFromRequestObject | services\include\render_edit_common.asp
varUpdateValueForCurrentAction | services\include\render_edit_common.asp


sAddCriteriaToQuery

This function builds a Transact-SQL statement.

Definition

Function sAddCriteriaToQuery(

  byRef bFieldSelected,

  byVal oProperty,

  byVal dictSearchOptions

)

Defined in File

services\include\profiles_common.asp

Routines Called

sAddEndDate

sAddSQLNumber

sAddSQLString

sAddStartDate

Called By

sConstructWHEREclause


sAddEndDate

This function adds an End Date clause.

Definition

Function sAddEndDate(

  byVal sClause,

  byVal sPropertName,

  byVal sPropertyValue

)

Defined in File

services\include\profiles_common.asp

Routines Called

GetODBCTimeStamp

Called By

sAddCriteriaToQuery


sAddSetClause

This function adds a Set clause.

Definition

Function sAddSetClause(

  byVal sPropertyName,

  byVal iPropertyType,

  byVal varPropertyValue,

  byRef bFieldUpdated

)

Defined in File

services\include\profiles_common.asp

Routines Called

None.

Called By

AddSetClauseAndUpdateUserAccountControl

SaveAllSelectedProfiles

UpdateUserAccountControlProperty


sAddSQLNumber

This function adds an AND clause for a property of type number.

Definition

Function sAddSQLNumber(

  byVal sClause,

  byVal sPropertyName,

  byVal sPropertyValue

)

Defined in File

services\include\profiles_common.asp

Routines Called

None.

Called By

sAddCriteriaToQuery

sAddWhereClauseForActiveUsers

sAddWhereClauseForPartnerRole


sAddSQLString

This function adds an "AND property LIKE value" clause for a property of type string.

Definition

Function sAddSQLString(

  byVal sClause,

  byVal sPropertyName,

  byVal sPropertyValue

)

Defined in File

services\include\profiles_common.asp

Routines Called

HandleSingleQuote

Called By

sAddCriteriaToQuery


sAddStartDate

This function adds a Start Date clause.

Definition

Function sAddStartDate(

  byVal sClause,

  byVal sPropertName,

  byVal sPropertyValue

)

Defined in File

services\include\profiles_common.asp

Routines Called

GetODBCTimeStamp

Called By

sAddCriteriaToQuery


sAddWhereClauseForActiveUsers

This function adds an AND or WHERE "USER_STATUS = ACCOUNT_ACTIVE" clause.

Definition

Function sAddWhereClauseForActiveUsers(

  byRef bFieldSelected

)

Defined in File

services\include\save_all_profiles.asp

Routines Called

sAddSQLNumber

Called By

GetUserAccountControl


sAddWhereClauseForPartnerRole

This function adds an AND or WHERE "FIELD_USER_PARTNERDESK_ROLE = iPartnerDeskRole" clause.

Definition

Function sAddWhereClauseForPartnerRole(

  byRef bFieldSelected,

  byVal iPartnerDeskRole

)

Defined in File

services\include\save_all_profiles.asp

Routines Called

sAddSQLNumber

Called By

UpdateUserAccountControlProperty


SaveAddressToOrderGroup

This sub saves an address to an order group.

Definition

Sub SaveAddressToOrderGroup(

  mscsOrderGrp,

  dictFldVals,

  byVal iAddrType

)

Defined in File

addrform.asp

Routines Called

GetSavedAddressID

SetKeyOnOrderForms

Called By

Main (addrform.asp)


SaveAllSelectedProfiles

This sub saves all selected profiles.

Definition

Sub SaveAllSelectedProfiles(

  byRef sStatusField,

  byRef iStatusID,

  byVal dictSearchOptions

)

Defined in File

services\include\save_all_profiles.asp

Routines Called

AddSetClauseAndUpdateUserAccountControl

bCheckIfThePropertyFeatureIsSupported

GetRequestString

GetTableNameAndWhereClause

iGetCurrentUserPropertyAccessClass

listCloneProfileSchema

sAddSetClause

sConstructWHEREclause

sGetUserAccessForThisProperty

Called By

PrepareSaveAllAction


SaveBasketAsOrder

This sub saves the basket as an order and deletes old baskets. It also invokes the BizTalk Server as appropriate, and calls the routine Analysis_LogSubmitOrder for analysis purposes.

Definition

Sub SaveBasketAsOrder(

  mscsOrderGrp

)

Parameters

mscsOrderGrp

A reference to an OrderGroup object containing the contents of the basket.

Defined in File

include\payment.asp

Routines Called

Analysis_LogSubmitOrder

GetOrderGroupManager

InvokeBizTalk

Called By

InitializeCreditcardPage

RedirectToPOConfirmation


SaveCommonValueForAllSelectedRecords

This sub saves a common value to all the selected records.

Definition

Sub SaveCommonValueForAllSelectedRecords(

  byVal sSubAction,

  byVal sPropertyName,

  byVal varValue,

  byVal sProfileIDs

)

Defined in File

services\include\save_one_profile.asp

Routines Called

GetRequestString

SaveUserPropertyForID

sGetThisPageProperty

Called By

bSaveReadWriteProperty

SaveReadOnlyProperty

SaveUserAccountControlProperty

SaveUserPartnerDeskRoleProperty

UpdateSelectActionPropertyName


SaveProfileProperty

This sub saves a property value in a profile.

Definition

Sub SaveProfileProperty(

  byRef rsProfile,

  byVal sPropertyName,

  byVal sValue

)

Defined in File

services\include\save_one_profile.asp

Routines Called

None.

Called By

SaveUserPropertyForID

UpdateSelectActionPropertyName


SaveReadOnlyProperty

This sub saves any read-only property.

Definition

Sub SaveReadOnlyProperty(

  byVal sSubAction,

  byVal oProperty,

  byVal rsProfiles,

  byVal sProfileIDs

)

Defined in File

services\include\save_one_profile.asp

Routines Called

EnsureUserProfile

GetQualifiedName

iGetCountOfProfiles

SaveCommonValueForAllSelectedRecords

Called By

bInsertProperty

bSaveProperty

Remarks

Generally, this function only handles cases where the property changed is a ChangedBy or ChangedDate field.


SaveSAMAccountNameProperty

This sub saves the SAMAccountName property.

Definition

Sub SaveSAMAccountNameProperty(

  byVal sSubAction,

  byRef oProperty,

  byRef rsProfiles

)

Defined in File

services\include\save_one_profile.asp

Routines Called

GetRequestString

Called By

bInsertProfileDetails


SaveUserAccountControlProperty

This sub saves the User Account Control property (Active Directory specific).

Definition

Sub SaveUserAccountControlProperty(

  byVal sSubAction,

  byVal oProperty,

  byVal sProfileIDs,

  byVal rsProfiles

)

Defined in File

services\include\save_one_profile.asp

Routines Called

GetActiveUsersOnly

GetRequestString

iGetCountOfProfiles

SaveCommonValueForAllSelectedRecords

sGetAdminsOnly

sGetUsersOnly

Called By

bInsertProfileDetails

bSaveProfileDetails


SaveUserParentDNProperty

This sub saves the User ParentDN property (Active Directory specific).

Definition

Sub SaveUserParentDNProperty(

  byVal sSubAction,

  byVal oProperty,

  byVal rsProfiles

)

Defined in File

services\include\save_one_profile.asp

Routines Called

GetOrgAttributeFromID

Called By

bInsertProfileDetails


SaveUserPartnerDeskRoleProperty

This sub saves the User Partner Desk Role property.

Definition

Sub SaveUserPartnerDeskRoleProperty(

  byVal sSubAction,

  byVal oProperty,

  byVal rsProfile,

  byVal sProfileIDs,

  byRef arrPrevRole,

  byRef arrCurrentRole

)

Defined in File

services\include\save_one_profile.asp

Routines Called

GetRequestString

GetUserPropertyFromID

iGetCountOfProfiles

SaveCommonValueForAllSelectedRecords

Called By

bInsertProfileDetails

bSaveProfileDetails


SaveUserPropertyForID

This sub saves the User property for a user ID.

Definition

Sub SaveUserPropertyForID(

  byVal sAttributeName,

  byVal sID,

  byVal sValue

)

Defined in File

services\include\save_one_profile.asp

Routines Called

rsGetProfileByKey

SaveProfileProperty

Called By

SaveCommonValueForAllSelectedRecords


sChopOffLeft

This function deletes the left section of the sValue parameter string corresponding to the sToChopOffLeft parameter string, providing that the sValue parameter string begins with the sToChopOffLeft parameter string.

Definition

Function sChopOffLeft(

  sValue,

  sToChopOffLeft

)

Defined in File

include\std_string_lib.asp

Routines Called

None.

Called By

None.


sChopOffRight

This function deletes the right section of the sValue parameter string corresponding to the sToChopOffRight parameter string, providing the sValue parameter string ends with the sToChopOffRight parameter string.

Definition

Function sChopOffRight(

  sValue,

  sToChopOffRight

)

Defined in File

include\std_string_lib.asp

Routines Called

None.

Called By

None.


sConstructWHEREclause

This function constructs a WHERE clause.

Definition

Function sConstructWHEREclause(

  byRef bFieldSelected,

  byRef dictSearchOptions

)

Defined in File

services\include\profiles_common.asp

Routines Called

listCloneProfileSchema

sAddCriteriaToQuery

Called By

DeleteAllProfiles

rsGetProfilesList

SaveAllSelectedProfiles

UpdateUserAccountControlProperty


SelectAllActionHandler

This sub provides the "Select All" action handler.

Definition

Sub SelectAllActionHandler(

  byVal sProfileListPage

)

Defined in File

services\include\edit_handlers.asp

Routines Called

ReDirectToPage

Called By

htmEditPageActionHandlers


SelectedActionHandlerForList

This sub provides the "Selected" action handler for a LIST-type page.

Definition

Sub SelectedActionHandlerForList(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs

)

Defined in File

services\include\list_handlers.asp

Routines Called

GenerateURL

iGetCountOfProfiles

sGetSelectActionPropertyName

sGetThisPageProperty

Called By

htmListPageActionHandlers


SetCreditCardInfo

This sub sets the credit card information on all order forms.

Definition

Sub SetCreditCardInfo(

  mscsOrderGrp,

  dictKeys

)

Defined in File

crdtcard.asp

Routines Called

RemovePurchaseOrderInfo

SetKeyOnOrderForms

Called By

ValidateSubmittedCreditCardData


SetGlobalPagingVariables

This sub sets the global paging variables depending on the local variables passed to the sub.

Definition

Sub SetGlobalPagingVariables(

  byVal bRecordCountPresent,

  byVal nCountTemp,

  byRef iTotalRecords,

  byRef iPageNumber,

  byRef iTotalPages,

  byVal bIsProfilePage

)

Defined in File

services\include\lib.asp

Routines Called

None.

Called By

tableRenderMultipleRecords

tableRenderOrdersListContents


SetKeyOnOrderForms

This sub sets the key on order forms.

Definition

Sub SetKeyOnOrderForms(

  byVal mscsOrderGrp,

  byVal sKey,

  byVal sValue

)

Defined in File

include\std_ordergrp_lib.asp

Routines Called

None.

Called By

Main (_setadrs.asp)

SaveAddressToOrderGroup

SetCreditCardInfo

SetPurchaseOrderInfo


SetOptOutList

This sub sets the opt-out list ID for the campaign item.

Definition

Sub SetOptOutList(

  conn_campaigns,

  campitem_id,

  list_id

)

Defined in File

opt-out.asp

Routines Called

None.

Called By

OptOut


SetPurchaseOrderInfo

This sub sets the purchase order payment information on all order forms.

Definition

Sub SetPurchaseOrderInfo(

  mscsOrderGrp,

  dictKeys

)

Defined in File

po.asp

Routines Called

RemoveCreditCardInfo

SetKeyOnOrderForms

Called By

ValidateSubmittedPurchaseOrderData


SetTestCookie

This sub sets a test cookie to learn if a browser allows cookies.

Definition

Sub SetTestCookie(

  byVal sCookieType

)

Parameters

sCookieType

A string containing the name of the cookie type. Legal values for this string are persistent_cookie and session_cookie.

Defined in File

include\std_cookie_lib.asp

Routines Called

GetIISApplicationName

Called By

IsPersistentCookieAllowed

PrepareLoginPage

PrepareNewUserPage


SetupAddressForm

This sub prepares the address form for display.

Definition

Sub SetupAddressForm(

  byRef dictFldVals,

  byRef dictFldErrs,

  byRef iAddrType,

  byRef sAction,

  byRef sAddrID

)

Defined in File

newaddr.asp

Routines Called

CatchErrors

dictGetInitialFieldValues

FetchData

GenerateURL

GetSubmittedFieldValues

IsFormSubmitted

iValidateSubmittedAddressForAddressBook

UpdateAddressBook

Called By

Main (newaddr.asp)


SetupPage

This sub sets page variables, trims off the leading characters associated with the virtual directory, gathers user information, determines the cookie type, sets the language and calls the Main subroutine.

Definition

Sub SetupPage()

Parameters

None.

Defined in File

include\setupenv.asp

Routines Called

CorrectRequest

GetAuthManagerObject

GetTicketLocation

GetUserInfo

Main (in whichever file has included the file include\setupenv.asp)

Called By

This routine is called by code outside of any routine (sub or function) in the file include\setupenv.asp.


sGetAction

This function determines the action to be taken for the current page.

Definition

Function sGetAction()

Parameters

None.

Defined in File

services\include\initialize.asp

Routines Called

GetRequestString

Called By

InitializePartnerDesk


sGetActiveDirectoryDefaultNamingContext

This function gets the Active Directory domain name.

Definition

Function sGetActiveDirectoryDefaultNamingContext()

Parameters

None.

Defined in File

include\global_siteconfig_lib.asp

Routines Called

None.

Called By

Main (include\global_main_lib.asp)

ProfileRefresh


sGetAddressName

This function gets the address name field of the specified address ID in the specified order group.

Definition

Function sGetAddressName(

  mscsOrderGrp,

  addr_id

)

Defined in File

services\include\logic_orders.asp

Routines Called

None.

Called By

tblRenderOrderDetailsContents


sGetAdminsOnly

This function determines which users specified by the input parameter sProfileIDs are administrators (for example, the FIELD_USER_PARTNERDESK_ROLE is specified as ROLE_ADMIN) and returns a string that contains the profile IDs of those administrators.

Definition

Function sGetAdminsOnly(

  byVal sProfileIDs

)

Defined in File

services\include\save_one_profile.asp

Routines Called

GetUserPropertyFromID

Called By

SaveUserAccountControlProperty


sGetDefaultShippingMethod

This function returns the default shipping method as a string.

Definition

Function sGetDefaultShippingMethod(

  mscsOrderGrp,

  dictAggregate

)

Defined in File

pickship.asp

Routines Called

GetAnyLineItem

Called By

htmRenderShippingOptionsEx


sGetDisplayValueForProperty

This function gets the display text for properties of type Number.

Definition

Function sGetDisplayValueForProperty(

  byVal sPropertyName,

  byVal sPropertyValue

)

Defined in File

services\include\lib.asp

Routines Called

sGetOrderStatusDetails

sGetUserPartnerDeskRole

sGetUserStatus

Called By

arrPopulateProfileDetails


sGetIDFromForm

This function loops through the FORM collection to determine the selected profiles.

Definition

Function sGetIDFromForm()

Parameters

None.

Defined in File

services\include\initialize.asp

Routines Called

GetRequestString

Called By

sGetSelectedIDs


sGetOrderStatusDetails

This function gets the description for the order status code.

Definition

Function sGetOrderStatusDetails(

  byVal iOrderStatus

)

Defined in File

services\include\lib.asp

Routines Called

None.

Called By

arrPopulateOrderHeaderDetails

sGetDisplayValueForProperty

tblRenderOrderDetailsContents


sGetPageHeading

This function gets the page heading.

Definition

Function sGetPageHeading(

  byVal sPageName

)

Defined in File

services\include\render_common.asp

Routines Called

None.

Called By

htmRenderBlankEditPage

htmRenderChangePasswordPage

htmRenderEditPage

htmRenderOrderDetails

htmRenderOrderList

htmRenderProfilesList


sGetParentDN

This function gets the ParentDN property related to an organization.

Definition

Function sGetParentDN()

Parameters

None.

Defined in File

services\include\lib.asp

Routines Called

GetOrgAttributeFromID

Called By

None.


sGetPaymentMethodString

This function returns the friendly, localizable version of the payment method identifier as a string.

Definition

Function sGetPaymentMethodString(

  sMethodID

)

Defined in File

services\include\logic_orders.asp

Routines Called

None.

Called By

tblRenderOrderDetailsContents


sGetPropertyDisplayName

This function gets the display name for a catalog property when available. Otherwise it returns the property column name.

Definition

Function sGetPropertyDisplayName(

  byVal sPropName

)

Parameters

sPropName

A string containing the name of the property.

Return Value

A string containing either the property's display name attribute, if it was set, or the name of the property.

Defined in File

product.asp

Routines Called

None.

Called By

htmRenderUserDefinedProductProperties

htmRenderVariantsList


sGetReferenceString

This function returns the reference string attribute value for a given property element.

Definition

Function sGetReferenceString(

  byRef oXMLProperty

)

Defined in File

include\global_siteterms_lib.asp

Routines Called

None.

Called By

oGetSiteTermOptions


sGetScriptError

This function returns an error string populated from the Error object.

Definition

Function sGetScriptError(

  oErr

)

Parameters

oErr

A reference to the Error object.

Return Value

A string containing the HTML representation of the Error object properties displayed in a table.

Defined in File

BDRefresh.asp

Routines Called

None.

Called By

This routine is called by code outside of any routine (sub or function) in the file BDRefresh.asp.


sGetSelectActionPropertyName

This function gets the property name for the Select Action button that was clicked.

Definition

Function sGetSelectActionPropertyName(

  byVal sAction

)

Defined in File

services\include\lib.asp

Routines Called

GetRequestString

Called By

colRenderForeignKeyProperty

formRenderListPageContents

htmRenderMessageBoxPage

PrepareSelectActionHandlerForEdit

SelectedActionHandlerForList

UpdateSelectActionPropertyName


sGetSelectedIDs

This function gets the profile IDs.

Definition

Function sGetSelectedIDs(

  byVal sAction

)

Defined in File

services\include\initialize.asp

Routines Called

GetRequestString

sGetIDFromForm

Called By

InitializePartnerDesk


sGetSubAction

This function gets the sub action.

Definition

Function sGetSubAction

Defined in File

services\include\initialize.asp

Routines Called

GetRequestString

Called By

InitializePartnerDesk


sGetThisPageProperty

This function gets the page properties.

Definition

Function sGetThisPageProperty(

  byVal sPageName,

  byVal sPropertyName

)

Defined in File

services\include\lib.asp

Routines Called

None.

Called By

AddSetClauseAndUpdateUserAccountControl

arrPopulateProfileDetails

bCheckIfProfileExists

bInsertProfile

bInsertProfileDetails

bSaveProfileDetails

CloseOrderDetailsActionHandler

colRenderPrimaryKeyProperty

DeleteSingleProfile

formRenderListPageContents

GetSearchDictionaryForThisPage

GetTableNameAndWhereClause

htmEditAction

listCloneProfileSchema

PrepareCloseAction

PrepareCloseOrderDetailsAction

PrepareCopyAction

PrepareDeleteAction

PrepareDeleteAllAction

PrepareDeselectAllAction

PrepareOrderList

PrepareSaveAllAction

PrepareSelectAllAction

RedirectOrderDetailsForIDs

rsGetProfileDetails

SaveCommonValueForAllSelectedRecords

SelectedActionHandlerForList

tableRenderFooterInfo


sGetUserAccessForThisProperty

This function returns the current user access privileges for this property.

Definition

Function sGetUserAccessForThisProperty(

  byVal iUserClass,

  byVal oProperty

)

Defined in File

services\include\lib.asp

Routines Called

None.

Called By

bInsertProperty

bIsPropertyValueAdded

bProfileHasChanged

bSaveProfileDetails

listGetValidPropertiesForMultiEdit

listReConstructPropertiesSchema

SaveAllSelectedProfiles

tableRenderBlankProfile

tableRenderProfiles

ValidateFields


sGetUserFullName

This function gets the full name (last name + first name) of the user.

Definition

Function sGetUserFullName(

  byVal sID

)

Defined in File

services\include\get_profiles.asp

Routines Called

GetUserPropertyFromID

Called By

None.


sGetUserIDForNewGuestUser

This function gets the user ID for a new guest user.

Definition

Function sGetUserIDForNewGuestUser(

  byVal rsUser

)

Defined in File

include\std_access_lib.asp

Routines Called

None.

Called By

EnsureAccess

Main (login\_guest.asp)


sGetUserLoginName

This function gets the login name of a user.

Definition

Function sGetUserLoginName(

  byVal sID

)

Defined in File

services\include\get_profiles.asp

Routines Called

GetUserPropertyFromID

Called By

colRenderForeignKeyProperty


sGetUserPartnerDeskRole

This function gets the i_partnerdeskroleflags description for the user.

Definition

Function sGetUserPartnerDeskRole(

  byVal iPartnerDeskRole

)

Defined in File

services\include\lib.asp

Routines Called

None.

Called By

sGetDisplayValueForProperty


sGetUsersOnly

This function determines which users specified by the input parameter sProfileIDs are users (for example, do not have an admin profile) and returns a string that contains the profile IDs of those users.

Definition

Function sGetUsersOnly(

  byVal sProfileIDs

)

Defined in File

services\include\save_one_profile.asp

Routines Called

GetUserPropertyFromID

Called By

SaveUserAccountControlProperty


sGetUserStatus

This function gets the status code description for the user.

Definition

Function sGetUserStatus(

  byVal iUserStatus

)

Defined in File

services\include\lib.asp

Routines Called

None.

Called By

sGetDisplayValueForProperty


sGetWhereClauseForCurrentUser

This function gets the WHERE clause for the current user.

Definition

Function sGetWhereClauseForCurrentUser(

  bFieldSelected

)

Defined in File

services\include\delete_profiles.asp

Routines Called

EnsureUserProfile

GetQualifiedName

Called By

DeleteAllProfiles


ShowRefinedSearch

This sub shows the refined search.

Definition

Sub ShowRefinedSearch(

  byRef sCatalogName,

  byRef sCategoryName,

  byRef rsFields,

  byRef arr1,

  byRef arr2,

  byVal iMatchesFound,

  byVal iConstraintFieldsCount,

  byVal iNonConstraintFieldsCount,

  byRef bNoValues,

  byRef htmContent

)

Parameters

sCatalogName

A string containing the name of the catalog, passed through to the function RenderHiddenField.

sCategoryName

A string containing the name of the category, passed through to the function RenderHiddenField.

rsFields

A reference to a Recordset object containing the searchable fields, passed through to the function RemoveBlankItemsFromArray.

arr1

An array of non-constraining searchable properties.

arr2

An array of constraining searchable properties, passed through to the functions RenderText, GetRequestString, and RenderHiddenField.

iMatchesFound

An integer that specifies the number of matches found, passed through to the function RenderText.

iConstraintFieldsCount

An integer that specifies the number of constraint fields.

iNonConstraintFieldsCount

An integer that specifies the number of non-constraint fields.

bNoValues

A Boolean indicating whether there are no values.

htmContent

An HTML string containing the HTML representation of the refined search results.

Defined in File

stepsrch.asp

Routines Called

BooleanToString

GenerateURL

GetRequestString

RemoveBlankItemsFromArray

RenderForm

RenderHiddenField

RenderListBoxFromArray

RenderSubmitButton

RenderText

Space

Called By

htmRenderStepSearchPageContent


ShowSearchMatches

This sub shows search matches.

Definition

Sub ShowSearchMatches(

  byRef oCatalog,

  byRef rsResults,

  byVal iMatchesFound,

  byRef htmContent

)

Parameters

oCatalog

A reference to a ProductCatalog object.

rsResults

A reference to a Recordset object containing the search results, passed through to the functions RenderCategoryLink and RenderProductLink.

iMatchesFound

An integer that specifies the number of matches found, passed through to the function RenderText.

htmContent

An HTML string containing the HTML representation of the refined search results.

Defined in File

stepsrch.asp

Routines Called

RenderCategoryLink

RenderProductLink

RenderText

Called By

htmRenderStepSearchPageContent


sLookUpPaymentMethod

This function looks up the payment method.

Definition

Function sLookUpPaymentMethod(

  mscsOrderGrp,

  listMethods

)

Defined in File

dispatch.asp

Routines Called

GetDefaultPaymentMethodForUser

IsEntityInList

Called By

Main (dispatch.asp)


SortDictionaryKeys

This function sorts the keys for a Dictionary object and puts the result into a SimpleList object.

Definition

Function SortDictionaryKeys(

  Dictionary

)

Defined in File

include\std_util_lib.asp

Routines Called

None.

Called By

CheckBasket

htmRenderSummaryPage


Space

This function counts spaces and renders the appropriate number of HTML spaces (&nbsp).

Definition

Function Space(

  byVal iSize

)

Defined in File

include\std_string_lib.asp

Routines Called

None.

Called By

ShowRefinedSearch


sReConstructPageURL

This function re-constructs the page URL and replaces the key values.

Definition

Function sReConstructPageURL(

  byVal arrQSKeyName,

  byVal arrQSKeyValue

)

Defined in File

services\include\render_common.asp

Routines Called

sReplaceString

Called By

colRenderAdvancedSearchTab

colRenderSimpleSearchTab

formRenderOrderSearchOptions

formRenderPagingButtons

formRenderProfileSearchOptions


sRenderAddress

This function renders an address dictionary.

Definition

Function sRenderAddress(

  dictAddress

)

Defined in File

services\include\render_orders.asp

Routines Called

None.

Called By

tblRenderOrderDetailsContents

Remarks

The source code also illustrates how to render an alternative address format.


sRenderHTMLPreFixForProperty

This function renders the "Required" icon or check box (for multi-edits) before each property in an EDIT-type page.

Definition

Function sRenderHTMLPreFixForProperty(

  byVal sAction,

  byVal sSubAction,

  byVal oProperty,

  byVal sProfileIDs

)

Defined in File

services\include\render_edit_common.asp

Routines Called

htmRenderBlankSpaces

iGetCountOfProfiles

RenderCheckBox

Called By

rowRenderBlankProperty

rowRenderProperty


sReplaceString

This function replaces or adds the value for a key in a query string with a new value.

Definition

Function sReplaceString(

  byVal sQueryString,

  byVal sEncodedKey,

  byVal sEncodedNewValue

)

Defined in File

services\include\render_common.asp

Routines Called

None.

Called By

sReConstructPageURL


StringToBoolean

This function converts a String to a Boolean.

Definition

Function StringToBoolean(

  sValue

)

Defined in File

include\std_string_lib.asp

Routines Called

None.

Called By

None.


SubmitUsingBizTalk

This function submits an order using the Submit method of the BizTalk Server Interchange object.

Definition

Function SubmitUsingBizTalk(

  byVal sXML,

  byVal sVendorName,

  byVal sDestQual,

  byVal sDestQualValue

) (

  changing

)

Defined in File

include\payment.asp

Routines Called

None.

Called By

InvokeBizTalk


sUserCatalogsAsString

This function retrieves the catalogs associated with a user as a comma-separated list, suitable for passing to various catalog methods that accept a list of catalogs as a parameter.

Definition

Function sUserCatalogsAsString()

Parameters

None.

Return Value

A string containing the catalogs associated with the user, as a comma-separated list.

Defined in File

include\catalog.asp

Routines Called

mscsUserCatalogs

Called By

rsFreeTextSearch


tableChangePasswordTasks

This function renders Save and Close buttons with their appropriate text messages wrapped in a table.

Definition

Function tableChangePasswordTasks(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs

)

Defined in File

services\include\render_password.asp

Routines Called

htmRenderBlankSpaces

iGetCountOfProfiles

RenderSubmitButton

RenderTable

TRTag

Called By

formRenderChangePasswordPageContents


tableRenderBlankProfile

This function prepares the HTML that will render tables for blank editing pages.

Definition

Function tableRenderBlankProfile(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byVal bValidPostedValues,

  byVal bDisplayPostedValues,

  byVal listProfileSchema

)

Defined in File

services\include\render_edit_blank.asp

Routines Called

bCheckIfThePropertyFeatureIsSupported

iGetCurrentUserPropertyAccessClass

RenderTable

rowRenderBlankProperty

rowRenderEditSheetBlankLine

rowRenderPropertyGroup

rowRenderReadOnlyProperty

sGetUserAccessForThisProperty

Called By

formRenderBlankEditPageBody


tableRenderChangePasswordContents

This function renders the Password Change edit page.

Definition

Function tableRenderChangePasswordContents(

  byVal rsUser,

  byVal bValidPostedValues,

  byVal bDisplayPostedValues

)

Defined in File

services\include\render_password.asp

Routines Called

GetRequestString

RenderPasswordBox

RenderTable

TRTag

Called By

formRenderChangePasswordPageContents


tableRenderEditPageTasks

This function renders tasks buttons for the current page.

Definition

Function tableRenderEditPageTasks(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs

)

Defined in File

services\include\render_edit_common.asp

Routines Called

htmRenderBlankSpaces

iGetCountOfProfiles

RenderCheckBox

RenderSubmitButton

RenderTable

TRTag

Called By

formRenderBlankEditPageBody

formRenderEditPageBody


tableRenderFooterInfo

This function renders footer information for the current page.

Definition

Function tableRenderFooterInfo(

  byVal sAction,

  byVal sSubAction,

  byVal iPageNumber,

  byVal iTotalRecords,

  byVal iTotalPages,

  byVal bRequiresPagingCtrls,

  byVal bRequiresLastPageCtrl

)

Defined in File

services\include\render_common.asp

Routines Called

Bold

FormatOutput

formRenderPagingButtons

htmRenderBlankSpaces

RenderTable

RenderText

sGetThisPageProperty

TRTag

Called By

htmRenderOrderList

htmRenderProfilesList


tableRenderListPageTasks

This function renders tasks specific to LIST-type pages.

Definition

Function tableRenderListPageTasks(

  byVal sAction,

  byVal sSubAction

)

Defined in File

services\include\render_list.asp

Routines Called

htmRenderBlankSpaces

RenderSubmitButton

RenderTable

TRTag

Called By

formRenderListPageContents


tableRenderMessageBoxPage

This function renders a message box page.

Definition

Function tableRenderMessageBoxPage(

  byVal sTitle,

  byVal sHeading,

  byVal bNumberList,

  byVal arrBody,

  byVal sFooter,

  byVal arrButtons,

  byVal arrDestination,

  byVal arrSaveFormPosted

)

Defined in File

services\include\render_messagebox.asp

Routines Called

Bold

RenderTable

rowRenderMessageBoxPageContents

tableRenderMessageBoxPageButtons

TRTag

Called By

htmRenderMessageBoxForCancel

htmRenderMessageBoxForDelete

htmRenderMessageBoxForDeleteAll

htmRenderMessageBoxForSave

htmRenderMessageBoxForSelect


tableRenderMessageBoxPageButtons

This function renders the message box page submit buttons.

Definition

Function tableRenderMessageBoxPageButtons(

  byVal arrButtons,

  byVal arrDestination,

  byVal arrSaveFormPosted

)

Defined in File

services\include\render_messagebox.asp

Routines Called

GetRequestString

RenderForm

RenderHiddenField

RenderSubmitButton

RenderTable

TRTag

Called By

tableRenderMessageBoxPage


tableRenderMultipleRecords

This function adds list contents to the current page.

Definition

Function tableRenderMultipleRecords(

  byVal sAction,

  byVal sSubAction,

  byVal rsProfiles,

  byRef iPageNumber,

  byRef iTotalRecords,

  byRef iTotalPages,

  byRef bIsEmpty

)

Defined in File

services\include\render_list.asp

Routines Called

arrPopulateProfileDetails

htmRenderEmptyRecordSet

RelocateRecordPointer2

RenderTable

rowRenderListHeading

SetGlobalPagingVariables

TRTag

Called By

formRenderListPageContents


tableRenderOrdersListContents

This function renders a table of orders, including hidden fields containing the order number for each record.

Definition

Function tableRenderOrdersListContents(

  byVal sAction,

  byVal sSubAction,

  byVal rsOrders,

  byRef iPageNumber,

  byRef iTotalRecords,

  byRef iTotalPages

)

Defined in File

services\include\render_orders.asp

Routines Called

arrPopulateOrderHeaderDetails

htmRenderEmptyRecordSet

RelocateRecordPointer

RenderHiddenField

RenderTable

rowRenderListHeadingForOrders

SetGlobalPagingVariables

TRTag

Called By

formRenderOrdersListContents

Remarks

A paging mechanism ensures that the records are displayed up to the maximum specified by the RECORDS_PER_PAGE constant value.


tableRenderOrdersListTasks

This function renders a toolbar containing tasks that can be performed on an order in the list. By default, this will show a button displaying the text stored in the MessageManager L_ORDERDETAILS_ACTION_BUTTON message and allows the user to see order details.

Definition

Function tableRenderOrdersListTasks(

  sAction

)

Defined in File

services\include\render_orders.asp

Routines Called

RenderSubmitButton

RenderTable

TRTag

Called By

formRenderOrdersListContents


tableRenderProfiles

This function renders an edit page for a profile.

Definition

Function tableRenderProfiles(

  byVal sAction,

  byVal sSubAction,

  byVal rsProfile,

  byVal sProfileIDs,

  byVal bValidPostedValues,

  byVal bDisplayPostedValues,

  byVal listProfileSchema

)

Defined in File

services\include\render_edit_common.asp

Routines Called

bCheckIfThePropertyFeatureIsSupported

iGetCountOfProfiles

iGetCurrentUserPropertyAccessClass

RenderTable

rowRenderEditSheetBlankLine

rowRenderHiddenProperty

rowRenderProperty

rowRenderPropertyGroup

rowRenderReadOnlyProperty

sGetUserAccessForThisProperty

Called By

formRenderEditPageBody


Tag

This function encloses the text segment between a beginning and an ending HTML tag.

Definition

Function Tag(

  byVal sTagName,

  byVal htmText

)

Parameters

sTagName

A string containing the tag.

htmText

An HTML string containing the text to be displayed.

Return Value

A string containing the HTML representation of the starting tag, the text to be displayed, and the ending tag.

Defined in File

include\html_lib.asp

Routines Called

None.

Called By

RenderNavbar

RenderPreFormattedText


tblOrderDetailsTasks

This function renders a CANCEL_ACTION button for use in rendering the order details, and is used when the user wants to close the displayed page.

Definition

Function tblOrderDetailsTasks(

  byVal sSubAction,

  byVal sProfileIDs

)

Defined in File

services\include\render_orders.asp

Routines Called

RenderSubmitButton

RenderTable

TRTag

Called By

formRenderOrderContents


tblRenderOrderDetailsContents

This function displays order header and line items in an table format.

Definition

Function tblRenderOrderDetailsContents(

  byVal rsOrder

)

Defined in File

services\include\render_orders.asp

Routines Called

Bold

cellRenderReadOnlyProperty

GetAnyOrderForm

htmRenderBlankSpaces

htmRenderCurrency

mscsGetOrderGroupWithDiscountsByID

RenderTable

rowRenderLineItemHeader

sGetAddressName

sGetOrderStatusDetails

sGetPaymentMethodString

sRenderAddress

TRTag

Called By

formRenderOrderContents


TDTag

This function prepares the HTML that will render a data cell in an HTML table.

Definition

Function TDTag(

  byVal sDataCell,

  byVal sAlignment,

  byVal sAttrib

)

Defined in File

services\include\lib.asp

Routines Called

DoubleQuote

Called By

TRTag

Remarks

The routine RenderTableDataRow provides an alternative, preferred method for constructing HTML table data cells.


TerminateConfirmationPage

This sub, called by Main, sets the objects on the confirmation page to Nothing.

Definition

Sub TerminateConfirmationPage(

  byRef mscsOrderGrp

)

Defined in File

confirm.asp

Routines Called

None.

Called By

Main (confirm.asp)


TerminatePO

This sub, called by Main, sets purchase order objects to Nothing.

Definition

Sub TerminatePO(

  byRef mscsOrderGrp,

  byRef listMethods,

  byRef dictFldVals,

  byRef dictFldErrs,

  byRef listFlds

)

Defined in File

po.asp

Routines Called

None.

Called By

Main (po.asp)


TerminateSummaryPage

This sub, called by Main, sets the objects on the summary page to Nothing.

Definition

Sub TerminateSummaryPage(

  byRef mscsOrderGrp,

  byRef mscsAnyOrderForm,

  byRef dictAnyItem,

  byRef listMethods

)

Defined in File

summary.asp

Routines Called

None.

Called By

Main (summary.asp)


THTag

This function prepares the HTML that will render a header cell in an HTML table.

Definition

Function THTag(

  byVal sHeaderCell,

  byVal sAlignment,

  byVal sAttrib

)

Defined in File

services\include\lib.asp

Routines Called

DoubleQuote

Called By

TRTag

Remarks

The routine RenderTableHeaderRow provides an alternative, preferred method for constructing HTML table header cells.


TRTag

This function renders a table row.

Definition

Function TRTag(

  byVal arrCell,

  byVal arrCellAlignment,

  byVal sAttList,

  byVal bHeaderRow,

  byVal sAttrib

)

Defined in File

services\include\lib.asp

Routines Called

TDTag

THTag

Called By

cellRenderReadOnlyProperty

formRenderOrderSearchOptions

formRenderProfileSearchOptions

htmRenderEmptyRecordSet

rowRenderAdvancedSearchOptionsForOrders

rowRenderBlankProperty

rowRenderEditSheetBlankLine

rowRenderLineItemHeader

rowRenderListHeading

rowRenderListHeadingForOrders

rowRenderMessageBoxPageContents

rowRenderProperty

rowRenderPropertyGroup

rowRenderPropertyTip

rowRenderSearchOptionForDate

rowRenderSearchOptionForInteger

rowRenderSearchOptionForString

rowRenderStatusInfo

tableChangePasswordTasks

tableRenderChangePasswordContents

tableRenderEditPageTasks

tableRenderFooterInfo

tableRenderListPageTasks

tableRenderMessageBoxPage

tableRenderMessageBoxPageButtons

tableRenderMultipleRecords

tableRenderOrdersListContents

tableRenderOrdersListTasks

tblOrderDetailsTasks

tblRenderOrderDetailsContents


UpdateAddressBook

This sub creates a profile for the specified address.

Definition

Sub UpdateAddressBook(

  byVal dictAddr,

  byVal sAction,

  byRef sAddrID,

  byVal rsAddr

)

Defined in File

newaddr.asp

Routines Called

None.

Called By

SetupAddressForm


UpdatePasswordActionHandler

This function saves the user_security_password property for the user.

Definition

Function UpdatePasswordActionHandler(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs

)

Defined in File

services\include\password_handlers.asp

Routines Called

bValidatePasswordChars

GetRequestString

htmRenderChangePasswordPage

UpdateUserPasswordProperty

Called By

PasswordActionHandlers


UpdateSelectActionPropertyName

This function updates properties changed by the user. The fields associated with the selected properties are updated, as well as the "changed by" and "date updated" values.

Definition

Sub UpdateSelectActionPropertyName(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs

)

Defined in File

services\include\save_one_profile.asp

Routines Called

EnsureUserProfile

GetQualifiedName

GetRequestString

iGetCountOfProfiles

rsGetProfileDetails

SaveCommonValueForAllSelectedRecords

SaveProfileProperty

sGetSelectActionPropertyName

Called By

PrepareSelectedAction


UpdateUserAccountControlProperty

This function updates the user_account_control property of the profile based on the iPartnerDeskRole and dictSearchOptions parameters.

Definition

Sub UpdateUserAccountControlProperty(

  byVal iPartnerDeskRole,

  byVal dictSearchOptions

)

Defined in File

services\include\save_all_profiles.asp

Routines Called

GetTableNameAndWhereClause

sAddSetClause

sAddWhereClauseForPartnerRole

sConstructWHEREclause

Called By

AddSetClauseAndUpdateUserAccountControl


UpdateUserPasswordProperty

This sub updates the user password property depending on the current user type (DELEGATED_ADMIN or USER).

Definition

Sub UpdateUserPasswordProperty(

  byVal sAction,

  byVal sSubAction,

  byVal sProfileIDs,

  byVal sUserOldPassword,

  byVal sUserNewPassword

)

Defined in File

services\include\save_one_profile.asp

Routines Called

EnsureUserProfile

GetQualifiedName

iGetCountOfProfiles

rsGetUserDetails

Called By

UpdatePasswordActionHandler


UpdateUserProfile

This sub updates the profile for the current user.

Definition

Sub UpdateUserProfile(

  byRef rsUser

)

Defined in File

include\std_profile_lib.asp

Routines Called

None.

Called By

bSaveProfileDetails

GetNewGuestUserProfile

mscsNewRegisteredUserProfile

mscsTransferGuestUserProfile

Remarks

This is a wrapper subroutine for the Update method of the ProfileObject object. Call this subroutine whenever you update the current profile for the current user or when you create a new profile for the current user. This subroutine automatically sets the date_last_changed property and writes this information to a cookie (where supported) to handle host switching in a Web farm.


ValidateFields

This function validates submitted profile form fields retrieved from the HTTP request using the profile schema specified by the listCtrls parameter.

Definition

Function ValidateFields(

  byVal listCtrls

)

Defined in File

services\include\lib.asp

Routines Called

bCheckIfThePropertyFeatureIsSupported

GetRequestString

iGetCurrentUserPropertyAccessClass

sGetUserAccessForThisProperty

Called By

PrepareInsertProfile

PrepareSaveAllAction

PrepareSaveChangesConfirmation

PrepareSaveProfiles


ValidateSubmittedCreditCardData

This function validates credit card data.

Definition

Function ValidateSubmittedCreditCardData(

  mscsOrderGrp,

  listFlds,

  dictFldVals,

  dictFldErrs,

  listFrmErrs,

  sVerifyWithTotal

)

Defined in File

crdtcard.asp

Routines Called

CheckOut

GetAnyOrderForm

GetFieldsErrorDictionary

SetCreditCardInfo

Called By

InitializeCreditcardPage

Remarks

For more conceptual information about forms processing, see Forms Processing.


ValidateSubmittedLoginData

This function validates login data.

Definition

Function ValidateSubmittedLoginData(

  rsLoginUser,

  listFlds,

  dictFldVals,

  dictFldErrs,

  listFrmErrs

)

Defined in File

login\login.asp

Routines Called

GetDictionary

GetFieldsErrorDictionary

GetQualifiedName

GetSimpleList

rsGetProfile

Called By

PrepareLoginPage

Remarks

For more conceptual information about forms processing, see Forms Processing.


ValidateSubmittedPurchaseOrderData

This function validates submitted purchase order data.

Definition

Function ValidateSubmittedPurchaseOrderData(

  mscsOrderGrp,

  listFlds,

  dictFldVals,

  dictFldErrs,

  listFrmErrs,

  byVal sVerifyWithTotal

)

Defined in File

po.asp

Routines Called

CheckOut

GetAnyOrderForm

GetFieldsErrorDictionary

SetPurchaseOrderInfo

Called By

Main (po.asp)

Remarks

For more conceptual information about forms processing, see Forms Processing.


varGetPropertyValue

This function determines the profile property value to display.

Definition

Function varGetPropertyValue(

  byVal sAction,

  byVal sSubAction,

  byVal oProperty,

  byVal listProfileSchema,

  byVal bValidPostedValues,

  byVal rsProfile,

  byVal sProfileIDs,

  byVal bDisplayPostedValues

)

Defined in File

services\include\render_edit_common.asp

Routines Called

varGetValueFromPropertyDictionaries

varGetValueFromRequestObject

varUpdateValueForCurrentAction

Called By

rowRenderProperty


varGetValueFromPropertyDictionaries

This function gets the property value from a list of property dictionaries.

Definition

Function varGetValueFromPropertyDictionaries(

  byVal oProperty,

  byVal listProfileSchema

)

Defined in File

services\include\render_edit_common.asp

Routines Called

None.

Called By

rowRenderBlankProperty

varGetPropertyValue


varGetValueFromRequestObject

This function gets the property value from the underlying Request object (URL or HTML FORM).

Definition

Function varGetValueFromRequestObject(

  byVal oProperty

)

Defined in File

services\include\render_edit_common.asp

Routines Called

GetRequestString

Called By

rowRenderBlankProperty

rowRenderReadOnlyProperty

varGetPropertyValue


varUpdateValueForCurrentAction

This function gets the property value based on the current action type as stored in the global variable sAction.

Definition

Function varUpdateValueForCurrentAction(

  byVal sAction,

  byVal sSubAction,

  byVal rsProfile,

  byVal oProperty,

  byVal sProfileIDs

)

Defined in File

services\include\render_edit_common.asp

Routines Called

iGetCountOfProfiles

Called By

varGetPropertyValue


Copyright

Information in this document, including URL and other Internet Web site references, is subject to change without notice. Unless otherwise noted, the example companies, organizations, products, people and events depicted herein are fictitious and no association with any real company, organization, product, person or event is intended or should be inferred. Complying with all applicable copyright laws is the responsibility of the user. Without limiting the rights under copyright, no part of this document may be reproduced, stored in or introduced into a retrieval system, or transmitted in any form or by any means (electronic, mechanical, photocopying, recording, or otherwise), or for any purpose, without the express written permission of Microsoft Corporation.

Microsoft may have patents, patent applications, trademarks, copyrights, or other intellectual property rights covering subject matter in this document. Except as expressly provided in any written license agreement from Microsoft, the furnishing of this document does not give you any license to these patents, trademarks, copyrights, or other intellectual property.

© 1996-2000 Microsoft Corporation. All rights reserved.

Microsoft, Active Directory, ActiveX, BackOffice, BizTalk, Developer Studio, FrontPage, Hotmail, JScript, MSDN, MS-DOS, MSN, Outlook, PivotChart, PivotTable, Verdana, Visual Basic, Visual C++, Webdings, Win32, Windows, Windows Media, and Windows NT, are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries.

The names of actual companies and products mentioned herein may be the trademarks of their respective owners.