Release notes for Sitecore Commerce 8.2 powered by Commerce Server and Commerce Server 11.4. Contains information on late breaking developments, known issues, and workarounds. Some of the issues described in this document contain internal reference numbers listed in parentheses. You can use these reference numbers to communicate with Sitecore about a particular issue or feature.
Compatibility with Sitecore Experience Platform 8.2 Update-1 requires the following component updates:
Instructions for downloading these updates are provided on the Sitecore Commerce 8.2 powered by Commerce Server page on dev.sitecore.net.
Commerce Server 11.4
Azure PaaS
Commerce Server can run entirely in Azure SQL (v12) and in Azure Cloud Services. Previous releases allowed you to run Commerce Server with a IaaS deployment in Azure. Now you can set up a full PaaS deployment and take full advantage of additional Azure scaling services, including high availability.
Support for Azure Web Apps has been enabled through Registration-free COM deployment. For more information, go to Registration-free COM deployment in the Deployment Guide.
Matrix of which Sitecore Commerce features are supported in Azure Web Apps versus those supported as a Registration-free COM deployment:
Feature | Supported in Azure Web Apps | Supported on Windows Server 2012/Windows 8.1/10 with Registration-free COM deployment |
RefSf site (built on Sitecore) | Not until Version 8.2 Update 1, to be released later in 2016. | Yes. |
Commerce Server site without Sitecore | Yes. | Yes. |
MSDTC transactions |
No. Must set enableTransactions="false" on the <orders> element in the config settings. |
No. Works with a full standard install. |
Business Tools (Catalog Manager, Customers and Orders Manager, Catalog and Inventory Schema Manager, Marketing Manager, Pipeline Editor) |
No. These can be run on a separate machine with the full Commerce Server installation. |
No. Works with a full standard install. |
Commerce Server Web Services (Catalog, Orders, Profiles and Marketing) | Not recommended, and will not work with Azman. Users must run the web services on a local server or deploy to Azure VM, and use Azure AD or connect to their own AD using the FS features on their own. | Yes. |
Catalog Import/Export |
No. Requires COM+ |
Yes. |
Performance Counters |
No. Requires registry access to install. |
Yes. |
Event logging | Partially supported. Most logging operations will work, but some components try to register event sources in the registry and this will fail and fall back to throwing an exception. | Yes. |
Commerce Server Manager |
No. Must be run on a separate machine and connect to the MSCSAdmin database. |
No. Works with a full standard install. |
NuGet Packages
The Commerce Server install folder contains a NuGet folder with a number of NuGet packages. To use these packages, set up a local repository in Visual Studio, or add the packages to a central NuGet repository that you have in your organization. The NuGet packages include the following:
Connecting to the Administration Database by using Configuration Settings
Web applications built on Commerce Server or the Commerce Server Web Services require access to the administration database, with the default name of MSCS_Admin, for configuration information, including the database connection strings for the other Commerce Server databases. The administration database connection string is usually created when running the Commerce Server Configuration Wizard, and is stored in the registry. To support registration-free COM deployments, such as for Azure Web Apps, the ability to override the registry setting, and use the <connectionStrings> section of the web.config to configure the administration database connection string have been added:
<connectionStrings> <add name="ADMINDBPS" connectionString="<your MSCS_Admin connection string"/> </connectionStrings>
This connection string should be the same for your web application and all of the Commerce Server web services. You should use Commerce Server Manager to change the administration database connection string to match what is contained in the web.configs file.
For registration-free COM deployments, adding the ADMINDBPS connection string is required.
Sitecore Commerce Connect
Commerce reports in Experience Analytics
ShopProvider
ShopProvider has been introduced to support multiple shops across all of the APIs. It consists of an interface defined in Sitecore.Commerce.Config and a default implementation that returns the shop context in the form of the name of the current Site as defined by Sitecore.Context.Site.Name.
The introduction of the provider centralizes the logic of providing the shop context. The base class ServiceProviderRequest that is used in all service methods as input parameter has been extended with a Shop property. The property can be set explicitly on every call made through Connect. If the property is not set, the ShopProvider is instantiated and called, and the return value is assigned to the property.
The Shop context is defined as a class that can be customized for extensibility purposes.
For more information, go to the Sitecore Commerce Connect Developer Guide on http://doc.sitecore.net.
Sitecore Commerce Server Connect
Support for running Commerce Server Staging projects when using the new Sitecore Publishing Module
The new publishing module has been extended with support for starting Commerce Server Staging projects as part of the process of starting publishing jobs. If you have the Sitecore Commerce Server Connect Publishing extension package installed, you can start a staging project directly from the Site publish and Item publish dialogs.
For more information, go to the Publishing Service Installation and Configuration Guide on http://doc.sitecore.net.
Support for keeping custom catalog data when the catalog is cleaned out and imported again
The product catalog is exposed in Sitecore by use of a Sitecore data provider. The data provider exposes the catalog data as items based on templates with fields that map to the respective catalog item properties. In addition to the catalog properties, you can extend the Sitecore templates with additional custom fields. Sitecore also maintains a number of system fields and properties for each template and item. All of the Sitecore specific field and property values on catalog items are also maintained by the data provider, and stored outside of Sitecore content.
Changes to catalog items can be made using one of the available UI tools, such as Content Editor, Experience Editor, or Merchandising Manager. Changes to catalog items can also be made by using the Sitecore item API. Changes made using any of these methods will have the same results, and the data will be stored in the CS Catalog.
If you customize the catalog item templates with additional fields, make sure that the values are persisted safely. Starting with Sitecore Commerce Server Connect 8.2, you can now decide if external settings data should be stored along with the original catalog item, or if the external settings data should be stored in a separate catalog. This is useful when you update the original catalog using Commerce Server catalog import or by any external method that rebuilds the catalog items, as it avoids an overwrite of the Sitecore specific settings.
When integrating with Microsoft Dynamics AX for Retail (SCpbMD), it can be difficult to tell which part of the catalog that is owned by AX has been changed and cleared out during a full product synchronization. For that reason, the external Sitecore specific settings are stored in a catalog that is separate from version 8.2. Integration with other external systems may have similar behavior, and can use the new option.
Support for adding and editing custom fields to catalog items when the catalog is managed externally
Both the Content Editor and the Merchandising Manager now supports adding and editing custom fields on catalog items, even if the catalog is managed by an external commerce system. Fields provided are externally are read-only.
Previously, if Merchandising Manager detected a license that supported Dynamics AX, it went into read-only mode. Now, if Merchandising Manager detects a piece of configuration which is deployed by Commerce Server Connect for AX, Merchandising Manager disables any fields in the UI that come from Dynamics AX. If you want to put additional fields on an item and manage it in Merchandising Manager, you must create a new template for the item and add those fields.
For more information, go to the Sitecore Commerce Merchandiser's Guide and the Sitecore Commerce 8.2 powered by Microsoft Dynamics AX6 Integration Guide.
Deprecation of SitecoreItemExclusionCrawler
Improvements to Sitecore ContentSearch has eliminated the need for the previous Commerce specific crawler SitecoreItemExclusionCrawler.
A new pipeline, <getChildrenToIndex>, has been introduced in ContentSearch. This new pipeline supports the ability to return the list of children of an item to be indexed. The feature allows you to return only the desired sub items and exclude items based on any custom criteria. A single processor, GetChildrenToIndex, is included by default and returns all sub-items or children of the provided item that exhibits the same behavior as previous versions.
<!-- GET CHILDREN TO INDEX Pipeline to allow for overriding the getting of children of an item for indexing. Arguments: (IIndexable) The document being indexed, (ISearchIndex) The search index. Examples: Allows for indexing children of a certain template type --> <indexing.getChildrenToIndex help="Processors should derive from Sitecore.ContentSearch.Pipelines.GetChildrenToIndex.GetChildrenToIndexProcessor"> <processor type="Sitecore.ContentSearch.Pipelines.GetChildrenToIndex.GetSitecoreItemChildren, Sitecore.ContentSearch" /> </indexing.getChildrenToIndex>
When crawling content in the master and web databases, the processor prevents indexing of items provided by the Commerce Server data provider in order to optimize performance, as the same catalog items can occur in multiple places in content.
This allows other Sitecore modules and third-party vendors to integrate their custom crawlers with Sitecore Commerce, as there is no longer any Sitecore Commerce crawler that will cause a conflict.
Compatible with Sitecore Experience Platform 8.2 Initial Release
Sitecore Commerce 8.2 powered by Commerce Server - Initial Release component versions:
To upgrade from a previous release, review the Breaking Changes section in this document, and install the new versions of all packages.
For customers upgrading from Commerce Server 2009R2 or earlier, be aware that Sitecore Commerce 8.2 powered by Commerce Server and Commerce Server 11.4 has introduced extensive breaking changes, including, but not limited to:
A detailed accounting of breaking changes in Excel format is available at http://sdn.sitecore.net/downloads/SitecoreCommerceCommerceServerBreaking.download. The purpose of this spreadsheet is to provide you with guidance on migrating your existing solutions from Commerce Server 2009R2 or earlier to Sitecore Commerce 8.2 powered by Commerce Server and Commerce Server 11.4. It contains mappings illustrating the old and new names for assemblies, namespaces and other artifacts. This spreadsheet contains a number of sheets that allow you to filter and pivot on the various namespaces and or / assemblies to help plan your migration.
Sitecore Commerce Server Connect
Translator code
Parameter changes
Sitecore Experience Platform 8.2.
Sitecore Commerce Connect 8.2.
Commerce Server 11.4.
To upgrade from a previous release, review the Breaking Changes section in this document, and install the new versions of all packages.
Commerce Server
Sitecore Commerce Connect
Sitecore Commerce Server Connect
Sitecore Commerce Server Connect
The Content Editing (CM) and Processing server roles cannot use the same master, web, and core databases.
Only the Sitecore Experience Platform is deployed on the processing server role. The Commerce Server engine is not. For that reason, the Content Editing (CM) and Processing server roles cannot share the same master, web, and core databases. Some of the content in these databases needs the Commerce Server engine to function. If sharing of the databases is attempted, the result is undefined, and the logs files will contain error messages.
Experience Analytics reports for wish lists and loyalty programs showing up empty
Wish lists and loyalty programs are functionalities not supported as standard by Commerce Server. These two new reports will not contain any data when running Sitecore Commerce powered by Commerce Server (SCpbCS). Commerce Connect is a generic commerce API that covers a set of functionalities. The discrepancy is that Sitecore Commerce powered by Microsoft Dynamics AX (SCpbMD) does support wish lists and loyalty programs, but SCpbCS does not support the same set of functionalities. If you choose to implement the wish list and loyalty programs functionalites through the Commerce Connect API, the reports will be populated with content.
Contact charts in Customers reports are empty when running SCpbCS
Sitecore Commerce Powered by Commerce Server(SCpbCS) is not populating the UserID property in the Commerce Connect order domain model, which is used in the reports.
An exception occurs in Content Editor when attempting to delete a new department category:"Failed to execute 'send' on 'XMLHttpRequest'
"An error occurred while communicating with the Sitecore Server. Failed to execute 'send' on 'XMLHttpRequest'. Failed to load …" (Issue 19830)
The Commerce processor DeleteCatalogItems executes as part of the UIDeleteItems pipeline, and sets the items parameter to the empty string (0 items) in case the item is of type commerce category. This prevents the following standard processor from deleting all sub-items as usual. The product catalog is provided using a data provider. Products can belong to multiple categories, and all the sub-items of a category, representing the products, should never get deleted.
Workaround: Disable the processors DeleteTestDefinitionItems and DeletePathAnalyzerItems in pipeline UIDeleteItems.
Sitecore Commerce Server Connect
Translator code
Parameter changes
Some of the issues described in this document contain internal reference numbers listed in parentheses. You can use these reference numbers to communicate with Sitecore about a particular issue or feature.
Sitecore Commerce powered by Commerce Server 8.1 rev. 160205 and Commerce Server 11.3.507.0 are released.
Tested with Sitecore XP 8.1 rev. 151207 and Sitecore Commerce Connect 8.1 rev. 160205
Upgrading
To upgrade from a previous release, review the Breaking Changes section in this document, and install the new versions of all packages.
Highlights
Commerce Server 11.3
The focus of the 11.3 release was to make it much simpler to get up and running with a Commerce Server site, and reduce the steep learning curve that many people face. Additionally, we wanted to make sure that Commerce Server is more fully able to leverage Azure and its services.
Azure PaaS
Commerce Server can now run entirely in Azure SQL (v12) and in Azure Cloud Services. Previous releases allowed you to run Commerce Server with a IaaS deployment in Azure, you can now setup a full PaaS deployment and take full advantage of additional Azure scaling services including high availability. Azure WebApps are not supported currently, but look out for them in a later release.
Site setup and Management via PowerShell
Previously, the only way to create Commerce Server sites and add resources was via PuP, and the only way to manage those resources was with Commerce Server Manager. You can now perform all of these tasks by using a new suite of PowerShell CmdLets. The CmdLets mean you are no longer reliant on PuP packages, and instead can create and delete resources and import and export data at will by usingPowerShell. The CmdLets will also perform some additional tasks that were not possible before, such as when you delete a resource, you can also delete its associated databases.
Web Service and Web Deploy packages
Web Services are no longer dependent on PuP packages for setup. You can now set up Commerce Server web services at any point using the new CmdLets or using a set of Visual Studio Web Deploy packages that can be found in the WebServices folder on the Commerce Server installation.
NuGet Packages
Inside the Commerce Server install folder there is a new NuGet folder that contains a number of NuGet packages. To use these packages you can set up a local repository in Visual Studio, or add the packages to a central NuGet repository you have in your organization. This folder contains some useful NuGet packages such as:
Windows 10
Commerce Server has been successfully tested against Windows 10. Windows 10 is only recommended as a developer environment, not as a runtime environment for production sites.
Sitecore Commerce Server Connect
Commerce Server Connect had shared goals with Commerce Server to make deployment simpler, and to ensure an Azure PaaS deployment was possible.
Deployment
One of the main ways to accomplish a better Commerce Server Connect deployment is to remove the amount of content that needs to be merged into the web.config. To accomplish this goal we have introduced the following:
Sitecore Azure
Sitecore Commerce powered by Commerce Server is now fully compatible with Sitecore Azure. The benefits of a full PaaS deployment can now be applied to your Sitecore Commerce solution. There are no additional tools required to set up the Sitecore Azure experience. You can use the Commerce Server Configuration wizard and CmdLets to set up the site as you would expect.
Enabling/Disabling Search indexes
All search indexes have been broken out into separate configuration files so it is easier to enable and disable the indexes you that need based on your environment.
Merchandising Manager
Merchandising Manager 8.1 rev. 8.1.543.0 is released.
Multi-term search for product Ids and categories.
There is now support for a comma separated list of search strings within the search box. For example, a search term of: "AW123, AW234” will return search results that include items matching those criteria.
Two-way Relationship management.
When creating a Relationship, you have the option to indicate whether the same Relationship should be made from the target item to the source item. For example, in relating Product B to Product A, you can automatically have Product A linked to Product B. A new icon is displayed on each relationship to provide an indicator for whether the Relationship exists in one or both directions.
Workspace
Workspace provide an area to store frequently changed products and/or categories, as a kind of "favorites" list. Workspace also provides a mechanism for “bulk editing” of products, product families, categories, and relationships. Based on your needs, it also allows for customization of list columns.
General Improvements
This version of the module only runs on Sitecore XP 8.1 rev. 151207 or later.
There are no known issues at this time.
update mktg_expression set u_expr_body = cast(REPLACE(cast(u_expr_body as nvarchar(max)), 'http://schemas.microsoft.com/CommerceServer/2004/02/Expressions', 'http://schemas.commerceserver.net/2013/01/Expressions') as ntext)
Updated to work with the new Sitecore XP 8.0 functionality.
The deployment scripts for installation of Commerce Server 11.2 do not work with SQL 2014. A solution for this issue is being prepared.
4628 2014:09:17 10:34:58 ERROR Cannot find dictionary domain for the dictionary entry '/sitecore/system/Settings/Workflow/Check in'('{49D654D8-19C1-4DFC-BE0F-7A7D2314340F}'). 4628 2014:09:17 10:34:58 ERROR Cannot find dictionary domain for the dictionary entry '/sitecore/system/Settings/Workflow/Check in'('{49D654D8-19C1-4DFC-BE0F-7A7D2314340F}').To resolve the issue, retry the publishing action.
In Merchandising Manager, when you select more than 100 items in the Item Picker, Internet Explorer 10 may crash. The suggested workaround is to upgrade to Internet Explorer 11.
In Merchandising Manager, when using Internet Explorer 10, the sorting of products on the Product tab does not always sort the full list. The suggested workaround is to upgrade to Internet Explorer 11.
In Merchandising Manager, when changing the list of catalogs that are associated to a Static Catalog Group, the Save button will not become enabled. To enable the Save button, change the name of the Catalog Group, and then press the Tab key. Change your selected catalogs, revert the name of the Catalog Group to its original value, and then save.
When attempting to sequence items in Merchandising Manager using the Firefox browser, the buttons to move items up and down in the list are not being displayed. The suggested workaround is to use an alternate supported browser when using Merchandising Manager.
In Merchandising Manager, if you attempt to create a Category with the same name as an existing Category, it will fail with no error message, making it appear as if the new Category was created.
If you attempt to receive facets for a field that is not a string data type, for example List Price, the names for the facets returned are encoded rather than displaying their numeric value.
The fields for Back Ordered Quantity and Preordered Quantity are computed fields, and should not be edited by the Business User.
A known issue exists where staging data is lost during migration to Sitecore Commerce 8.0 powered by Commerce Server and Commerce Server 11.2. If you wish to keep your staging environment you must perform a backup before starting any part of the migration. For complete instructions on performing a backup and restoring your staging environment, please see http://support.commerceserver.net/KnowledgebaseArticle51140.aspx
When you query for products that include a "-" in the ProductID Database.SelectItems does not return results for those products. The product ID needs to be enclosed in # characters. The correct query format is : /sitecore/Commerce/Catalog Management/Catalogs/Adventure Works Catalog/Departments/Boots/#AW074-04#/*[@CommerceItemType=\"variant\"]
Some controls are not accessible using the keyboard. For example, the action bar that contains controls to filter, create, delete, etc.