Programming
CASE command in SAPscript
Syntax
CASE symbol
...
[WHEN value|WHEN OTHERS]
...
ENDCASE
Example
/: CASE &NAME&
/: WHEN ’ROBERT’
* He is ROBERT.
/: WHEN ’JOHN’
* He is JOHN.
/: WHEN OTHERS
* Who is he? &NAME
/: ENDCASE
- thitima's blog
- Add new comment
- Read more
- 1965 reads
IF command in SAPscript
Syntax
IF
...
[ELSE|ELSEIF]
...
ENDIF
Example
Technorati Tags: ABA/: IF &NAME& = ’ROBERT’
* He is ROBERT.
/: ELSEIF &NAME& = ’JOHN’
* He is JOHN.
/: ELSE
* Who is he? &NAME&
/: ENDIF
- thitima's blog
- Add new comment
- Read more
- 4236 reads
ABAP/4 Example Code: How to apply CONTROL_FORM function in ABAP/4
Example
START-OF-SELECTION.
PERFORM OPEN_FORM.
PERFORM START_FORM.
PERFORM WRITE_FORM USING ’LINE1’. "Define LINE1 element name in MAIN
PERFORM CONTROL_FORM USING ’NEW-PAGE’.
PERFORM WRITE_FORM USING ’LINE2’. "Define LINE2 element name in MAIN
PERFORM END_FORM.
PERFORM CLOSE_FORM.
*&---------------------------------------------------------------------*
*& Form OPEN_FORM
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM OPEN_FORM .
CALL FUNCTION ’OPEN_FORM’
* EXPORTING
* APPLICATION = ’TX’
* ARCHIVE_INDEX =
* ARCHIVE_PARAMS =
* DEVICE = ’PRINTER’
* DIALOG = ’X’
* FORM = ’ ’
* LANGUAGE = SY-LANGU
* OPTIONS =
* MAIL_SENDER =
* MAIL_RECIPIENT =
* MAIL_APPL_OBJECT =
* RAW_DATA_INTERFACE = ’*’
* SPONUMIV =
* IMPORTING
* LANGUAGE =
* NEW_ARCHIVE_PARAMS =
* RESULT =
EXCEPTIONS
CANCELED = 1
DEVICE = 2
FORM = 3
OPTIONS = 4
UNCLOSED = 5
MAIL_OPTIONS = 6
ARCHIVE_ERROR = 7
INVALID_FAX_NUMBER = 8
MORE_PARAMS_NEEDED_IN_BATCH = 9
SPOOL_ERROR = 10
CODEPAGE = 11
OTHERS = 12
.
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " OPEN_FORM
*&---------------------------------------------------------------------*
*& Form START_FORM
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM START_FORM .
CALL FUNCTION ’START_FORM’
EXPORTING
* ARCHIVE_INDEX =
FORM = ’ZFORM001’
* LANGUAGE = ’ ’
* STARTPAGE = ’ ’
* PROGRAM = ’ ’
* MAIL_APPL_OBJECT =
* IMPORTING
* LANGUAGE =
EXCEPTIONS
FORM = 1
FORMAT = 2
UNENDED = 3
UNOPENED = 4
UNUSED = 5
SPOOL_ERROR = 6
CODEPAGE = 7
OTHERS = 8
.
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " START_FORM
*&---------------------------------------------------------------------*
*& Form CLOSE_FORM
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM CLOSE_FORM .
CALL FUNCTION ’CLOSE_FORM’
* IMPORTING
* RESULT =
* RDI_RESULT =
* TABLES
* OTFDATA =
EXCEPTIONS
UNOPENED = 1
BAD_PAGEFORMAT_FOR_PRINT = 2
SEND_ERROR = 3
SPOOL_ERROR = 4
CODEPAGE = 5
OTHERS = 6
.
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " CLOSE_FORM
*&---------------------------------------------------------------------*
*& Form END_FORM
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM END_FORM .
CALL FUNCTION ’END_FORM’
* IMPORTING
* RESULT =
EXCEPTIONS
UNOPENED = 1
BAD_PAGEFORMAT_FOR_PRINT = 2
SPOOL_ERROR = 3
CODEPAGE = 4
OTHERS = 5
.
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " END_FORM
*&---------------------------------------------------------------------*
*& Form WRITE_FORM
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM WRITE_FORM USING ELEMENT_NAME.
CALL FUNCTION ’WRITE_FORM’
EXPORTING
ELEMENT = ELEMENT_NAME
* FUNCTION = ’SET’
* TYPE = ’BODY’
* WINDOW = ’MAIN’
* IMPORTING
* PENDING_LINES =
EXCEPTIONS
ELEMENT = 1
FUNCTION = 2
TYPE = 3
UNOPENED = 4
UNSTARTED = 5
WINDOW = 6
BAD_PAGEFORMAT_FOR_PRINT = 7
SPOOL_ERROR = 8
CODEPAGE = 9
OTHERS = 10
.
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " WRITE_FORM
*&---------------------------------------------------------------------*
*& Form CONTROL_FORM
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM CONTROL_FORM USING command.
CALL FUNCTION ’CONTROL_FORM’
EXPORTING
COMMAND = command
EXCEPTIONS
UNOPENED = 1
UNSTARTED = 2
OTHERS = 3
.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " CONTROL_FORM
- thitima's blog
- Add new comment
- Read more
- 2360 reads
How to set cursor field on selection-screen in ABAP/4
You can set cursor field on selection-screen by applying statement ’SET CURSOR FIELD ...’ in event INITIALIZATION.
Example
PARAMETERS: P_FLD1(20) TYPE C,
P_FLD2 TYPE I.
INITIALIZATION.
SET CURSOR FIELD ’P_FLD2’.
The output is:
- thitima's blog
- 1 comment
- Read more
- 4146 reads
How to create parameter as listbox in ABAP/4
You can create parameter as listbox by applying statement ’PARAMETER
Example
TYPE-POOLS: vrm.
DATA: it_list TYPE VRM_VALUES,
list_value TYPE VRM_VALUE.
PARAMETERS: p_list(20) TYPE C AS LISTBOX VISIBLE LENGTH 15.
AT SELECTION-SCREEN OUTPUT.
list_value-key = ’AAAA’.
list_value-text = ’AAAA Show Text’.
append list_value to it_list.
list_value-key = ’AAAB’.
list_value-text = ’AAAB Show Text’.
append list_value to it_list.
list_value-key = ’AAAC’.
list_value-text = ’AAAC Show Text’.
append list_value to it_list.
list_value-key = ’AAAD’.
list_value-text = ’AAAD Show Text’.
append list_value to it_list.
CALL FUNCTION ’VRM_SET_VALUES’
EXPORTING
ID = ’P_LIST’
VALUES = it_list
EXCEPTIONS
ID_ILLEGAL_NAME = 1
OTHERS = 2
.
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
START-OF-SELECTION.
WRITE:/ ’P_LIST parameter have value: ’, p_list.
- thitima's blog
- Add new comment
- Read more
- 4610 reads
Create pushbutton in selection screen in ABAP/4
You can create the pushbutton in your selection screen by applying statement ’SELECTION-SCREEN PUSHBUTTON ...’.
Example
TABLES sscrfields.
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE TEXT-001.
PARAMETERS: p_fld1 TYPE i DEFAULT 1,
p_fld2 TYPE i DEFAULT 2.
SELECTION-SCREEN PUSHBUTTON /1(10) Execute USER-COMMAND EXEC.
SELECTION-SCREEN END OF BLOCK b1.
INITIALIZATION.
Execute = ’Testing’.
AT SELECTION-SCREEN.
IF sscrfields-ucomm = ’EXEC’.
MESSAGE I398(00) WITH ’Testing Pushbutton Action between value’
p_fld1 ’and’ p_fld2.
ENDIF.The output is:
When you select the pushbutton, the output is:
- thitima's blog
- Add new comment
- Read more
- 4186 reads
Recent comments
2 years 30 weeks ago
2 years 35 weeks ago
2 years 36 weeks ago
2 years 36 weeks ago
2 years 36 weeks ago
2 years 39 weeks ago
2 years 39 weeks ago
2 years 39 weeks ago
2 years 39 weeks ago
2 years 39 weeks ago