本文的英文版,发表在 SAP 社区 wiki 上,原文标题:Step by step to create new fields on UI via Application Extension Tool
登录 SAP CRM WebClient UI,点击 Personalization 超链接:
点击超链接 Personalize Settings
, 选中 Enable configuration mode
前面的 ✓
:
这样,我们可以直接在浏览器里,使用具有扩展权限的用户,直接对 UI 界面,使用 SAP CRM 提供的标准扩展工具,Application Enhancement Tool,简称 AET,进行扩展。
进入 Service order 明细页面, 点击 configuration 功能对应的图标,如下图所示:
凡是可以直接通过 AET 工具被扩展的 UI 界面,会通过深蓝色高亮。本文我们想在 General Data 这个区域,创建扩展字段。
单击 General Data 区域,在弹出的窗口里,在工具栏上找到 Create Field
的按钮:
我们使用 SAP AET 工具,表面上进行的是简单的新的屏幕字段创建,实际上做的是所谓的端到端扩展 - End to End Extension Scenario.
所谓端到端,就是指 AET 帮助我们,把 WebClient UI 各层的数据模型,从 UI Component 到 BO 层,再到底层的数据库表层级,都创建了对应的扩展字段。
也就是说,上图的 CRM UIF 即 Presentation Layer( UI 展现层),Business Layer(业务逻辑层) 中的 BOL,以及 Business application 的 API 层和数据库,都自动被 AET 进行了扩展。
然而我们总要告诉 AET 到底在这三层的哪些具体模型创建扩展字段,所以要告诉 AET 一个创建扩展字段的位置,这个位置就是下图第一列的 Part of a BO
:
因为我们想在 UI 的 General Data 创建新的扩展字段,这个区域的字段对应 Business Layer 是存储在 Order 的 Header 区域,所以我们选择 ORDERADM_H
.
然后就是维护字段的创建明细了,如下图所示,主要是维护数据类型,字段长度,字段标签等等。
本例我们给扩展字段维护的名称为 city name
:
我们现在可以找到刚刚创建的 city name 字段了,但是 Status 还是黄灯,说明在其他层对应的扩展字段还未生成。点击 Save and Generate
触发这个生成过程。
这里弹出输入传输请求的对话框,可以维护 Transport Request,这样创建的字段还可以传输到其他系统:
静候片刻,等字段创建完毕后,就可以将创建好的字段在 Generate Data 区域配置出来了。
点击下图 Show Available Fields:
在左边的可用字段区域,找到刚刚创建的 city name
, 点击 +
图标,添加到 UI 上:
如图,我们现在已经看到,city name
字段已经在配置模式下,出现在 UI 页面上了:
退出配置模式,这个字段现在已经可以使用了:
因为我们在维护扩展字段的明细信息时,在 Search-Relevance
字段维护的值是 Search & Result List
,因此可以将这个字段添加到搜索条件和搜索结果列表视图上:
这样,我们就可以将 city name 这个扩展字段,作为搜索条件之一,并且出现在搜索结果列表里: