乐趣区

关于sass:SAP-Fiori-Elements-公开课第二单元视频的台词和课程主要内容

课程地址

很多 SAP 从业者反映,open SAP 上的视频,因为网络起因无法访问,所以我会陆续在我的集体微 信 号“汪子熙”下面,把这些视频配上中文字幕并公布进去,敬请关注。

本文是公开课第二单元视频的中文字幕,由自己手动翻译而成,感激大家的反对。

第二单元内容:解说 Fiori Elements Architecture

以下是视频台词的中文翻译。

====

欢送大家来到 OpenSAP Fiori Elements 公开课程第一周的第二单元。本单元咱们探讨 Fiori Elements 的架构

SAP Fiori Elements 总的来说分为五大组成部分,独特形成了运行时看到的应用程序: (1)Floorplans; (2)OData 服务; (3) 注解; (4) 配置; (5) 定制代码

下图右边第一个图例代表 Floorplan, 比方 Analytical List 或者 Object Page, 由 Fiori Elements 框架提供

Floorplan 负责应用程序的显示方式及其行为形式的管制

第二,第三局部即 OData 服务和注解,须要利用开发人员保护

二者联合起来,使利用开发人员能够决定利用在屏幕上显示的具体内容,而不须要应用 JavaScript 编程来实现

相同,借助 OData 和 注解,咱们提供的理论是语义和行为的形象形容 (abstraction of semantics and behaviors)

这意味着利用开发人员得以专一于业务性能、行为形式以及生产形式的设计中去

当然如果您心愿扭转 Floorplan 的行为或引入额定的逻辑,Fiori Elements 的灵活性也足以胜任

Fiori Elements 利用提供了两种加强形式:无代码配置 (no-code
configuration) 和定制代码加强 (custom code extensions)

上面咱们深刻探讨这五个组成部分

从框架提供的 Floorplan 开始介绍

咱们能够把 Floorplan 设想成一个蓝图或者模板

Floorplan 定义了很多占位符,每个占位符蕴含了一个控件,比方过滤器,工具条,表格控件等等

Floorplan 形容了这个页面所有可能提供给用户应用的性能和行为

比方,当一个用户点击了表格行我的项目时,用户可能导航到明细页面去,或者跳转到内部利用。这些行为的形容,就保护在 Floorplan 里

一旦 Fiori Elements 利用启动后,框架的 Floorplan 处理器就接管了初始化控制权

框架联合利用开发人员提供的 OData 和注解,将 Floorplan 转化成最终的 SAP UI5 视图

Floorplans 和其控件蕴含了许多性能,这里举一些例子

用户能够个性化控件,创立不同的变体 (variants), 能够共享页面或者给页面设置书签

能够应用 Excel 导出和导入性能

只有后盾的 OData 服务反对,用户也能够对数据进行批改或创立,或是触发 Actions

Floorplans 也具备响应式个性,这意味着依据用户的设施或屏幕的不同,Floorplans 会显示不同的内容

最初也是很重要的一点是,Fiori Elements 对 SAP 产品规范原生的反对

如果您开发的 Fiori Elements 利用未蕴含任何定制代码,那么它在不须要付出额定代价的状况下,自身就曾经是一个开箱即用的,合乎企业级就绪规范 (Enterprise-Ready) 的利用了

上面看看咱们到底 Fiori Elements 利用开发,到底须要提供哪些构建模块

首先当然是 OData,每一个 Fiori Elements 利用都须要 OData

OData 是一种位于规范 HTTP 之上的协定,定义了如何同后端替换数据的行为

OData 蕴含数据模型的元形容,定义了模型实体和属性,以及它们之间的关联关系

OData 不仅反对对形容模型规范的增删改查操作

还能触发 Actions 和调用函数

OData 自身具备一个功能强大的查询语言

该语言容许客户端查问优化过的读取申请,对数据进行过滤和搜寻

以及对数据进行聚合或限度的性能

OData 能通知客户端,以后反对以及受限的操作

在规范 OData 协定的根底上,SAP 对其做了扩大,引入了 Draft 概念,Fiori Elements 对 Draft 概念也反对良好

借助 Draft 概念,咱们能够构建更加业余和动静的应用程序,比方保留一个批改过的草稿模型,可能稍后持续编辑

有了 Draft 的反对,咱们能够让编辑的模型放弃草稿状态,留待稍后持续编辑,甚至能够切换到另一个不同的设施

目前 OData 次要有 V2 和 V4 两个版本

V4 是 V2 的进化版, 不仅蕴含了新性能, 也是 ISO 批准的 OASIS 规范

Fiori Elements 能充分发挥 OData V4 的劣势, 同时 SAP 也极其留神放弃两个版本间 Floorplan 格调和布局的稳固与统一

OData 也容许利用开发人员对元数据进行注解 (annotate), 这是一个很酷的个性

这样一来,利用开发人员就可能本人形容数据应该如何被框架解析并渲染。举一些例子

应用正文, 咱们能够指定金额字段和货币字段,二者在语义上从属于一起

又比方给一个显示字符串内容的字段增加额定的语义: 该字段只能显示一个非法的电子邮箱地址。有了这些注解,框架就能晓得如何以正确的外观渲染字段

正文还能够定义行为。例如指定一个 Business Object 是否能够编辑

注解也能够给出生产提醒 (Consumption hints), 比方某个字段是否容许被点击

您可能会问,如何创立数据 OData 服务以及注解?

首先我想强调的是,Fiori Elements 反对任何合乎 OData 标准的后盾服务

但如果能够应用 SAP 后盾,则只须要一些简略的鼠标点击,就能迅速创立出 OData 服务

Cloud Application Programming Model (CAP) 和 Restful ABAP Programming Model (RAP) 这两种编程模型

都能将 CDS View 主动公布成 OData 服务

并且二者都反对在 CDS View 定义里编写注解

即使应用传统的 ABAP 编程模型,咱们依然能够用 SAP Gateway 和注解提供类 (Annotation Provider Class) 来开发 OData 服务

如果注解是 OData 服务的一个组成部分,咱们称其为后盾驱动式注解 (backend-driven annotations)

尽管如此,由后盾提供的注解是可选的

咱们也能够在本地注解文件里提供所需的注解,或者采取二者联合的形式

在二者联合的工作模式下,本地注解将会在 Term 字段的级别上,笼罩掉来自后盾的注解

本地注解是在应用程序我的项目中创立的,并遵循应用程序本身的生命周期

咱们能够应用本地注解来实现后盾尚不能提供的注解性能

或者满足利用同一个 OData 服务来实现多个应用程序变体的需要

有时咱们应用的 OData 服务提供商基本不能提供注解服务,此时本地注解就更能发挥作用了

咱们曾经理解到,Floorplans 利用元数据和注解,来决定页面上要渲染的控件

不仅如此,Floorplan 也会思考由利用开发人员提供的可选配置

还是举例说明

在 List Report Floorplan 中,咱们显示了一个表格控件。大家兴许晓得,SAP UI5 提供了好几种类型的表格控件

依据咱们目前的 UX 设计准则,List Report Floorplan 里默认抉择的是 ResponsiveTable

但如果您想在 List Report 中应用其余类型的 UI5 表格控件

能够通过 Fiori Tools 加上配置的形式,轻松实现

Fiori Elements 提供了很多这样的配置项

这些配置并不是语义层面的,而是基于具体的应用程序

这就是为什么抉择 Table 控件类型的性能,不是作为注解,而是通过配置形式提供的

咱们甚至为这个配置提供了分层 (Layering) 的设计

假如咱们想把表格控件类型改成 GridTable. 然而局部用户在平板电脑和手机上拜访该利用

而这些挪动平台上 ResponsiveTable 显示成果更佳。这种状况下,管理员或者 Key User 依然能够通过配置的形式,将表格类型复原成 ResponsiveTable

后面曾经提过,Fiori Elements 提供了大量的 UI patterns 和性能

以及适宜大多数业务用例的个性 (普适性)

当然,作为一个框架,Fiori Elements 不可能为所有类型的行为和设计都提供开箱即用的反对

这种状况下,利用开发人员仍旧可能编写定制代码,并集成到 Fiori Elements 利用中去

这些定制代码须要利用开发人员自行在 Fiori Elements 工程中非凡的地位编写

例如 Object Page 里削减一个新的 section, 表格减少一个新的 column, 工具栏里削减一个新的 Action 按钮等等

通过应用由 SAP Fiori Elements 提供的构建块

咱们能够疾速进行扩大的开发,同时依然放弃整个利用具备统一的外观和体验

然而咱们不会有 100% 的灵活性,不能在屏幕的任何地位增加新的控件

这个 ” 限度 ” 也确保了即便屏幕布局因为 SAP 版本升级发生变化后,咱们的自定义内容可能始终可用

也就是说,SAP 版本升级不会影响到利用中的自定义 UI 内容

这个准则同样也实用于咱们编写在某些 Hooks 上的自定义代码,比方当用户试图保留一个文档时

在相似 beforeSave 的钩子上, Fiori Elements 提供了所谓的 ExtensionsAPI. 这是一系列办法的汇合, 能用于自定义代码的编写中

比方当表格行我的项目被点击时,应用 ExtensionsAPI 拿到被点击的行我的项目蕴含的业务数据

须要留神的是,编写扩大代码也是有代价的

利用开发人员负责编写定制代码,因而也必须确保这些代码性能的正确性和稳定性,特地是在降级之后

而且必须确保这些自开发代码满足所有的 SAP 产品规范

本单元的介绍行将完结。简略总结一下,并瞻望下一个单元的学习指标

这个单元咱们探讨了应用 Fiori Elements 开发企业级可用 (Enterprise-Ready) 程序的五大组成部分

  1. 由框架提供的 Floorplans, 定义了界面内容的显示和表现形式

2 和 3 别离是 OData 服务和注解,由利用开发人员提供,负责定义利用显示的内容和提供的业务性能

4 和 5 是可选的配置以及定制开发性能,二者容许咱们对 Fiori Elements 利用进行微调 (fine tune) 和扩大

本课程的下一单元即第三单元,咱们会深刻探讨 OData 服务和注解。感激观看本视频,咱们下单元再见

====

OData 服务将您的 Fiori Elements 利用 UI 同后盾数据源连接起来,OData 服务提供商包含 SAP S/4HANA,SAP Business Warehouse,SAP Business Technology Platform 和其余内部 OData 服务提供商。

OData 注解,决定了您的 Fiori Elements 的外观以及行为。比方管制哪个字段能够点击,哪个字段能够编辑。同时,OData annotation 可能为 OData 元数据提供更多的语义化信息 – semantic information,比方:

  • 哪个字段容许用户惟一标识一个业务实体
  • 定义字段 A 是字段 B 的货币单位
  • 若干字段应该组合起来,独特显示在一个 form 里

在 ABAP platform 7.5 及其当前的版本,咱们能够采取 Core Data Services 的形式,实现 OData 服务.

在 SAP BTP ABAP 编程环境里,除了 ABAP Programming Model for SAP Fiori 之外,咱们还能够抉择 Restful ABAP Programming Model 以及 Cloud Application Programming Model 来进行 OData 服务开发。

SAP Fiori Elements 基于 SAP 最新的 UX 准则,提供了默认的配置项,应用 SAP Fiori Tools,能够便捷地批改这些配置。

SAP Fiori Elements 利用的扩大伎俩

  • 自定义控件
  • 应用 SAP Fiori Elements ExtensionAPI 提供的自定义逻辑

更多 Jerry 的原创文章,尽在:” 汪子熙 ”:

退出移动版