CDS视图中的瞬态字段会创建BOPF面临的困难

2020-08-22 06:40发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨, 我有一个接口CDS视图,...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我有一个接口CDS视图,该视图连接了多个表,并从该接口视图创建了一个复合CDS。 我在界面视图中有一个表中的键字段,而在不同表中有其他字段(在接口视图中有)。

现在在复合接口视图中,我在语句中得到一个错误

@ ObjectModel.transactionalProcessingEnabled:真

错误是

此行上的多个标记:-无法激活表类型ZTIFORDETTP-[BO同步]为业务对象ZI_FORDETTP生成工件失败(视图ZI_FORDETTP)-无法激活结构ZSIFORDETTP-视图已生成对象-[BO同步] 上次同步导致错误(视图ZI_FORDETTP)-[BO检查]元素DST_CITY是没有DB字段,没有存储(视图ZI_FORDETTP,表/SCMTMS/D_TORROT)

我给了下面的注释。

@ ObjectModel.writeActivePersistence:'/SCMTMS/D_TORROT'

该错误表明字段DST_CITY不在上表中,但我已将其作为虚拟元素(@ ObjectModel.virtualElement:true)给出,我认为应该将其视为瞬态,并且系统不应该查找 上表中的数据。 如何在复合CDS视图中添加瞬态字段?

付费偷看设置
发送
1条回答
闻人可可
1楼 · 2020-08-22 07:35.采纳回答

接口视图级别的虚拟元素定义并没有说该字段是一个临时字段,因为ObjectModel.transactionalProcessingEnabled批注启用了对此视图的事务处理,要求所有字段都在持久性中。

通常,您在消耗视图级别上添加虚拟元素/瞬态字段。

示例(简化):
ZZ_C_SalesOrder(消耗视图:添加ObjectModel.transactionalProcessingDelegated:true;在该级别上,虚拟 添加元素/瞬态字段)
-ZZ_I_SalesOrder(接口视图:通过ObjectModel.transactionalProcessingEnabled启用事务处理)
---- SALES_ORDER(-> DB表,持久性)

所有详细信息 可以在针对SAP Fiori的ABAP编程模型的在线帮助中找到

一周热门 更多>