前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >在SAP云平台ABAP编程环境通过CDS创建Fiori应用

在SAP云平台ABAP编程环境通过CDS创建Fiori应用

原创
作者头像
惨绿少年.
修改于 2021-05-20 09:02:42
修改于 2021-05-20 09:02:42
5280
举报
文章被收录于专栏:ABAPABAP

本文是参照Jerry的这篇文章完成的,自己纯属记录练习。

SAP云平台我用的是试用官方的,没有账号的同学可以去这个网站申请一下Get a Free Account on SAP BTP Trial

  • 先创建表,给表添加数据 `@EndUserText.label : 'Book' @AbapCatalog.enhancement.category : #NOT_EXTENSIBLE @AbapCatalog.tableCategory : #TRANSPARENT @AbapCatalog.deliveryClass : #C @AbapCatalog.dataMaintenance : #RESTRICTED define table zbook_cus { key client : mandt not null; key travel_id : /dmo/travel_id not null; agency_id : /dmo/agency_id; customer_id : /dmo/customer_id; begin_date : /dmo/begin_date; end_date : /dmo/end_date; @Semantics.amount.currencyCode : 'zbook_cus.currency_code' booking_fee : /dmo/booking_fee; @Semantics.amount.currencyCode : 'zbook_cus.currency_code' total_price : /dmo/total_price; currency_code : /dmo/currency_code; description : /dmo/description; overall_status : /dmo/overall_status; created_by : syuname; created_at : timestampl; last_changed_by : syuname; last_changed_at : timestampl;

}

添加数据的代码也是copy别人的,简单修改,主要是对云平台的数据不了解,感谢前辈们的努力。

CLASS zcl_fill_table DEFINITION

PUBLIC

FINAL

CREATE PUBLIC .

PUBLIC SECTION.

INTERFACES if_oo_adt_classrun .

PROTECTED SECTION.

PRIVATE SECTION.

ENDCLASS.

CLASS zcl_fill_table IMPLEMENTATION.

METHOD if_oo_adt_classrun~main.

DELETE FROM ('zbook_cus').

" insert travel demo data

INSERT ('zbook_cus') FROM (

SELECT

FROM /dmo/travel AS travel

FIELDS

travel~travel_id AS travel_id,

travel~agency_id AS agency_id,

travel~customer_id AS customer_id,

travel~begin_date AS begin_date,

travel~end_date AS end_date,

travel~booking_fee AS booking_fee,

travel~total_price AS total_price,

travel~currency_code AS currency_code,

travel~description AS description,

CASE travel~status "Status [N(New) | P(Planned) | B(Booked) | X(Cancelled)]

WHEN 'N' THEN 'O'

WHEN 'P' THEN 'O'

WHEN 'B' THEN 'A'

ELSE 'X'

END AS overall_status, "Travel Status [A(Accepted) | O(Open) | X(Cancelled)]

travel~createdby AS created_by,

travel~createdat AS created_at,

travel~lastchangedby AS last_changed_by,

travel~lastchangedat AS last_changed_at

ORDER BY travel_id UP TO 50 ROWS

).

COMMIT WORK.

ENDMETHOD.

ENDCLASS.

  • 创建CDS View

这里创建的时候必须选Root View Entity。

@AccessControl.authorizationCheck: #CHECK

@EndUserText.label: 'sadas'

define root view entity Zcds_book_test as select from zbook_cus{

key travel_id as TravelId,

agency_id as AgencyId,

customer_id as CustomerId,

begin_date as BeginDate,

end_date as EndDate,

booking_fee as BookingFee,

total_price as TotalPrice,

currency_code as CurrencyCode,

description as Description,

overall_status as OverallStatus,

created_by as CreatedBy,

created_at as CreatedAt,

last_changed_by as LastChangedBy,

last_changed_at as LastChangedAt

}

  • 创建Behavior definitions

激活上一步的CDS后,然后基于创建的CDS创建Behavior Definitions.在左边创建的CDS上点右键创建就会自动基于当前CDS了,创建完记得激活.

创建的Behavior,需要把代码中的Lock master注释解开,这样就不会报错

managed; // implementation in class zbp_cds_book_test unique;

define behavior for Zcds_book_test

persistent table ZBOOK_CUS

lock maste

//authorization master ( instance )

//etag master <field_name>

{

create;

update;

delete;

}

  • 创建service definition

再基于CDS View创建,还是跟之前的操作一样,可以给暴露出的CDS View添加别名.

@EndUserText.label: 'test'

define service Zcal_book_test {

expose Zcds_book_test as book;

}

  • 创建Service binding

再基于刚创建的Service Definition创建Service binding,操作与之前一样,其中Binding Type必须选择一种类型

创建完成后,需要点右边的publish,才能完成激活.

激活后,点Preview就可以查看了.

打开后,发现没有数据.这时候需要点图中标红的按钮

选择上需要显示的字段

确定后,再点击上面的Go就会出数据了.

到这就结束了.

参照文章地址:https://blog.csdn.net/i042416/article/details/104327774

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
在SAP云平台ABAP编程环境通过CDS创建Fiori应用
本文是参照Jerry的这篇文章完成的,自己纯属记录练习。 SAP云平台我用的是试用官方的,没有账号的同学可以去这个网站申请一下Get a Free Account on SAP BTP Trial
惨绿少年.
2021/12/07
3220
在SAP云平台ABAP编程环境通过CDS创建Fiori应用
LeetCode 数据库专题
写一段SQL查询来展示每位用户的 唯一标识码(unique ID );如果某位员工没有唯一标识码,使用 null 填充即可。你可以以 任意 顺序返回结果表。查询结果的格式如下例所示:
wywwzjj
2023/05/09
1.5K0
LeetCode 数据库专题
LeetCode数据库题目集合
编写一个 SQL 查询,满足条件:无论 person 是否有地址信息,都需要基于上述两表提供 person 的以下信息:
MiChong
2021/02/24
9430
LeetCode数据库题目集合
经典 40 篇完整版
Hiding behind the loose dusty curtain, a teenager packed up his overcoat into the suitcase. He planned to leave home at dusk though there was thunder and lightning outdoors. He had got to do this because he was tired of his parents’ nagging (唠叨的) about his English study and did not want to go through it any longer. He couldn’t get along well with English and disliked joining in English classes because he thought his teacher ignored him on purpose. As a result, his score in each exam never added up to over 60.
独元殇
2023/03/14
1.6K0
机器学习之朴素贝叶斯分类算法
朴素贝叶斯分类算法:朴素贝叶斯(Naive Bayes ,NB)算法是基于贝叶斯定理与特征条件独立假设的分类方法,该算法是有监督的学习算法,解决的是分类问题,是将一个未知样本分到几个预先已知类别的过程。朴素贝叶斯的思想就是根据某些个先验概率计算Y变量属于某个类别的后验概率,也就是根据先前事件的有关数据估计未来某个事件发生的概率。
全栈程序员站长
2022/11/04
2.8K0
机器学习之朴素贝叶斯分类算法
相关推荐
在SAP云平台ABAP编程环境通过CDS创建Fiori应用
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文