SAP UI5 Smart Value Help 总结
- 在 Product 这个 EntityType 上,定义一个 property,名叫 CurrencyCode.
- 我们的 Smart Field 并不直接绑定到这个 CurrencyCode 上,而是绑定到另一个只包含纯粹价格值的 Price 字段上。Price 字段通过注解 sap:unit=“CurrencyCode”,将其的单位字段,绑定到 CurrencyCode 字段上。
- 货币单位通过另一个名叫 Currency 的 EntityType 来描述。这个 EntityType 包含 CURR 和 DESCR 两个 property,分别表示货币单位的 code 和描述值。
那么 Price 在运行时显示的单位,到底应该显示 CURR 的值,还是 DESCR 的值呢?这就得通过下图所示的自定义注解来指定了。
(1) 通过 Target 属性,指定以下注解施加的目标字段是 CurrencyCode
(2) 给 CurrencyCode 定义的注解类型是 com.sap.vocabularies.Common.v1.ValueList
(3) 给注解定义 Label 属性的值为 Currency,即 UI 界面元素的标签显示为 Currency 这个字符串。因为我们的例子,货币单位仅仅显示为一个 Text Field,不会显示出标签文本,所以这个 Label 属性无论定义与否都无关紧要。
(4) CollectionPath 属性指定 CurrencyCode 的 Value Help 的数据源,来自 EntityType Currency. 这个属性值如果指定错误,会遇到下图所示的错误消息:
Right now, there are no visible columns in the table. Please select the columns you need in the table settings.
本来应该显示货币列表的表格里,现在什么也没有显示。
(5) 通过 com.sap.vocabularies.Common.v1.ValueListParameterOut 的 LocalDataProperty 以及 ValueListProperty 属性,分别将 CurrencyCode 和 CURR 绑定起来。
(6) 设置 Currency EntityType 的 DESCR 字段类型为 com.sap.vocabularies.Common.v1.ValueListParameterDisplayOnly
,意思是这个字段仅仅是为了增加 Value Help 里表格显示的可读性而设计出来供锦上添花之用。
当用户在 Value Help Table 里选择了某一行之后,该行的 CURR 字段值会传回到 CurrencyCode 字段上,而 DESCR 字段值不会参与到 Value Help 值传递场景中。
相关文章
- SAP UI5 sap.ui.core.Element 的概要介绍
- SAP UI5 应用中的 sap.ui.require 使用场景
- SAP操作小技巧
- SAP Commerce Cloud 里的 User 模型和 Restriction 的关系
- 使用 SAP UI5 sap.ui.export.Spreadsheet API 进行 Excel 导出的一些限制
- 关于 SAP UI5 XML 视图里控件事件处理函数名称中的 . (点号) 问题的讨论试读版
- 不懂技术有机会进 SAP 吗?
- 关于 SAP UI5 接口 sap.ui.core.IAsyncContentCreation 的问题讨论
- SAP UI5 表格 Click to Select 文本的来源
- SAP Fiori Launchpad url 参数 sap-app-origin-hint 的含义
- SAP横向纵向打印详解编程语言
- SAP中数字计算时溢出捕获详解编程语言
- SAP中需要记住的一些标准表详解编程语言
- 更改SAP的字段翻译详解编程语言
- SAP ALV内嵌(In-place)Excel的问与答详解编程语言
- 如何查找SAP系统内某个Tcode下已经实施的增强(BADi、user-exit、BTE….)详解编程语言
- SAP 通过事务代码与屏幕变式(SHD0)控制控制用户界面的某些字段,以控制生产订单的调度类型为例详解编程语言
- SAP 如何定义后台job详解编程语言
- Oracle从SAP抽取数据的简单方法(oracle从sap抽数)
- 跨界合作新模式 Oracle与SAP实现合并(oracle与sap合并)
- Oracle与SAP金蝶谁更具竞争力(oracle sap金蝶)