ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

【SAP ABAP】3.Report程序

2026/10/1 2:42:57 拓冰建站 浏览量
【SAP ABAP】3.Report程序 目录一、事件流和form二、表连接三、增删改查一、事件流和form线性语言模块化语言perform封装事件流initializationat selection-screen, start-of-selection, end-of-selectionFrom:单独定义。Perform:实例化只有在这里调用了form才有效。只有写在form里的才是局部变量只属于这个form。跨事件的时候才需要用到全局变量。全局变量特别占空间让代码可读性变差。Form里不需要clear传入的参数因为每次进来的时候都会初始化除非在loop之前。C_IT_MASTER表示自己创建的表不是数据字典里的hana的写法left outer join左表是全的如果后边有where最后会用where做限定二、表连接能用inner join的时候就用效率比较高但只能两个表连接。for all entries in可以多表连接。建一个临时表在里边进行排序和删除排序什么就要根据什么进行删除。而且排序和删除的条件跟下边select的where条件相同。for all entries in的内表为空时相当于下边的条件失效会抽出所有数据。退避临时表排序删除判断非空select。有数值数据的时候所有主键都要取出来。不哟用select *性能差。and条件写在or条件之前。有orderby就可以不用sort。for all entries in表里数据不要太多最好只用用到的那些字段。三、增删改查内表增删改查文件有表头的时候才会用到根据索引删除。Read table with key读取相同键值的最新一条数据最上边那条数据。Read没有工作区查询看看表里有没有这条数据。数据库表增删改查CALL FUNCTION ENQUEUE_E_TABLE只有调用了这句话才能真正的锁住表。是对于表的锁操作数据库之后要解锁。实际的运用中有的是锁数据有的是锁整表这只是一种方式。commitrollback都有而且不只在数据库表中有。【sm12】查看哪个用户锁了哪个表。sy-subrc4表示操作失败。Loop at new at end统计相应条件下的数据条数。不太用。Loop at group推荐使用。