通过 CDS 注释验证用户输入?

Validate user input via CDS annotation?

我是 SAP、UI5 和 CDS 注释的新手。我创建了一个 CDS 视图并使用 Web IDE 模板项目创建了应用程序,列表报告模板。该应用程序运行良好,但我想添加以下验证

在我的 CDS 中,我有一个数量字段。当用户通过列表报告应用程序保存记录时,我希望有一个大于零的值。我可以使用 UI5 注释来实现吗?

并且在 CDS 中我定义了 2 个关键字段。在应用程序中,当尝试创建重复记录时,应用程序导航到指示发生错误的错误页面。如何根据关键字段验证重复记录并在创建新记录时向客户发出警告或错误?

提前致谢

执行此操作的构建块已经到位,但我无法确认框架将正确处理其中的多少:

Validation Vocabulary - 参见 TermsminimumConstraintTypeFailureMessage.

SAP Common Vocabulary: SideEffectsType - 参见 EffectTypeValidationMessage

sap.ui.generic.app.ApplicationController 有一个方法 executeSideEffects

有了这些构建块,理论上应该能够满足您的两个要求。

对于任何尝试使用注释进行验证的人,我在写入数据时没有找到在消费视图中使用注释进行验证的方法。

我发现验证输入的唯一方法是在激活 CDS 时创建的 BOPF 对象中编写验证逻辑。但这将在 ABAP 代码中,您需要基本的 ABAP 知识。