‎2007 Jul 19 1:52 AM
Hi Guru's,
We have a requirement like this..
I have a selection screen ,in that selection screen there are certain radiobuttons.
Choosing one particular radiobutton,another seletion block has to be appeared on the same screen with several tab pages on that.
Is this possible?,Is there any standard program which has the similar kind of functionality ?? please let me know.
Points will be awarded ....
Thanks.
Rohit.
‎2007 Jul 19 2:41 AM
you can create a subscreen with tab pages and call the subscreen on the main screen when u select the radio button
‎2007 Jul 19 3:28 AM
I guess it is not possible to call a whole new <b>tabscreen screen in the same current screen.</b>
Only possible is you can <b>show or hide</b> the tab screen based on the radio button selected in the same screen.
Reference: DEMO_SEL_SCREEN_IN_TABSTRIP
Regards,
A.Singh
‎2007 Jul 19 4:04 AM
Try the code written below:
----
Selection Screen *
----
SELECTION-SCREEN BEGIN OF BLOCK b01.
SELECTION-SCREEN BEGIN OF BLOCK b11 WITH FRAME TITLE text-b11.
PARAMETERS : p_local AS CHECKBOX DEFAULT 'X' MODIF ID grp,
p_output LIKE rlgrap-filename OBLIGATORY MODIF ID grp.
DEFAULT c_file. D-RD1K907385
SELECTION-SCREEN END OF BLOCK b11.
SELECTION-SCREEN BEGIN OF BLOCK b12 WITH FRAME TITLE text-b12.
SELECT-OPTIONS : s_paobjn FOR ykpcat_paobjnr-paobjnr MODIF ID mod,
s_type FOR ykpcat_paobjnr-type MODIF ID mod.
SELECTION-SCREEN END OF BLOCK b12.
SELECTION-SCREEN END OF BLOCK b01.
SELECTION-SCREEN BEGIN OF BLOCK b02 WITH FRAME TITLE text-b02.
PARAMETERS : p_delws RADIOBUTTON GROUP rd1 USER-COMMAND flag,
p_modify RADIOBUTTON GROUP rd1 DEFAULT 'X',
p_delete RADIOBUTTON GROUP rd1 .
SELECTION-SCREEN END OF BLOCK b02.
----
AT SELECTION SCREEN OUTPUT *
----
AT SELECTION-SCREEN OUTPUT.
*--Take the selection from the user
LOOP AT SCREEN.
IF screen-group1 = 'GRP'.
IF NOT p_delws IS INITIAL.
screen-active = 0.
screen-invisible = 1.
ELSE.
screen-active = 1.
screen-invisible = 0.
ENDIF.
ENDIF.
*--Hide the user selection criteria when Delete With
*--Selection is not selected
IF screen-group1 = 'MOD'.
IF p_delws IS INITIAL.
screen-active = 0.
screen-invisible = 1.
ELSE.
screen-active = 1.
screen-invisible = 0.
ENDIF.
ENDIF.
MODIFY SCREEN.
ENDLOOP.
Hope it helps.
Reward if helpful
Cheers,
Sharadendu
‎2007 Jul 19 4:16 AM
hi Rohit
if you use radio buttons what for the tab use same window (screen)
like follows
*----
Select Options Begin with SO_ *
*----
*
*------ Selection Options -
SELECTION-SCREEN BEGIN OF BLOCK b0 WITH FRAME TITLE text-t00.
PARAMETERS :pr_norm RADIOBUTTON GROUP r1 DEFAULT 'X' USER-COMMAND check,
pr_load RADIOBUTTON GROUP r1,
pr_sale RADIOBUTTON GROUP r1.
SELECTION-SCREEN SKIP. "<< For Blank Line >>
PARAMETERS :pr_del AS CHECKBOX USER-COMMAND flag MODIF ID bth. "<< For Both Groups >>
SELECTION-SCREEN END OF BLOCK b0.
*
*---- Sales Text in Material Masters -
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-t01 .
SELECT-OPTIONS : so_matnr FOR mara-matnr MODIF ID nor. "OBLIGATORY NO INTERVALS NO-EXTENSION .
SELECT-OPTIONS : so_mtart FOR mara-mtart MODIF ID nor. "OBLIGATORY NO INTERVALS NO-EXTENSION .
SELECTION-SCREEN END OF BLOCK b1 .
*
*---- Sales Text in Loading Proposals -
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-t02 .
SELECT-OPTIONS : so_matn1 FOR lips-matnr MODIF ID lod. "OBLIGATORY NO INTERVALS NO-EXTENSION .
SELECT-OPTIONS : so_vbeln FOR lips-vbeln MODIF ID lod. "OBLIGATORY NO INTERVALS NO-EXTENSION .
SELECTION-SCREEN END OF BLOCK b2 .
*
*---- Sales Text in Sales Orders -
SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME TITLE text-t03 .
SELECT-OPTIONS : so_matn2 FOR vbap-matnr MODIF ID sal. "OBLIGATORY NO INTERVALS NO-EXTENSION .
SELECT-OPTIONS : so_vbel2 FOR vbap-vbeln MODIF ID sal. "OBLIGATORY NO INTERVALS NO-EXTENSION .
SELECTION-SCREEN END OF BLOCK b3 .
*
*----
Parameter Begin with PR_ *
*----
*
SELECTION-SCREEN BEGIN OF BLOCK b9 WITH FRAME TITLE text-t09.
PARAMETERS :pr_var LIKE disvariant-variant.
SELECTION-SCREEN END OF BLOCK b9.
*
**--- Selection Scree Output ---
AT SELECTION-SCREEN OUTPUT.
*
LOOP AT SCREEN.
*
IF pr_norm = 'X'.
IF screen-group1 = 'NOR'.
screen-input = '1'.
ENDIF.
IF screen-group1 = 'LOD'.
screen-input = '0'.
ENDIF.
IF screen-group1 = 'SAL'.
screen-input = '0'.
ENDIF.
IF screen-group1 = 'BTH'.
screen-input = '0'.
ENDIF.
ELSEIF pr_load = 'X'.
IF screen-group1 = 'NOR'.
screen-input = '0'.
ENDIF.
IF screen-group1 = 'LOD'.
screen-input = '1'.
ENDIF.
IF screen-group1 = 'SAL'.
screen-input = '0'.
ENDIF.
ELSEIF pr_sale = 'X'.
IF screen-group1 = 'NOR'.
screen-input = '0'.
ENDIF.
IF screen-group1 = 'LOD'.
screen-input = '0'.
ENDIF.
IF screen-group1 = 'SAL'.
screen-input = '1'.
ENDIF.
ENDIF.
*
MODIFY SCREEN.
ENDLOOP.
*
Rewards if useful
‎2007 Jul 19 4:33 AM
Yes it is possible ...
" Example for single parameter
REPORT demo_at_selection_screen.
* Global data
DATA: sflight_tab TYPE TABLE OF sflight,
sflight_wa LIKE LINE OF sflight_tab.
* Selection screens
PARAMETERS p_carrid TYPE spfli-carrid.
SELECTION-SCREEN BEGIN OF SCREEN 500.
SELECT-OPTIONS s_conn FOR sflight_wa-connid.
DATA s_conn_wa LIKE LINE OF s_conn.
SELECTION-SCREEN END OF SCREEN 500.
* Handling selection screen events
AT SELECTION-SCREEN ON p_carrid.
IF p_carrid IS INITIAL.
MESSAGE 'Please enter a value' TYPE 'E'.
ENDIF.
AUTHORITY-CHECK OBJECT 'S_CARRID'
ID 'CARRID' FIELD p_carrid
ID 'ACTVT' FIELD '03'.
IF sy-subrc = 4.
MESSAGE 'No authorization for carrier' TYPE 'E'.
ELSEIF sy-subrc <> 0.
MESSAGE 'Error in authority check' TYPE 'A'.
ELSE.
IF sy-ucomm = 'ONLI'.
CALL SELECTION-SCREEN '0500'.
ENDIF.
ENDIF.
AT SELECTION-SCREEN.
IF sy-dynnr = '0500'.
IF s_conn IS INITIAL.
MESSAGE 'Please enter values' TYPE 'W'.
ELSE.
SELECT *
FROM sflight
INTO TABLE sflight_tab
WHERE carrid = p_carrid AND
connid IN s_conn.
IF sy-subrc <> 0.
MESSAGE 'No flights found' TYPE 'E'.
ENDIF.
ENDIF.
ENDIF.
* Main program
START-OF-SELECTION.
reward points if it is usefull ....
Girish