SAP中找表-几种经典的方法

坚持下去才是最最难得的事情。在你看不到路的情况下,如何抹黑的走下去

黑暗的莫个角落有个我一直默默的在SAP学习的路上

期待那天有个伯乐能发现我的存在

SAP中找表-几种经典的方法 图1

SAP中找表-几种经典的方法

在SAP系统中,用户在进行日常业务的过程时,经常会因为操作不方便,或者需要某些归类的数据集合,提出对系统的更改需求,包括程序的更改和报表的开发。用户在操作业务的时候,看到的只是前台界面,因此只能把自己需要的数据告诉开发人员,指出数据在前台的显示位置,开发人员还需要找到相关的数据在后台的存储位置,这样才能进行开发。由于系统的复杂性,大部分显示在前台的数据都是经过系统程序的处理,并不能够直接找到与后台数据表之间的映射关系,这也是所有大型ERP系统的共有特点。那应该如何把前台界面显示的数据,关联到后台的数据表中呢?从简单到复杂,一步步深入,有以下几种方法:

1.F1(帮助?按钮) -最常用最简单的

SAP系统在前台操作界面,提供了一个很好的操作方式,点击自己需要跟踪的数据 例如 Base Unit Measure ,按F1键或者按帮助(? 图片),然后选择“技术信息”,会出现如下图所示界面:

SAP中找表-几种经典的方法 图2

SAP中找表-几种经典的方法 图3

可以看到,我要跟踪的数据是存储在表名为 MARA的表中,字段的名称是MEINS,我们可以去后台查看这个数据表,1.Transparent table 2.视图 table(View )3.Table (Structure),如图所示看到如果是Transparent table 说明已找到我们已经成功了,找到了前台数据和后台表的关系,而一般情况下,你会发现我们找到的所谓的表,并不是一个真正的数据表,他可能是一个视图(View),也可能只是一个结构(Structure),这时候,我们就必须进行下一步操作了。

2.根据元素查找

如果我们在第一步中,发现的是Structure ,相对来讲就比较麻烦。因为Structure只是用来临时存储程序运行时的实时数据,我们在里面无法得到我们需要的数据。这时,我们就需要用到第一步中查找到的数据元素(Data Element)。

SAP中找表-几种经典的方法 图4

直接双击数据元素 同过实用程序点击Where-used List (或者三叉图标)或者进入T-code SE11,在Data Type栏输入要查找的数据元素按Ctrl+Shift+F4,可以调出数据元素查找界面(Where-used List),我们在这里选择查找表,就可以得到所有使用过这个数据元素的Table清单。这个清单的数量一般会比较大,在20-30个左右,我们需要根据经验做出选择,排除一些不常用的和非关键数据表,再结合表的描述字段,分析我们所需要的数据的位置。再用T-code SE16 验证下

SAP中找表-几种经典的方法 图5

SAP中找表-几种经典的方法 图6

SAP中找表-几种经典的方法 图7

3. 如果我们在第一步中,发现的是view,这种情况比较简单,我们可以通过T-code(操作代码,对应于系统的操作界面)SE11,进入ABAP Dictionary,查看这个View所关联的表:

SAP中找表-几种经典的方法 图8

我们可以看到在左边一栏,显示了这个View涉及到的table,右边显示的是这些table中那些字段进行了相互的连接(Join),这样我们就可以很方便的从这些table找到我们需要的数据。

SAP中找表-几种经典的方法 图8 SAP中找表-几种经典的方法 图9

4.经过前2步的操作,我们可以找到70%左右数据所在数据表的位置,但是有一部分数据,在后台隐藏的非常深,并不能够通过这些方法找到。对于这些数据,我们只有通过最原始的方式去查找,就是程序跟踪。SAP系统提供了两种跟踪的方法:

(1)在T-codeST05进行跟踪,这里跟踪的是系统所进行的所有SQL语言操作。我们首先激活跟踪器,然后进行一步关于所查找数据的操作,关闭跟踪器,最后显示跟踪列表。这里就可以看到在我们进行操作时,系统通过SQL语言进行的所有数据库操作,并显示SQL所设计到的表名,字段名,查询条件。我们可以根据相关的字段名,查询条件,筛选涉及到的数据表,从而判断数据在后台表中的位置。如果这种跟踪方法还不行,就只能通过代码级的跟踪了。

(2)代码跟踪的方法很简单,在进行业务的时候,输入/h打开中断,之后的业务操作就会直接进入代码跟踪器,一条一条的运行代码,这样可以很清楚的看到系统的逻辑。理论上,这种方法是肯定可以找到我们想要的数据表的。但是实际情况却并不如此,在大型的SAP系统中进行代码级的跟踪,谈何容易。由于系统的复杂性,可能一个操作涉及到的Function有几十个,涉及到的Table有上百个,涉及到的代码有上千行,从这里面找到我们需要的数据表,真的犹如大海捞针。就好像锋利的宝剑只有在真正的剑客手里才能显示出威力一样,代码跟踪这种方法也只有在真正的高手手里,才能真正发挥作用

ST05性能跟踪

实例:还是查找T-codeQS23界面的短文本字段对应的表格。

1、运行事务ST05,进入性能跟踪界面。

SAP中找表-几种经典的方法 图10

2、   运行事务QS23,进入选择屏幕界面,如下:

SAP中找表-几种经典的方法 图11

3、   这时再回到ST05,点击开始跟踪:

SAP中找表-几种经典的方法 图12

4、   进入QS23

SAP中找表-几种经典的方法 图13

5、   返回ST05,点击结束跟踪,之后点击跟踪列表,进入跟踪列表界面:

SAP中找表-几种经典的方法 图14

跟踪列表界面如下:

SAP中找表-几种经典的方法 图15

这个界面显示的就是刚刚对于QS23操作所涉及的所有数据库表信息,即QS23事务运行过程中屏幕上的数据来源,这里可以看到对象名一列所列的都是透明表名称,可以去SE11查看相关表格,对比过后,发现所需要的字段在表QPMT中,则QPMT即所需要的表。

四、通过SM12查看

实例:查找QS23所涉及到的表

由于事务QS23是可编辑状态,对于可编辑状态的事务,进入到屏幕之后系统会锁定相关的后台表,这样通过SM12就可以查看到该事务所对应的一些表了。

1、QS23进入屏幕

SAP中找表-几种经典的方法 图16

2、  SM12进入查看被锁定的对象

SAP中找表-几种经典的方法 图17

点击清单:

SAP中找表-几种经典的方法 图18

这里可以看到,对于刚刚进入QS23的操作,系统将表QPMK进行锁定,即QS23屏幕上某些字段是位于这个表中的,通过检验即可发现屏幕上的工厂、搜索字段等字段都是在表QPMK中。

但这个方法有些缺陷,就是不能将所有的表都罗列出来,例如前面的短文本所对应的表QPMT就不能通过这种方法查找到。

五、通过字段对应的搜索帮助进行查找

实例:查找QS23界面的等级特性字段所对应的表

1、进入QS23

SAP中找表-几种经典的方法 图19

2、  将光标定位于等级特性字段,按F4帮助

SAP中找表-几种经典的方法 图20

通过字段对比即可发现,QS23屏幕上的等级特性值即搜索帮助屏幕上的特征名称值。

3、将光标定位于搜索帮助屏幕上的特征名称,按F1帮助

SAP中找表-几种经典的方法 图21

可以发现字段ATNAM对应的表格为视图M_MERKB,进入视图M_MERKB,找到视图对应的基本数据库表,则字段肯定会在这几个基本表中的一个。

4、进入视图M_MERKB

SAP中找表-几种经典的方法 图22

可以发现视图M_MERKB有基本表CABN和CABNT联合而成,进一步查看这两个基本表,会在表CABN中发现需要的字段ATNAM。

SAP中找表-几种经典的方法 图23

即QS23屏幕上等级特性字段所在的表是CABN。

在SAP中找表,对于一般水平的顾问用的最好方法是将光标点在所要查找的字段上,按F1,如果是VIEW用SE11如果是结构就用ST05,当然有的是要有权限的。等等共有18种查表得方法

相关文章

联系我们

联系我们

130-0752-1773

在线咨询:点击这里给我发消息

邮件:info@sapzx.com

工作时间:周一至周五9:00-18:00,节假日正常休息

关注微信
关注微信
分享本页
返回顶部