‎2008 Jul 18 1:44 PM
Hello Experts,
I have some text fields on selection screen.They all have been assigned to a particular modif id.
I have to write a code so that when we reach the selection screen for the first time,these screens are not visible.These text fields should become visible only when the user clicks a button.
Kindly help with a sample code.
Points would be definately rewarded.
My code looks like
‎2008 Jul 18 1:50 PM
Hi
try this sample code :
PARAMETERS P_NAME.
DATA TIME TYPE SY-UZEIT.
DATA FLAG.
DATA DIFF TYPE I.
At selection-screen output.
IF FLAG IS INITIAL.
TIME = SY-UZEIT.
FLAG = 'X'.
ENDIF.
DIFF = SY-UZEIT - TIME.
IF DIFF > 30.
Loop at screen.
if screen-name cp '*P_NAME*'.
screen-ACTIVE = 0.
modify screen.
ENDIF.
Endloop.
ENDIF.With Regards
Nikunj Shah
‎2008 Jul 18 1:50 PM
To make all of the fields invisible, use the following code:
loop at screen.
screen-invisible = u20181u2019.
modify screen.
endloop.
‎2008 Jul 18 1:50 PM
Hi,
Check out this sample code
REPORT z_sdn.
PARAMETERS:
p_num RADIOBUTTON GROUP rad1 DEFAULT 'X' USER-COMMAND abc,
p_char RADIOBUTTON GROUP rad1.
PARAMETERS:
p_num1 TYPE i MODIF ID num,
p_num2 TYPE i MODIF ID num,
p_char1 TYPE c MODIF ID chr,
p_char2 TYPE c MODIF ID chr.
AT SELECTION-SCREEN OUTPUT.
IF p_num EQ 'X'.
LOOP AT SCREEN.
IF screen-group1 EQ 'CHR'.
screen-active = 0.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ELSE.
LOOP AT SCREEN.
IF screen-group1 EQ 'NUM'.
screen-active = 0.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ENDIF.
Regards
Abhijeet
‎2008 Jul 18 1:51 PM
HI Jaydeep,
pls. have a look at the following code (this will show you month name acc. to period entered on sel. screen)
PARAMETERS : p_mon TYPE poper DEFAULT '012' OBLIGATORY
VISIBLE LENGTH 2.
SELECTION-SCREEN COMMENT 37(15) lv_monat FOR FIELD p_mon.
-
AT SELECTION-SCREEN.
-
PERFORM get_buper USING p_gjahr
p_mon
CHANGING lv_monat.
...
FORM get_buper USING i_jahr TYPE any
i_monat TYPE any
CHANGING p_monam TYPE any.
lv_period = i_monat.
CALL FUNCTION 'G_POSTING_DATE_OF_PERIOD_GET'
EXPORTING
period = lv_period
variant = 'L1'
year = i_jahr
IMPORTING
from_date = lv_date
EXCEPTIONS
period_not_defined = 1
variant_not_defined = 2
OTHERS = 3.
IF sy-subrc EQ 0.
lv_period = lv_date+4(2).
SELECT SINGLE monam INTO p_monam FROM t015m
WHERE spras = sy-langu
AND monum = lv_period.
IF sy-subrc NE 0.
CLEAR p_monam.
ENDIF.
ENDIF.
ENDFORM. " GET_BUPER
SO USE : SELECTION-SCREEN COMMENT STATMENT
Hope it is helps.
Regards,
T.Durai murugan.
Hope it is helps.
Regards,
T.Durai murugan.
‎2008 Jul 18 1:59 PM
Check the sample code
REPORT ZTEST_SELE.
DATa : UCOMM TYPE SY-UCOMM.
TABLES sscrfields.
PARAMETERS: p_carrid TYPE s_carr_id modif id ABC,
p_cityfr TYPE s_from_cit.
SELECTION-SCREEN: FUNCTION KEY 1,
FUNCTION KEY 2.
INITIALIZATION.
sscrfields-functxt_01 = 'LH'.
sscrfields-functxt_02 = 'UA'.
AT SELECTION-SCREEN OUTPUT.
if ucomm <> 'FC01'.
loop at screen.
if screen-group1 = 'ABC'.
screen-active = 0.
modify screen.
endif.
endloop.
endif.
AT SELECTION-SCREEN.
CASE sscrfields-ucomm.
WHEN'FC01'.
ucomm = sscrfields-ucomm.
p_carrid = 'LH'.
p_cityfr = 'Frankfurt'.
WHEN 'FC02'.
p_carrid = 'UA'.
p_cityfr = 'Chicago'.
ENDCASE.
START-OF-SELECTION.
WRITE / 'START-OF-SELECTION'.
‎2008 Jul 18 2:14 PM
Hi,
Just copy paste below code. It works fine.
PARAMETERS: po_1 TYPE c MODIF ID id1,
po_2 TYPE c MODIF ID id1.
SELECTION-SCREEN SKIP.
SELECTION-SCREEN PUSHBUTTON /10(30) bt USER-COMMAND ucomm.
DATA: l_ucomm TYPE sy-ucomm.
INITIALIZATION.
bt = 'Click me to get input fields'.
AT SELECTION-SCREEN OUTPUT.
CHECK l_ucomm IS INITIAL.
LOOP AT SCREEN.
CHECK screen-group1 = 'ID1'.
screen-active = 0.
MODIFY SCREEN.
ENDLOOP.
AT SELECTION-SCREEN.
l_ucomm = sy-ucomm.
LOOP AT SCREEN.
CHECK screen-group1 = 'ID1'.
screen-active = 1.
MODIFY SCREEN.
ENDLOOP.
Thanks,
Vinod.