Posts Tagged sharepoint
Commerce Server and Shifting Retailer Priorities
Posted by Kelly in Commerce Server on August 18th, 2009
Shop.Org recently released their Merchandising Report by Forrester Research. The Merchandising Report was the second in a series called The State of Online Retailing 2009 and highlights priorities for online retailers either this calendar year or planned for calendar year 2010.
The report identifies the following areas which retailers are turning their focus toward:
-
Checkout process redesign
-
Improved product detail pages
-
Site search results & controls
-
Home page
- Better Help and FAQs
In order to help facilitate this shift in priorities, let’s take a look at how Commerce Server 2009 can be used in these areas.
Checkout Process Redesign
Retailers are looking to provide additional details around the checkout process to help prevent sticker shock once the customer arrives at the order review page. Customers often feel that shipping costs and taxes are more than expected and sometimes fail to complete the order because of this. One solution is to provide a mechanism to display proper shipping pricing, estimated shipping dates and estimated taxes within the shopping cart based on a customer’s zip or postal code. Commerce Server’s new Multi-Channel Commerce Foundation provides ways that allow developers to integrate 3rd party applications and services into the same application context. The use of Operation Sequences now allows developers to perform multiple actions on a Commerce Entity. A Basket is an example of a Commerce Entity and also contains multiple operation sequences. Custom operation sequences can be added to provide additional capabilities, which include adding functionality provided by 3rd party shipping and tax providers.
With SharePoint Commerce Services merchandisers can now reconfigure the checkout process using a SharePoint list. This custom list is created when you install SharePoint Commerce Services and allows developers to provide the capability for merchandisers or content creators to change the flow of the checkout process with pre-built checkout controls. In a production scenario, you may not allow business users to make these kinds of changes, but in the context of creating additional content, this could be quite valuable. For example, you may want to provide content creators with the ability to create micro-sites and configure the type of checkout process used for these additional sites. Another example might be to create vendor specific sites that include an easy one-step checkout process.
Product Detail Pages
Retailers are looking to provide the best possible product content to online visitors. One of the best ways to achieve this is to allow customers to rate and review products. Commerce Server 2009 now includes the ability to provide moderated product reviews using SharePoint. Add the pre-built ratings and review web part to the product detail page and allow customers to rate and review the products they purchase and provide this valuable content to future site visitors.
Commerce Server has almost always provided an easy way to tie different types of content to your products. Flexible and extensible product and category schemas allow you to create custom properties that could define additional product details, links to product manuals, warranty information and even links to product promotional videos. In addition to flexible schemas, the Catalog API provides mechanisms for adding related items to products. These related products could be cross-promotional products or accessories or take it a step further and use the relationship model for storing multiple product images or even colour swatches.
Search
Retailers are often looking to seriously beef-up their capabilities in the area product and content search; most of the time this calls for a best-of-breed search provider like Endeca or Fast. The features provided by these 3rd party enterprise search providers are unmatched when using Commerce Server’s native search for product content. However, not all retailers can afford the price tag associated with these types of packages and need to turn to something more cost-effective.
With Commerce Server 2009 and integration to SharePoint, customers can now leverage the power of SharePoint’s Enterprise Search and the combination of product content searching with Commerce Server. A pre-configured web part can be used to easily configure how search results are displayed and whether to render either static content, product content or both. This new web part is provided as part of SharePoint Commerce Services.
Home Page
The home page is a great place to display promotional ads, products on sale and other types of content. Touching again on the flexibility of the Commerce Server catalog, merchandisers can create special product categories outside of their normal merchandising hierarchy that can be used to hold special products or sale items. In the simplest example, a Product Query Web Part can be added to the home page and configured to only display items from the special products or sale items category. Taking it one step further, data can be aggregated from Commerce Server Data Warehouse to display top-rated or best-selling products; these products can then be displayed and rendered to customers using specialized categories stored in the catalog.
Product segmentation can also take the form of a micro-site, to offer customers seasonal products or products designed for a special event. SharePoint Commerce Services allows merchandisers to take advantage of SharePoint’s Enterprise Content Management features to create additional Commerce Server enabled sites with little effort. Chose from the predefined list of templates or create custom templates specific to your brand. This newly created site can contain products from an entirely new catalog, a subset of existing products and even offer the same products with an overall reduction in price.
Conclusion
The State of Online Retailing Report provides some great insight into what retailers are looking to accomplish next year. Commerce Server 2009 can provide these retailers with some compelling features and flexibility to help them meet these goals.
New to Commerce Server 2009
Posted by Kelly in Commerce Server on April 16th, 2009
The Commerce Server Product Group released some new additions to the recently released Commerce Server 2009. Two of the updates are design focused and the other is a document describing how to localize your Commerce enabled SharePoint sites using site variations.
The first is a new template pack, that provides a much nicer look and feel to the out-of-the-box site experience. When CS2009 originally shipped, it contained what was known as the “Default Site”. This site certainly wasn’t the best looking, but all of the foundation eCommerce functionality was there and the expectation was that you’d need to add your own design elements to really make the site shine!
This new template pack provides what is now being called the “Contemporary Site” which still provides all of the foundation eCommerce functionality but looks far better out of the box. What this really means, is less time and effort to get that production-ready Commerce Server site up and running!
Not only does the template pack provide a new Contemporary Site, but also a new look and feel for the included mobile channel.
If you read my previous post on Redesigning the Default Site, you know that I certainly encountered some challenges when trying to apply my own design to the default site. I have yet to confirm whether or not some of these challenges have been addressed with this new release. Another point to mention is that the sub-pages (category, product) don’t contain the left-hand category navigation. I can’t speak to why this is, but know that you will likely want to make sure that you have left-hand category navigation throughout the site.
The other new addition is the Silverlight inline product editor. If you’re a site administrator or a merchandiser you may want to make a quick change to your product details, while in the context of your site – the inline product editor allows you to do this. Any changes made in your SharePoint site are reflected back in the Commerce Server catalog.
When browsing the site in the administrator mode (NTLM site), you’ll notice a link to edit product properties on the product detail page.
You are then presented with a Silverlight based Product Property Editor window, allowing you to make changes to the exposed product properties. Once the changes are made, clicking Apply updates the property value and the data is sent back to the catalog.
This is a huge improvement over the original Default Site. Let me know what you think in the comments below.
Additional Resources
Microsoft Commerce Server 2009 Template Pack (Contemporary Site)
Microsoft Commerce Server 2009 Inline Product Property Editor
Localizing Your Commerce Server 2009 Site Using Site Variations
Redesigning the CS09 Default Site
Posted by Kelly in Commerce Server on April 7th, 2009
Recently, I had to make changes to Commerce Server 2009’s Default Site in SharePoint. If it were a perfect world, the absolute best way to do this would be to get the extensibility kit (if you have Commerce Server 2009 installed, you’ll find it here: \Program Files\Microsoft Commerce Server 2007\Microsoft Commerce Server 2009\Sdk\Samples), load it up inside Visual Studio, make the necessary changes and redeploy the web parts into the site. But it is far from being a perfect world, and given some of my time constraints and the fact that the extensibility kit has a different signing key than the web parts deployed with the Default Site, I had to find another way to do this.
Certainly you have easy access to make changes to the stylesheets, master pages and page layouts in SharePoint, but the more difficult part is making changes to the layout of the webparts themselves. Maybe you want to move a field around, or apply a specific style to one of the buttons? These are certainly use cases for applying design to a web site.
The default address list web part is a good example. You may have had a graphic designer already build your page layouts complete with HTML, graphics and CSS. I suppose you could find the styles being used and modify the existing styles to match. I chose to layout the control based on the HTML I was given and apply my new styles. Here are some snippets of the code that I modified (ReadOnlyAddressDetail.ascx is called from within AddressList.ascx):
AddressList.ascx
<fieldset>
<asp:Button ID=”ButtonBack” runat=”server” OnClick=”ButtonBack_Click” CssClass=”myaccount-green5-11″ Height=”22″ />
<asp:Button ID=”ButtonAddNewAddress” runat=”server” OnClick=”ButtonAddNew_Click” Height=”22″ CssClass=”myaccount-green5-11″ />
</fieldset>
ReadOnlyAddressDetail.ascx
<ItemTemplate>
<div id=”tablecontent”>
<table style=”vertical-align:top” cellspacing=”5″ cellpadding=”5″>
<tr>
<td style=”vertical-align:top; width:250px” class=”tdmain”>
<asp:Literal ID=”ltlFirstName” runat=”server” Text=’<%# Microsoft.Security.Application.AntiXss.HtmlEncode(FirstName) %>’ />
<asp:Literal ID=”ltlLastName” runat=”server” Text=’<%# Microsoft.Security.Application.AntiXss.HtmlEncode(LastName) %>’ /><br /><br />
<asp:Label ID=”lblDefaultBilling” Visible=’<%# IsDefaultBillingAddress %>’ runat=”server” />
<asp:Label ID=”lblSeparator” Text=” | ” Visible=’<%# IsDefaultBillingAddress && IsDefaultShippingAddress %>’ runat=”server” />
<asp:Label ID=”lblDefaultShipping” Visible=’<%# IsDefaultShippingAddress %>’ runat=”server” />
</td>

You can find most of the controls you need in the SharePoint 12-hive (\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\LAYOUTS\CommerceServer). Note that some of the controls that are used in the Default Site are XSLT controls that require modification to the XSL that renders the content. These are not found in the 12-hive but rather a templates document library in SharePoint. The Cart control is a good example of this. All of the XSLT templates can be found by clicking “View All Site Content” from the Site Actions menu in the Default Site, and then opening the Commerce Server Templates document library.
This method certainly isn’t perfect, but there are changes and bug fixes still being made which will likely become available in R2. Keep in mind that this is one approach, and certainly the better method is to use the extensibility kit if you require a more custom design or specialized functionality.
Additonal Resources
SharePoint Commerce Services documentation
Commerce Server in the Cloud
Posted by Kelly in Commerce Server on March 16th, 2009
I read this article entitled Microsoft Commerce Server in the Cloud: a threat to Amazon? and this was after I saw at least 10 tweets on the subject in my Twitter feed. Given my proximity to the product and some pretty in depth details of Commerce Server 2009, I thought I would post my thoughts on the subject.
The new Commerce Server architecture exposes platform functionality through a new services layer, theoretically supporting a cloud based implementation. Unfortunately, there is also a check to ensure that all calls through the API are made in-process rendering this scenario unsupportable at this time.
Services
Let’s assume for a minute that we could make calls to theses new services using some sort of framework (like this Service Invocation Framework). I would install a complete instance of Commerce Server 2009 on a cloud computing platform, like Microsoft Azure or Amazon EC2, and make sure my services were properly exposed. Configuring the instances and exposing this new service layer would allow for applications to consume and render Commerce Server functionality. An example of one of these applications could be an ASP.Net website, a Silverlight application or even a mobile application – and not necessarily a mobile browser either! (think iPhone application)
One important point to mention is that Azure does not currently support the ability to install applications. You’d need to compile and deploy your code directly to their cloud computing environment. For testing purposes, I have begun to create an AMI running on Amazon EC2 and will provide more details in a follow-up post.
Content Distribution & Performance
So what if we did have this scenario running in a production environment? What are some of the other concerns? Performance certainly comes to mind. Overall server performance wouldn’t be much of an issue if you’re using a service like Amazon who provide multiple edge servers in different regions across the globe. But what about the performance of the eCommerce functionality? For this, Commerce Server provides internal methods for caching data that is used frequently, like catalog and product data. Commerce Server content is stored in datasets and is persisted in the cache using .Net caching (System.Web.Caching.Cache). This caching is divided up into 6 different areas and can be configured independently of one another to allow greater flexibility. The idea is to cache the items that change less for a longer period of time, like product descriptions for example. Pricing and inventory would be cached for a shorter amount of time, if at all, depending on your business rules.
In addition to caching, the new API is more efficient as well. By creating an instance of CommerceQuery, you can now attach sequence components to retrieve related items, such as cross-sells or up-sells or get inventory details all with one call to the API. This allows for less direct calls, and subsequently less calls to the database layer resulting in far better page performance.
Conclusion, Next Steps and Additional Links
Microsoft is already beginning to release many cloud based services such as SQL Data Services and SharePoint Services. It is not impossible to imagine cloud based eCommerce Services exposed via the cloud as well. Combine that with data managed by SQL Data Services and content management using SharePoint Services and we’ve got ourselves a viable cloud-based eCommerce platform.
Keep an eye out for part II of this post, where I will have results and samples from a proof-of-concept.
Commerce Server 2009 Now Available
Posted by Kelly in Commerce Server on March 6th, 2009
Commerce Server 2009 provides some great new features to greatly decrease time-to-market with a pre-built site to get you started. There is support for cross-channel out of the box, with a pre-built mobile channel that can be maintained inside SharePoint. There is also a brand new programming model to make developing against Commerce Server much easier and more efficient than it ever has been. CS09 becomes widely available to purchase on April 1st, 2009, but until then feel free to check out some of the resources below:
MSDN Subscriber Downloads
http://msdn.microsoft.com/en-us/subscriptions/default.aspx
Product Website
http://www.microsoft.com/commerceserver/
Partner Information
https://partner.microsoft.com/US/productssolutions/servers/commerceserver/
Forums on MSDN
http://social.msdn.microsoft.com/Forums/en-US/commserver2009/threads/
Multi-Channel Foundation Samples
http://code.msdn.microsoft.com/CS2K9Samples
Default SharePoint Site Performance Guide
I’m sure you will agree that there are some great advances in the platform, but let me know what your thoughts are in the comments.






