SAP系统18种查询标的方法.docx
《SAP系统18种查询标的方法.docx》由会员分享,可在线阅读,更多相关《SAP系统18种查询标的方法.docx(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、18 种依据屏幕字段查找数据库表数据的技巧帮助18 种依据屏幕字段查找潜在数据的技巧Dennis Barrett / 翻译:强晟 qiangshenggmail 想象一下这样的情景。一个业务经理期望得到一个关于她的效劳订单的专用报表,她给了你一个报表 的草图包括列、行、标题、分组、小计、合计等等,而“效劳治理”事务屏幕中的字段就包含了她期望你在报表中显示的数据。你该怎么做?通常的,你会检查系统中运行的,能够供给这个业务经理所需信息的现存报表或者 是已经为这个 client 写过的,或者可以复制和修改后能符合需要的报表。假设没有找到,你或许会在适当的报表系统例如,工厂维护信息系统PMIS中看看是
2、否能找到适宜的。即使这样,你仍旧无法找到报表,或者无法从现存报表中找到可修改的,那只能写一个报表或者一个 ABAP查询来实现这个需求。现在,设想一下业务经理问你是否以某种方式在创立计量单位文档事务中增加一个小小的功能: 向 MDoc 文本字段中粘贴相关销售订单号。这个要求需要你创立一个增加功能。在前面两个情形中, 你都需要访问数据库表中的特定数据。你怎么以屏幕字段做指导来找到这些数据?我们都知道与一 个事务关联的信息都存储在几个间或还会是很多个相关的表里。这样,当你需要在报表或增加 功能中使用一个事务中的几个字段时,你需要找出很多事务的表并在它们之间建立关联。这些关联 通常都不会很明显。我曾经
3、在众多场合遇到这些状况,有时需要同时在 SD、MM、IM、WM 和效劳治理现在叫客户效劳等模块对多个 client 进展工作。随着时间推移,我收集了同事和自己在开发中查找需要数据的建议。我现在来跟你共享这些技巧共 18 种。起跑线和终点线我将会介绍达本钱练习“终点线”的各种各样的技巧也就是说,定位那些在屏幕字段中存储潜在数据的表和字段。你未必需要全部这些方法,一般来说,前四种技巧已经足够了。我之所以写其 他的技巧是由于有些字段格外难以追踪,而这些工具或许可以解决问题。起点这套技巧的起点通常是技术信息屏幕,由于你可以从这里知道屏幕字段的名字,并且区分出这个潜 在数据对象是不是一个构造、视图或者表
4、。假设潜在数据对象是一个表,你的查找就完毕了。字段名称显示在技术信息屏幕中,还包括了表名 称,都是你需要的细节。假设数据对象是一个视图,只需要再点击一下就能得到表名称。假设数据 对象是个构造,你还不得不需要连续开掘表的名称。技巧一:检查技术信息屏幕我通常从事务屏幕中开头搜寻潜在数据对象如字段和数据字典对象的名字。假设想调出技术信 息屏幕,首先将光标定位在目标屏幕字段上,然后按 F1 或者点击按钮图标,这将翻开初始帮助屏幕,在这个帮助屏幕中,按 F9 或者点击技术信息按钮。图 1 在发行版 4.0B 中关于“售达方”字段的技术信息屏幕现在看一以下图一,它显示了在发行版 4.0B 中,创立标准销售
5、订单屏幕的售达方字段的技术信息屏幕。你可以看到,在“字段数据”块中,表名称是 KUAGV、字段名称是 KUNNR 注 1。在发行版 4.0B 和以前的版本中,这个屏幕把相关对象都称为“表”,而不管它是个表、视图还是构造。留意图二中,在 4.5B及以后版本中,提示你 KUAGV 实际上是个构造译注:在我们用的 ECC5 版中没有区分,SAP 又退化了,直到双击查看对象时才显示出来它是表、构造还是视图。图二 在发行版 4.5B 中关于“售达方”字段的技术信息屏幕注 1 这里的例子提及了在我的争论中找到的表、构造和字段的名字。你可能在一样的争论中觉察一个不同的名字 尤其是不同的构造名称。例如,在销售
6、订单初始屏幕中售达方字段可能是 KUAGV-KUNNR 或者 RV45S-KUNNR还可能是其他名字。我在文章中只写其中一个,但是假设你觉察了另外的名字也不必担忧。它是 R/3 系统持续改进的一个反映, 并不是至少我期望不是文档中的错误。在发行版 4.0B 和以前的版本中,为了确定一个对象是否是一个构造,你必需多经过几步。深入技术信息屏幕的表名字段,到数据字典屏幕查看对象译注: ECC5 也是这样。图三 发行版 4.0B 中数据字典屏幕显示的表“VBAK”,视图“VIVEDA”和构造“KUAGV”图三显示了表 VBAK、视图 VIVEDA、构造 KUAGV 的屏幕,在发行版 4.5 和 4.6
7、 中,相应的屏幕也格外类似。就像你看到的,对象类型在这些屏幕中格外简洁识别。假设潜在对象是一个表,你就相当轻松了。存储在那个表的字段的信息跟在技术信息屏幕中显示的 名字完全一样。成功!当你写报表、ABAP 查询或者增加功能程序的时候,你可以直接使用这些表和字段名来猎取数据。假设对象是一个视图,在字段信息列表中找到与技术信息屏幕显示一样名字的视图字段。看图四, 与视图字段关联的表和字段名就是你的目标。又成功了!图四 定位与“视图字段”关联的“表”和“字段名”假设对象是个构造,你还有很多挖掘工作要做,你必需执行下面描述的 17 个技巧中的一个或多个, 这些技巧的排列挨次有助于你以最少的步骤到达重点
8、。记住,当你觉察关联表的时候就完成了查找。 翻开图五中画的流程图,看看我对这些技巧使用挨次的建议。表、视图和构造一个屏幕字段关联着一个表、视图或构造。这些都是数据字典对象,但是只有表实际存储了数据。这 就是为什么全部这些技巧的最终目标都是要查找存储了你可以看到的在屏幕上显示的信息的表。表 视图 构造表存储数据。假设你的屏幕字段指向一个表,或者你可以从一个视图找到表,你就能找到数据的存储 地点,你也就到达了终点线!这个表名和字段名就是你的报表或查询中所需要的。视图在屏幕上用来连接一组表。假设字段在一个视图中,你可以直接深入找到它下面包含数据的表。 构造是包含字段但不存储数据的数据字典对象。构造在
9、数据字典中仅仅是变量定义的队列,就象一个 空表。假设屏幕字段在一个构造中,你需要连续查找。记住,只有表真正存储数据。图五 建议的技巧使用挨次向终点冲刺:技巧 2-13记住,本练习的终点或者说目标,是定位屏幕字段中对应的存储了潜在数据的表和字段名。从这一点来说,我们只知道潜在数据对象是一个构造。我在这一节中具体描述的技巧 2 至 13,很可能包含了答案。假设技巧 2 至 13 仍未找到结果,尝试技巧 14 至 18这是最终的手段了!我建议你在完全排解了其他可能性之后再去尝试这五种策略。假设这 18 种技巧都不奏效,你就是遇到了一个不同寻常的困难问题,我只能祝你好运。我期望你快速而轻松的找到你的表
10、。技巧二:文本字段图六 点击“维护长文本”按钮到达长文本屏幕假设屏幕标签是“短文本”,或者字段名是 STTXT,或者它的数据元素是 CO_STTXT,你就按图六所示去找文本字段的源头,短文本字段的后面通常紧接着一个“维护长文本”按钮,看上去象一张纸和一支笔,点击这个按钮翻开长文本屏幕。在 R/3 中文本存在各种地方,但是通常是表 STXH 和 STXL 中,分别是文本标题和文本行。它们的文本都以 raw例如,非 ASCII 码形态存储,所以你必需使用功能模块来取得它们。有几个功能模块来处理这些文本,包括 Read_Text,从数据库读文本行。在长文本屏幕,通过转到表头看图七 来访问你在执行功能
11、模块时需要的文本名称,文本 ID 和文本对象参数。图七 获得文本名称,文本 ID 和文本对象参数假设这个字段不是一个文本字段,你必需连续查找。 技巧三:“INCLUDE”表一个构造可能包含一个或多个 INCLUDEs。一个 INCLUDE 可能是一个实际的表或其他构造。所以假设你的工作构造包含了 INCLUDE,而这个 INCLUDE 是一个包含了你所需字段的表,就又成功了。 例如,在销售订单工程概览中,条件类型列出的是 KOMV-KSCHL,但是 KOMV 是一个构造。KOMV 包含了 INCLUDE KONV,它是一个包含了 KSCHL 字段的表。这个表和字段是你的目标,我们就不需要再做其
12、他的了。假设这个构造并不包含 INCLUDE,或者 INCLUDE 不是一个表,我们必需连续查找。你应当使用的下一个技巧在技巧四中说明,由于它简洁,并且很可能,将获得你的结果。技巧四:报表,查询,信息构造假设你知道 ABAP 查询,现存报表或者信息构造使用了你需要的字段,你可以挖掘它们来找到源表。在你开头查找以前,你可能觉察一个报表或查询没有供给那位业务经受所需的结果,但是它使用了你要找的字段。现在你可以从技术信息屏幕中获得字段名,你可以看看这些报表和查询是否已经替你找到了所需的字段。假设你在这些报表或查询中找到你的字段,你可以争论代码找到列出那个字段所使用的表,你将成功的完毕查找。假设在这里
13、还没有找到表和字段,你必需连续查找。技巧五在我们所知的这些方法中是一个强有力 的工具,常常可以找到结果。技巧五 调试观看点假设你在 4.0B 及以上版本中,想要马上深入了解,不妨直接从技术信息对话框中猎取程序名称在“屏幕数据”下,然后进展调试。到工具 ?ABAP 工作台 ABAP 编辑器 程序=输入程 序名称 调试。点击人物栏上的观看点按钮,在本地观看点字段中输入程序和字段名称,然后按回车或 F8。这些变量的变化都会触发观看点,马上把你引导到转变变量的下一行代码。认真读观看点上面的代码,你或许会觉察数据字典对象所在字段的名字。或许它仍旧可能是表、视图或者构造, 不过你已经格外接近了。译注:在
14、ECC5 中,已经不必这么麻烦了,程序运行到任何时候在事务码栏输入/h 就可以启动调试,不过对于标准程序来说,用此方法找到所需表和字段根本上是 Mission Impossible,标准程序的层次嵌套实在太多了,而且读写数据库根本上都是在函数中,要一层一层的追踪到函数,需要极大的急躁和毅力。Ken Greenwood21 天自学 ABAP/4的作者说,他常常在技术信息屏幕不显示表名称的时候马上使用此技巧。Ken 还提到这个技巧总能找到表只有使用 IMPORT 语句时是个例外。假设观看点没有被触发,就在 IMPORT 上再次用断点调试,这样最多只需要三步就能找到它。假设你无法在代码中找到你需要的
15、表,还必需连续查找,下一个简洁的方法就在技巧六中说明。你可能觉察一个报表或查询包含了你要找的字段。现在已经有了字段名,你可以看看 这些报表或查询看看是否已经替你找到了所需的字段。假设你在这些报表或查询中找 到了字段,你可以检查代码找到列出那个字段的表,你将成功的完毕查找。技巧六 值表假设调试无法给你想要的,或者你不想调试一个程序,就返回技术信息对话框,双击“字段数据” 下的数据元素字段。假设有值表的话,这样就会把值表显示出来。假设你只想找主数据,例如客户 名称字段名是 KUNNR值表通常都会被定义,它会给你想要的。你会觉察事务数据如订单数量字段名是 KWMENG没有值表,你得连续找。从下面开头
16、,技巧 7 至 13 对你找到表名都有类似的启迪作用,可以按任意挨次使用它们。你可能觉察自己比较宠爱某些方法赛过其他的,那就优先使用它们。译注:很圆满,在 ECC5 里面没有找到 Value Table,不知道它到底是个什么东西,有知道的朋友请跟我联系,感谢。技巧七 “所用处”数据元素当 R/3 把数据从一个表或构造移动到另一个中,它常常但也并非总是把它移动到与源字段有一样数据元素的一个目标字段中。从技术信息对话框中,双击“字段数据”下的数据元素字段, 然后点有用程序 所用处清单 表格字段 回车 参见图八。这将列出全部使用这个数据元素的表、视图和构造。假设你的字段是常常使用的,这个列表会格外浩
17、大而难以找到数据存储位置。例如,在 4.0B 版中 KUNNR 字段会列处 743 个对象。一个不常用的字段会列出很少的对象,你可以从列表中找出数据源。假设调试没能给你想要的或者你不想调试一个程序,就返回技术信息对话框,双击“数 据字段”下的数据元素字段。假设有值表的话,就会把值表显示出来。还需要留意,这个列表中也包括了构造,有时候还有很多个构造,当你在列表中查找时,你将会看 到表显示为构造或者透亮表,假设这是个构造,你还要连续找。译注:固然你肯定也看到了,在查看所用处清单时,会让你选择在哪些数据对象中查找,完全可 以不选择构造,这样出来的就都是表了。图八 4.0B 版中的“所用处清单数据元素
18、”恳求屏幕技巧八 “Z_DATA_ELEMENT”由于一个数据元素的“所用处”清单常常包含了太多不包含数据的构造,这个清单并不格外好 用。看看图九,它包含了 77 个提示项。图九 数据元素“所用处”清单你可以创立数据字典视图 Z_DATA_ELEMENT,它只显示使用了你的数据元素的数据表。使用工具 ABAP 工作台 字典 对象名称=Z_DATA_ELEMENT 视图 创立 来创立视图,然后输入图 10 中显示的数据。使用工具 工具 ABAP 工作台 字典 对象名称=Z_DATA_ELEMENT 视图 显示- 使用程序 显示数据或表内容 DATA_ELEM=你要找的数据元素的名称 执行或按 F
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SAP 系统 18 查询 标的 方法
限制150内