Hiding attributes that are not contained in the attribute dictionary

If you plan to use only the attribute dictionary in Management Center to manage attributes, you can hide all attributes that are not contained within the attribute dictionary in the Management Center catalogs tool.

Before you begin

Load the attribute dictionary.

Procedure

  1. Enable the attribute dictionary.
  2. Open WebSphere Commerce Developer.
  3. Open the Java EE perspective and select the Enterprise Explorer view.
  4. Complete one of the following steps:
    • WebSphere Commerce Version 7.0.0.0Feature Pack 1In the Enterprise Explorer view, expand LOBTools > WebContent > WEB-INF > src > lzx > commerce > catalog > propertiesViews; then open the CatalogPropertyPane.lzx file.
      Note: Three classes will be modified: catCatalogEntryDescriptiveAttributes, catSKUAttributes and catCatalogEntryDefiningAttributes.
    • Feature Pack 2In the Enterprise Explorer view, expand LOBTools > WebContent > config > commerce > catalog > propertiesViews; then open the CatalogPropertyPane.def file.
      Note: Three definitions will be modified: catCatalogEntryDescriptiveAttributes, catSKUAttributes and catCatalogEntryDefiningAttributes.
  5. In catCatalogEntryDescriptiveAttributes, comment out the property group named catCatalogEntryDescriptiveAttributesPropertyGroup, by changing:
    WebSphere Commerce Version 7.0.0.0Feature Pack 1
    <!-- 
            	Property Group: A properties group to display non-dictionary descriptive attributes for a catalog entry.
    
            	ATTRIBUTE DICTIONARY CUSTOMIZATION POINT: comment out the property group below if viewing
            	non-dictionary attributes is not desired.
            -->
    		<wcfPropertyGroup collapsable="false" name="catCatalogEntryDescriptiveAttributesPropertyGroup">
    			<catCatalogEntryDescriptiveAttributeList/>
    		</wcfPropertyGroup>
    
    to:
    <!-- 
            	Property Group: A properties group to display non-dictionary descriptive attributes for a catalog entry.
    
            	ATTRIBUTE DICTIONARY CUSTOMIZATION POINT: comment out the property group below if viewing
            	non-dictionary attributes is not desired.
    		<wcfPropertyGroup collapsable="false" name="catCatalogEntryDescriptiveAttributesPropertyGroup">
    			<catCatalogEntryDescriptiveAttributeList/>
    		</wcfPropertyGroup>
    	  -->
    Feature Pack 2
    <!-- 
            	Property Group: A properties group to display non-dictionary descriptive attributes for a catalog entry.
    
            	ATTRIBUTE DICTIONARY CUSTOMIZATION POINT: comment out the property group below if creating
            	non-dictionary attributes is desired.
            -->
    		<PropertyGroup collapsable="false" name="catCatalogEntryDescriptiveAttributesPropertyGroup">
    			<!-- 
    				Enable if the product has classic descriptive attributes or
    				the store does not use an attribute dictionary.
    			 -->		
    			<EnablementOrCondition>
    				<EnablementCondition conditionId="StoreUsesDictionary" contextName="attributeDictionaryEnabledForStore" enablementValue="enabled" negate="true"/>
    				<ProductHasClassicDescriptiveAttributesEnablementCondition package="cat"/>
    			</EnablementOrCondition>
    			<!-- 
    				An instantiation of a class which contains a Child List Editor to display non-dictionary descriptive attributes. 
    			-->
    			<PropertyChildListEditor baseDefinitionName="catCatalogEntryDescriptiveAttributeList"/>
    		</PropertyGroup>
    to:
    <!-- 
            	Property Group: A properties group to display non-dictionary descriptive attributes for a catalog entry.
    
            	ATTRIBUTE DICTIONARY CUSTOMIZATION POINT: comment out the property group below if creating
            	non-dictionary attributes is desired.
            
    		<PropertyGroup collapsable="false" name="catCatalogEntryDescriptiveAttributesPropertyGroup">
    			<!-- 
    				Enable if the product has classic descriptive attributes or
    				the store does not use an attribute dictionary.
    			 		
    		<EnablementOrCondition>
    				<EnablementCondition conditionId="StoreUsesDictionary" contextName="attributeDictionaryEnabledForStore" enablementValue="enabled" negate="true"/>
    				<ProductHasClassicDescriptiveAttributesEnablementCondition package="cat"/>
    			</EnablementOrCondition>
    			<!-- 
    				An instantiation of a class which contains a Child List Editor to display non-dictionary descriptive attributes. 
    			
    			<PropertyChildListEditor baseDefinitionName="catCatalogEntryDescriptiveAttributeList"/>
    		</PropertyGroup>
    		
    		-->
  6. In catCatalogEntryDefiningAttributes, comment out the property group named catCatalogEntryDefiningAttributesPropertyGroup by changing:
    WebSphere Commerce Version 7.0.0.0Feature Pack 1
    <!-- 
      			Property Group: A properties group to display local defining attributes for a product. 
      			
            	ATTRIBUTE DICTIONARY CUSTOMIZATION POINT: comment out the property group below if viewing
            	non-dictionary attributes is not desired.	
      		-->
    		<wcfPropertyGroup collapsable="false" name="catCatalogEntryDefiningAttributesPropertyGroup">
    			<!-- 
    				An enablement condition that evaluates to true if 'catalogEntryHasAttributeDictionaryDefiningAttributes' is '' (empty 
    				string).
    			 -->		
    			<wcfEnablementCondition conditionId="catalogEntryHasAttributeDictionaryDefiningAttributesCondition" 
    							propertyName="catalogEntryHasAttributeDictionaryDefiningAttributes" enablementValue=""/>
    			<<!-- 
    				An instantiation of a class which contains a Child List Editor to display non-dictionary defining attributes. 
    			-->
            	<catCatalogEntryDefiningAttributeList/>
    		</wcfPropertyGroup>  
    to:
    <!-- 
      			Property Group: A properties group to display local defining attributes for a product. 
      			
            	ATTRIBUTE DICTIONARY CUSTOMIZATION POINT: comment out the property group below if viewing
            	non-dictionary attributes is not desired.
    		<wcfPropertyGroup collapsable="false" name="catCatalogEntryDefiningAttributesPropertyGroup">	
    			<wcfEnablementCondition conditionId="catalogEntryHasAttributeDictionaryDefiningAttributesCondition" 		
    							propertyName="catalogEntryHasAttributeDictionaryDefiningAttributes" enablementValue=""/>
            	<catCatalogEntryDefiningAttributeList/>
    		</wcfPropertyGroup> 
    		-->   
    Feature Pack 2
    <!-- 
      			Property Group: A properties group to display local defining attributes for a product. 
      			
            	ATTRIBUTE DICTIONARY CUSTOMIZATION POINT: comment out the property group below if viewing
            	non-dictionary attributes is not desired.	
      		-->
    		<PropertyGroup collapsable="false" name="catCatalogEntryDefiningAttributesPropertyGroup">
    			<!-- 
    				Enable if the product has classic defining attributes and no AD defining attributes or
    				the store does not use an attribute dictionary.
    			 -->
    			<EnablementOrCondition>
    				<EnablementCondition conditionId="StoreUsesDictionary" contextName="attributeDictionaryEnabledForStore" enablementValue="enabled" negate="true"/>
    				<EnablementAndCondition>
    					<EnablementCondition conditionId="catalogEntryHasAttributeDictionaryDefiningAttributesCondition" enablementValue="true" objectPath="CatalogEntryAttributeDictionaryDefiningAttributeProperties" propertyName="catalogEntryHasAttributeDictionaryDefiningAttributes" negate="true"/>
    					<ProductHasClassicDefiningAttributesEnablementCondition package="cat"/>
    				</EnablementAndCondition>
    			</EnablementOrCondition>
    			<!-- 
    				An instantiation of a class which contains a Child List Editor to display non-dictionary defining attributes. 
    			-->
            	<PropertyChildListEditor baseDefinitionName="catCatalogEntryDefiningAttributeList"/>
    		</PropertyGroup>   
    to:
    <!-- 
      			Property Group: A properties group to display local defining attributes for a product. 
      			
            	ATTRIBUTE DICTIONARY CUSTOMIZATION POINT: comment out the property group below if viewing
            	non-dictionary attributes is not desired.	
      		
    		<PropertyGroup collapsable="false" name="catCatalogEntryDefiningAttributesPropertyGroup">
    			<!-- 
    				Enable if the product has classic defining attributes and no AD defining attributes or
    				the store does not use an attribute dictionary.
    			 
    			<EnablementOrCondition>
    				<EnablementCondition conditionId="StoreUsesDictionary" contextName="attributeDictionaryEnabledForStore" enablementValue="enabled" negate="true"/>
    				<EnablementAndCondition>
    					<EnablementCondition conditionId="catalogEntryHasAttributeDictionaryDefiningAttributesCondition" enablementValue="true" objectPath="CatalogEntryAttributeDictionaryDefiningAttributeProperties" propertyName="catalogEntryHasAttributeDictionaryDefiningAttributes" negate="true"/>
    					<ProductHasClassicDefiningAttributesEnablementCondition package="cat"/>
    				</EnablementAndCondition>
    			</EnablementOrCondition>
    			<!-- 
    				An instantiation of a class which contains a Child List Editor to display non-dictionary defining attributes. 
    		
            	<PropertyChildListEditor baseDefinitionName="catCatalogEntryDefiningAttributeList"/>
    		</PropertyGroup>    
    		-->
  7. In catSKUAttributes, comment out the property group named catCatalogEntryDescriptiveAttributesPropertyGroup by changing:
    WebSphere Commerce Version 7.0.0.0Feature Pack 1
    <!-- 
            	Property Group: A properties group to display non-dictionary descriptive attributes for a SKU.
    
            	ATTRIBUTE DICTIONARY CUSTOMIZATION POINT: comment out the property group below if viewing
            	non-dictionary attributes is not desired.
            -->
            <wcfPropertyGroup collapsable="false" name="catCatalogEntryDescriptiveAttributesPropertyGroup">
    			<!-- 
    				An instantiation of a class which contains a Child List Editor to display non-dictionary descriptive attributes. 
    			-->
    			<catCatalogEntryDescriptiveAttributeList/>
    	  </wcfPropertyGroup>
    
    
    to:
    <!-- 
            	Property Group: A properties group to display non-dictionary descriptive attributes for a SKU.
    
            	ATTRIBUTE DICTIONARY CUSTOMIZATION POINT: comment out the property group below if viewing
            	non-dictionary attributes is not desired.
            	<wcfPropertyGroup collapsable="false" name="catCatalogEntryDescriptiveAttributesPropertyGroup">
    			<catCatalogEntryDescriptiveAttributeList/>
    		</wcfPropertyGroup>
    	  -->
    
    Feature Pack 2
    <!-- 
            	Property Group: A properties group to display non-dictionary descriptive attributes for a SKU.
    
            	ATTRIBUTE DICTIONARY CUSTOMIZATION POINT: comment out the property group below if creating
            	non-dictionary attributes is desired.
            -->
            <PropertyGroup collapsable="false" name="catCatalogEntryDescriptiveAttributesPropertyGroup">
            	<!-- 
    				Enable if the product has classic descriptive attributes or
    				the store does not use an attribute dictionary.
    			 -->		
    			<EnablementOrCondition>
    				<EnablementCondition conditionId="StoreUsesDictionary" contextName="attributeDictionaryEnabledForStore" enablementValue="enabled" negate="true"/>
    				<ProductHasClassicDescriptiveAttributesEnablementCondition package="cat"/>
    			</EnablementOrCondition>
    			
    			<PropertyChildListEditor baseDefinitionName="catCatalogEntryDescriptiveAttributeList"/>
    		</PropertyGroup>
    to:
    <!-- 
            	Property Group: A properties group to display non-dictionary descriptive attributes for a SKU.
    
            	ATTRIBUTE DICTIONARY CUSTOMIZATION POINT: comment out the property group below if creating
            	non-dictionary attributes is desired.
            
            <PropertyGroup collapsable="false" name="catCatalogEntryDescriptiveAttributesPropertyGroup">
            	<!-- 
    				Enable if the product has classic descriptive attributes or
    				the store does not use an attribute dictionary.
    					
    			<EnablementOrCondition>
    				<EnablementCondition conditionId="StoreUsesDictionary" contextName="attributeDictionaryEnabledForStore" enablementValue="enabled" negate="true"/>
    				<ProductHasClassicDescriptiveAttributesEnablementCondition package="cat"/>
    			</EnablementOrCondition>
    			
    			<PropertyChildListEditor baseDefinitionName="catCatalogEntryDescriptiveAttributeList"/>
    		</PropertyGroup>
    		-->
  8. Feature Pack 2In catSKUAttributes, find the property group named catCatalogEntryDefiningDictionaryAttributesPropertyGroup and comment out the enablement condition by changing:
    <PropertyGroup collapsable="false" name="catCatalogEntryDefiningDictionaryAttributesPropertyGroup">
    			<!-- 
    				Enable if the product has no classic defining attributes or has classic and AD defining attributes
    				and the store uses an attribute dictionary.
    			 -->
    			<EnablementAndCondition>
    				<EnablementCondition conditionId="StoreUsesDictionary" contextName="attributeDictionaryEnabledForStore" enablementValue="enabled"/>
    				<EnablementOrCondition>
    					<EnablementAndCondition conditionId="1">
    						<EnablementCondition conditionId="catalogEntryHasAttributeDictionaryDefiningAttributesCondition" enablementValue="true" objectPath="CatalogEntryAttributeDictionaryDefiningAttributeProperties" propertyName="catalogEntryHasAttributeDictionaryDefiningAttributes"/>
    						<ProductHasClassicDefiningAttributesEnablementCondition package="cat"/>
    					</EnablementAndCondition>
    					<EnablementAndCondition conditionId="2">
    						<ProductHasClassicDefiningAttributesEnablementCondition package="cat" negate="true"/>
    					</EnablementAndCondition>
    				</EnablementOrCondition>
    			</EnablementAndCondition>
    			<!-- 
    				An instantiation of a class which contains a Child List Editor to display local product defining attributes. 
    			-->
    			<PropertyChildListEditor baseDefinitionName="catCatalogEntryAttributeDictionaryDefiningAttributeList"/>
    		</PropertyGroup>
    to:
    <PropertyGroup collapsable="false" name="catCatalogEntryDefiningDictionaryAttributesPropertyGroup">
    			<!-- 
    				Enable if the product has no classic defining attributes or has classic and AD defining attributes
    				and the store uses an attribute dictionary.
    			
    			<EnablementAndCondition>
    				<EnablementCondition conditionId="StoreUsesDictionary" contextName="attributeDictionaryEnabledForStore" enablementValue="enabled"/>
    				<EnablementOrCondition>
    					<EnablementAndCondition conditionId="1">
    						<EnablementCondition conditionId="catalogEntryHasAttributeDictionaryDefiningAttributesCondition" enablementValue="true" objectPath="CatalogEntryAttributeDictionaryDefiningAttributeProperties" propertyName="catalogEntryHasAttributeDictionaryDefiningAttributes"/>
    						<ProductHasClassicDefiningAttributesEnablementCondition package="cat"/>
    					</EnablementAndCondition>
    					<EnablementAndCondition conditionId="2">
    						<ProductHasClassicDefiningAttributesEnablementCondition package="cat" negate="true"/>
    					</EnablementAndCondition>
    				</EnablementOrCondition>
    			</EnablementAndCondition>
    			 -->
    			<!-- 
    				An instantiation of a class which contains a Child List Editor to display local product defining attributes. 
    			-->
    			<PropertyChildListEditor baseDefinitionName="catCatalogEntryAttributeDictionaryDefiningAttributeList"/>
    		</PropertyGroup>
  9. Save your changes.

What to do next

After you complete your changes:
VersionSteps
  1. Right-click LOBTools Project; then click Build OpenLaszlo Project to produce an updated ManagementCenter.swf file under the workspace_dir\LOBTools\WebContent directory. This setting is the default environment setting.
  2. Test your changes by viewing them in the Management Center, using this URL: https://hostname:8000/lobtools.
  3. Deploy your changes to your production environment.
Introduced in Feature Pack 2
  1. Test your changes by viewing them in the Management Center, using this URL: https://hostname:8000/lobtools.
  2. Deploy your changes to your production environment.