View Definition Examples
This pages provides example configuration for list view customizings.
When referencing Product 360 Core repository fields, make sure to specify the field identifier from the custom area but not the field identifier from the types area.
List with texts in multiple languages
List format:
|
Product No. |
Status |
Short description (German) |
Short description (English) |
Short description (Spanish) |
Short description (Finish) |
Short description (French) |
Example screen:
Definition (product.listmodel.xml):
<definition defaultDefinition="false" i18NKey="Product list multi language" rootEntity="Product2G"> <field identifier="Product2G.ProductNo" sortable="true"/> <field identifier="Product2G.CurrentStatus" sortable="true"/> <field identifier="Product2GLang.DescriptionShort" sortable="true"> <logicalKey identifier="ArticleLangType.LK.Language" value="7"/> </field> <field identifier="Product2GLang.DescriptionShort" sortable="true"> <logicalKey identifier="ArticleLangType.LK.Language" value="9"/> </field> <field identifier="Product2GLang.DescriptionShort" sortable="true"> <logicalKey identifier="ArticleLangType.LK.Language" value="10"/> </field> <field identifier="Product2GLang.DescriptionShort" sortable="true"> <logicalKey identifier="ArticleLangType.LK.Language" value="11"/> </field> <field identifier="Product2GLang.DescriptionShort" sortable="true"> <logicalKey identifier="ArticleLangType.LK.Language" value="12"/> </field> </definition> Variables support for views
${user.language} variable could be used as logical key to specify UI language for views.
Definition (product.listmodel.xml):
<definition defaultDefinition="false" i18NKey="Product list multi language" rootEntity="Product2G"> <field identifier="Product2G.ProductNo" sortable="true"/> <field identifier="Product2G.CurrentStatus" sortable="true"/> <field identifier="Product2GLang.DescriptionShort" sortable="true"> <logicalKey identifier="ArticleLangType.LK.Language" value="${user.language}"/> </field> </definition> List with attribute values and custom caption
Optionally, a custom caption can be specified to replace the default generated column captions.
Example screen:
List format:
|
Item no. |
Status |
Color (English) |
Color(German) |
Definition (article.listmodel.xml):
<definition defaultDefinition="false" i18NKey="Item list with colors" rootEntity="Article"> <field identifier="Article.SupplierAID" sortable="true"/> <field identifier="Article.CurrentStatus" sortable="true"/> <field identifier="ArticleAttributeValue.Value" sortable="true" caption="Color (English)"> <logicalKey identifier="ArticleAttributeValueType.LK.Language" value="9"/> <logicalKey identifier="ArticleAttributeType.LK.Name" value="Farbe"/> </field> <field identifier="ArticleAttributeValue.Value" sortable="true" caption="Color (German)"> <logicalKey identifier="ArticleAttributeValueType.LK.Language" value="7"/> <logicalKey identifier="ArticleAttributeType.LK.Name" value="Farbe"/> </field> </definition> List with different price types
Example screen:
List format:
|
Product No. |
Net customer price (from 1) |
Non-binding price recommendation (from 1) |
Definition (article.listmodel.xml):
<definition defaultDefinition="false" i18NKey="Product list with prices" rootEntity="Article"> <field identifier="Product2G.ProductNo" sortable="true"/> <field identifier="Product2GPriceValueSales.Amount" sortable="true"> <logicalKey identifier="ArticlePriceValueType.LK.LowerBound" value="1"/> <logicalKey identifier="ArticlePriceType.LK.PartyMS" value="1[|]"/> <logicalKey identifier="ArticlePriceType.LK.Type" value="3"/> <logicalKey identifier="ArticlePriceType.LK.Currency" value="EUR"/> <logicalKey identifier="ArticlePriceType.LK.Territory" value="DE"/> <logicalKey identifier="ArticlePriceType.LK.ValidAt" value="now"/> </field> <field identifier="Product2GPriceValueSales.Amount" sortable="true"> <logicalKey identifier="ArticlePriceValueType.LK.LowerBound" value="1"/> <logicalKey identifier="ArticlePriceType.LK.PartyMS" value="1[|]"/> <logicalKey identifier="ArticlePriceType.LK.Type" value="5"/> <logicalKey identifier="ArticlePriceType.LK.Currency" value="EUR"/> <logicalKey identifier="ArticlePriceType.LK.Territory" value="DE"/> <logicalKey identifier="ArticlePriceType.LK.ValidAt" value="now"/> </field> </definition>List with Structure Group Name
Example screen:
Definition (product.listmodel.xml):
<definition defaultDefinition="false" i18NKey="Transition fields" rootEntity="Product2G"> <field identifier="Product2G.ProductNo" sortable="true" /> <field identifier="Product2G.CurrentStatus" sortable="true" /> <field identifier="Product2GStructureMap.StructureGroup" sortable="true"> <logicalKey identifier="ArticleStructureMapType.LK.StructureId" value="10000" /> </field> </definition>List of additional price tiers
File: article.detailtab.xml, section detail_purchase_prices
<tableDefinition i18NKey="%web.client.article.tab.prices.purchase" identifier="detail_purchase_prices" rootEntity="ArticlePricePurchase"> <field identifier="ArticlePricePurchase.PriceType" sortable="false"/> <field align="e" identifier="ArticlePriceValuePurchase.Amount" sortable="false"> <logicalKey identifier="ArticlePriceValueType.LK.LowerBound" value="1"/> </field> <field align="e" identifier="ArticlePriceValuePurchase.Amount" sortable="false"> <logicalKey identifier="ArticlePriceValueType.LK.LowerBound" value="10"/> </field> <field align="e" identifier="ArticlePriceValuePurchase.Amount" sortable="false"> <logicalKey identifier="ArticlePriceValueType.LK.LowerBound" value="100"/> </field> <field align="e" identifier="ArticlePriceValuePurchase.Amount" sortable="false"> <logicalKey identifier="ArticlePriceValueType.LK.LowerBound" value="1000"/> </field> <field identifier="ArticlePricePurchase.Currency" sortable="true"/> <field identifier="ArticlePricePurchase.Territory" sortable="true"/> <field identifier="ArticlePricePurchase.ValidFrom" sortable="true"/> <field identifier="ArticlePricePurchase.ValidTo" sortable="true"/> <field identifier="ArticlePricePurchase.Supplier" sortable="true"/></tableDefinition>List of DQ Status per Channel (Transition Fields)
File: product.listmodel.xml
<definition defaultDefinition="true" i18NKey="Quality Overview" identifier="product.table.config.dq" rootEntity="Product2G"> <field identifier="Product2G.ProductNo" sortable="true" width="100"/> <field identifier="Product2G.CurrentStatus" sortable="true" width="180"/> <field identifier="Product2GLang.DescriptionShort" sortable="true"> <logicalKey identifier="ArticleLangType.LK.Language" value="English"/> </field> <field identifier="Product2G.Status" sortable="true" caption="Status Mobile"> <transitionField identifier="QualityStatusSummary.Status"> <logicalKey identifier="StatusSummaryType.LK.Channel" value="Mobile"/> </transitionField> </field> <field identifier="Product2G.Status" sortable="true" caption="Status Web Shop"> <transitionField identifier="QualityStatusSummary.Status"> <logicalKey identifier="StatusSummaryType.LK.Channel" value="Web Shop"/> </transitionField> </field> </definition>List of DQ Rule Status and Message (Transition Fields)
File: product.listmodel.xml
<definition defaultDefinition="false" i18NKey="Quality Rule Status" identifier="product.table.config.dqrule" rootEntity="Product2G"> <field identifier="Product2G.ProductNo" sortable="true" width="100"/> <field identifier="Product2G.CurrentStatus" sortable="true" width="180"/> <field identifier="Product2GLang.DescriptionShort" sortable="true"> <logicalKey identifier="ArticleLangType.LK.Language" value="English"/> </field> <field identifier="Product2G.Status" sortable="true" caption="Long Descr Status"> <transitionField identifier="QualityStatusEntry.Status"> <logicalKey identifier="StatusEntryType.LK.ProcessIdentifier" value="Check long desc"/> </transitionField> </field> <field identifier="Product2G.Status" sortable="true" caption="Long Descr Message"> <transitionField identifier="QualityStatusEntry.Message"> <logicalKey identifier="StatusEntryType.LK.ProcessIdentifier" value="Check long desc"/> </transitionField> </field> </definition>Use of "displaySectionWidget" attribute in detail tabs
If the attribute "displaySectionWidget" is set to "true" for a sub-entity, then the Logical Keys with field 'Editable' set to "true" are displayed as
labels in the detail tabs by default.
<definitiondebugId="article_surcharges_tab"i18NKey="%web.article.detail.tab.surcharges"id="web.article.detail.tab.surcharges"permissionId="web.article.detail.tabs.surcharges"position="100"rootEntity="Article"><column><fieldGroupdisplaySectionWidget="true"subEntityId="ArticleSurchargeMetal"><fieldidentifier="ArticleSurchargeMetal.Amount"/><fieldidentifier="ArticleSurchargeMetal.Weight"/><fieldidentifier="ArticleSurchargeMetal.Base"/><fieldidentifier="ArticleSurchargeMetal.Currency"/><fieldidentifier="ArticleSurchargeMetal.Step"/><fieldidentifier="ArticleSurchargeMetal.IsPercentage"/><fieldidentifier="ArticleSurchargeMetal.CalculateOnStepComplete"/></fieldGroup><fieldGroup><fieldidentifier="ArticleSurchargeOther.Amount"/><fieldidentifier="ArticleSurchargeOther.Currency"/><fieldidentifier="ArticleSurchargeOther.Step"/><fieldidentifier="ArticleSurchargeOther.IsPercentage"/><fieldidentifier="ArticleSurchargeOther.CalculateOnStepComplete"/></fieldGroup></column></definition>
Combo box with a change in the configuration as shown below (selectable="true").
<definitiondebugId="article_texts_tab"i18NKey="%web.article.detail.tab.texts"id="web.article.detail.tab.texts"permissionId="web.article.detail.tabs.texts"position="20"rootEntity="Article"><column><fieldGroupdisplaySectionWidget="true"subEntityId="ArticleLang"><fieldidentifier="ArticleLang.DescriptionShort"/><fieldidentifier="ArticleLang.DescriptionLong"/><fieldidentifier="ArticleLang.Keyword"/><fieldidentifier="ArticleLang.Segment"/><fieldidentifier="ArticleLang.Remarks"/><logicalKeyidentifier="ArticleLangType.LK.Language"selectable="true"value="${user.language}"/></fieldGroup></column></definition>
If the attribute "displaySectionWidget" is set to "false" for a sub-entity, then the LogicalKeys are not displayed.
<definitiondebugId="article_texts_tab"i18NKey="%web.article.detail.tab.texts"id="web.article.detail.tab.texts"permissionId="web.article.detail.tabs.texts"position="20"rootEntity="Article"><column><fieldGroupdisplaySectionWidget="false"subEntityId="ArticleLang"><fieldidentifier="ArticleLang.DescriptionShort"/><fieldidentifier="ArticleLang.DescriptionLong"/><fieldidentifier="ArticleLang.Keyword"/><fieldidentifier="ArticleLang.Segment"/><fieldidentifier="ArticleLang.Remarks"/><logicalKeyidentifier="ArticleLangType.LK.Language"selectable="true"value="${user.language}"/></fieldGroup></column></definition>