在这个博客中,我展示了一个动态自定义控件,它可以用最少的代码在任何UI应用程序中呈现表单。它使用OData元数据注释来呈现表单字段中的控件。它支持消息处理,并根据该字段的数据类型对值的正确性进行验证。
有一种类似的智能窗体控件可用,但这种窗体控件提供了更大的灵活性,开发人员必须编写更少的代码来声明它。
因此,让我们从在显示和编辑中查看窗体控件开始模式
图1:显示模式下的销售订单
图2:编辑模式下的销售订单
此控件支持多种控件类型。这些控件类型的用法及其配置基于属性元数据中提供的注释。默认情况下,此控件使用8种控件类型,大数据开发,它们通常以任何形式使用。下面列出了这些控件以及要使用的注释。
此外,此控件还支持加载不同于默认类型的控件类型或重写这些控件类型的默认行为(有关此操作的详细信息,请参阅控件属性映射)。
日期选取器
分配Edm.类型= Edm.DateTime文件或者Edm.DateTimeoffset一个
赋值Edm.类型= Edm时间在实体中
日期时间选择器
分配Edm.类型= Edm.DateTime文件或者Edm.DateTimeoffset在实体中。
文本区域
实体中的MaxLength应大于50以呈现文本区域控件。
金额货币类型控件
分配sap unit='Name"Currency property"对"to Amount"属性的注释如本例所示–sap unit="CurrencyCode"已分配给NetAmount。
Yes No Option Control(类似复选框)
将sap isCheckBox='true'注释分配给需要选项Yes/No的组合框的属性。可以解释为复选框。
值帮助
分配sap:值列表=要为其呈现ValueHelp的属性的"固定值"批注。同时指定属性名作为对ValueHelp实体的引用,以加载ValueHelp中的数据。
输入
默认情况下将加载输入控件
此控件使用OData的字段控件功能动态更新控件类型的可视化配置。这4种配置如下如下所示:-
1. 必须
取数据时将7传给字段控制值(这里是Uxfc01)。
2。只读
在获取数据时将1传递给字段控制值(这里是Uxfc01)。
另外它还使用sap:可创建以及sap:可更新实体中的注释,低价的云服务器,使字段成为只读。
3。隐藏字段
在获取数据时将0传递给字段控制值(这里是Uxfc01)。
另外它还使用sap:可见在实体中注释隐藏一个字段。
4。可选
在获取数据时将3传递给字段控件值(这里是Uxfc01)。
在这种情况下,将使用控件的默认行为。
控件本身验证窗体中的任何字段是否无效。
它验证所有强制字段是否都有值,字段是否具有有效值(基于Edm.类型)
*假设需要覆盖LifeCycleStatus字段的enabled属性,则可以按以下方式执行
**假设需要使用复选框类型控件,大数据产业,而不是字段的默认"是/否"组合框,云分析,则可以按以下方式执行双向
控制事件changeFieldValue–当任何形式的字段控件中的值发生更改时触发事件
可见性:控件中要显示的公共
字段由实体中定义的属性决定(这里是Soheaderdata)。请注意,图1和图2所示的属性与实体中定义的属性相同。
实体标签部分中定义的值用作表单字段的标签。
下载表单控件的源代码
销售订单应用程序的源代码片段
注:-英寸需要调用控件中定义的上述代码段刷新方法在屏幕模式的改变上。
正如你在上面的代码片段中看到的,用这样一个最小的代码,我们呈现了一个完整的窗体控件,它与智能窗体控件不同。
从这个git repo下载这个博客中使用的示例的源代码
注意:-此控件,大数据学习,单选值帮助,MultiSelectValueHelp控件(自定义),我将在下一个博客中展示。