Posts Tagged ‘commerce server 2007’

Nice to see old errors back on the screen and we can fix them fast as we already know the remedy. One of my team member was getting “Loading Editor” error on click on site editor or profiles in commerce server manager. She was not able to proceed with her work and the error she is getting is not new to commerce server resources but when we bing/google, you may not find a remedy nor you don’t see any entry in the event log.

 

image

Couple of alternative solutions to fix this issue.

1. Uncheck “Enhance security configuration” components under IE. To do this, follow these steps:

1. Click Start, click Settings, click Control Panel, and then double-click Add or Remove Programs.
2. In Add or Remove Programs, click Add/Remove Windows Components.
3. In the Windows Components Wizard, click to select the Internet Explorer Enhanced Security Configuration check box, and then click Details.
4. Click to clear the For administrator groups check box.
5. Click to clear the For all other user groups check box, and then click OK.
6. Click Next, and then click Finish.

2. Add the name of the computer to the trusted sites. To do this, follow these steps:

In Internet Explorer, click the Tools menu, and then click Internet Options.
In the Internet Options dialog box, click the Security tab.
Under Select a Web content zone to specify its security settings, click Trusted sites, and then click Sites.
In the Trusted sites dialog box, type http://<ComputerName>, click Add, and then click OK two times.

Note: adding localhost will not fix this issue – you should add computer name.

Once the above changes are done, we are able to see the profiles/site terms. After fixing the issue, I am able to find the same has been documented in support article and the url is http://support.microsoft.com/kb/937764.

Related Articles


If you like this post, please click on our sponsor advertisement.


Commerce server site term is a set of valid values (in the form of key value pair) which can be used in conjunction with Profile system. For example, there is no point to ask user the month name – rather it would be good to provide month information in dropdown and the user can select one from it. By this, we are making the application to store uniform values. So, the common and unchanged items can be created as site terms.

By default commerce server creates many site terms, includes user title, user status, user role, months,weeks, year, etc. We have flexibility in creating our own profile objects by creating new tables in the database but the same flexibility is not applicable for site terms. All site terms are stored in a single table under profile database and the table name is “MemAttrib”. This table not only stores site terms but also stores product definition information. Few of the important fields to remember are

CatalogName:  This field is used to differentiate whether the data belongs to site term or product definition. If catalogName field value contains “Site Terms”, that means the row belongs to site term and if it contains “Profile Definitions” means the row contains profile definition information.

MembershipName: This field is used to store site term or profile definition name.

AttributeName: This holds site term key name.

DisplayName: This holds site term value.

The below query can be used to fetch all data of site  term “Country”

SELECT     MemberAttribID, CatalogName, ClassDefName, MemberName, AttribName, DisplayName, Description, AttribType, ValSTR, ValNum, ValDateTime,
                      CreatedTime, ModifiedTime, MajorVersion, MinorVersion, MemberDefID, Status FROM         MemAttrib
WHERE     (CatalogName = ‘Site Terms’) AND (MemberName = ‘Country’)

Note: Since we are storing all information in a single table (unlike catalog tables), we don’t have the flexibility of using same site term for multiple languages.

Related Articles


If you like this post, please click on our sponsor advertisement.


Many times, developer’s wants to set some quantity in their inventory in order to test inventory functionality in starter site. I created a script which will help developers to populate inventory. Kindly follow the steps below

  1. Make sure you set Inventory Catalog and product catalog details
  2. There are two sql queries mentioned below one for deleting existing inventory and another for inserting new inventory for all products
  3. So first execute delete query and then insert query

Delete from  [StarterSite_productcatalog].[dbo].[Default_InventorySkus]
GO

DECLARE @InventoryCatalogName VARCHAR(50)
DECLARE @ProductCatalogName VARCHAR(50)
SET @InventoryCatalogName  = ‘Default’
SET @ProductCatalogName = ‘Adventure Works Catalog’
INSERT INTO [StarterSite_productcatalog].[dbo].[Default_InventorySkus]
           ([SkuOid]
           ,[InventoryCatalogName]
           ,[ProductCatalogName]
           ,[SkuId]
           ,[SkuVariantId]
           ,[Backorderable]
           ,[Preorderable]
           ,[Status]
           ,[OnHandQuantity]
           ,[StockOutThreshold])
     SELECT newid(), 
                                @InventoryCatalogName,
                                @ProductCatalogName,
                                productid,
                                variantid,
                                0,
                                0,
                                1,
                                999,
                                1
                                from [Adventure Works Catalog_CatalogProducts]
                                Where (productid !=” and variantid !=”) or (productid !=” and variantid =”)

Related Articles


If you like this post, please click on our sponsor advertisement.


In starter site, email ID is declared as unique field. You need to customize and extend your profile system to enable such functionality (multiple profiles with same email ID).

Perform following tasks to enable this functionality.

  • In database (startersite_profile), userprofile table make sure email column doesn’t have unique key.
  • Add another column named “u_user_name” and make sure this column has unique key.
  • If there is data already exist in the table then you may get error. Make sure you don’t apply unique key during column creation. Once column is created, copy email value (or some other unique value) to this column and then apply unique constraint on this column.
  • Open commerce server manager. Navigate to Commerce server manager -> global resources -> profiles (startersite_profiles)-> data sources -> profileservice_sqlsource ->data Objects -> user object.
  • Create a data member named “user_name” and point to the column “u_user_name”.
    Open commerce server manager. Navigate to Commerce server manager -> global resources -> profiles (startersite_profiles)-> profile definitions -> user object.
  • Under general information -> add new property named “UserName” and point to data member “user_name” of data store.
  • click on general information -> email, make sure required property is set to false and keytype is set to blank.

Till now, we have done configuration changes to use user name as unique key but to make this field as login Id, we need to tell UPM provider about this change. For that, we can do configuration changes in any of the following two places.

  • web.config – By default upmprovider takes “GeneralInfo.email_address” as logon field. You need mention explicit that instead of email ID, use username.
    <membership defaultProvider=”UpmProvider”>
                <providers>
                    <add name=”UpmProvider” type=”Microsoft.CommerceServer.Runtime.Profiles.UpmMembershipProvider” logonNameProperty=”GeneralInfo.UserName”/>
                </providers>
            </membership>
  • you can pass this information in the code as part of collections.
    UpmMembershipProvider provider = new UpmMembershipProvider();
                System.Collections.Specialized.NameValueCollection collection = new System.Collections.Specialized.NameValueCollection();
                collection.Add(“logonNameProperty”,”GeneralInfo.UserName”);
                provider.Initialize(“UpmProvider”, collection);
                bool registeredUser = provider.ValidateUser(“ravi.kanth”, “pass123″);
                Response.Write(registeredUser.ToString());
     

Related Articles


If you like this post, please click on our sponsor advertisement.


In next few years Microsoft is investing more on their next version of commerce server which is aligned with current e-commerce trends. Here is the commerce server road map. Microsoft has purchased site server from third party and released during early 2000. Later it came up with commerce server 2000, 2002 and commerce server 2007. So, far MS has released commerce server 2007 service packs – SP1 and SP2, which fixed majority of software bugs.

Commerce Server Roadmap

Mojave is having lot of collaboration features and it uses SharePoint to achieve this. The beauty of Mojave is that the existing site will not be disturbed if the user migrate their site to new version. I already posted Mojave features list in my blog, click below link for more details.
Microsoft Commerce Server Mojave

Related Articles


If you like this post, please click on our sponsor advertisement.


Follow me on Google+
Couldn't get data from google+
Sign up for Newsletter