1. 课程导入与全景认知

在传统 SAP 架构中,业务操作与数据分析长期处于“两套系统、两条链路”的状态:ECC 或业务系统负责交易处理,数据通过抽取、转换、加载进入 BW 或数据仓库,再由报表工具呈现。这条链路能支撑管理分析,却带来三个现实问题:数据延迟、口径不一致、开发与运维成本高。SAP S/4HANA 的嵌入式分析(Embedded Analytics)正是为改变这一格局而设计的——它把分析能力直接“嵌入”到业务系统内部,让分析在交易数据产生的地方就近完成。

一、什么是嵌入式分析

嵌入式分析指在 SAP S/4HANA 系统内部,直接基于业务表(如 ACDOCA 通用日记账、VBAK 销售订单、MARA 物料主数据等)构建分析模型与查询,并通过 Fiori 应用、分析列表页、KPI 磁贴、多维报表等形式呈现结果。它不依赖把数据复制到独立数据仓库,而是利用 S/4HANA 的列式存储(HANA Column Store)、内存计算和计算视图能力,实现“交易即分析”。

需要区分三个层次:嵌入式分析是能力范畴,强调分析内置于业务系统;CDS 视图是技术载体,用 ABAP CDS 定义语义化数据模型;分析应用是消费端,包括 Fiori 分析应用、Query Browser、分析列表页等。三者构成“能力—模型—呈现”的完整链条。

二、价值定位:为什么要在 S/4HANA 内做分析

嵌入式分析的价值可以从四个维度理解。第一是实时性:数据在业务过账时即写入 ACDOCA,分析视图直接读取,无需等待夜间批处理,月结期间的报表可即时反映最新凭证。第二是一致性:分析模型与业务表共用同一数据源,避免 BW 与 ECC 口径差异导致的“同一指标两个数”。第三是低成本:减少数据复制、抽取作业和独立数仓的运维投入。第四是可扩展:CDS 视图可被 Fiori、OData 服务、分析列表页、甚至外部工具复用,形成统一语义层。

判断一个分析需求是否适合嵌入式分析,可先问三个问题:数据是否已在 S/4HANA 中?是否需要实时或准实时?是否属于标准业务对象的聚合分析?若答案多为“是”,优先考虑 CDS 视图方案。

三、与 CDS 建模的关系

CDS(Core Data Services)是嵌入式分析的核心建模语言。它用 DDL 定义实体,用 DCL 控制权限,用注解(Annotation)声明分析语义。一个典型的分析型 CDS 视图通常包含:数据源(如 ACDOCA)、关联(Association)、聚合(SUM、COUNT)、参数(Parameters)、以及分析注解(如 @Analytics.dataCategory: #CUBE)。

从建模到消费的链路可以概括为:业务表 → 基础 CDS 视图 → 分析 CDS 视图(Cube/Dimension)→ 查询视图(Query)→ Fiori 应用或分析列表页。其中,分析视图负责定义度量和维度,查询视图负责定义用户可交互的筛选与布局,Fiori 应用负责最终呈现。理解这条链路,是后续所有建模章节的基础。

S/4HANA 嵌入式分析:从业务表到分析应用的数据链路 业务表(透明表) ACDOCA 通用日记账 VBAK / VBAP 销售订单 MARA / MARC 物料主数据 BKPF / BSEG 会计凭证 基础 CDS 视图 @AbapCatalog.sqlViewName 字段映射与关联 Association 定义 权限 DCL 控制 分析 CDS 视图 @Analytics.dataCategory #CUBE / #DIMENSION 度量与维度定义 参数与变量 消费端 Fiori 分析应用 分析列表页 Query Browser KPI 磁贴 嵌入式分析四大价值维度 实时性 过账即分析,无批处理延迟 一致性 与业务表同源,口径统一 低成本 减少抽取与独立数仓运维 可扩展 CDS 语义层多端复用 典型应用场景概览 财务:应收应付账龄分析 基于 ACDOCA 实时账龄 销售:订单履行与收入 VBAK/VBAP 聚合分析 采购:供应商交付绩效 采购订单与收货对比 库存:库龄与周转率 MARD/MSKA 库存分析

四、典型应用场景概览

嵌入式分析在 S/4HANA 中覆盖了几乎所有核心业务域。财务方面,基于 ACDOCA 的应收应付账龄分析、成本中心实际与计划对比、利润中心报表,都可以通过 CDS 视图实时呈现;销售方面,订单履行状态、收入确认、客户信用敞口等分析可基于 VBAK、VBAP、VBRK 构建;采购方面,供应商交付绩效、采购价格趋势、收货与发票差异分析是常见场景;库存方面,库龄分析、周转率、安全库存预警等可基于 MARD、MSKA 等表实现。

这些场景的共同特征是:数据源明确、聚合逻辑清晰、对实时性有要求、且需要与业务操作在同一系统内闭环。例如,财务人员在处理一笔客户付款时,可以直接在 Fiori 应用中查看该客户的实时账龄和信用余额,而不需要切换到另一个报表系统。

五、学习路径与关键认知

本课程后续将围绕“建模—消费—优化”三条主线展开。建模线从 ABAP CDS 语法入手,逐步深入到分析视图、参数、权限和性能优化;消费线覆盖 Fiori 分析应用、分析列表页和 Query Browser 的使用与配置;优化线则关注 CDS 视图的性能调优、HANA 计算下推和常见排障方法。

在开始建模之前,需要建立三个关键认知:第一,CDS 视图不是简单的 SQL 封装,而是带有语义注解的“可复用数据模型”;第二,分析视图的度量与维度定义直接决定前端交互能力,建模时就要考虑用户如何筛选、下钻和排序;第三,权限控制必须在 CDS 层通过 DCL 完成,不能依赖前端过滤,否则会带来数据泄露风险。

本节的核心结论:嵌入式分析的本质是“让分析靠近数据”,CDS 建模是实现这一目标的技术手段,而 Fiori 应用是最终的价值出口。三者缺一不可,理解它们之间的关系,是后续所有实操章节的起点。

接下来,课程将从 ABAP CDS 的基础语法开始,逐步构建第一个可运行的分析视图,并在真实业务表上验证数据链路。在此之前,建议先确认你所使用的 S/4HANA 版本(如 2021、2022 或 2023),因为不同版本在 CDS 注解和 Fiori 应用可用性上存在差异,这会影响后续建模的具体写法。