SAPQuery应用.docx

上传人:罗晋 文档编号:10691924 上传时间:2021-05-31 格式:DOCX 页数:16 大小:22.56KB
返回 下载 相关 举报
SAPQuery应用.docx_第1页
第1页 / 共16页
SAPQuery应用.docx_第2页
第2页 / 共16页
SAPQuery应用.docx_第3页
第3页 / 共16页
SAPQuery应用.docx_第4页
第4页 / 共16页
SAPQuery应用.docx_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《SAPQuery应用.docx》由会员分享,可在线阅读,更多相关《SAPQuery应用.docx(16页珍藏版)》请在三一文库上搜索。

1、SAPQuery 应用 (2009-02-0910:38:35)QUERY 是 SAP 的一项简单报表工具, 它可为没有编程基础的用户用来生成简单的报表。 第一次接触 QUERY 的时候,感觉也不是很复杂,因为它有图形化的界面,你可在上面托托拽拽,然后就可以见到你要的报表,可是这只是简单的应用,其实每个工具功能都是比较完善的, QUERY也不例外。要全面的理解QUERY ,首先看一下QUICKVIWER 。事务代码: SQVI 。我感觉这是QUERY 的一个简化,大体流程基本一致,但是在许多方面的功能都“缩水“了。体现如下:1 。 QuickViewer所生成的报表是用户自定义的报表,只能由此

2、用户自己使用、维护2 。 QuickViewer只能使用存于数据库内的数据,不能进行计算(除小计、累计)3。提供与SAP 内部工具如 EIS, ABC , ALV 及外部工具如 Word , Excel 借口4 。无须也无法利用用户组、Functionalarea 统一管理5。无法传输比较而言, QUERY 就比较完善了,可是做起来也比较麻烦一下:1 。生成用户组SAP菜单-工具fABAP作台-实用程序-叠A曰用户组T-Code : SQ032 。创建 Functionalarea (功能区)SAP菜单-工具-ABAP作台-实用程序-查Q信息集T-Code : SQ023 。创建SAPQuer

3、ySAP菜单工具fABAP作台实用程序-叠A曰查询T-Code : SQ01这些组件之间的关系有:1 。 Query 的管理包括建立 Functionalarea (功能区)和UserGroup (用户组),并将功能区分配到相应的用户组中去。2 。 Functionalarea (功能区)中定义query 中需引用的表和字段。3 。只有当一个用户属于至少一个用户组才可以创建、运行Queries 。一个用户可以属于几个用户组。用户组中的用户享有相同的权力。4 。当 Functionalarea (功能区)分配给了某用户组,该用户组的成员即可以访问此功能区。SAPquery 应用指南SAPQuer

4、y 操作手册QUERY是SAP提供的方便无编程基础用户的报表工具,使用图形化的界面, 让用户托托拽拽就能轻松完成报表编写。Query 的操作简单,包括建立用户组、建立信息集和建立查询报表,分别对应 Tcode: SQ01/SQ02/SQ03, 下面以资产全息查询报表的建立介绍 Query 操作的完 整理步骤。一建立 Query 用户组 (Tcode:SQ03)如上图,你可能为各个模块建立查询报表,这些报表和SAPTcode 一样需要进行权限控制。1 . 走菜单环境- 查询区域可选择查询的工作区,标准区域表示特定client( 译成客户真是有才),全局区域则表示该用户组是跨client 端的 ,

5、大家知道同一SAPServer可允许多个client 存在,象标准的 ABAP 程序就是跨client 的, SAP 已经为各模块预制了很多跨Client 的查询 ,资产查询比较多,此处选择特定client, 特定 client 查询不会连接到SAP 工作台组织器( WorkbenchOrganizer ) ,可使用程序RSAQR3TR 进行传输。2 . 传输用户组, 调用程序 RSAQR3TR , 也可以直接使用 SE38 执行 RSAQR3TR 传 输,稍后详细介绍如何传输。3 . 建立用户组名为ZFICO 。4 . 将用户组分配到SAP 用户 ,比如将需要使用查询的财务关键用户和最终用户

6、的SAP 用户帐号分配到该用户组。二建立信息集(Tcode:SQ02)信息集是数据集的特定视图 ,数据集主要来自多表连接或逻辑数据库,建立信息集如下图 :1 .假设建立信息集ZFIAM001, 建立信息集时,用户可自由选择基于表还是基于逻辑数据库 ,本例使用到资产相关表格 ANLA,ANLB,ANLC,ANLU,ALNZ 共5 个表。23.按“角色/用户组分配”按钮将信息集分配到用户组ZFICO,你可将一个信息集分配给多个用户组,比如投资项目管理组用户也希望看到该资产查询。到此,信息集-Query 用户组 -SAP 用户就关联起来了。介绍一下信息集的详细建立步骤,分abc 三个步骤:a 添加信

7、息集Table新建信息集ZFIAM001的数据源选择”使用基础表进行表连接ANLC&入表进入后到下图 :12. 按此图标添加表,新增表ANLA,ANLB,ANLU,ANLZ, 系统自动形成表间的连接,注意添加表不能添加象BSEG一样的簇表。*从数据存储角度, SAPtable 分透明表 (TransparentTable) ,簇表 (Clustertable)和池表/ 共享表(Poolertable).3. 你还可以使用别名表,当一个查询重复用到同一个表时,可使用别名表。表表之间的连接分两种 :内部连接和左外连接,熟悉数据库的一定对此非常了解,将各表的连接条件接下来,点击”信息集合”按钮正式建

8、立信息集,如下图,进入步骤 b 。b. 建立信息集1 . 按此按钮正式生成一个信息集。2 . 按“附加”按钮可增加附加Table 和字段,有人问,在此附加Table 和上一步的添加信息集表有什么不同呢?在添加信息集表时实际上各表是存在关联关系的,如果需要从某个不大能相互关联的表中取得一个字段,例如,需要取资产购置的供应商名称,那么可以将供应商表LFA1 作为附加表,通过资产主数据表ANLA-LIFNR查找 LFA1-NAME1, 当然,也可直接使用附加字段,然后通过代码获取供应商名称。3 . 在 Query 中允许增加ABAP 代码,当存在附加表和附加字段时尤其重要。4 . 假设新增了以下几个

9、字段, 其中包括本年已提折旧, 年初累计折旧和当前累计折旧 (当前累计折旧= 本年已提折旧 + 年初累计折旧);本年已提减值,年初累计减值和当前累计减值(当前累计减值= 本年已提减值+ 年初累计减值)等。5 . 信息集的字段组和每个字段组的数据字段, 在建立信息集时系统会提示如下图的三个选择, 选择包括所有表字段, 则信息集将包含所有的表的所有字段, 实际上,查询并不涉及所有表的所有字段,因此 ,通常人们会选择”创建空字段组”, 系统默认为每个表建立一个默认不包括任何表字段的空字段组,然后 ,由创建者自行添加各表所需字段。* 有的人还可能喜欢将所有的默认空字段组删除, 另外只建立一个空字段组包

10、括所有的查询所需字段,如果设计表较多,本人不大推崇此法。依次将各表所需字段添加到对应字段组,并将附加字段全部填加到附加字段组。6 . 按“连接”可回到步骤 a 去修改表连接或新增表。C.为附加字段添加代码如下图 ,除了自定义代码,你还可在“选择”屏自定义选屏字段。自定义代码如下表,注意代码部分”选择的是 5记录处理“,在这里编写代码可以使用信息集中的任何表来编写逻辑:ZCDL=ANLA-GDLGRP(2).”资产大类ZCEL=ANLA-GDLGRP(4).” 资产小类IFANLB-AFABE04.04表示税务折旧BNZJ=ANLC-NAFAG+ANLC-SAFAG.NCZJ=ANLC-KNAF

11、A+ANLC-KSAFA.ZCLJZJ=NCZJ+BNZJ.BNJZ=ANLC-AAFAG.NCJZ=ANLC-KAAFA.ZCLJJZ=BNJZ+NCJZ.ENDIF.ZCYZ=ANLC-KANSW+ANLC-ANSWL.编写代码完毕后,就可以生成信息集了 注意下列表ANLC的以下几个字段:*ANLC-NAFAG:记帐在当前年的正常折旧(本年计提累计数)*ANLC-SAFAG:在当前财会年度中的记帐的特别折旧(本年计提累计数)*ANLC-AAFAG:有关年的计划外折旧记帐(本年计提累计数)*ANLC-KNAFA:累计正常折旧(年初累计数)*ANLC-KSAFA:累计特殊折旧(年初累计数)*A

12、NLC-KAAFA:累积计划外折旧(年初累计数)SAP的折旧包括普通的正常折旧和两种手工折旧:特殊折旧和计划外折旧,ANLC类似资产的价值汇总表,类似FI模块的GLT0,在设计上,SAP将资产的各种价值分成了年初(累计)数和本年累计数,因此有下列公式:当前累计折旧=本年已提折旧+年初累计折旧(包括正常折旧和特殊折旧)当前累计减值=本年已提减值+年初累计减值(指计划外折旧部分)采用资产重估实现减值的企业,则当前累计折旧包括正常折旧、 特殊折旧和计划外折旧三部分,资产减值对应到其它值字段。特别需要指出的是:假设使用计划外折旧做资产减值,如果发生过减值,则Tcode:ABST2FI-AA财务资产模块

13、将出现差异,也就说,财务角度的累计折旧值(类似总帐)和资产模块的累计折旧(类似明细帐)必定对不上,因为ABST2默认AA的累计折旧包括正常折旧、特殊折旧和计划外折旧3部分,如果没有其它情况,FI-AA的差异恰好就 是减值部分。认识资产价值浏览器(Tcode:AW01N),如下图:1 .资产浏览器中,将资产价值分为计划价值和实际过帐值,计划价浏览时的会计年度 可选择上线初年度直到资产折旧完毕的年度;这样可以预测出未来的折旧值,实 务中很有意义,比如与投资管理模块和获利分析模块(计划版本)结合,可以预测出 未来会计年度的折旧费用,从而计算出RoI。而实际过帐值只能选上线初年度直到本年度,这个非常好

14、理解,假设是2008年12 期,过帐值是不能显示2009年度的价值,直到你做了资产年结(Tcode:AJRW/AJAB),资产年度的一大作用就是,将上年的价值作为下年的年初 值,这点类似F.16/F.07年结,只不过是,每个资产在一会计年度的每个折旧范围只 在ANLC中保留一条记录,并不是按期间保留的。2 .资产的各种价值:APC原值,三种折旧值,增记,价值调整和帐面净值,后面还有预付 定金和资产残值。固定资产通常有以下三种计价方法:(i)原始价值(ii)重置价值(重新评估,可增值或减值,评估减值和计提减值应有区别)(iii)净值或折余价值国内资产负债表上有以下公式:固定资产净值(折余价值尸固

15、定资产原始价值或重置价值-累计折旧固定资产净额=固定资产原价-累计折旧-固定资产减值准备显然,SAP将资产价值管理区分的更细,注意一下,”会计年度开始”列表示上年 累计也即本年年初数,“更改”列表示本年累计数。常规折旧行的“更改”数为9167.43元(2008年全年的计划正常折旧额,对应字段ANLC-NAFAP )。再看实际过帐屏,常规折旧行的“更改”实际数为1527.90元(2008年1-2月实 际正常折旧过帐金额,对应字段ANLC-NAFAG ),这是2008当年的折旧实际过帐 值,正好是1-2月的折旧,如下图。SE16查看表结果如下,可以发现一项资产在每个会计年度每个折旧范围有一条 记录

16、。关于资产价值表ANLC字段多多,读者可以仔细去研究一番,现在举一个业务 实例来说明如何处理ANLC的相关价值字段。业务背景:2006年月,资产模块“固定资产减值准备”1954胡加00项资产上时方向错误,应为负数但错误地导入为正数!?导致FI与AA数据不符(Tcode :ABST2 检查)。原因分析:资产期初数据导入大家都喜欢使用两个 Tcode:AS91/OASV,此处就不细讲,下图是AS91输入接管价值的画面。1 .累计购置价值即资产的原值。2 .3个累计折旧实际上表示年初数(或上线初的,如果是年中上线)累计折旧。3 .已记一般折旧表示本年度已提折旧。从上图中,可以看到初始净值为 8680

17、 ,怎么计算出来的呢? AW01N看一下该资产的价值,如下图现在可能你有一个问题,为什么在接管价值中3个折旧都是输入正值,为了只有 累计折旧反而成了负数呢?为了解答这个问题,首先看一下关于折旧方式的配置,如下图:(Tcode:OABN/OABS/OABU)。现在可以发现,对于普通折旧,是“仅允许负值和零值”的,系统默认的,也就是说,正常的折旧只能是负值,这里的负值是相对于资产的整体价值而言, 正常的累计折旧只能减少资产价值(所以叫负值似乎很怪异),实务中也非常好理解,而且正常的折旧(Tcode:AFAB)也绝对不允许冲销,所以最后一定这样设置,设置了 “仅允许负 值和零值”,在接管价值中无论如

18、何输入(实际上只能输入一正值,这样引起了 混淆),在AW01N资产价值中它又只能是作为负数,冲减资产价值。对于特殊折旧,是“允许的所有值”,输入正数后,因为允许所有值,则反映在资产价值上它就真的作为正值去增加资产价值,如果输入负数,则反映在资产价值上减少资产价值。对于计划外折旧,如果设置的是“允许的所有值”,它输入正值,则反映在资产 价值上就真的是正值,增加了资产价值,如果设置的是“仅允许负值和零值”, 则反映在资产价值上一定是减少资产价值。现在根本原因找到,也就是说,使用计划外折旧做资产减值,并且计划外折旧折 旧范围过帐选择的是“允许的所有值”,输入正值后才造成本来该减值的东西变 成增加资产

19、价值。普通折旧可设置”仅允许负值和零值”,特殊折旧是用来调整折旧的,所以它必 须允许所有值,对于计划外折旧,我们知道新准则规定:固定资产减值不允许转 回,设置”仅允许负值和零值”不正好防止计提资产减值准备计提反了吗?理论 上是,我于是如此这般设置了,不久,有家企业打电话过来,他家很多资产计提 了减值准备,但审计说不合理,现在要冲销,哈哈,因为设置了 “仅允许负值和 零值”,冲销不可以做,自找麻烦,哎,还是允许所有值好!也就是说,OABN/OABS/OABU 都是针对折旧对资产总价值的递增(仅允许正值, 折旧只能递增资产价值,如在建工程转暂估资产,等在建工程完毕后发现暂估资 产高估,则使用特殊折

20、旧来减少折旧,也就是资产价值增加 )/递减(仅允许负值, 折旧只能递减资产价值,比如已折旧的暂估资产低估,在建工程完毕后再转资则 需要补提折旧,也就是资产价值减少)的。处理方案:I .修改计划外折旧,设置的是“允许的所有值”,II.如果必要,修改ANLC表从2006到当年的2008的计划外折旧(减值)字段,资 产年结已将资产减值作为年初数分别带到 2007和2008。如何设置报表按月查询折旧?单个资产涉及的主要表格分两类:一是资产主数据,一是资产业务数据。单个资产主数据相关表格(主数据):ANEA:比例值的资产行项目ANLA :资产主记录段ANLB :折旧期限ANLC :资产值字段ANLH :

21、主资产号ANLZ :时间相关资产分配资产凭证/会计凭证(业务数据):ANEK:凭证抬头资产过帐ANEP:资产行项目BKPF:会计凭证抬头BSEG:会计凭证行项目思路:ANLC再力口 ANEK/ANEP,ANEK/ANEP 纪录了资产每个月的折旧情况。三,建立查询(Tcode:SQ03)建立查询首先按下图1选择一用户组,然后按2创建,选择该用户组下的信息集ZFIAM001(注意用户组下可针对各模块建立多个信息集),建立查询也叫ZFIAM001(可以针对一个信息集根据不同需求建立多个查询 )。一直接到选择字段屏幕,表示将该查询将从信息集中选择这些字段内容,如上图, 然后再按,进入下图。1 .选择字

22、段前面打勾,表示查询将使用这些字段做屏幕选择,并且给这些屏幕选择字段设置排序位置,如业务范围为1 ,则表示为选择屏幕的第一个选屏条件字 段。2 .接下来选择“基本清单”标志,为查询选择显示的字段,见下图。基本清单实际上设置查询结果的显示格式。1 .选种表示查询结果将显示这些字段内容。2 .到此,可以选择测试按钮测试 sapquery 了,测试出现的选择屏幕如下图,注意业务范围正是第1个选择字段。如果各步骤正确,运行就能得到正确的查询 结果!Tcode(Tcode:SE93)首先 ,走菜单查询- 其他功能 - 生成程序,然后显示报表名称。SE93,建立Tcode:ZFIAM001,开始对象如下图

23、选择.进入下图:1 . 输入查询 ZFIAM001 对应的自动程序名称。2 . 输入开发类,为该Tcode 产生一个传输请求,可以传输到生产系统。3 . 测试一下,结果和直接使用 sq01 运行查询 ZFIAM001 一样。关于 SAPquery 的几个总结:A sq03 建立用户组,一个用户组query 可包含多个sap 登录用户 ,一个 sap 用户也可被分配到多个Sapquery 用户组。B sq02 建立 query 信息集,一个信息集可以分配给多个用户组或角色,一个信息集通常是从多个相互连接的表或逻辑数据库中取数,信息集从这些关联表中获取字段或自定义附加字段。C.sq03 建立查询,一个信息集可根据需要建立多个查询,查询的字段从信息集获取。想象一下,信息集涉及10 个数据库表,每个表250 个字段,信息集从各表中选择出250个常用字段,而查询1只用到其中25个字段,查询2,查询 全部用到信息集的 250 字段 .

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1