如何手动通过增强的方式,给 SAP ABAP 数据库表增添新的字段试读版

简介: 如何手动通过增强的方式,给 SAP ABAP 数据库表增添新的字段试读版

有个朋友向我咨询关于 SAP 产品增强字段扩展(Field Extensibility) 的问题:

Jerry,你好。看过你写的SAP产品增强Field Extensibility文章,对扩展字段在物理数据库的结构还不是很清楚,创建一个扩展字段后,物理数据库中是在SAP标品的表中加列,还是有一个关联表?或者说这是不是有多种可选的策略?

想问一下这一块细节。


2f187b33b41e7886db2cb475666c4570.png

这位朋友应该看的是笔者这篇文章:SAP产品的Field Extensibility。


本文就通过一个实际的例子,讲解如何手动给 SAP ABAP 数据库表,通过增强的方式,增添新的字段。


所谓增强(enhancement),是一种升级安全的扩展方式,这种方式不会对 SAP 标准产品发布的数据库表造成直接修改,这意味着客户可以在自己的系统上,通过这种增强方式给 SAP 标准数据库表增添新的字段。其后如果 SAP 数据库表发生了版本更新,比如增添了新的标准字段,或者对已有字段进行重命名,客户增强的这些字段都不会受到影响。


客户增强字段存储在一个客户创建的名叫 append structure 的 ABAP DDIC 结构上,这个结构是独立于 SAP 标准数据库表,存储在客户自己的命名空间下的开发包里。


下图是 SAP CRM 产品主数据的明细页面,其中产品的描述信息,存放在数据库表 COMM_PRSHTEXT 里。

ee0ce9073fef90793bb2f6b03bdc156e.png

COMM_PRSHTEXT 的主键为 PRODUCT_GUID 和 LANGU,这暗示我们一个产品可以分别基于不同的语言,分别维护多条描述信息。

SHORT_TEXT 字段存放产品描述大小写相关的内容,这些描述信息字符,在对应语言里如果能转换成大写,则全部转换成大写形式,然后存放到另一个字段 SHTEXT_LARGE 里。

f21d9ffea1afd813688a5b2634c4822f.png

这两列的内容的一些例子,如下图所示:

52906cdc61552a5a1c7edc016eb32ba0.png

本文我们介绍如何在这张数据库表里通过增强的方式,添加一个额外的自定义字段。假设我们添加的新字段数据类型为整数类型,用来存储一个产品描述信息的字符个数(通过 ABAP 标准函数 strlen 获得)。

最后添加的扩展字段效果如下图所示:

3b2df6536e6ac7085ffbd4f14be05d98.png

具体的步骤如下。

相关文章
|
17天前
|
数据库
实体类的字段和数据库中的字段不一致、并且没有做中间替换、会发生什么
这篇文章讨论了实体类字段与数据库字段不一致时可能导致的问题,作者通过实际案例展示了字段不匹配时查询无法正确执行,并说明了修正字段匹配后查询可以成功执行的情况。
实体类的字段和数据库中的字段不一致、并且没有做中间替换、会发生什么
|
4月前
|
DataWorks Oracle 关系型数据库
DataWorks操作报错合集之尝试从Oracle数据库同步数据到TDSQL的PG版本,并遇到了与RAW字段相关的语法错误,该怎么处理
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
74 0
|
16天前
|
存储 开发框架 .NET
ASP.NET Web Api 使用 EF 6,DateTime 字段如何取数据库服务器当前时间
ASP.NET Web Api 使用 EF 6,DateTime 字段如何取数据库服务器当前时间
|
2月前
|
数据库
MybatisPlus3---常用注解,驼峰转下滑线作为表明 cteateTime 数据表中的 cteate_time,@TableField,与数据库字段冲突要使用转义字符“`order`“,is
MybatisPlus3---常用注解,驼峰转下滑线作为表明 cteateTime 数据表中的 cteate_time,@TableField,与数据库字段冲突要使用转义字符“`order`“,is
|
3月前
|
SQL 关系型数据库 MySQL
MySQL数据库——索引(4)-SQL性能分析-profile详情、explain(profile查看指令,explain执行计划中各个字段的含义)
MySQL数据库——索引(4)-SQL性能分析-profile详情、explain(profile查看指令,explain执行计划中各个字段的含义)
39 2
|
4月前
|
监控 关系型数据库 数据库
关系型数据库识别常查询字段
【5月更文挑战第20天】
48 4
|
4月前
|
监控 关系型数据库 数据库
|
4月前
|
存储 安全 数据库
什么是 SAP ABAP 数据库表的 Display Maintenance Allowed with Restrictions
什么是 SAP ABAP 数据库表的 Display Maintenance Allowed with Restrictions
|
4月前
|
前端开发 数据库 开发者
如何在 SEGW 事务码里为 SAP ABAP OData 服务实现 Function Import 试读版
如何在 SEGW 事务码里为 SAP ABAP OData 服务实现 Function Import 试读版
|
4月前
|
BI 网络安全
如何使用 ABAPGit 在 SAP ABAP 系统安装 abap2xlsx 工具试读版
如何使用 ABAPGit 在 SAP ABAP 系统安装 abap2xlsx 工具试读版

热门文章

最新文章

下一篇
云函数