How to define Dimension & Property in Endeca for forgeless approach? - Oracle commerce 11.x

There are two ways to define dimension and properties for Forge-less approach:

1) Define at Product-sku-output-config(PSOC) level
Ex:
      DIMENSION:  <property name="pattern" type="string" output-name="Pattern" multiselect-type="multi-or"  is-dimension="true"  />

      PROPERTY:   <property name="description" type="string" output-name="P_Description" text-searchable="true"/>

2) Define at Index config Level
File location: /opt/app/endeca/apps/APPNAME/config/index_config/index-config.json


a) Add dimension and property as below mentioned in example and you can define searchable, filter, roll-up, dimension, multi select etc...
Ex:
{
  "indexConfig" : {
    "attributes" : {
      "jcr:primaryType" : "endeca:unstructured",
      "record.id" : {
        "propertyDataType" : "ALPHA",
        "jcr:primaryType" : "endeca:property",
        "isRecordFilterable" : true
                },
                "sku.margin" : {
          "propertyDataType" : "DOUBLE",
          "jcr:primaryType" : "endeca:property"
        },
                "product.repositoryId" : {
          "propertyDataType" : "ALPHA",
          "mergeAction" : "UPDATE",
          "isRollupKey" : true,
          "jcr:primaryType" : "endeca:property",
          "isRecordFilterable" : true

        },
                "product.price_range" : {
                  "rangeComparisonType" : "FLOAT",
                  "multiSelectType" : "OR",
                  "sourcePropertyNames" : ["sku.sortPrice"],
                  "jcr:primaryType" : "endeca:dimension"
                }

        },
    "precedenceRules" : {
    },
    "searchIndexConfig" : {
      "isWildcardEnabledInDimensionSearch" : true,
      "spellingDictMaxWordLength" : 16,
      "spellingDictMinNumWordOccurrences" : 4,
      "spellingDictMinWordLength" : 3
    }
  }
}

b) Once you update index-config.json make sure to set configurations at Endeca repository level.

    Here is the command:
   /opt/app/endeca/apps/APPNAME/control :>

                          ./index_config_cmd.sh set-config -f ../config/index_config/index-config.json -o all

c) Run Endeca indexing to see your dimension(s) and propertie(s) added

3 comments:

  1. How would you create price ranges if you have store-specific pricing (Eg., store1 has $129.99, store2 has $139.99)?

    ReplyDelete
  2. Hi Ravi ,
    Please help me with the way to create endeca query with the rollup key that I have defined . I have tried a few ways but wach time the endeca request takes product.repositoryId as the rollup key . I am not even able to find a where this is set as default .

    Thanks in advance!!

    ReplyDelete