Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Create function modules and reports dynamic

Former Member
0 Kudos

Hi together,

i want to know more about dynamic programming with abap. Are there any options to create function moduls or reports dynamic during runtime from other programms?

Regards,

Anton

1 REPLY 1

Sm1tje
Active Contributor
0 Kudos

well, I don't know if it is possible to create FM dynamically, but you can surely create reports dynamically.

Dynamic SUBROUTINE:

DATA: code TYPE TABLE OF string,

prog TYPE program,

msg(120) TYPE c,

lin(10) TYPE c,

wrd(10) TYPE c,

off(3) TYPE c.

APPEND 'PROGRAM SUBPOOL.' TO code.

APPEND 'FORM DYN1.' TO code.

APPEND 'WRITE / ''Hello, I am a temporary subroutine!''.' TO code.

APPEND 'ENDFORM.' TO code.

GENERATE SUBROUTINE POOL code NAME prog MESSAGE msg

LINE lin WORD wrd OFFSET off.

IF sy-subrc <> 0.

WRITE: / 'Error during generation in line', lin,

/ msg, / 'Word:', wrd, 'at offset', off.

ENDIF.

PERFORM dyn1 IN PROGRAM (prog).

Dynamic report:

DATA:

code TYPE TABLE OF string.

CONSTANTS:

rep(40) VALUE 'ZDYN1'.

APPEND 'PROGRAM ZDYN1.' TO code.

APPEND 'WRITE / ''Hello, I am dynamically created!''.' TO code.

INSERT REPORT rep FROM code.

SUBMIT (rep) AND RETURN.

READ REPORT rep INTO code.

APPEND 'WRITE / ''and I am a dynamic extension!''.' TO code.

INSERT REPORT rep FROM code.

GENERATE REPORT rep.

SUBMIT (rep) AND RETURN.