【SAP Hana】SAP S/4 HANA 数据库底表查询及运维管理

1、SAP S/4 HANA 简介
1.1 S4与ECC的区别
SAP ECC时期支持常规主流的关系型数据库,如MSSQL、ORACLE、IBM DB2等。
SAP S4 仅支持在HANA数据库上运行。
SAP基于HANA的内存计算、列式存储,以及并行计算特性,对SAP数据底表做了大量的改造优化,具体参考相关资料。

参考:SAP S/4 HANA 与R3(ECC) 的区别

1.2 SAP S4 Hana数据库(以Q系统为例)
目前版本为HANA2.0,默认以多租户形式部署,
一般SAP S4 的数据库对应为设定租户下的 SAPHANADB SCHEMA,如图所示:

1.3 访问权限设定
不建议用系统账号访问数据库,需要由数据库DBA另外设置访问账号。
这里新建了YKREADER账号,授权对SAPHANADB、YKDB只读访问。

2、SAP HANA 连接工具
2.1 工具
推荐使用官方管理工具SAP HANA Studio,来管理、访问Hana数据库,进行数据开发。

也可以通过Eclipse,下载SAP相应组件来访问 Hana数据库。
也可以使用第三方工具,如dbeaver来访问Hana数据库。

2.2 连接服务器
(1)打开Hana Studio主界面,切换如下视图 :
查询用:SAP HANA Administration Console (default)
开发用:SAP HANA Development

(2)添加Hana服务器

(2)添加成功,如下图所示

SAP S4的数据就是在SAPHANADB里的。

3、SAP S4 底表查询实例

供应商主数据查询 LFA1

4、Hana脚本注意事项
(1)集团号
在SAP应用层访问数据(如ABAP OPENSQL),集团号由系统自动补上。
但是在执行Hana脚本时,所有表必须要明确指定集团号,关联查询时也必须加上集团号关联条件。
否则会显示该实例下所有集团的数据,多表关联时会产生大量重复数据。

以下以RFC ZFMMM_044(供应商主数据读取RFC接口OA->SAP),返回的LFA1结果为例:

对应的Hana Script如下:

SELECT
   a.lifnr, b.bu_group, a.ktokk, a.name1, a.name2, a.stenr, a.loevm,
   a.stras, a.pstlz, a.land1, a.regio, a.ort01, a.telf1, a.telfx,
   a.telf2, a.werks, a.sperr, a.sperm, c.sort1, c.sort2, c.title,
   c.street, c.city1, d.smtp_addr
FROM saphanadb.lfa1 AS a
INNER JOIN saphanadb.but000 AS b ON a.lifnr = b.partner and b.CLIENT = a.mandt
LEFT JOIN saphanadb.adrc AS c ON a.adrnr = c.addrnumber AND c.date_to = '99991231' and c.CLIENT = a.mandt
LEFT JOIN saphanadb.adr6 AS d ON a.adrnr = d.addrnumber AND d.date_from = '00010101' and d.CLIENT = a.mandt
WHERE a.loevm <> 'X' and a.sperr <> 'X' and a.sperm <> 'X'
    and a.mandt in (710);
 

备注:S4中集团号在不同底表中有不同,有的是mandt,有的是client,还有其它的,可以通过se11查看表关键字确认。

(2)S4 替换对象/代理对象
首先来看以下几种情况:
A.底表有记录,但是数据不一致,如MARD

B.底表无数据,如MSEG

解决方法:通过SE16N来查看表对应替代对象,通过替代对象来进行底表查询

内部原理:内部转换,针对S4改造优化的表,创建了相应的兼容视图

说明:由于S4对底表进行了大量的改造优化,替换对象/代理对象是为了保持SAP应用层自定义程序的可用性而引入的。因此,如果自定义程序从MSEG中进行选择,它仍将显示我们在SE16N中看到的内容。

5、SAP HANA数据库监控
DBA可以通过SYSTEM账号,对HANA数据库进行监控管理。

  • 20
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ChampaignWolf

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值