‎2006 Dec 20 7:06 AM
Hi everyone,
Im facing a problem in selection-screen.
My selection screen contains
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
PARAMETER: P_DATUM LIKE SY-DATUM OBLIGATORY DEFAULT SY-DATUM.
SELECTION-SCREEN END OF BLOCK B1.
SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-004.
*SELECTION-SCREEN SKIP.
SELECTION-SCREEN COMMENT /1(15) TEXT-005.
SELECTION-SCREEN COMMENT 25(15) TEXT-006.
SELECTION-SCREEN COMMENT 49(24) TEXT-007.
SELECTION-SCREEN COMMENT 77(10) TEXT-008.
*SELECTION-SCREEN ULINE /1(10).
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(6) FOR FIELD P_E1.
PARAMETER: P_E1(5) DEFAULT '2.25'.
SELECTION-SCREEN COMMENT 25(6) FOR FIELD P_M1.
PARAMETER: P_M1(5) DEFAULT '6.50'.
SELECTION-SCREEN COMMENT 49(10) FOR FIELD P_STAFF.
PARAMETER: P_STAFF(5) DEFAULT '2.25'.
SELECTION-SCREEN COMMENT 77(6) FOR FIELD P_GET.
PARAMETER: P_GET(5) DEFAULT '1.30'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(6) FOR FIELD P_E2.
PARAMETER: P_E2(5) DEFAULT '2.50'.
SELECTION-SCREEN COMMENT 25(6) FOR FIELD P_M2.
PARAMETER: P_M2(5) DEFAULT '7.50'.
SELECTION-SCREEN COMMENT 49(10) FOR FIELD P_WORK.
PARAMETER: P_WORK(5) DEFAULT '2.25'.
SELECTION-SCREEN COMMENT 77(6) FOR FIELD P_DHT.
PARAMETER: P_DHT(5) DEFAULT '0.70'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(6) FOR FIELD P_E3.
PARAMETER: P_E3(5) DEFAULT '3.00'.
SELECTION-SCREEN COMMENT 25(6) FOR FIELD P_M3.
PARAMETER: P_M3(5) DEFAULT '10.00'.
SELECTION-SCREEN COMMENT 49(10) FOR FIELD P_DET.
PARAMETER: P_DET(5) DEFAULT '1.00'.
SELECTION-SCREEN COMMENT 77(15) TEXT-076.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(6) FOR FIELD P_E4.
PARAMETER: P_E4(5) DEFAULT '3.50'.
SELECTION-SCREEN COMMENT 25(6) FOR FIELD P_M4.
PARAMETER: P_M4(5) DEFAULT '13.00'.
SELECTION-SCREEN COMMENT 49(20) TEXT-009.
SELECTION-SCREEN COMMENT 77(6) FOR FIELD P_TEMP.
PARAMETER: P_TEMP(5) DEFAULT '0.70'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(6) FOR FIELD P_E5.
PARAMETER: P_E5(5) DEFAULT '4.00'.
SELECTION-SCREEN COMMENT 25(6) FOR FIELD P_M5.
PARAMETER: P_M5(5) DEFAULT '18.00'.
SELECTION-SCREEN COMMENT 49(10) FOR FIELD P_CT.
PARAMETER: P_CT(5) DEFAULT '4.50'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(6) FOR FIELD P_E6.
PARAMETER: P_E6(5) DEFAULT '5.00'.
SELECTION-SCREEN COMMENT 25(6) FOR FIELD P_M6.
PARAMETER: P_M6(5) DEFAULT '24.00'.
SELECTION-SCREEN COMMENT 49(10) FOR FIELD P_CX.
PARAMETER: P_CX(5) DEFAULT '2.50'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(6) FOR FIELD P_E7.
PARAMETER: P_E7(5) DEFAULT '6.00'.
SELECTION-SCREEN COMMENT 25(6) FOR FIELD P_M7.
PARAMETER: P_M7(5) DEFAULT '36.00'.
SELECTION-SCREEN COMMENT 49(10) FOR FIELD P_CU.
PARAMETER: P_CU(5) DEFAULT '1.00'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK B2.
My reqirement is, if
P_DATUM < 01042006
Then i have to display BLOCK B2 where the default values
will be some other values.
How to face this problem?
Its urgent.
thanks in advance
‎2006 Dec 20 7:11 AM
hi
use event AT SELECTION-SCREEN OUTPUT.
under this event, write the IF condition.
for example:
IF P_DATE < 01042006.
P_AB = '889'.
P_BB = '990'
ENDIF.
thx
pavan
‎2006 Dec 20 7:09 AM
check the data for parameter in at selection-screen.
and set the value
at selection-screen output.
regards
shiba dutta
‎2006 Dec 20 7:11 AM
hi
use event AT SELECTION-SCREEN OUTPUT.
under this event, write the IF condition.
for example:
IF P_DATE < 01042006.
P_AB = '889'.
P_BB = '990'
ENDIF.
thx
pavan
‎2006 Dec 20 7:13 AM
SEE BELOW CODE,it wil work and change ur condition and value of p_datum as per ur needs..the code is working fine just copy and paste it..
and reward me points -
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
PARAMETER: P_DATUM LIKE SY-DATUM OBLIGATORY modif id ABC DEFAULT SY-DATUM .
SELECTION-SCREEN END OF BLOCK B1.
SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-004.
*SELECTION-SCREEN SKIP.
SELECTION-SCREEN COMMENT /1(15) TEXT-005.
SELECTION-SCREEN COMMENT 25(15) TEXT-006.
SELECTION-SCREEN COMMENT 49(24) TEXT-007.
SELECTION-SCREEN COMMENT 77(10) TEXT-008.
*SELECTION-SCREEN ULINE /1(10).
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(6) FOR FIELD P_E1.
PARAMETER: P_E1(5) DEFAULT '2.25'.
SELECTION-SCREEN COMMENT 25(6) FOR FIELD P_M1.
PARAMETER: P_M1(5) DEFAULT '6.50'.
SELECTION-SCREEN COMMENT 49(10) FOR FIELD P_STAFF.
PARAMETER: P_STAFF(5) DEFAULT '2.25'.
SELECTION-SCREEN COMMENT 77(6) FOR FIELD P_GET.
PARAMETER: P_GET(5) DEFAULT '1.30'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(6) FOR FIELD P_E2.
PARAMETER: P_E2(5) DEFAULT '2.50'.
SELECTION-SCREEN COMMENT 25(6) FOR FIELD P_M2.
PARAMETER: P_M2(5) DEFAULT '7.50'.
SELECTION-SCREEN COMMENT 49(10) FOR FIELD P_WORK.
PARAMETER: P_WORK(5) DEFAULT '2.25'.
SELECTION-SCREEN COMMENT 77(6) FOR FIELD P_DHT.
PARAMETER: P_DHT(5) DEFAULT '0.70'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(6) FOR FIELD P_E3.
PARAMETER: P_E3(5) DEFAULT '3.00'.
SELECTION-SCREEN COMMENT 25(6) FOR FIELD P_M3.
PARAMETER: P_M3(5) DEFAULT '10.00'.
SELECTION-SCREEN COMMENT 49(10) FOR FIELD P_DET.
PARAMETER: P_DET(5) DEFAULT '1.00'.
SELECTION-SCREEN COMMENT 77(15) TEXT-076.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(6) FOR FIELD P_E4.
PARAMETER: P_E4(5) DEFAULT '3.50'.
SELECTION-SCREEN COMMENT 25(6) FOR FIELD P_M4.
PARAMETER: P_M4(5) DEFAULT '13.00'.
SELECTION-SCREEN COMMENT 49(20) TEXT-009.
SELECTION-SCREEN COMMENT 77(6) FOR FIELD P_TEMP.
PARAMETER: P_TEMP(5) DEFAULT '0.70'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(6) FOR FIELD P_E5.
PARAMETER: P_E5(5) DEFAULT '4.00'.
SELECTION-SCREEN COMMENT 25(6) FOR FIELD P_M5.
PARAMETER: P_M5(5) DEFAULT '18.00'.
SELECTION-SCREEN COMMENT 49(10) FOR FIELD P_CT.
PARAMETER: P_CT(5) DEFAULT '4.50'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(6) FOR FIELD P_E6.
PARAMETER: P_E6(5) DEFAULT '5.00'.
SELECTION-SCREEN COMMENT 25(6) FOR FIELD P_M6.
PARAMETER: P_M6(5) DEFAULT '24.00'.
SELECTION-SCREEN COMMENT 49(10) FOR FIELD P_CX.
PARAMETER: P_CX(5) DEFAULT '2.50'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(6) FOR FIELD P_E7.
PARAMETER: P_E7(5) DEFAULT '6.00'.
SELECTION-SCREEN COMMENT 25(6) FOR FIELD P_M7.
PARAMETER: P_M7(5) DEFAULT '36.00'.
SELECTION-SCREEN COMMENT 49(10) FOR FIELD P_CU.
PARAMETER: P_CU(5) DEFAULT '1.00'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK B2.
INITIALIZATION.
P_DATUM = SY-DATUM - 1 .
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN .
IF P_DATUM NE SY-DATUM.
IF SCREEN-GROUP1 NE 'ABC'.
SCREEN-ACTIVE = 0.
MODIFY SCREEN.
ENDIF.
ENDIF.
ENDLOOP.
‎2006 Dec 20 7:17 AM
Hi Stanley,
Have a look at this example. Try using the same logic.
The elements of block b2 are assigned to the modification group bl2. A checkbox show_all allows the user to select whether or not these elements are displayed. The display is changed immediately, as selecting the checkbox triggers the event AT SELECTION-SCREEN. The function code is not required. Instead, the content of show_all is evaluated during PBO.
PARAMETERS show_all AS CHECKBOX USER-COMMAND flag.
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME.
PARAMETERS: p1(10) TYPE c,
p2(10) TYPE c,
p3(10) TYPE c.
SELECTION-SCREEN END OF BLOCK b1.
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME.
PARAMETERS: p4(10) TYPE c MODIF ID bl2,
p5(10) TYPE c MODIF ID bl2,
p6(10) TYPE c MODIF ID bl2.
SELECTION-SCREEN END OF BLOCK b2.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF show_all <> 'X' AND
screen-group1 = 'BL2'.
screen-active = '0'.
ENDIF.
MODIFY SCREEN.
ENDLOOP.
Thanks
Elan