Application Development and Automation 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: 
Read only

how to create a button in selection screen?

Former Member
0 Likes
16,645

hi

how to create a button in selection screen?

4 REPLIES 4
Read only

Former Member
0 Likes
8,325

Check the following code:



REPORT demo_sel_screen_pushbutton.

TABLES sscrfields.

DATA flag(1) TYPE c.

SELECTION-SCREEN:
  BEGIN OF SCREEN 500 AS WINDOW TITLE tit,
    BEGIN OF LINE,
      PUSHBUTTON 2(10) but1 USER-COMMAND cli1,
      PUSHBUTTON 12(10) text-020 USER-COMMAND cli2,
    END OF LINE,
    BEGIN OF LINE,
      PUSHBUTTON 2(10) but3 USER-COMMAND cli3,
      PUSHBUTTON 12(10) text-040 USER-COMMAND cli4,
    END OF LINE,
  END OF SCREEN 500.

AT SELECTION-SCREEN.

  MESSAGE i888(sabapdocu) WITH text-001 sscrfields-ucomm.
  CASE sscrfields-ucomm.
    WHEN 'CLI1'.
      flag = '1'.
    WHEN 'CLI2'.
      flag = '2'.
    WHEN 'CLI3'.
      flag = '3'.
    WHEN 'CLI4'.
      flag = '4'.
  ENDCASE.

START-OF-SELECTION.

  tit  = 'Four Buttons'.
  but1 = 'Button 1'.
  but3 = 'Button 3'.

  CALL SELECTION-SCREEN 500 STARTING AT 10 10.

  CASE flag.
    WHEN '1'.
      WRITE / 'Button 1 was clicked'.
    WHEN '2'.
      WRITE / 'Button 2 was clicked'.
    WHEN '3'.
      WRITE / 'Button 3 was clicked'.
    WHEN '4'.
      WRITE / 'Button 4 was clicked'.
    WHEN OTHERS.
      WRITE / 'No Button was clicked'.
  ENDCASE.

Read only

Former Member
0 Likes
8,325

hi

for push button

SELECTION-SCREEN:

BEGIN OF SCREEN 500 AS WINDOW TITLE tit,

BEGIN OF LINE,

PUSHBUTTON 2(10) but1 USER-COMMAND cli1,

PUSHBUTTON 12(10) text-020 USER-COMMAND cli2,

END OF LINE,

BEGIN OF LINE,

PUSHBUTTON 2(10) but3 USER-COMMAND cli3,

PUSHBUTTON 12(10) text-040 USER-COMMAND cli4,

END OF LINE,

END OF SCREEN 500.

for radio button

PARAMETERS : R1 RADIOBUTTON GROUP RG USER-COMMAND R DEFAULT 'X'.

PARAMETERS : R2 RADIOBUTTON GROUP RG .

reward if helpful

kushagra

Read only

Former Member
0 Likes
8,325

Hi,

Following are the create radiobuttons and pushbuttons in selection-screen.

PARAMETERS VAR1 TYPE I.

SELECTION-SCREEN BEGIN OF BLOCK AAA WITH FRAME TITLE T1.

PARAMETERS: RB1 RADIOBUTTON GROUP A,

RB2 RADIOBUTTON GROUP A,

RB3 RADIOBUTTON GROUP A.

SELECTION-SCREEN END OF BLOCK AAA.

SELECTION-SCREEN SKIP 4.

SELECTION-SCREEN BEGIN OF BLOCK BBB WITH FRAME TITLE T2.

PARAMETERS: RB1 RADIOBUTTON GROUP B,

RB2 RADIOBUTTON GROUP B,

RB3 RADIOBUTTON GROUP B.

SELECTION-SCREEN END OF BLOCK BBB.

INITIALIZATION.

T1 = ‘TCODE BLOCK’.

T2 = ‘SECOND BLOCK’.

Pushbutton

PARAMETERS: A TYPE I,

B TYPE I,

C TYPE I.

SELECTION-SCREEN SKIP.

SELECTION-SCREEN PUSHBUTTON /10(10) LB1 USER-COMMAND PB1.

SELECTION-SCREEN PUSHBUTTON 30(10) LB2 USER-COMMAND PB2.

INITIALIZATION.

LB1 = ‘ADD’.

LB2 = ‘EXIT’.

AT SELECTION-SCREEN.

CASE SY-UCOMM.

WHEN ‘PB1’.

C = A + B.

WHEN ‘PB2’.

LEAVE PROGRAM.

ENDCASE.

Reward points,if it is useful.

Thanks,

chandu.

Read only

Former Member
0 Likes
8,325

Hi,

this is to create a pushbutton:

SELECTION-SCREEN BEGIN OF BLOCK b_2 WITH FRAME TITLE text-018.

SELECT-OPTIONS s_fields FOR qpmk-mkmnr NO-DISPLAY.

SELECTION-SCREEN PUSHBUTTON /1(24) name USER-COMMAND flds.

SELECTION-SCREEN END OF BLOCK b_2.

AT SELECTION-SCREEN.

IF sscrfields-ucomm = 'FLDS'.

PERFORM display_fields.

ENDIF.

Also see this code:

REPORT DEMO.

TABLES SSCRFIELDS.

DATA FLAG.

SELECTION-SCREEN:

BEGIN OF SCREEN 500 AS WINDOW TITLE TIT,

BEGIN OF LINE,

PUSHBUTTON 2(10) BUT1 USER-COMMAND CLI1,

PUSHBUTTON 12(10) TEXT-020 USER-COMMAND CLI2,

END OF LINE,

BEGIN OF LINE,

PUSHBUTTON 2(10) BUT3 USER-COMMAND CLI3,

PUSHBUTTON 12(10) TEXT-040 USER-COMMAND CLI4,

END OF LINE,

END OF SCREEN 500.

AT SELECTION-SCREEN.

CASE SSCRFIELDS.

WHEN 'CLI1'.

FLAG = '1'.

WHEN 'CLI2'.

FLAG = '2'.

WHEN 'CLI3'.

FLAG = '3'.

WHEN 'CLI4'.

FLAG = '4'.

ENDCASE.

START-OF-SELECTION.

TIT = 'Four Buttons'.

BUT1 = 'Button 1'.

BUT3 = 'Button 3'.

CALL SELECTION-SCREEN 500 STARTING AT 10 10.

CASE FLAG.

WHEN '1'.

WRITE / 'Button 1 was clicked'.

WHEN '2'.

WRITE / 'Button 2 was clicked'.

WHEN '3'.

WRITE / 'Button 3 was clicked'.

WHEN '4'.

WRITE / 'Button 4 was clicked'.

WHEN OTHERS.

WRITE / 'No Button was clicked'.

ENDCASE.

This example defines four pushbuttons on a selection screen that is displayed as a dialog box. The selection screen is defined in a statement chain for keyword SELECTION-SCREEN.

If the text symbols TEXT-020 and TEXT-040 are defined as 'Button 2' and 'Button 4', the four pushbuttons appear as follows on the selection screen displayed as a dialog box.

CLI1, CLI2, CLI3 and CLI4 are used for <ucom>. When the user clicks one of the pushbuttons, the AT SELECTION-SCREEN event is triggered, and the FLAG field is set. The FLAG field can be further processed during subsequent program flow after the user has chosen Execute.

This is to create a Radio Button:

SELECTION-SCREEN BEGIN OF LINE.

PARAMETERS p_selop1 RADIOBUTTON GROUP sel.

SELECTION-SCREEN COMMENT 10(20) text-001.

SELECTION-SCREEN END OF LINE.

SELECTION-SCREEN BEGIN OF LINE.

PARAMETERS p_selop2 RADIOBUTTON GROUP sel.

SELECTION-SCREEN COMMENT 10(20) text-002.

SELECTION-SCREEN END OF LINE.

The formating of the comment (here 10(20)) means:

10 columns to the right, visible lenght 20 (has to match the lenght of your text-element).

check this link

http://www.planetsap.com/howdo_a.htm#PBUTTON

Reward Points if found helpfull..

Cheers,

Chandra Sekhar.