跳转到内容
技术文章
作者简介照片Ram万博新体育手机客户端jee Korada

SAP ABAP RAP & Fiori Elements刷新计算字段,无需手动刷新(第2部分)

构建事务应用程序的最常见特性是根据依赖字段的输入计算/确定字段。

在实际业务场景中,这些字段可以来自相同的实体,也可以来自不同的实体。

在本例中,为计算字段总价格是来自父实体(例如旅行)而依赖字段为预订费来自同一实体航班的价格子实体(前预订).用户期望看到计算结果总价格在输入/更新预订费不刷新页面。

在大多数教程中,我们获得了关于使用ABAP RAP构建应用程序的信息。

第一部分当它们都在同一个实体中时,就会描述实现。

在这篇博客文章中,当它们都在不同的实体中时,将描述实现。

先决条件

实现

  1. 打开中创建的项目以前的博客在业务应用程序工作室。
  2. 在路径webapp/annotations/annotation.xml中导航到本地注释xml
  3. 为Booking实体添加以下注释,并将其放置在Travel实体之后。
    <目标= " cds_zui_rap_travel_789注释。BookingType" > <注释项="普通。副作用s" >    FlightPrice     to_Travel     
  4. 完整的文件如下所示。
  5. 解释:
    • 注释术语= "常见的。副作用s”
    • PropertyValue属性= "SourceProperties”
      • 这些是触发确定计算属性的属性集合。在本例中,它是来自Booking实体的Flight price
    • PropertyValue属性= "TargetEntities
      • 这些是需要根据依赖属性的输入刷新的实体的集合。在本例中,Travel实体。
  6. 保存注释文件并预览应用程序。
  7. 现在实现已经准备就绪,并检查Total price的行为
    • 在旅行页面的预订表中更改航班价格
    • 在订位页面更改机票价格
  8. 在这里观看演示。[由于尺寸限制,视频被压缩]

现在您了解了如何自动刷新实体间的相关属性。下一个挑战是实现两个这样的行为。

指定的标签

      6个评论
      你一定是登录评论:评论或回复一篇文章
      作者的个人资料照片万博新体育手机客户端斯蒂芬·海因伯格
      Stephan Heinberg

      好,谢谢!

      作者头像Maher万博新体育手机客户端 Wahid
      马赫瓦希德

      这对我不起作用,你能分享一下你的判定代码吗?对于副作用,应该启用汇票。

      作者简介照片Ram万博新体育手机客户端jee Korada
      Ramjee Korada

      你好马赫,

      请看第13点步骤3。为Travel实体实现行为池获取源代码。

      提示结论是否有问题的检测或副作用

      1. 刷新/重新加载页面,查看是否正确填充了值。
      2. 设置断点并查看该值是否计算正确。

      如果没有正确填写,那么问题就在确定中。

      如果正确填写,那么如果浏览器的开发人员工具中的控制台有任何错误。

      最好的祝愿,

      Ramjee Korada

      作者头像Maher万博新体育手机客户端 Wahid
      马赫瓦希德

      谢谢你的回复,我按照你分享的链接添加了注释代码作为你的博客part 1。但保存后按下刷新,是否可以在保存前输入后更新值?到目前为止,我还没有激活选秀权。

      作者简介照片Ram万博新体育手机客户端jee Korada
      Ramjee Korada

      嗨马赫,

      根据以下文件,

      • 支持非草案应用程序的副作用。一旦用户保存实体并且保存操作成功,就会触发副作用。

      https://help.sap.com/docs/ABAP_PLATFORM/468a97775123488ab3345a0c48cadd8f/18b17bdd49d1436fa9172cbb01e26544.html

      最好的祝愿,

      Ramjee Korada

      作者的资料照片am万博新体育手机客户端r alaa
      amr阿拉

      Ramjee Korada

      这对我没用。

      注意:草案是启用的,我正在使用odata v2和项目在sap web ide。

      你能告诉我是什么问题吗?