20170316 ABAP注意点
2024-08-30 08:00:17
1.debug 时在MODIFY db from table 后数据便提交了:
一般情况下,更新数据库需要commit,但debug会自动commit,程序结束也会自动commit。
2.使用at new, at first, at last, at end of的时候要注意:loop的时候不能加条件;at和endat之间不能使用loop into的working area。
使用At end of...ENDAT. 时要谨慎,容易出错;
使用 AT NEW f. 和 .AT END OF f 时需要注意:
1,f 必须是内表的第一个字段。
2,内表中f 之后的字段的值都会变成 *。
例: REPORT Z_TEST. DATA: BEGIN OF TH_LIFNR,
LIFNR TYPE LFA1-LIFNR,
ITEM TYPE C,
END OF TH_LIFNR. DATA: TD_LIFNR LIKE TABLE OF TH_LIFNR. SELECT LIFNR FROM EKKO
INTO TABLE TD_LIFNR
WHERE EBELN > 4500006374
AND EBELN < 4500006390. SORT TD_LIFNR ASCENDING BY LIFNR. LOOP AT TD_LIFNR INTO TH_LIFNR.
AT NEW LIFNR.
WRITE:/10 TH_LIFNR-LIFNR.
WRITE:/ 'The next is new lifnr.'.
ENDAT.
ENDLOOP.
3.关于内部表示和外部表示:调用BAPI和Update DB的时候,要使用内部形式
(物料号有前导零的时候被认为是内部形式;单位一般也有内部形式外部形式之分)。在se11浏览数据的时候,显示数据的画面是使用内部形式,当detail overview的时候,则是外部形式。
4.使用binary search之前,需要sort,并且sort by ascending(系统默认的顺序也是ascending)。而且read table with key的顺序同sort的顺序相同,否则出错,常会找不到纪录。Delete adjacent duplicates之前一定要sort。
最新文章
- .NET程序员细数Oracle与众不同的那些奇葩点
- gitlab使用个人版v16.11
- .net core 关键概念
- 其他浏览器(firefox,chrome)可以上网 ie(Internet Explorer)无法上网 解决方法
- iOS 学习笔记 二 (2015.02.26)
- 采用Asp.Net的Forms身份验证时,持久Cookie的过期时间会自动扩展
- Codeforces Good bye 2015 B. New Year and Old Property dfs 数位DP
- windows下Django 部署到Apache24的配置
- thread block grid
- 与众不同 windows phone (4) - Launcher(启动器)
- oracle中sql语句的优化
- Git之(五)远程管理
- GitHub 可以免费创建私人仓库啦
- boost学习目录
- Guitar Pro中如何添加与删除音轨
- eclipse版本对应名称以及下载地址
- [ZZ]39条更好的软件开发方法
- ES6标准入门之正则表达式的拓展
- springboot 中使用Druid 数据源提供数据库监控
- Linux strace命令 一