HCL Commerce Enterprise

Registering new command implementations in the command registry

Add a series of command registry entries to your existing store so that business users can create pricing terms for a given contract using either new or existing methods.

The methods are:

  1. In Management Center, create a price rule and then assign the price rule to a contract. This is the new method supported with HCL Commerce Version 7 Feature Pack 2.
  2. Create a pricing term using any other method to that existed before HCL Commerce Version 7 Feature Pack 2. For example, use the HCL Commerce Accelerator catalog filter within the contract to specify price adjustments for certain parts of the catalog, or the whole catalog.

For a list of new and existing pricing terms, see Contract terms and conditions.

These commands also enable the catalog filter supported with Management Center for product entitlement to take effect for all contracts.

About this task

This task applies to:
  • Single stores (stores that are not extended site stores)
  • Extended sites

The commands you must register depend on the type of store. Use the following table to determine which commands to register:

Type of store Instructions for registering commands
  • Single stores (stores that are not extended site stores)
  • Storefront asset stores
Register commands 1 through 16.
  • Catalog asset stores
Register command 16 only.
  • Extended site stores
Do not register any commands. Extended site stores inherit these commands from the asset stores.

Procedure

  1. Run the following SQL statements to register the commands. In each command, replace the STOREENT_ID variable with the actual STOREENT_ID of the target store:

    Command 1:

    INSERT INTO CMDREG (STOREENT_ID, INTERFACENAME, CLASSNAME) VALUES (STOREENT_ID, 
    'com.ibm.commerce.price.commands.GetContractUnitPriceCmd', 
    'com.ibm.commerce.price.commands.CatalogFilterGetContractUnitPriceCmdImpl');

    Command 2:

    INSERT INTO CMDREG (STOREENT_ID, INTERFACENAME, CLASSNAME) VALUES (STOREENT_ID, 
    'com.ibm.commerce.price.commands.GetProductContractUnitPriceCmd', 
    'com.ibm.commerce.price.commands.CatalogFilterGetContractUnitPriceCmdImpl');

    Command 3:

    INSERT INTO CMDREG (STOREENT_ID, INTERFACENAME, CLASSNAME) VALUES (STOREENT_ID, 
    'com.ibm.commerce.price.commands.GetContractSpecialPriceCmd', 
    'com.ibm.commerce.price.commands.CatalogFilterGetContractUnitPriceCmdImpl');

    Command 4:

    INSERT INTO CMDREG (STOREENT_ID, INTERFACENAME, CLASSNAME) VALUES (STOREENT_ID, 
    'com.ibm.commerce.price.commands.GetContractUnitPriceCmd+AfterCatalogFilter', 
    'com.ibm.commerce.price.commands.CompositeGetContractUnitPriceCmdImpl');

    Command 5:

    INSERT INTO CMDREG (STOREENT_ID, INTERFACENAME, CLASSNAME) VALUES (STOREENT_ID, 
    'com.ibm.commerce.price.commands.GetProductContractUnitPriceCmd+AfterCatalogFilter', 
    'com.ibm.commerce.price.commands.CompositeGetContractUnitPriceCmdImpl');

    Command 6:

    INSERT INTO CMDREG (STOREENT_ID, INTERFACENAME, CLASSNAME) VALUES (STOREENT_ID, 
    'com.ibm.commerce.price.commands.GetContractSpecialPriceCmd+AfterCatalogFilter', 
    'com.ibm.commerce.price.commands.CompositeGetContractUnitPriceCmdImpl');

    Command 7:

    INSERT INTO CMDREG (STOREENT_ID, INTERFACENAME, CLASSNAME) VALUES (STOREENT_ID, 
    'com.ibm.commerce.price.commands.GetContractUnitPriceCmd+AfterCompositeSecondary', 
    'com.ibm.commerce.price.commands.GetContractUnitPriceCmdImpl');

    Command 8:

    INSERT INTO CMDREG (STOREENT_ID, INTERFACENAME, CLASSNAME) VALUES (STOREENT_ID, 
    'com.ibm.commerce.price.commands.GetProductContractUnitPriceCmd+AfterCompositeSecondary', 
    'com.ibm.commerce.price.commands.GetContractUnitPriceCmdImpl');

    Command 9:

    INSERT INTO CMDREG (STOREENT_ID, INTERFACENAME, CLASSNAME) VALUES (STOREENT_ID, 
    'com.ibm.commerce.price.commands.GetContractSpecialPriceCmd+AfterCompositeSecondary', 
    'com.ibm.commerce.price.commands.GetContractUnitPriceCmdImpl');

    Command 10:

    INSERT INTO CMDREG (STOREENT_ID, INTERFACENAME, CLASSNAME) VALUES (STOREENT_ID, 
    'com.ibm.commerce.price.commands.GetContractUnitPriceCmd+AfterCompositePrimary', 
    'com.ibm.commerce.price.commands.EnsureOffersExistGetContractUnitPriceCmdImpl');

    Command 11:

    INSERT INTO CMDREG (STOREENT_ID, INTERFACENAME, CLASSNAME) VALUES (STOREENT_ID, 
    'com.ibm.commerce.price.commands.GetProductContractUnitPriceCmd+AfterCompositePrimary', 
    'com.ibm.commerce.price.commands.PriceRuleGetContractUnitPriceCmdImpl');

    Command 12:

    INSERT INTO CMDREG (STOREENT_ID, INTERFACENAME, CLASSNAME) VALUES (STOREENT_ID, 
    'com.ibm.commerce.price.commands.GetContractSpecialPriceCmd+AfterCompositePrimary', 
    'com.ibm.commerce.price.commands.EnsureOffersExistGetContractUnitPriceCmdImpl');

    Command 13:

    INSERT INTO CMDREG (STOREENT_ID, INTERFACENAME, CLASSNAME) VALUES (STOREENT_ID, 
    'com.ibm.commerce.price.commands.GetContractUnitPriceCmd+AfterEnsureOffersExist', 
    'com.ibm.commerce.price.commands.PriceRuleGetContractUnitPriceCmdImpl');

    Command 14:

    INSERT INTO CMDREG (STOREENT_ID, INTERFACENAME, CLASSNAME) VALUES (STOREENT_ID, 
    'com.ibm.commerce.price.commands.GetContractSpecialPriceCmd+AfterEnsureOffersExist', 
    'com.ibm.commerce.price.commands.PriceRuleGetContractUnitPriceCmdImpl');

    Command 15:

    INSERT INTO CMDREG (STOREENT_ID, INTERFACENAME, CLASSNAME) VALUES (STOREENT_ID, 
    'com.ibm.commerce.price.commands.GetContractUnitPriceCmd+IBM_Store_CatalogEntrySearch', 
    'com.ibm.commerce.price.commands.CompositeGetContractUnitPriceCmdImpl');

    Command 16:

    INSERT INTO CMDREG (STOREENT_ID, INTERFACENAME, CLASSNAME) VALUES (STOREENT_ID, 
    'com.ibm.commerce.price.facade.server.commands.ComposePriceListCmd+IBM_PriceEntryDetailProfile', 
    'com.ibm.commerce.price.facade.server.commands.ComposePriceEntryDetailInExtendedPriceListCmdImpl');
  2. Restart the HCL Commerce server for the commands to take effect.
    Alternatively, you can use the procedure Updating registry components, and select the Commerce Commands component.