- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
报表工具——扩展
默认情况下,Infoset 以 PNP/PCH 逻辑数据库作为数据源,包括 Infotype 的所有字段。但当
我们需要输出字段不是直接从 Infotype 中 获得时就需要制作扩展字段。典型的场景有输出
计算字段,比如员工年龄,需要用当前日期减去员工生日;输出组织相关字段,比如员工的
行政级别是维护在组织单 元上的;输出自定义数据表的字段;甚至是工资/考勤结果表的工
资项。
使用 Infotype 增强字段
对于标准 Infotype 或者客户化的 Infotype,我们都可以制作增强字段。具体方法可以 google
到,这里就不重复。每当 Infotype 的 段更新后,Infoset 也会更新。这种方法制作扩展
段很简单,但是并不是所有字段都应该存储在 Infotype 中,这样会浪费存储空间。而且每增
加个 字段都要改动 Infotype 的数据结构
事务代码 SQ02 ,选择一个 Infoset,进入修改界面,转到‘ 附加’tab 页。选择一个信息类型,
再点击新建,可以增加附加字段。步骤按照下图:
定义附加字段的数据类型、文本/ b) G8 {! b7 j Z p; G$ |
第 1 页第 1 页
报表工具——扩展
a 转到‘代码’tab 页,为附加字段编写取数逻辑的 ABAP 代码。
2011-3-24 17:09:05 上传
最终效果如下,第 2 列是标准字段,第 3 列是自己做的附加字段。
3.使用 Infotype 查询字段
查询字段与附加字段输出效果一样,区别是查询字段可以作为选择条件出现在选择屏幕上,
而附加字段不可
z 查询字段的配置方法可以参考 I
第 2 页第 2 页
报表工具——扩展
2011-3-24 17:09:53 上传
主要步骤是:
(1)增加 CI_Pnnnn_AF 结构
(2 )拷贝标准 RPAQ_GET_AF_nnnn 函数(SE37 ),然后增加查询字段的取数的 ABAP 代码
传
O1 T (3 )从 IMG 转到 SQ02 ,要手动把新的查询字段更新到 Infoset。菜单路径如下:
第 3 页第 3 页
报表工具——扩展
i 2011-3-24
17:10:25 上传
# j/ M7 s ]$ p 完成后的效果,可以看到查询字段是可以作为选择条件的:
第 4 页第 4 页
报表工具——扩展
4.使用 SAP Query 的局部字段
局部字段顾名思义只能在一个 Query 使用的字段。
在 SQ01 的菜单路径
2011-3-24 17:11:01 上传
/ i2 g |)Y0 W 局部字段的取数逻辑只能编写计算公式,而不是 ABAP 代码。以计算员工年龄
为例,ZBIRTH 是 P0002-GBDAT 在 Query 中的短名称,计算公式如下:;
第 5 页第 5 页
报表工具——扩展
2011-3-24 17:11:19 上传
最终效果如下
2011-3-24 17:03:33 上传
第 6 页第 6 页
报表工具——扩展
总结
本文使用员工生日计算员工年龄的场景,介绍了 4 种不同的实现方法。非常佩服 SAP 做底
层架构的能力,为顾问提供如此多的
文档评论(0)