在报表中使用参数调用CDS视图

2020-08-30 00:18发布

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

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


您好,我已经创建了带有参数的CDS视图,但是当报表中调用CDS视图时,由于未绑定,所以出现了以下错误。 请帮助我有什么遗漏吗?
 定义视图:

 @ AbapCatalog.sqlViewName:'ZCDSBASICVW1'
 @ AbapCatalog.compiler.compareFilter:是
 @ AccessControl.authorizationCheck:#NOT_REQUIRED
 @ EndUserText.label:" CDS基本视图"
 @ VDM.viewType:#CONSUMPTION
 @ OData.publish:正确
 将视图zCDS_basic1定义为dfkk_vt_h中的选择{
     vtkey,
     gpart,
 埃达特
 ertim
 }

 报告调用视图:

 报告zdemo_cds_join。
 表格:dfkk_vt_h。
 参数:pvtkey,例如dfkk_vt_h-vtkey,
              像dfkk_vt_h-gpart一样。


 选择开始。
   选择*从zcdsbasicvw1
     (pvtkey = @pvtkey,pgpart = @pgpart)
   插入表@DATA(it_tab)。











 



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

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


您好,我已经创建了带有参数的CDS视图,但是当报表中调用CDS视图时,由于未绑定,所以出现了以下错误。 请帮助我有什么遗漏吗?
 定义视图:

 @ AbapCatalog.sqlViewName:'ZCDSBASICVW1'
 @ AbapCatalog.compiler.compareFilter:是
 @ AccessControl.authorizationCheck:#NOT_REQUIRED
 @ EndUserText.label:" CDS基本视图"
 @ VDM.viewType:#CONSUMPTION
 @ OData.publish:正确
 将视图zCDS_basic1定义为dfkk_vt_h中的选择{
     vtkey,
     gpart,
 埃达特
 ertim
 }

 报告调用视图:

 报告zdemo_cds_join。
 表格:dfkk_vt_h。
 参数:pvtkey,例如dfkk_vt_h-vtkey,
              像dfkk_vt_h-gpart一样。


 选择开始。
   选择*从zcdsbasicvw1
     (pvtkey = @pvtkey,pgpart = @pgpart)
   插入表@DATA(it_tab)。











 



付费偷看设置
发送
6条回答
Alawn_Xu
1楼-- · 2020-08-30 00:46
 ***带参数的CDS视图****


 @ AbapCatalog.sqlViewName:'zcds_param_view'
 @ AbapCatalog.compiler.compareFilter:是
 @ AccessControl.authorizationCheck:#检查
 @ EndUserText.label:'带有参数的CDS视图'
 定义视图zcds_parameters2
     参数为p_matnr:matnr,
                     p_item:posnr_va
 如从vbap {
     vbeln,
     posnr,
     matnr,
     matkl,
     zmeng,
     网络
 }其中matnr =:p_matnr和
         posnr = $ parameters.p_item
 
 ******************************************************  *****

 ***报告程序中带有参数的CDS视图****

 *&------------------------------------------------  --------------------- *
 *&报告zr_cds_sai1
 *&------------------------------------------------  --------------------- *
 *&
 *&------------------------------------------------  --------------------- *
 报告zr_cds_sai1。


 参数:p_matnr TYPE matnr,
             p_item TYPE posnr_va。

 从zcds_parameters2(p_matnr = @ p_matnr,p_item = @p_item)中*选择*到TABLE @data(lt_final)中。  "通过诉说cds的视图名称

 从zcds_param_view(p_matnr = @ p_matnr,p_item = @p_item)中选择*到TABLE @data(lt_final)中,其中matnr = @p_matnr。  "通过使用SQL CDS视图名称

 从zcds_param_view中*选择*到TABLE @data(lt_final)中,其中MATNR = @P_MATNR和POSNR_VA = @P_ITEM。  "这不是CD的观点
  cl_demo_output => display(lt_final)。

 ******************************************************  *******************
 *开发人员名称:TLV N SAI KUMAR **
 *手机号码:+91 9553667049
 * youtube频道:https://www.youtube.com/channel/UCFnPVjp6ZfJ9jI48of3FczQ/playlists?view_as = subscriber


 
 

在调用带有参数的cds视图时,是否找出错误的原因是"参数未绑定"?

spaceman01
3楼-- · 2020-08-30 01:01

问题是, 您的视图定义中没有参数。 还是这是新的CDS语法? 看一下这个链接:

https://help.sap.com/doc/ abapdocu_750_index_htm/7.50/zh-CN/abenselect_cds_para_abexa.htm

参数已维护,我在代码中错过了。

5楼-- · 2020-08-30 00:47

尝试 在选择查询中使用DDLS源名称(zCDS_basic1)而不是视图名称。

shere_lin
6楼-- · 2020-08-30 00:51
 *** BASIC CDS VIEW ****


 @ AbapCatalog.sqlViewName:'zcds_ddefine_sql'
 @ AbapCatalog.compiler.compareFilter:是
 @ AccessControl.authorizationCheck:#检查
 @ EndUserText.label:"数据定义"
 将视图zcds_ddefine定义为从vbap中选择{


 vbeln,
 posnr,
 matnr,
 zmeng,
 网络
    
 }
 

 
 ******************************************************  *****

 ***在报告程序中使用带有参数的基本CDS视图****

 *&------------------------------------------------  --------------------- *
 *&报告zr_cds_sai1
 *&------------------------------------------------  --------------------- *
 *&
 *&------------------------------------------------  --------------------- *
 *&------------------------------------------------  --------------------- *
 *&报告zr_cds_sai_basic
 *&------------------------------------------------  --------------------- *
 *&
 *&------------------------------------------------  --------------------- *
 报告zr_cds_sai_basic。


 参数:p_matnr类型matnr,
             p_vbeln类型vbeln_va。


 *从zcds_d中选择*定义到表@DATA(lt_final)中,matnr = @p_matnr和
 * vbeln = @p_vbeln。

 通过使用cds视图


 从zcds_ddefine_sql中选择*到表@DATA(lt_final)中,其中matnr = @p_matnr和
                                                             vbeln = @p_vbeln。

 "通过使用sql cds视图

 cl_demo_output => display(lt_final)。


 ******************************************************  *******************
 *开发人员名称:TLV N SAI KUMAR **
 *手机号码:+91 9553667049
 * youtube频道:https://www.youtube.com/channel/UCFnPVjp6ZfJ9jI48of3FczQ/playlists?view_as = subscriber 

一周热门 更多>