ABAP SAT使用说明

SAT简介

SAT是SAP提供的用来替代SE30的程序性能优化分析工具( runtime analysis),功能比SE30更加强大。

  1. 创建SAT变式-设置SAT运行属性,默认为default,可以参照创建一个自己的变式。
    在这里插入图片描述

  2. SAT变式说明
    Size Limits
    设置文件最大容量和最大SAT运行时间等信息.
    Aggregation:
    None选项:选择这个,只会把程序中的调用显示出来,一般用None就够用了。
    Per Call Position:系统调用也会显示在hit list中。
    Options
    Explicit Switching On and Off of Measurement:勾上这个选项,意味着:

  3. SAT可以通过程序中的SET RUN TIME ANALYZER {ON|OFF} 启动和结束

  4. 通过命令栏中的“/ron” (trace on)和 “/roff ” (trace off)控制

  5. 通过菜单System -> Utilities -> Runtime Analysis -> Switch On / Switch Off.
    Statements:
    可以选择需要跟踪的abap语句。
    Program Part:
    可以设置SAT跟踪的范围

  6. 指定SAT监控入口
    根据需要监控事务、程序或者函数。
    在这里插入图片描述

  7. 指定工作进程
    In parallel session
    可以用来跟踪后台job(background job)
    在这里插入图片描述
    左边这个按钮代表终止SAT跟踪,右边这个按钮代表启动SAT跟踪。

  8. 设置后台监控SAT
    在这里插入图片描述
    意思是在16:20之前跟踪事务SE38,最多跟踪3次。
    已调度测量的最大次数:在统计时间有效期内,最多记录的性能跟踪次数。
    Expiration Date ,Run time:统计时间有效期。

  9. 内表命名规则
    在这里插入图片描述
    按F1键查看官方说明:翻译过来就是老的SE30中,只有命名为IT开始的内表才会被SE30识别为内表,勾上这个checkbox后,就不受IT这个前缀限制了,只要是内表都会被SAT识别。

  10. 查看SAT结果文件
    选择Evaluate tab页
    在这里插入图片描述

  • Desktop1:左面是profile tool窗口,右边是hit list屏幕。
  • Hit List:列出所有的跟踪结果,双击某行能跳转到源代码处。
  • DB tables:展现各个SQL的运行时间。
  • Profl.:将SAT的跟踪结果多维度的展现(function,subroutines,rfc,SQl,screen,甚至是底层的SQL操作-DB open,DB fetch。。。)。当点击对应的节点,就可以看到对应的hit lit。
  • Times:按照abap执行的语句(Statement)和触发的事件(EVENT)的顺序展现跟踪结果。
  1. Hit List
    在这里插入图片描述
  • Hits:被调用次数。
  • Gross:该语句,子程序以及被其调用的子程序,语句所消耗的时间。(以微秒记)
  • Gross[%]:该语句,子程序以及被其调用的子程序,语句所消耗的时间。(以微秒记)
  • Net:该语句,子程序不包括被其调用的子程序,语句的消耗时间。(以微秒记)
  • Net[%]:该语句,子程序不包括被其调用的子程序,语句的消耗时间。(以微秒记)
  • Program called:被调用程序
  • Calling Program:主程序
  1. 使用技巧-善用过滤
    在这里插入图片描述
    在这里插入图片描述
<think>好的,用户的问题是关于如何在ABAP中编辑和保存源代码。首先,我需要明确ABAP作为SAP系统的编程语言,其源代码的修改通常受系统权限和定制化要求的限制。用户可能想知道标准流程,但需要注意的是直接修改标准代码通常不被允许,而是通过增强机制来实现。 根据提供的引用,特别是引用[1],提到增强点允许开发者插入自定义代码,这些代码与标准代码解耦,单独存储,并在运行时共同执行。这提示用户可能需要使用增强而不是直接修改源代码。此外,引用[4]提到通过SPRO事务码进入IMG界面查找用户出口,这可能与查找增强点有关。 接下来,我需要考虑用户可能的实际需求。用户可能希望了解合法的修改方式,比如使用增强、BADI或者用户出口,而不是直接修改标准程序。因此,回答需要分步骤说明标准方法和替代方法,同时强调遵循SAP的最佳实践,避免直接修改标准代码。 还要注意用户提到的编辑和保存源代码的具体操作,这可能涉及SE38或SE80事务码,这些是ABAP开发常用的工具。需要详细说明如何使用这些事务码创建或修改程序,激活更改,以及测试的步骤。 此外,用户可能不了解增强机制的重要性,需要解释为什么直接修改标准代码不可取,比如升级时会被覆盖,而增强可以保持代码的独立性。引用[1]中的例子“销售订单检查增强”可以作为具体案例来加强说明。 最后,生成相关问题时要围绕ABAP开发的其他方面,如调试、性能优化、增强类型等,帮助用户扩展知识。</think>在ABAP中修改源代码需遵循特定规范,主要分为标准程序修改和自定义开发两种场景。以下为具体操作步骤及注意事项: **一、标准程序修改(需谨慎)** 1. **创建修改请求**:通过事务码$SE80$进入开发导航器,选择程序后右键点击"创建修正请求"[^4] 2. **代码编辑**: ```abap REPORT ZEXAMPLE. * 标准代码增强示例 DATA(lv_total) = 100. *<<增强点>> ZENHANCE_SALES_ORDER WRITE:/ '修改后的输出'. ``` 3. **增强点插入**:通过事务码$SPRO$查找用户出口,右键选择"插入增强"添加自定义逻辑[^1] **二、自定义开发流程** 1. **新建程序**: - 事务码$SE38$输入程序名(以Z/Y开头) - 使用ABAP编辑器编写代码: ```abap REPORT ZMY_REPORT. WRITE 'Hello SAP'. ``` 2. **语法检查**:按$F2$键验证语法 3. **激活保存**:$Ctrl+F3$激活对象,系统自动生成激活版本 **三、修改验证方法** - 使用事务码$SAT$进行性能追踪 - 通过$ST05$进行SQL跟踪优化查询语句[^2] - 调试时在消息断点填入参数定位问题代码[^3] **注意事项**: 1. 标准程序修改需申请Access Key 2. 建议使用增强实施(User Exit/BAdI)替代直接修改 3. 修改后的程序升级时可能被覆盖,需记录变更日志
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值