`

abap 动态创建Subroutine以及report(转载)

    博客分类:
  • sap
阅读更多
创建子程序
DATA:
code type TABLE OF string,
subrtnm(10) type c,
prog type program,
msg(20) type c,
line(10) type c,
word(10) type c,
off(3) type c,
lw_string type string.
" for concatenate

* prepare the ”Dynamic Subroutine sentence”
append 'PROGRAM SUBPOOL.' to code.

subrtnm = 'TEST'.
CONCATENATE 'FORM' subrtnm '.' into lw_string SEPARATED BY space.
"CONCATENATE ’FORM’ ’TEST’ ’.’ into lw_string SEPARATED BY space.
APPEND lw_string to code.

append 'Write:/10 ''This is one transient subroutine''.' to code.

APPEND 'ENDFORM.' to code.

* create subroutine dynamically
GENERATE SUBROUTINE POOL code NAME prog MESSAGE msg LINE line WORD  word OFFSET off. ”生成子程序
IF sy-subrc <> 0 .
  write:/ 'Error occurs in line:',line,
  / msg,
  /'Word:', word,
  / 'Offset:', off.
ENDIF.


创建report
DATA:
code type TABLE OF string,
prgnm(10) type c,
lw_string type string.
" for concatenate

prgnm = 'ZTEST_SUB'.
* form the dynamic-program
CONCATENATE 'PROGRAM' prgnm '.' INTO lw_string SEPARATED BY space.
APPEND lw_string to code.

APPEND 'WRITE:/10 ''Hello, this is the transient program!''.' to code.

INSERT REPORT prgnm from code."从内表code里面生成report

* call the transiet program
SUBMIT (prgnm) AND RETURN."执行程序

* append the transient program
READ REPORT prgnm into code.
APPEND 'WRITE:/10 ''Hello, this is the transient program! 2nd Time append.''.'
to code.
INSERT REPORT prgnm from code.

"GENERATE REPORT prgnm.

* call the transiet program
SUBMIT (prgnm) AND RETURN.

原文地址:http://scnblogs.techweb.com.cn/tcsapbw/archives/368.html
分享到:
评论

相关推荐

    ABAP动态内表使用的例子

    在ABAP中,创建动态内表的第一步是定义其结构。通常情况下,我们会为内表的所有列定义字符型数据类型。这是因为字符型数据类型的通用性较强,可以存储各种形式的信息。 **代码示例:** ```abap TYPES: BEGIN OF ...

    sap_ABAP-动态内表

    SAP ABAP 动态内表详解 SAP ABAP 中的动态内表是一种特殊的内表结构,它可以根据实际情况动态地生成和赋值。本文将详细介绍动态内表的创建、赋值和读取显示。 动态内表的创建 动态内表的创建主要分为两步:首先...

    SAP ABAP动态内表构建与例子

    在SAP ABAP中,创建动态内表通常涉及到以下几个步骤: 1. **定义表类型**:动态内表的表类型不是固定的,而是由一个结构变量(如DATA(lt_fieldname))来表示。这个结构变量通常包含字段描述符,如字段名称、长度、...

    ABAP批量创建元素程序

    - 创建元素:数据元素是ABAP数据字典的基本构建块,它们定义了数据的结构和类型,比如字符、整数或日期。程序会根据输入的数据创建这些元素。 - 创建域:域是数据元素的实例,它定义了数据的特定值范围和格式。程序...

    ABAP动态内表的收集

    - 使用`cl_abap_tabledescr`类创建动态内表的描述符,并通过`cl_abap_table_descr=&gt;create`方法生成内表。 在进行动态更新时,需要注意以下要点: - 当使用`MODIFY`语句时,确保更新的字段不是系统表的关键字段。...

    ABAP SQL 语句 动态 操作

    程序可能还涉及动态执行ABAP源代码,例如,创建包含SQL语句的临时程序(`ZPROG`和`ZINCLUDE`),然后调用这些程序来执行SQL。这种方式在处理复杂的动态逻辑时非常有用,但也需要谨慎,因为不正确的代码执行可能导致...

    ABAP动态开发示例

    在进行此类开发时,理解ABAP的数据类型、数据对象(如内部表和结构体)、动态编程技术(如DATA声明和MODIFY语句),以及搜索帮助的实现机制至关重要。同时,ALV(ABAP List Viewer)也可能在这个示例中用于展示和...

    ABAP BP创建角色程序示例以及更新信用数据示例(调用方法类).txt

    ABAP BP创建角色程序示例以及更新信用数据示例(调用方法类),以上程序是使用方法类,可参考参数以及类方法后直接调用

    SAP ABAP动态内表总结

    不知道为什么,被加密了。 重新再发另外一份! type-pools: slis....field-symbols: &lt;dyn_table&gt; type standard table, ” 内表结构 , ” 表头 &lt;dyn_field&gt;....data: dy_table type ref to data, ...

    SAP ABAP 动态语句详解

    SAP ABAP 动态语句详解 SAP ABAP 动态语句是 ABAP 编程语言中的一种特殊语句,用于在运行时动态地分配数据对象给字段符号。字段符号是指向数据对象的指针,通过使用 ASSIGN 语句可以将数据对象分配给字段符号。 ...

    abap 面向对象编程方法-CLASS创建 step by step

    ### ABAP面向对象编程方法——CLASS创建 step by step #### 概述 本文档将详细介绍如何在ABAP环境中创建一个面向对象的类,并通过逐步演示的方式帮助读者理解整个过程。面向对象编程(Object-Oriented Programming,...

    ABAP动态生成经典应用之Dynamic+SQL+Excute+程序

    本文将深入探讨如何利用ABAP动态生成SQL Execute程序,以及其背后的开发技术和注意事项。 首先,我们要明白动态SQL生成的基本原理。在ABAP中,可以使用DATA声明和CONCATENATE函数来构建SQL字符串。例如,如果有一个...

    ABAP 动态内表ABAP 动态内表

    ABAP 动态内表ABAP 动态内表

    SAP ABAP编程 创建BAPI教程

    什么是BAPI BAPI: Business Application Programming Interface 商业应用程序接口 1.访问R3中业务对象与业务过程的标准编程接口。 2.BAPIs 实现了BOR中业务对象的方法 3.BAPIs 通过RFC-enable的功能模块实现。...

    SAP ABAP 通用接口日志&amp;restful 动态调用FM

    在ABAP中,你可以通过定义和实现特定的日志类来创建自定义的日志机制,这些类通常会记录接口调用的输入参数、返回值、异常以及执行时间等信息。 接下来,我们转向RESTful动态调用Function Module(FM)。REST...

    创建简单的 abap4 程序

    创建简单的 ABAP/4 程序需要经历多个步骤,包括命名程序、指定程序属性、编写程序代码、测试程序、显示或更改现有程序以及将事务代码分配给程序。通过这些步骤,开发者可以构建并维护有效的 ABAP/4 应用程序。了解...

    ABAP内表创建整理

    以下是对ABAP内表创建方法的详细说明: 1. **声明表结构并基于表结构声明内表** 在ABAP中,首先我们需要定义一个表结构(Table Type),它定义了内表的列名、数据类型和长度等信息。这可以通过`DEFINE TABLE TYPE`...

    ABAP调用函数自动填充模式

    “声明变量”部分意味着在调用函数时,ABAP编辑器可以同时创建并初始化函数所需的变量。这样,我们不需要手动为每个参数创建变量,节省了大量时间。通常,编辑器会根据函数参数的数据类型自动生成VAR关键字后面的...

    ABAPsap创建包手顺

    ABAPsap创建包手顺

    SAP ABAP SQL查询分析器(ABAP动态SQL执行)ZSQLEXPLORER

    ZSQLEXPLORER,很难找的一个资料,对于ABAP开发者是一个很不错的辅助工具,开发者的必备!!这个是国外人使用ABAP写的一个类似一SQL Server的查询分析器,它能够直接运行ABAP的OPEN SQL,由于SE11或者是SE16都只能对...

Global site tag (gtag.js) - Google Analytics