在FIORI Element中使一个实体可编辑和可创建

2020-08-26 13:57发布

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

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


专家们,

我一直在使用FIORI Element开发应用程序,并尝试向其添加事务处理功能。 我有2个实体集-1。FlightDetails(Parent)
2。 Flight Booking(Child)
该应用程序是通过引用CDS视图作为数据源而构建的。 该应用程序可以正常工作,创建和更新也可以单独工作(我重新定义了MPC_EXT定义方法,以将实体设置为sap:creatable =" true"和sap:updatable =" true"。我尝试设置子集,即Flight 预订集既可编辑又可创建当我执行创建时,我看到更新操作也被触发并使实体集可编辑。

当我关闭"创建视图"时,我也获得了可编辑的基本视图。

这是我在MPC_EXT中编写的用于使Booking实体具有可创建性和可更新性的代码。

 class ZCL_ZSRV_FLT_BOOK_MPC_EXT定义
   上市
   从ZCL_ZSRV_FLT_BOOK_MPC继承
   创造公众。

 公共部分。
   方法定义重定义。
 受保护的部分。
 私人部分。
 ENDCLASS。


 ZCL_ZSRV_FLT_BOOK_MPC_EXT实施类别。


 方法定义。
   数据:lo_entity_type_create类型参考/iwbep/if_mgw_odata_entity_typ,
         lo_entity_type_update类型参考/iwbep/if_mgw_odata_entity_typ,
         lo_property类型参考/iwbep/if_mgw_odata_property。

   super-> define()。

   预订详细信息的"创建sap:creatable =" true"注释设置为可创建值
   lo_entity_type_create =模型-> get_entity_type(zcl_zsrv_flt_book_mpc => gc_zcds_booking_detailstype)。

   如果lo_entity_type_create不是INITIAL。
     lo_entity_type_create-> set_creatable(abap_true)。
   万一。

   预订详细信息的"创建sap:updatable =" true"注释设置为更新值
   lo_entity_type_update =模型-> get_entity_type(zcl_zsrv_flt_book_mpc => gc_zcds_booking_detailstype)。

   如果lo_entity_type_update不是INITIAL。
     lo_entity_type_update-> set_updatable(abap_true)。
   万一。

 终结法。
 ENDCLASS。
 

(120.0 kB)

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

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


专家们,

我一直在使用FIORI Element开发应用程序,并尝试向其添加事务处理功能。 我有2个实体集-1。FlightDetails(Parent)
2。 Flight Booking(Child)
该应用程序是通过引用CDS视图作为数据源而构建的。 该应用程序可以正常工作,创建和更新也可以单独工作(我重新定义了MPC_EXT定义方法,以将实体设置为sap:creatable =" true"和sap:updatable =" true"。我尝试设置子集,即Flight 预订集既可编辑又可创建当我执行创建时,我看到更新操作也被触发并使实体集可编辑。

当我关闭"创建视图"时,我也获得了可编辑的基本视图。

这是我在MPC_EXT中编写的用于使Booking实体具有可创建性和可更新性的代码。

 class ZCL_ZSRV_FLT_BOOK_MPC_EXT定义
   上市
   从ZCL_ZSRV_FLT_BOOK_MPC继承
   创造公众。

 公共部分。
   方法定义重定义。
 受保护的部分。
 私人部分。
 ENDCLASS。


 ZCL_ZSRV_FLT_BOOK_MPC_EXT实施类别。


 方法定义。
   数据:lo_entity_type_create类型参考/iwbep/if_mgw_odata_entity_typ,
         lo_entity_type_update类型参考/iwbep/if_mgw_odata_entity_typ,
         lo_property类型参考/iwbep/if_mgw_odata_property。

   super-> define()。

   预订详细信息的"创建sap:creatable =" true"注释设置为可创建值
   lo_entity_type_create =模型-> get_entity_type(zcl_zsrv_flt_book_mpc => gc_zcds_booking_detailstype)。

   如果lo_entity_type_create不是INITIAL。
     lo_entity_type_create-> set_creatable(abap_true)。
   万一。

   预订详细信息的"创建sap:updatable =" true"注释设置为更新值
   lo_entity_type_update =模型-> get_entity_type(zcl_zsrv_flt_book_mpc => gc_zcds_booking_detailstype)。

   如果lo_entity_type_update不是INITIAL。
     lo_entity_type_update-> set_updatable(abap_true)。
   万一。

 终结法。
 ENDCLASS。
 

(120.0 kB)
付费偷看设置
发送
2条回答
Nir深蓝
1楼-- · 2020-08-26 14:19

你好Saswata,

您的SEGW项目是RDS项目吗?

您的MPC代码应该没有问题,因为MPC仅在加载时触发。 应用程序加载后出现此问题。 如果您更改子表中的值,是否保存?

如果没有,则您应该禁用该子级的内联编辑。

此致

Pratheek


clasier
2楼-- · 2020-08-26 14:12

如果您是指"参考数据源"项目中的RDS,则是的。

一周热门 更多>