Profile Designer

You use the Profile Designer module to edit and manage profile definitions. A profile definition is a set of characteristics that define any business-related item, such as a user, a company, or a business process. A profile is a single instance of a profile definition containing the data that the profile definition collects. For example, you can design a profile definition to collect user data. You can then use the Users module to edit a user profile for a particular user who entered their data on your Web site.

Profile Structure

Profile Definitions

Profile Properties

Attributes

Sample Profile Definitions

Profile Structure

A Commerce Server profile consists of the following parts:

  • Profile definition. A description of the data to be collected for a given type of profile. You can have multiple profiles based on a single profile definition. For example, "User" is a profile definition, and "Address" is a profile definition. System administrators create profile definitions by using the Profiles resource in Commerce Server Manager.

  • Profile property. A characteristic that specifies the profile data to be collected when a user visits your Web site. For example, the First Name property specifies that the first name of the user should be collected. Use the Business Desk Profile Designer module to create profile properties and add them to profile definitions.

  • Attribute. A characteristic that specifies information about the property such as the data type of the property (for example, number, string, decimal, and site term).

  • Profile. A single instance of a profile definition that contains data. Every profile is based on a single profile definition.

The following table shows a sample User profile definition, and then a single instance of the sample User profile definition with data for Sean Chai.

Profile definition: User Profile: Sean Chai
First name Sean
Last name Chai
City Seattle
Gender M
Age 52
E-mail address seanchai@microsoft.com

Profile Definitions

Work with your system administrator to create profile definitions for your site. The system administrator determines where the profile data will be stored in the Commerce Server database. This process is known as mapping the profile definition to the database. For example, assume you request a new profile definition named "Music," and you want to store the following profile properties: First Concert, Last Concert, Favorite CD, and two more properties that are not yet determined.

The system administrator creates the new profile definition, Music, including the three known properties and two placeholders for the properties you will add in the future, and then maps it to the Commerce Server database where it will be stored. After the system administrator creates the profile definition and the new properties, you can then use the Profile Designer module to add all three properties to the definition. (The system administrator can also do this for you using Commerce Server Manager.) At a later date, when you determine other information you want to collect using the Music profile definition, you can use Profile Designer to create two new properties and map them to the placeholders created by your system administrator.

The Commerce Server Solution Sites include the following sample profile definitions: Addresses, BlanketPOs (purchase orders), Organization, User Object, and Targeting Context. In the User Object, five unnamed properties are included so you can add properties to the User profile definition without contacting your system administrator to extend your database. For a list of properties included with each profile definition, see Sample Profile Definitions.

Profile Properties

After the system administrator creates the profile definition, you can add profile properties to it by using the Business Desk Profile Designer module. Profile properties determine what information is collected in a profile. For example, the User profile definition could contain the following properties: first name, last name, city, gender, age, and e-mail address. You can organize related profile properties into groups.

The following figure shows the parts of a sample User profile definition.

Ee823917.cs_bd_concepts_profiledef(en-US,CS.10).gif

You can create profile properties as the following types:

Property Type Description
String A property of type string stores up to a maximum of 4,000 characters. String properties map to string data members.
Long String A property of type long string stores up to a maximum of 2 to the power of 17 (2^17) characters. Long string properties map to string data members.
Number A property of type number stores integers. The maximum length of a number property is determined by the data store. Number properties map to number data members.
Decimal A property of type decimal stores floating point numbers. The maximum length of a decimal property is determined by the data store. Decimal properties map to number data members.
Boolean A property of type Boolean stores one of two values (true/false, yes/no, or 1/0). Boolean properties map to Boolean data members.
Binary A property of type binary stores binary data with a maximum size of 4 KB. Binary properties map to binary data members.
Long Binary A property of type long binary stores content, such as spreadsheets, documents, graphics, and sound up to a maximum size of 128 KB. Long binary properties map to binary data members.
Date/Time A property of type date/time is a composite date and time value. The format used and the maximum length are determined by the data store. Date/time properties map to date/time data members.
Date A property of type date contains date values that are in the range of 1/1/1950 to 12/31/2049. The format used and the maximum length are determined by the data store. Date properties map to date/time data members.
Time A property of type time contains values for hour, minute, second, and millisecond. The format used and the maximum length are determined by the data store. Time properties map to date/time data members.
Currency A property of type currency accepts numbers in currency format. The currency format used and the maximum length are determined by data store. Currency properties map to currency data members.
Password A property of type password accepts text, and is treated like a string by the Profiles resource. Commerce Server Business Desk displays the value stored in a password property as asterisks (*). Password properties map to string data members and have a maximum length of 255 Unicode characters.
Site Term A property of type site term is associated with a site term. The value that is stored in this property should be a valid value from the list of term names associated with that site term. Site term properties map to string data members and have a maximum length of 255 Unicode characters.
Profile A property of type profile is associated with a profile definition. The value that is stored in this property should be a value that corresponds to the value of the primary key of a specific instance of that associated profile. Profile properties map to string data members and have a maximum length of 255 Unicode characters.

Attributes

Each profile property has attributes. Attributes provide information about the property. For example, the First Name property has the following attributes: Name, Display Name, Description, and Type.

Attributes include information such as the data type of the profile property (for example, number, text, decimal, or site term), and whether the property is single-valued (for example, only one First Name entry is allowed per user) or multi-valued. You can also designate that the data can be exported. For example, data can be exported into the Data Warehouse.

There are two special types of attributes: custom attributes and advanced attributes.

  • Custom attributes. Application-specific attributes. You can define custom attributes for properties. For example, you can create a custom attribute that controls how a property is displayed on a Web site page.

  • Advanced attributes. You use the  advanced attributes to change how your applications use a profile property. For example, the Exported attribute determines whether the property will be imported into the Data Warehouse.

The following table lists the advance attributes and the purpose of each one.

Attribute Purpose
Active Indicates whether this property is available through the Profile Service. Inactive properties are not displayed in Business Desk.
Map to data The data member the property maps to.
Key type There are four key types you can assign:
  • Unique Key. Indicates that the value of this property is unique for all members. You map an attribute that is specified as a unique key to a unique field in a SQL Server database or to a unique attribute in a Lightweight Directory Access Protocol (LDAP) source.

  • Primary Key. Indicates that the value of this property is unique for all members. You map an attribute that is specified as a primary key to a primary field in a SQL Server database or to a unique attribute in a LDAP source.

  • Join Key. Relates multiple data stores through a common property in the Profile Service.

  • Dual (Primary and Join) Key. Indicates that the value of this property is unique, and relates this property to a property in another data store.
Required Indicates that the property is required.
Exported Specifies that the property will be imported into the Data Warehouse.
Defer cache load Indicates that this property will not be loaded initially when the profile is retrieved, but will be loaded when this particular property is accessed.
Multi-valued Enables the capturing of a collection of values that are associated with the property.
Searchable Indicates that this property is indexed in the underlying data store and is available for searching through the Find By function. You map a searchable attribute to an indexed field in the SQL Server database or LDAP source.
RDN Type the Relative Distinguished Name (RDN) for a directory store. If this attribute is set for a property, this member maps to the RDN attribute of a LDAP class in the underlying store. This does not apply to OLE DB Provider for Microsoft Commerce Server (OLE DB) sources, or any other data source type.
Hashing key Indicates that this property will be used to distribute profile instances across multiple partitions. To retrieve this profile you must query on this key.

Sample Profile Definitions

Commerce Server Solution Sites include sample profile definitions. If your site developer used a Solution Site to build your site, you should have the five profile definitions listed in the following table.

Profile Definition Properties (data type) Description
Address Address ID (string) Address identifier
  ID (string) Organization/User Identifier
  Last Name (string) User last name
  First Name (string) User first name
  Address Name (string) Name for this address
  Address Type (number) Address/Ship to address/Bill to address
  Description (string) Description for this address
  Address Line 1 (string) First line of address
  Address Line 2 (string) Second line of address
  City (string) City name
  Region Code (string) State, region, or province code
  State Name (string) State, region, or province name
  Postal Code (string) Postal code
  Country Code (string) Country International Standards Organization (ISO) code
  Country Name (string) Country name
  Telephone Number (string) Telephone number at this address
  Telephone Extension (string) Telephone number extension at this address
  Locale ID (number) Locale in which to render the address form
  Changed by (string) Name of person who last changed this profile
  Date last changed (date/time) Date this profile was last changed
  Date created (date/time) Date this profile was created
BlanketPOs Purchase Order ID (string) Globally unique identifier (GUID) referring to the Blanket Purchase Order
  Organization ID (string) Organization ID
  PO Number (string) Blanket purchase order number
  Description (string) Description of purchase order
  Changed by (string) Name of person who last changed this profile
  Date last changed (date/time) Date this profile was last changed
  Date created (date/time) Date this profile was created
Organization Organization ID (string) Organization ID
  Name (string) Name of the organization
  Trading partner number (string) Trading partner number
  Administrative contact (string) GUID for the administrative contact
  Receiver (string) User ID of the person to receive products shipped from the supplier
  Organization catalog set (string) Organization catalog set
  Changed by (string) Name of person who last changed this profile
  Purchasing manager (string) User ID of the purchasing manager of the buying organization
  Date last changed (date/time) Date this profile was last changed
  Date created (date/time) Date this profile was created
User Object User ID (string) User ID
  Logon name (string) Logon name
  User password (password) User password
  E-mail (string) User e-mail address
  User type (number) User type
  User title (string) User title
  Last name (string) Last name of user
  First name (string) First name of user
  Telephone number (string) Telephone number for user
  Telephone extension (string) Telephone number extension for user
  Fax number (string) Fax number for user
  Fax extension (string) Fax number extension for user
  Changed by (string) Name of person who last changed this profile
  Organization ID (string) Organization ID
  Account status (number) Account status
  User catalog set (string) User catalog set
  Date registered (date/time) Date the user registered
  Campaign History (string) Campaign history
  Partner service role flags (number) Partner service role
  Date last changed (date/time) Date this profile was last changed
  Date created (date/time) Date this profile was created
Targeting Context Page Group (string) Name of the page group (for example, Sports pages)

See Also

Adding Properties to a Profile Definition

Adding a Site Term to a Profile Definition


All rights reserved.