Skip to Content

At selection screen Output.

I am working with Version 4.6C.

In this version the selection screen having Two Blocks Say Block1, Block2 and Two Radio Buttons.

If i select Radio button1 Block 1 Should be Visible and block 2 should be in-Visiable same as vice versa for radio button 2.

Its working fine in ECC 6.0.

But in 4.6C the screens are Ovelapping.

The sample code as below.

TABLES: RKWA,EKKO,EKPO.

PARAMETERS : R1 RADIOBUTTON GROUP G1 DEFAULT 'X' USER-COMMAND AA.

SELECTION-SCREEN: BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.

PARAMETERS: P_ITEM LIKE EKPO-PSTYP MODIF ID AA.

SELECT-OPTIONS: S_BUKRS FOR RKWA-BUKRS MODIF ID AA,

S_LIFNR FOR RKWA-LIFNR MODIF ID AA,

S_WERKS FOR RKWA-BUKRS MODIF ID AA,

S_MATNR FOR RKWA-MATNR MODIF ID AA,

S_EKORG FOR EKKO-EKORG MODIF ID AA,

S_EKGRP FOR EKKO-EKGRP MODIF ID AA,

S_MBLNR FOR RKWA-MBLNR MODIF ID AA,

S_BLDAT FOR RKWA-BLDAT MODIF ID AA,

S_BUDAT FOR RKWA-BUDAT MODIF ID AA.

SELECTION-SCREEN: END OF BLOCK B1 .

SELECTION-SCREEN SKIP.

PARAMETERS : R2 RADIOBUTTON GROUP G1.

SELECTION-SCREEN: BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-001.

PARAMETERS: P_ITEM1 LIKE EKPO-PSTYP MODIF ID CC.

SELECT-OPTIONS:S_LIFNR1 FOR RKWA-LIFNR MODIF ID CC,

S_WERKS1 FOR RKWA-BUKRS MODIF ID CC,

S_MATNR1 FOR RKWA-MATNR MODIF ID CC,

S_BLDAT1 FOR RKWA-BLDAT MODIF ID CC,

S_EKORG1 FOR EKKO-EKORG MODIF ID CC.

SELECTION-SCREEN: END OF BLOCK B2 .

TYPES: BEGIN OF TYPE_RKWA,

BUKRS TYPE RKWA-BUKRS,

LIFNR TYPE RKWA-LIFNR,

MBLNR TYPE RKWA-MBLNR,

MJAHR TYPE RKWA-MJAHR,

ZEILE TYPE RKWA-ZEILE,

BLDAT TYPE RKWA-BLDAT,

WERKS TYPE RKWA-WERKS,

MATNR TYPE RKWA-MATNR,

BSTMG TYPE RKWA-BSTMG,

BSTME TYPE RKWA-BSTME,

BWAER TYPE RKWA-BWAER,

WRBTR TYPE RKWA-WRBTR,

BELNR TYPE RKWA-BELNR,

GJAHR TYPE RKWA-GJAHR,

BUZEI TYPE RKWA-BUZEI,

END OF TYPE_RKWA.

DATA: I_RKWA TYPE STANDARD TABLE OF TYPE_RKWA.

INITIALIZATION.

AT SELECTION-SCREEN OUTPUT.

PERFORM VALIDATIONS.

FORM VALIDATIONS .

IF R1 = 'X'.

LOOP AT SCREEN.

IF SCREEN-GROUP1 = 'AA'.

SCREEN-INPUT = '1'.

MODIFY SCREEN.

ENDIF.

IF SCREEN-GROUP1 = 'CC'.

SCREEN-INPUT = '0'.

SCREEN-INVISIBLE = '1'.

MODIFY SCREEN.

ENDIF.

ENDLOOP.

ELSEIF R2 = 'X'.

LOOP AT SCREEN.

IF SCREEN-GROUP1 = 'AA'.

SCREEN-INPUT = '0'.

SCREEN-INVISIBLE = '1'.

MODIFY SCREEN.

ENDIF.

IF SCREEN-GROUP1 = 'CC'.

SCREEN-INPUT = '1'.

SCREEN-INVISIBLE = '0'.

MODIFY SCREEN.

ENDIF.

ENDLOOP.

ENDIF.

ENDFORM. " Validations

Add a comment
10|10000 characters needed characters exceeded

Assigned Tags

Related questions

3 Answers

  • Best Answer
    author's profile photo Former Member
    Former Member
    Posted on Dec 23, 2008 at 09:53 AM

    Try like this.

    you can get screen-name from screen1000(Element List)

    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.

    PARAMETERS: rb_manul RADIOBUTTON GROUP grp1 DEFAULT 'X'

    USER-COMMAND ucom,

    rb_filup RADIOBUTTON GROUP grp1.

    SELECTION-SCREEN END OF BLOCK b1.

    SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.

    PARAMETERS pa_werks LIKE marc-werks.

    PARAMETERS pa_spart TYPE /dceur/zzsparte.

    SELECT-OPTIONS: so_matnr FOR mara-matnr NO INTERVALS,

    so_rkey FOR /dceur/md_winstg-z_reference_key

    NO INTERVALS.

    PARAMETERS pa_file TYPE rlgrap-filename.

    SELECTION-SCREEN END OF BLOCK b2.

    SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME TITLE text-014.

    PARAMETERS ch_fail AS CHECKBOX.

    SELECTION-SCREEN END OF BLOCK b3.

    AT SELECTION-SCREEN OUTPUT.

    *Screen modification based on the selection

    PERFORM modify_screen.

    FORM modify_screen.

    IF rb_manul EQ 'X'.

    LOOP AT SCREEN.

    IF screen-name = '%_PA_FILE_%_APP_%-TEXT' OR

    screen-name = 'PA_FILE'.

    screen-input = 0.

    screen-invisible = 1.

    ENDIF.

    MODIFY SCREEN.

    ENDLOOP.

    ELSEIF rb_filup EQ 'X'.

    LOOP AT SCREEN.

    IF screen-name = 'PA_SPART' OR

    screen-name = '%_PA_SPART_%_APP_%-TEXT' OR

    screen-name = '%_SO_MATNR_%_APP_%-TEXT' OR

    screen-name = '%_SO_MATNR_%_APP_%-OPTI_PUSH'OR

    screen-name = 'SO_MATNR-LOW' OR

    screen-name = '%_SO_MATNR_%_APP_%-VALU_PUSH' OR

    screen-name = '%_SO_RKEY_%_APP_%-TEXT'OR

    screen-name = '%_SO_RKEY_%_APP_%-OPTI_PUSH' OR

    screen-name = 'SO_RKEY-LOW' OR

    screen-name = '%_SO_RKEY_%_APP_%-VALU_PUSH'.

    screen-input = 0.

    screen-invisible = 1.

    MODIFY SCREEN.

    ENDIF.

    ENDLOOP.

    ENDIF.

    ENDFORM. " modify_screen

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Dec 23, 2008 at 08:32 AM

    Hi,

    The code is working fine in 4.6 B version too.

    Reg

    Hemanth

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Dec 23, 2008 at 08:40 AM

    Hi there....

    go to transaction se51 and pun in your program name and screen number..... edit the field as per your requirement.... put the two blocks at certain distance so that they fulfill your requirement....

    get back if this doesnt help....

    Add a comment
    10|10000 characters needed characters exceeded

Before answering

You should only submit an answer when you are proposing a solution to the poster's problem. If you want the poster to clarify the question or provide more information, please leave a comment instead, requesting additional details. When answering, please include specifics, such as step-by-step instructions, context for the solution, and links to useful resources. Also, please make sure that you answer complies with our Rules of Engagement.
You must be Logged in to submit an answer.

Up to 10 attachments (including images) can be used with a maximum of 1.0 MB each and 10.5 MB total.