首页 > 数据库 >如何手动通过增强的方式,给 SAP ABAP 数据库表增添新的字段

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

时间:2023-01-10 23:44:46浏览次数:46  
标签:增强 增添 数据库 ABAP SAP Extensibility

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

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

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

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

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

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

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

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

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

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

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

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

具体的步骤如下

标签:增强,增添,数据库,ABAP,SAP,Extensibility
From: https://www.cnblogs.com/sap-jerry/p/17041698.html

相关文章

  • CSAPP MallocLab 笔记
    CSAPPMallocLab笔记CS15-213labnotessbrk函数为了实现动态的内存分配,一个核心的函数就是sbrk。memoryalignment8字节对齐的地址特征,其地址数值的16进制表......
  • 简易版NewSql数据库--单机版kv存储
    数据结构:哈希桶,每个桶内可以装8个数据,然后每一个桶20个相同的桶,在写入的时候,首先通过哈希找到对应的桶,然后在根据当前该哈希值已经有的数量,判断要找存到20个......
  • 数据库死锁
    数据库死锁查询锁表语句selectrequest_session_idspid,OBJECT_NAME(resource_associated_entity_id)tableNamefromsys.dm_tran_lockswhereresource_type='......
  • SSIS【Foreach 循环容器_Foreach Item 枚举器】(循环读取数据库)
    SQLServer2008R2SSIS_Foreach循环容器_ForeachItem枚举器(循环读取数据库)1.首先在两个数据库中创建两个相同的表。下面将演示将这两个表的数据插入到test2中的一个新......
  • 文件系统对数据库性能的影响
    在平时的数据库性能测试中,我们也需要关注一下服务器所使用的文件系统类型,因此介绍Linux常用的文件系统类型及常见文件系统的特性。文件系统的主要特点1、数据可以长期保......
  • [Oracle19C 数据库管理] 创建PDB
    使用PDB$SEED模板创建PDB通过PDB$SEED创建PDB数据库,将会触发以下动作:将文件从PDB$SEED文件夹复制到新创建的PDB数据库文件夹中。创建表空间SYSTEMSYSAUXUNDO创......
  • 数据库学习第一天概述1
    视频别人的笔记的目录对应视频的内容(这节课是概述没有要记忆的点)......
  • 服务案例 SQL Server数据库反复重启问题
    LinkSLA智能运维管家对主流数据库的监控,能够及时发现异常,快速响应,保障业务系统的稳定。平台通过对SQLServer数据库监控,帮助用户在数据库出现异常时事件处理。一、SQLServe......
  • sqlserver数据库死锁
    死锁(Deadlock)所谓死锁:是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了......
  • SQL Server 2012主从数据库的订阅和发布,实现数据库读写分离(主从备份)
    学习:https://www.bilibili.com/video/BV13B4y1h7Wu?p=12&spm_id_from=pageDriver&vd_source=3f21d2e208ef0bf2c49a9be7560735e5学习:https://www.cnblogs.com/sdadx/p/6418......