Feature Pack 8

Enabling interim fix JR54177

Interim fix JR54177 fixes an issue where a business user cannot activate promotions that have public codes if the promotions were edited within the promotion list view.

To enable this fix, you must implement and deploy changes to code that is reserved for client customization.

Before you begin

Ensure that the latest cumulative interim fix is installed:

Procedure

  1. Start WebSphere Commerce.
  2. Open the J2EE perspective and select the Enterprise Explorer view.
  3. Go to the Dynamic Web Project > LOBTools > WebContent > config > commerce > promotion > objectDefinitions folder.
  4. Open the PromotionPrimaryObjectDefinition.def file.
  5. Search for the "storeId", "promotionCodes", and "parentStoreID" ServiceParam nodes that are under the SavePromotion update service.
    For example,
    <UpdateService sendMultiValues="true" url="/cmc/SavePromotion">
        <ServiceParam name="storeId" parameterName="storeId">
            <EnablementCondition checkObjectDefinition="true" conditionId="promotionCondition" enablementValue="Promotion" propertyName="objectType"/>
        </ServiceParam>
        <ServiceParam name="parentStoreId" parameterName="storeId" propertyName="objectStoreId">
            <EnablementCondition checkObjectDefinition="true" conditionId="promotionCondition" enablementValue="InheritedPromotion" propertyName="objectType"/>
        </ServiceParam>
        ...
        <ServiceParam name="promotionCodes" objectPath="PromotionCode" optional="true" propertyName="code"/>
    
  6. Delete the code that is in bold.
  7. Update the storeId and promotionCodes nodes to resemble the following code:
    <UpdateService sendMultiValues="true" url="/cmc/SavePromotion">
        <ServiceParam name="storeId" parameterName="storeId" propertyName="objectStoreId"/>
        ...
        <ServiceParam name="promotionCodes" objectPath="PromotionCode" optional="true" propertyName="code" loadChildren="true"/>
    
    Summary of changes:
    • Add the propertyName="objectStoreId" attribute to the storeId node, and then close the ServiceParam tag.
    • Add the loadChildren="true" attribute to the promotionCodes node.
  8. Save the file.
  9. Open a new browser window and open the Management Center.
  10. Test your changes in Management Center to ensure that you can now activate promotion codes.
  11. Export and deploy the changes to your runtime environment. For more information, see Deploying a WAR module.