在智能模板中使用BOPF操作

2020-08-30 01:04发布

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

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


大家好,

我目前正在尝试使用基于CDS视图的BOPF模型(包括一个简单的操作)来创建BO。 基于此,我想使用智能模板创建一个Fiori应用程序。 BO似乎还可以。 我能够使用BOPF测试ui对其进行测试并执行操作。

使用智能模板生成Fiori应用程序也可以正常工作。 但是,当我尝试执行该应用程序时,没有任何反应。 我进行了更详细的调查,并在Chrome开发人员工具中注意到以下错误消息:

未捕获(承诺)错误:" TestFioriProgModel :: sap.suite.ui.generic.template.ListReport。 view.ListReport :: Zcd_C_Salesorder--action :: ERROR:"未找到强制性的操作值"是无效的ID。

潜在的错误似乎是对服务的调用

/sap/opu/odata/IWFND/CATALOGSERVICE; v = 2/Annotations(TechnicalName ='ZCD_C_SALESORDER_CDS_VAN',Version ='0001')/$ value/

已经从后端返回错误。 返回的文档包含以下值:

 
     
     
     
  

这是我的oData和对象模型注释的样子:

 @ OData.publish:true

 @ ObjectModel.semanticKey:['SalesOrderID']
 @ ObjectModel.representativeKey:'SalesOrderID'
 @ ObjectModel.createEnabled:是
 @ ObjectModel.updateEnabled:是
 @ ObjectModel.deleteEnabled:是
 将视图Zcd_C_Salesorder定义为从Zcd_I_Salesorder中选择
     将[0 .. *]与Zcd_C_Salesorder_Item关联为$ projection.SalesOrderID = _Item.SalesOrderID {
     @ UI.lineItem.position:10
     @ UI.lineItem:[
         {类型:#FOR_ACTION,位置:1,dataAction:'BOPF:SET_OVERALL_STATUS_TO_PAID',标签:'将生命周期状态设置为Paid'}
     ]
     @ Search.defaultSearchElement:true
     @ UI.identification:{职位:10,重要性:#HIGH}
     @ UI.selectionField:{位置:10}
     关键Zcd_I_Salesorder.SalesOrderID,

有人知道这个错误的根本原因是什么以及如何解决它?

谢谢

基督徒

(99.8 kB)

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

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


大家好,

我目前正在尝试使用基于CDS视图的BOPF模型(包括一个简单的操作)来创建BO。 基于此,我想使用智能模板创建一个Fiori应用程序。 BO似乎还可以。 我能够使用BOPF测试ui对其进行测试并执行操作。

使用智能模板生成Fiori应用程序也可以正常工作。 但是,当我尝试执行该应用程序时,没有任何反应。 我进行了更详细的调查,并在Chrome开发人员工具中注意到以下错误消息:

未捕获(承诺)错误:" TestFioriProgModel :: sap.suite.ui.generic.template.ListReport。 view.ListReport :: Zcd_C_Salesorder--action :: ERROR:"未找到强制性的操作值"是无效的ID。

潜在的错误似乎是对服务的调用

/sap/opu/odata/IWFND/CATALOGSERVICE; v = 2/Annotations(TechnicalName ='ZCD_C_SALESORDER_CDS_VAN',Version ='0001')/$ value/

已经从后端返回错误。 返回的文档包含以下值:

 
     
     
     
  

这是我的oData和对象模型注释的样子:

 @ OData.publish:true

 @ ObjectModel.semanticKey:['SalesOrderID']
 @ ObjectModel.representativeKey:'SalesOrderID'
 @ ObjectModel.createEnabled:是
 @ ObjectModel.updateEnabled:是
 @ ObjectModel.deleteEnabled:是
 将视图Zcd_C_Salesorder定义为从Zcd_I_Salesorder中选择
     将[0 .. *]与Zcd_C_Salesorder_Item关联为$ projection.SalesOrderID = _Item.SalesOrderID {
     @ UI.lineItem.position:10
     @ UI.lineItem:[
         {类型:#FOR_ACTION,位置:1,dataAction:'BOPF:SET_OVERALL_STATUS_TO_PAID',标签:'将生命周期状态设置为Paid'}
     ]
     @ Search.defaultSearchElement:true
     @ UI.identification:{职位:10,重要性:#HIGH}
     @ UI.selectionField:{位置:10}
     关键Zcd_I_Salesorder.SalesOrderID,

有人知道这个错误的根本原因是什么以及如何解决它?

谢谢

基督徒

(99.8 kB)
付费偷看设置
发送
10条回答
当学会了学习
1楼 · 2020-08-30 01:07.采纳回答

大家好,

在无法解决问题之后,我尝试使用另一个后端系统再次实现该方案。 这一切都按预期进行。 我收到错误的系统是SAP NW ABAP开发版(7.50 SP2)。 对于工作版本,我使用了SAP NW ABAP 7.50 SP4系统。

因此,我怀疑错误的原因是后端系统的版本。

希望这会有所帮助,

基督徒

hongfeng1314
2楼-- · 2020-08-30 01:17

嗨,克里斯蒂安,

我遇到了同样的问题,请确保BOPF对象中操作的名称与CDS批注中的名称完全相同。 如果注释中的名称与生成的业务对象中操作的名称不匹配,那么奇怪的是,注释文件将无法正确生成。

在BOBX中,操作应如下所示:

希望这会有所帮助!
托马斯(Thomas)

Tong__Ming
3楼-- · 2020-08-30 01:23

嗨。

我有同样的问题。 存在解决方案吗?

Cikesha
4楼-- · 2020-08-30 01:19

一段时间以来,我一直在同一个错误中苦苦挣扎,显然那里有一个教程,其中名称不匹配。 只需删除该项目,然后在更改后重新创建它就可以了

一周热门 更多>