From Create Fiori List App Report with ABAP CDS view – PART 1

In this blog, I am going to show How CDS view can be used to generate a Fiori List App Report. Below are the steps that need to be implemented to generate Fiori List App Report.

  1. CDS annotations for Fiori List Report.
  2. How to create a Gateway service from ABAP CDS view
  3. How to create a Fiori List App report in Web IDE.
  4. How to Deploy the Fiori Application.
  5. Create a Custom Semantic Object.
  6. Create a Tile in Fiori.
  7. Adding Tile from Catalogs –> Groups.

So Lets Begin with….

1. CDS view with Annotations for Fiori List Report:

Make sure you set @OData.publish annaotation set to True in order to enable the service to Fiori.

Also you can set below CDS view annotation for UI interface.

@UI.HeaderInfo – to display the header information for the list report.

@UI.selectionField.position – this is for filter option

@UI.lineItem.position – This is for Positioning the filed in the Report Layout

@UI.hidden – If you want to hide the filed in Fiori side

@UI.lineItem.exclude – If you want to exclude the filed in Report Layout by default.

and many more…..

You must use Associations in order to bring Value help feature in filters.

Below is the sample CDS view code with UI Annotations, OData, Associations etc.,

@AbapCatalog.sqlViewName: 'ZDEMOCOMPWHR'
@AbapCatalog.compiler.compareFilter: true
@VDM.viewType: #CONSUMPTION
@OData.publish: true
@EndUserText.label: 'Fiori - Demo List Report App' @UI.headerInfo: {
typeName : 'Demo List Report App' ,
typeNamePlural: 'Demo List Report App' } define view ZDEMO_COMP as select from ZDEMO_COMPWHR association [0..1] to I_Material as _Material on $projection.KMAT = _Material.Material
association [0..1] to ZCX1_PRO_OWNER as _OWNER on $projection.Owner = _OWNER.owner { @UI.selectionField.position: 20
@Consumption.valueHelp: '_OWNER'
//@UI.lineItem.position: 10
@EndUserText.label:'Owner'
Owner, _OWNER, @UI.selectionField.position: 30
@Consumption.valueHelp: '_Material'
//@UI.lineItem.position: 20
@EndUserText.label:'KMAT (Material)'
KMAT, _Material, //@UI.lineItem.position: 30
@EndUserText.label:'Sequence'
sequence, //@UI.lineItem.position: 40
@EndUserText.label:'Characteristic 1'
Characteristic1, //@UI.lineItem.position: 50
@EndUserText.label:'Characteristic Value 1'
CharacteristicValue1, @UI.selectionField.position: 70
//@UI.lineItem.position: 510
@EndUserText.label:'Valid To'
@UI.lineItem.exclude: true
@Semantics.businessDate.to: true
//validto,
case when validto = '' then '00000000'
else validto end as validto, @UI.hidden: true
//@UI.lineItem.position: 520
@DefaultAggregation: #MAX
1 as counter }

  

If you want ValueHelp in the List report filters to select the Prompts, then you need to implement the associations in the CDS view as mentioned in the above code, I have implemented ValueHelp for Material & Owner.

2. How to create GateWay Service for CDS view:

  • Make sure you enabled the OData annotation is set to “true” in the CDS view.
  • Go to tcode – /IWFND/MAINT_SERVICE in SAP and click on Add Service.

  • Give Local in the system Alias and click on Get Services button. Once you see all the list, find your service which starts with CDS view name from the list below and Click Add Selected Services button.

  • Give Package Assignment  and click on Continue.

  • It will prompt for a Transport request for the Gateway service. Select the Transport request or create a new TR and Click on Continue.
  • Now, go back to main page and find the Service that starts with CDS view name. Select the service and Make sure the status of ICF Node status is Active. Also you can click on Load Metadata button to refresh the Metadata.

  • To test the service is working or not, Select the service and click on SAP Gateway Client.

  • Click on Execute button and you can see the status reason is OK.

3. How to create Fiori List Report in Web IDE:

  • Login into SAP Cloud Platform Web IDE.
  • Go to Development -> Workspace -> New -> Project from Template.

  • Select List Report Application, select the current UI5 Version and Click “Next”.

  • Give Project Name and Title and Description for the New List report App and Click “Next”.

  • Select the SAP system from the Service Catalog. In this case, I select system and select the Gateway service which is based on CDS View and Click “Next”.

  • Click Next, and then select OData Collection as ZDEMO_COMP (CDS view) and click Finish.

  • Now, you can see the List report Application is created under Workspace. You can test the List report app within Web IDE by clicking the “Run” button.

  • You can choose the file to run the List report application. In this case, I selected the flpSandbox.html.

  • It will open new window from the Web IDE with a tile for testing. Click on the tile.

  • You can test if the report is working fine. By clicking the settings button, you can select the columns you want to show in the report layout and click Go button to run the report.

4. How to deploy the Fiori Application:

  • Logon to SAP Cloud Platform Web IDE and go to your project -> Deploy -> Deploy to SAPUI5 ABAP Repository.

  • If it’s a new application to Deploy, then click the Deploy a new application or click on Update an existing application and then click “Next”.

  • Give the application a Name which starts with ‘Z’ otherwise it won’t create the application, also give the package and click “Next”.

  • Select transport request if asked and then click “Next”.
  • Click Finish.

  • You can see the status of the Deployment in main screen of the Web IDE ( top right corner).

After the Deployment of the Application is complete to Repository , you can create custom semantic object and a tile in Fiori which we can discuss this in PART 2 of this blog.

Thanks!!

Create Fiori List App Report with ABAP CDS view – PART 1的更多相关文章

  1. Create Fiori List App Report with ABAP CDS view – PART 2

    In the Part 1 blog, we have discussed below topics CDS annotations for Fiori List Report. How to cre ...

  2. CDS测试框架介绍:如何为ABAP CDS Entities写测试

    动机 现在大家都知道单元测试对我们代码的好处.并且我们都承认它是开发过程中不可或缺的一部分.但是在把代码切换到数据库的模式下的时候,我们被粗暴地打回了软件测试的黑暗年代...我们现在面临着逻辑下推到A ...

  3. ABAP-Eclipse ADT中创建ABAP CDS视图

    Create an ABAP Project in ABAP Development Tools (ADT): https://developers.sap.com/tutorials/abap-cr ...

  4. Jerry的通过CDS view + Smart Template 开发Fiori应用的blog合集

    S4/HANA里有一个新的UI框架叫做Smart template, 配合ABAP后台的CDS view技术,能够让developer以Metadata driven的方式来开发Fiori应用, 这种 ...

  5. ABAP CDS - Syntax

    The syntax of the DDL and of the DCL of the ABAP CDS comprises elements of the general DDL and DCL o ...

  6. 如何在SAP云平台ABAP编程环境里把CDS view暴露成OData服务

    Jerry 2016年在学习SAP CDS view时,曾经写过一个CDS view的自学系列,其中有一篇提到了一个很方便的注解: @OData.publish: true 加上这个注解的CDS vi ...

  7. HANA CDS与ABAP CDS

    如果你在网络或者SCN上面搜索CDS,即SAP的Core Data Services,你会很容易地找到类似“Core Data Services(CDS)是一个在SAP HANA中用于定义和消费富语义 ...

  8. ABAP CDS Table Function介绍与示例

    Core data services(以下简称CDS)可以指两样东西,一个是HANA CDS,一个是ABAP CDS. 如我们所知,HANA CDS只支持HANA数据库,ABAP CDS理论上支持多种 ...

  9. 使用ABAP CDS视图创建服务

    介绍本文介绍使用ABAP Core Data Services创建OData服务的最快方法. 给出了有关@ OData.publish注释利用率,对数据源CDS实体的引用和从DDIC结构导入的详细信息 ...

随机推荐

  1. Oracle Dataguard 基本原理

    转载-http://blog.sina.com.cn/s/blog_7c5a82970101prcx.html 1.DATAGUARD原理 DATAGUARD是通过建立一个PRIMARY和STANDB ...

  2. 对 Canal (增量数据订阅与消费)的理解

    概述 canal是阿里巴巴旗下的一款开源项目,纯Java开发.基于数据库增量日志解析,提供增量数据订阅&消费,目前主要支持了MySQL(也支持mariaDB). 起源:早期,阿里巴巴B2B公司 ...

  3. selenium + python(鼠标操作)

    关于最近学习selenium自动化测试鼠标操作的一些总结 常见的鼠标操作

  4. Uva 4394 字符串刷子

    题目链接:https://vjudge.net/contest/164840#problem/A 题意:一个字符串刷子,每次可以将一段连续的字符串变成一种颜色,给两个字符串,最少通过几次可以将第一个字 ...

  5. luogu P2424 约数和

    嘟嘟嘟 求出[L, R]中每一个数的约数再相加必定会超时,所以换一种思路:枚举约数d. 对于一个约数d,能整除他的数可以写成k * d, (1 <= k <= ⌊n / d⌋),因此约数d ...

  6. ubuntu应用商店打不开怎么办

    依次运行下面的命令: 桥接网络设置好 sudo apt-get update sudo apt-get dist-upgrade sudo apt-get install --reinstall so ...

  7. GPU CUDA编程中threadIdx, blockIdx, blockDim, gridDim之间的区别与联系

    前期写代码的时候都会困惑这个实际的threadIdx(tid,实际的线程id)到底是多少,自己写出来的对不对,今天经过自己一些小例子的推敲,以及找到官网的相关介绍,总算自己弄清楚了. 在启动kerne ...

  8. Java实体类的属性类型与数据库表字段类型对应表

    原文地址:https://blog.csdn.net/lyhjava/article/details/50562786 Java中的数据类型和SQL中的数据类型有很多不一样,需要仔细区分,不然易在开发 ...

  9. Linux 安装ngnix

    第一步:把nginx的源码包上传到linux系统/home 第二步:解压缩 [root@localhost ~]# tar zxf nginx-1.8.0.tar.gz 第三步:使用configure ...

  10. 【题解】洛谷P1731 [NOI1999] 生日蛋糕(搜索+剪枝)

    洛谷P1731:https://www.luogu.org/problemnew/show/P1731 思路 三重剪枝 当前表面积+下一层表面积如果超过最优值就退出 当前体积+下一层体积如果超过总体积 ...