我是Hybris的初学者。我需要在Hybris Customer Type中添加一个String类型的新字段/属性。该字段应出现在 User / Customers / General / Essential 列的后台(图1)。 figure 1 我该如何添加它?通过Impex?
我只能在Customer类型的属性中添加一个字段(通过extensionname-items.xml)(图2)。 figure 2
答案 0 :(得分:0)
要自定义后台,您需要先使用ybackoffice模板创建自定义扩展程序。
检查Creating a Custom Backoffice Extension
成功创建扩展后,您应该在资源文件夹中自动生成yourextension-backoffice-config.xml文件。
OOTB有多个编辑器可用。检查platformbackoffice-backoffice-config.xml或任何现有的* -backoffice-config.xml中的editor-area,create-wizard,base,simple-search,advanced-search,listview等。您将了解如何为任何类型定义这些配置。
目前,您对查看客户类型配置更感兴趣。检查platformbackoffice-backoffice-config.xml
中的以下配置 <context merge-by="type" parent="User" type="Customer" component="editor-area">
OR
<context component="create-wizard" type="Customer">
第一个用于编辑类型实例,后来用于在后台创建新类型实例。
Backoffice还提供了使用 merge-by 上下文标记的灵活性,该标记可帮助您在定义不同扩展名时合并配置。
在编辑器区域中自定义客户类型。在yourextension-backoffice-config.xml
中这样做<context merge-by="type" parent="User" type="Customer" component="editor-area">
<editorArea:editorArea name="">
<editorArea:essentials>
<editorArea:essentialSection name="hmc.essential">
<editorArea:attribute qualifier="newAttribute"/>
</editorArea:essentialSection>
</editorArea:essentials>
</editorArea:editorArea>
在create-wizard中自定义客户类型..
<context merge-by="type parent="User" type="Customer" component="create-wizard">
<wz:flow id="CustomerWizard" title="create.title(ctx.TYPE_CODE)">
<wz:prepare id="custPrepare">
<wz:initialize property="newCust" type="ctx.TYPE_CODE"/>
</wz:prepare>
<wz:step id="step1" label="create.customer.essential.label" sublabel="create.customer.essential.sublabel">
<wz:content id="step1.content">
<wz:property-list root="newCust">
<wz:property qualifier="newAttribute" type="java.lang.String"/>
</wz:property-list>
</wz:content>
</wz:step>
</wz:flow>
</context>
检查Backoffice中的现有配置还有一个非常简单的步骤。使用admin / nimda登录,然后按F4按钮进入Application Orchestrator模式。然后单击左上角的show conckpit-config.xml。