Sitecore Commerce powered by Commerce Server 8.2 and Commerce Server 11.4 Release notes (March 2017)

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.

Sitecore XP Compatibility Update (March 2017)

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.

Sitecore Commerce 8.2 powered by Commerce Server and Commerce Server 11.4 (August 2016)

  1. What's New

    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:

    • A package for each of the Commerce Server web services, so they can be customized if needed.
    • A package that automatically imports the Commerce Server CmdLets into the Package Manage Console.
    • A package that contains the default files for working with the Orders system.
    • Packages for each of the Commerce Server subsystems: Common, Catalog, Orders, Profiles, and Marketing. Using these packages enables a developer to create a web application built on Commerce Server using registration-free COM, so the target environment does not need Commerce Server to be installed to run. All dependencies are added to the web application bin directory. Each package contains a manifest listing all runtime dependencies. Installing the Common package will update the modules in your web.config to include the RegFreeComHelperModule, which loads and merges the manifests to generate a webapp.manifest in the web application root directory. This final manifest is used by the .NET runtime and COM to locate dependencies.

    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

    New commerce related reports have been added to Experience Analytics. 40+ charts on 13 new commerce reports have been introduced with Sitecore Commerce Connect, which covers:
    1. Overview
    2. Orders
    3. Campaigns
    4. Products
    5. Categories
    6. Customers
    7. Shopping cart activity
    8. Filtering and sorting
    9. Regional Settings
    10. Internal search
    11. Payment and shipping
    12. Wish lists
    13. Loyalty programs

    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>
    
    In Sitecore Commerce, the default GetChildrenToIndex processor has been replaced with a processor of the same name in the Commerce namespace. The processor returns all sub items of any item passed in, except in cases where the item is based on the commerce specific templates:
    • /sitecore/templates/Commerce/Catalog/Commerce Catalog Folder (directly)
    • /sitecore/templates/Commerce/Catalog/Commerce Catalog Group Folder (directly)
    • /sitecore/templates/Commerce/Catalog/Commerce Navigation Item (inherited)

    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.

  2. Compatibility

    Compatible with Sitecore Experience Platform 8.2 Initial Release

    Sitecore Commerce 8.2 powered by Commerce Server - Initial Release component versions:

    • Commerce Server 11.4.148
    • Sitecore Commerce Connect 8.2.273
    • Sitecore Commerce Server Connect 8.2.225
    • Sitecore Commerce Server Connect Publishing Extensions 8.2.225
    • Sitecore Merchandising Manager 8.2.165
    • Sitecore Reference Storefront 8.2.507
    • Profile Import 8.2.217
    • Desktop Business Tools 11.4.148
    • BizTalk Adapters 11.4.148
    • Commerce Server SDK 11.4.142
    • Desktop Business Tools SDK 11.4.142
    • Commerce Server - German (de-DE) 11.4.149
    • Desktop Business Tools - German (de-DE) 11.4.149
    • BizTalk Adapters - German (de-DE) 11.4.149

    To upgrade from a previous release, review the Breaking Changes section in this document, and install the new versions of all packages.

  3. Breaking Changes

    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:

    • Namespaces
    • Registry entries
    • GUI Cascades and command syntax
    • File names and directories

    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

    The following translator code has been changed in Sitecore Commerce Server Connect, and will require a recompile against the updated assemblies:
    • TranslateEntityToOrderAddressRequest. SourceParty has changed from a CommerceParty class to the base Connect Party class. This is to accommodate for the new Connect EmailParty class.
    • TranslateOrderAddressToEntityRequest. DestinationParty has changed from a CommerceParty class to the base Connect Party class. This is to accommodate for the new Connect EmailParty class.
    • TranslateOrderGroupToEntity:TranslateAddress. DestinationParty is now defined as a Party class instead of a CommerceParty.

    Parameter changes

    The following parameters have been changed in Sitecore Commerce Server Connect, and will require a recompile against the updated assemblies:
    • AddPartiesToCart:AddParty. The party method parameter is now defined as the base Party class instead of a CommerceParty. An entityName string parameter was added.
  4. Compatibility

    Sitecore Experience Platform 8.2.

    Sitecore Commerce Connect 8.2.

    Commerce Server 11.4.

    Reference Storefront 8.2 from GitHub.
    Note: Be sure to use the most recent version of the Reference Storefront from GitHub.

    To upgrade from a previous release, review the Breaking Changes section in this document, and install the new versions of all packages.

  5. Resolved Issues

    Commerce Server

    • Profile editor validation problem and error message with placeholder. (22086)
    • Catalog schema media type does not use maxLength/maxValue attribute from catalog XML during import. (22088)

    Sitecore Commerce Connect

    • Product sync slower after moving to Sitecore 8.0 update. 5 (452887)
    • Abandoned Carts with promo codes get stuck in EAP causing excessive queries to Commerce Server DB and exceptions to Sitecore. (456006)

    Sitecore Commerce Server Connect

    • Deadlock on start up of Sitecore client after install TDS package. (22084, 22085)
    • Running Sitecore.Publishing.Publisher.Publish() causes nullreference exception in CatalogPublishingExcluderEvent event handler. (22074)
    • Commerce Server Discounts do not work in Commerce Server Connect if you try to target specific UserObject information. (22068)
  6. Known Issues

    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.

  7. Breaking Changes

    Sitecore Commerce Server Connect

    Translator code

    The following translator code has been changed in Sitecore Commerce Server Connect, and will require a recompile against the updated assemblies:
    • TranslateEntityToOrderAddressRequest. SourceParty has changed from a CommerceParty class to the base Connect Party class. This is to accommodate for the new Connect EmailParty class.
    • TranslateOrderAddressToEntityRequest. DestinationParty has changed from a CommerceParty class to the base Connect Party class. This is to accommodate for the new Connect EmailParty class.
    • TranslateOrderGroupToEntity:TranslateAddress. DestinationParty is now defined as a Party class instead of a CommerceParty.

    Parameter changes

    The following parameters have been changed in Sitecore Commerce Server Connect, and will require a recompile against the updated assemblies:
    • AddPartiesToCart:AddParty. The party method parameter is now defined as the base Party class instead of a CommerceParty. An entityName string parameter was added.

Sitecore Commerce 8.1 powered by Commerce Server and Commerce Server 11.3

  1. What's New

    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.

    In order to support a full Azure PaaS deployment there are a couple of notable changes that had to be made.
    1. The MSCS_CatalogScratch database, which was used to cache catalog queries, is no longer a separate database and has been merged in with the Product Catalog database. This was necessary because Azure SQL does not allow cross-database calls, and cross-database calls were heavily leveraged by the Product Catalog and MSCS_CatalogScratch databases.
    2. Microsoft Distributed Transaction Coordinator (MSDTC) is used by the Orders pipeline infrastructure to allow rollback when you are performing database actions across multiple databases, most notably updating counts in the Inventory database when placing an order. MSDTC is not supported in Azure, so we have provided a new switch that allows you to turn off Commerce Server’s MSDTC use when you are in Azure.

    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:

    • A package for each of the Commerce Server web services, in case you need to customize them.
    • A package that automatically imports the Commerce Server CmdLets into the Package Manage Console.

    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:

    • The Commerce Server HttpModules have been replaced with Sitecore pipelines equivalents, so there are fewer HttpModules in the web.config. You can still add them in if needed.
    • The entire Commerce Server configuration section has been moved to \App_Config\CommerceServer.Core.config. Override this for your deployments, in the same way you would treat the \App_Config\ConnectionStrings.config file.

    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

    • Issue fixed in Item Picker tab counts, where in some instances it would display incorrect values
    • When changing an item in a Custom Catalog that requires the catalog to be rebuilt, a prompt is now presented allowing the choice to rebuild immediately.
  2. Compatibility

    This version of the module only runs on Sitecore XP 8.1 rev. 151207 or later.

  3. Resolved Issues
    • Commerce Server Staging Expressional Job - Languages to Stage"All" Aborting. ( 439638)
    • Commerce Server workflow state change updates all languages. ( 440363, 440670)
    • Virtual Catalog rebuild failure due to col conflict between system table and custom catalog schema. ( 440541)
    • Non-serializable objects error when adding items to cart using SQL Session state. (439369) (Commerce Connect)
    • Products Deleted from Base Catalog due to deleting Commerce Navigation Item. ( 442139)
    • Commerce Server incremental staging job does not copy image references. ( 442554 )
    • Commerce Server 2007 to 11.2 migration error due to ctlg_UpgradeCatalogSchemaToVersion11 failure. ( 442600 )
    • CacheRefreshEvent throws exception when handling on CD servers having master database disabled, ( 442829, 442656 )
    • Commerce Server Staging Jobs - Email Not Sending. ( 443535 )
    • Profile Properties dialog in CS manager does not show for Global Resources. ( 453892 )
    • ExternalSettings field value contains formatting characters. ( 447972 )
    • Some default catalog schema property metadata have wrong Sitecore field properties. ( 449022 )
    • Unpup may fail on profile resource when SQL authentication is used. ( 450007 )
    • Sitecore.Commerce.Connect.CommerceServer.Catalog.CatalogFieldValidator cannot be serialized. ( 450321 )
    • Empty Product item List Price field causes exception in the Merchandising Manager. ( 450455, 450458, 450176 )
    • Upgrade wizard error on marketing resource when upgrade from CS07 to CS10/11. (428701)
    • Crash when use OrderContext.GetShipping methods outside HttpContext. (Old support system)
    • Catalog with many relationships import performance issue (Old support system)
    • Price display problem with the OS region format is non-English. (For example, Danish.) ( 435905 )
    • loggingEnabled set to true on basket pipeline definition causes exception. (439082)
    • 'TranslateShipmentToEntity' processor throws 'out of the range of valid values' exception if shipping method was changed. (442219) (Commerce Connect)
    • A Relationship List field table header contains a typo (spelt as "Relationsihp Name"). (447956)
    • Commerce Server staging project schedule deletion does not remove the windows schedule task entry. (451657)
    • CommerceCartLine should translate weakly typed properties to Baskets out of the box. (440018)
    • Commerce connect product synchronization extreme slow (452887) (Commerce Connect)
    • Deletion of Commerce Navigation item deletes catalog items (454302, 454729)
    • Properties whose names with space are skipped during virtual catalog import (454917)
    • large Catalog causes performance issue when publishing after IIS reset (454953,452734)
  4. Known Issues

    There are no known issues at this time.

  5. Breaking Changes
    • MSCS_CatalogScratch no longer exists as a standalone database. The tables & views that were dynamically added to this database are now generated in the appropriate *_productcatalog database. When you install this build of Commerce Server, your existing MSCS_CatalogScratch database will be ignored and can be safely deleted. Commerce Server will regenerate the temporary tables and views in the *_productcatalog as they are required. The transition from MSCS_CatalogScratch to *_productcatalog requires no action on your part.
    • All search indexes have been broken out into separate configuration files, so it is easier to enable and disable the indexes that you need based on your environment. If you are installing into an existing SCpbCS environment then you should delete all existing \Website\App_Config\Include\CommerceServer\CommerceServer.ContentSearch.*.config files before installing the Sitecore Commerce Server Connect package.
    • Schema XML namespaces that previously used the prefix http://schemas.microsoft.com have been changed to http://schemas.commerceserver.net/2013/01. This includes those used by the Commerce Server Web Services. If you have existing data containing the namespace with Microsoft schema, you need change it by yourself. Here is an example of how to change the namespace in mktg_expression table inside “YourSiteName_marketing” database. You do not have to use exact same SQL statement in your own code.

      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)

Sitecore Commerce 8.0 powered by Commerce Server and Commerce Server 11.2

  1. What's New
    • Updated to work with the new Sitecore XP 8.0 functionality.
    • A user must be in the role "sitecore\Commerce Staging" to have permission to run a Commerce Server Staging project from the Sitecore Publishing dialog .
    • Profile Cards can be directly applied to items that represent categories and products.
    • All languages used on Commerce Server catalogs are now fully registered in Sitecore.
  2. Compatibility

    Updated to work with the new Sitecore XP 8.0 functionality.

  3. Resolved Issues
  4. Known Issues
    • Deployment Scripts Do Not Work with SQL 2014

      The deployment scripts for installation of Commerce Server 11.2 do not work with SQL 2014. A solution for this issue is being prepared.

    • Some Dialogs Do Not Work in Experience Editor When Using the MVC Site
      When using the MVC site, some dialogs do not work in the Experience Editor. This is caused by a collision between prototype.js and JQuery. To resolve the issue, do the following:
      • In \Views\Shared\_Layout.cshtml move the @Scripts.Render("~/js/jquery") reference at the bottom of the file to just above the closing </head> tag.
      • In \Scripts\main.js replace all instances to $ with jQuery
      • In \Views\Catalog\_Home.cshtml replace all instances to $ with jQuery
    • Exceptions May Occur During Publish to Web
      When publishing to the Web, you may receive an exception that is not shown in the script output, but only in the logs. For example:
      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.
    • IE10 Crashes While Scrolling Large Numbers of Products

      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.

    • Merchandising Manager Product Sort Page Does Not Sort in IE10

      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.

    • Merchandising Manager Static Catalog Group changes disables Save button

      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.

    • Merchandising Manager Sequencing Dialogs are missing buttons in Firefox

      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.

    • Merchandising Manager Category creation fails silently when a category already exists with that name

      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.

    • Faceting by non-string data types when using Lucene returns invalid facet names

      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.

    • Searching Within Merchandising Manager will Fail if Empty Catalogs Exist
      Merchandising Manager searches across all catalogs in your system. If an empty catalog exists, the search may fail. The workarounds for this issue are as follows:
      • Delete all empty catalogs.
      • Add at least one item to all empty catalogs.
    • Do Not Change Back Ordered Quantity or Preordered Quantity Fields in Product and Variant Inventory Details

      The fields for Back Ordered Quantity and Preordered Quantity are computed fields, and should not be edited by the Business User.

    • Backup Staging Data to Retain the Staging Environment

      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

    • Error 1316 During a Commerce Server Repair
      You may receive Error 1316.A network error occurred while attempting to read from the file Path\SSCERuntime-ENU.msi as an error message when you repair Sitecore Commerce 8.0 powered by Commerce Server and Commerce Server 11.2. This issue is related to the following Microsoft KB article, http://support.microsoft.com/kb/970876. To resolve this issue, follow these steps:
      1. Using Add or Remove Programs in Control Panel, Remove Microsoft SQL Server Compact 3.5 SP2 x64 ENU
      2. Using Add or Remove Programs in Control Panel, Remove Microsoft SQL Server Compact 3.5 SP2 ENU
      3. Rerun repair on Sitecore Commerce 8.0 powered by Commerce Server and Commerce Server 11.2. After the repair operation, the correct versions of SQL Server Compact 3.5 will be installed.
    • Database.SelectItems does not return results for some products

      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\"]

    • Keyboard Access for UI Controls

      Some controls are not accessible using the keyboard. For example, the action bar that contains controls to filter, create, delete, etc.

  5. Breaking Changes
    • CommercePaymentMethod has been removed, and is replaced with Connect PaymentMethod entity
    • The GetPaymentMethodsRequest has been renamed CommerceGetPaymentMethodsRequest.
    • The GetPaymentMethodsResult has been removed,and is replaced with Connect GetPaymentMethodsResult.
    • Commerce.orders.getPaymentMethods pipeline has been removed, and is replaced with Connect commerce.payments.getPaymentMethods pipeline.
    • CommerceOrderServiceProvider.GetPaymentMethods() is deprecated, and is replaced with Connect PaymentServiceProvider.GetPaymentMethods().
    • CommerceShippingMethod has been removed, and is replaced with Connect ShippingMethod entity.
    • GetShippingMethodsRequest has been renamed CommerceGetShippingMethodsRequest.
    • GetShippingMethodsResult has been removed, and is replaced with Connect GetShippingMethodsResult.
    • GetShippingMethodsResult has been removed, and is replaced with Connect GetShippingMethodsResult.
    • GetShippingMethodsResult has been removed, and is replaced with Connect GetShippingMethodsResult.
    • Commerce Server depends on .NET 4.5.1. Code that references Commerce Server assemblies must be changed to target .NET 4.5.1. You may still access web services or go through COM interfaces to maintain compatibility where there are no direct references to Commerce Server assemblies.
    • Due to changes in the .NET Framework, as of .NET 3.5, GetEnumerator() does not exist as a member of the DataTable or DataSet classes. GetEnumerator() has moved to System.Data.DataSetExtensions.dll as an extension method. Any attempt to foreach over the Rows of a DataTable or similar operation will fail unless a reference to System.Data.DataSetExtensions.dll is added to your projects that use Commerce Server DataTables or DataSets.
    • Commerce Server requires the latest Visual C++ 2013 runtime, which is installed automatically by the installer in a customer environment. Native code that accesses Commerce Server native COM objects should not require any changes.
    • ADODB Recordsets that are returned to client code from Commerce Server COM objects are not automatically populated with default values. Any attempt to MoveFirst() or MoveNext() will fail when the Recordset.EOF = true, because there are no rows. Visual Basic 6 allows you to MoveFirst() on a Recordset that has no rows, and will return a Recordset that allowed that operation for clients operating on the Recordset. Visual Basic 6 will also construct an empty, default Recordset on the client side, even if the server returned null. This is no longer allowed. The simplest fix is just to change your code to check if the Recordset state is not closed, and ensure it is not empty before invoking operations involving any rows.
    • Change any references to CommerceServer.Core.Interop.Configuration .MSCSCFG .dll to use CommerceServer.Core.Configuration.dll, and change all type references. For example: GlobalConfigFreeThreaded is changed to IGlobalConfigGlobalConfigAdminFreeThreaded is changed to IGlobalConfig2 SiteConfigFreeThreaded is changed to ISiteConfigSiteConfigReadOnly is changed to ISiteConfigReadOnly.
    • You do not need to go through the legacy CommerceServer.Core.Internal.Profiles.BusinessDataAdminInterop wrapper (CommerceServer.Core.Profiles.DataManagement.dll), but it is still available to support legacy dependencies. Customers using the BusinessDataAdminInterop class should not have to make any changes. Customers using the new CommerceServer.Core.Profiles.dll instead of the legacy VB6 COM object, will have to change ref params to pass the parameters by value.