2008 May 19 11:14 AM
In My screen there are five fields..I am using loop at screen concept while i need to make disable a particular field based on some conditions..
Is there any other method is there to make a field invisible,disable with out using the loop at screen and endloop..
becoz its taking time,performance hit is coming..
no chance of error in at sele output..
send that code
2008 May 19 11:22 AM
Hello Mahesh,
there is no other way making fields invisible with out loop.
Coming to performace, it won't take that much time because, consider you have 5 select options. then loop will excute 15 times ((fieldname, low and high)*3).
Reward if helpful.
Regards
--
Sasidhar Reddy Matli.
2008 May 19 11:30 AM
are you sure loop at screen is taking time? i dont think that shud cause any problem!!can u paste ur code here??
did u try checking ur program through se30 and st05?
regards,
madhu
2008 May 19 11:33 AM
2008 May 19 11:43 AM
loop at screen should not be time consuming...
Please check your code where you are validating the selections .
Send us your code, We can help you further .
Cheers,
Sugopa
2008 May 19 11:43 AM
Hi Mahesh,
Try assigning the selection screens in groups .
Look at the below code this may help you.
FORM modify_screen USING in_group1
in_active
in_invisible
CHANGING io_screen.
IF screen-group1 EQ in_group1.
screen-active = in_active.
screen-invisible = in_invisible.
MODIFY SCREEN.
ENDIF.
ENDFORM.
LOOP AT SCREEN.
IF g_movement EQ c_unun OR g_movement EQ c_qiqi.
PERFORM modify_screen USING 'MA1' '0' '1'
CHANGING screen.
PERFORM modify_screen USING 'MA2' '0' '1'
CHANGING screen.
PERFORM modify_screen USING 'QA1' '0' '1'
CHANGING screen.
PERFORM modify_screen USING 'QA2' '0' '1'
CHANGING screen.
PERFORM modify_screen USING 'QA4' '0' '1'
CHANGING screen.
ENDIF.
IF g_movement EQ c_unqi OR g_movement EQ c_qiun.
PERFORM modify_screen USING 'MA1' '1' '0'
CHANGING screen.
PERFORM modify_screen USING 'MA2' '0' '1'
CHANGING screen.
PERFORM modify_screen USING 'QA1' '0' '1'
CHANGING screen.
PERFORM modify_screen USING 'QA2' '0' '1'
CHANGING screen.
PERFORM modify_screen USING 'QA4' '0' '1'
CHANGING screen.
ENDIF.
IF g_movement EQ c_unbl OR g_movement EQ c_qibl.
PERFORM modify_screen USING 'MA1' '1' '0'
CHANGING screen.
PERFORM modify_screen USING 'QA2' '1' '0'
CHANGING screen.
PERFORM modify_screen USING 'QA0' '1' '0'
CHANGING screen.
PERFORM modify_screen USING 'MA2' '0' '1'
CHANGING screen.
PERFORM modify_screen USING 'QA1' '0' '1'
CHANGING screen.
PERFORM modify_screen USING 'QA4' '0' '1'
CHANGING screen.
ENDIF.
IF g_movement EQ c_blun OR g_movement EQ c_blqi.
PERFORM modify_screen USING 'QA1' '1' '0'
CHANGING screen.
PERFORM modify_screen USING 'QA2' '1' '0'
CHANGING screen.
PERFORM modify_screen USING 'QA0' '0' '1'
CHANGING screen.
PERFORM modify_screen USING 'QA4' '0' '1'
CHANGING screen.
ENDIF.
PERFORM modify_screen USING 'QA0' '0' '1'
CHANGING screen.
IF v_im_wm = '2' OR v_third_party = '2'.
PERFORM modify_screen USING 'CHK' '0' '1'
CHANGING screen.
ENDIF.
ENDIF.
ENDLOOP.
2008 May 19 11:49 AM
Hi,
There is no other way to enable and disable the selection screen fields based on the condition, we have to use loop at screen method only.
Thanks,
Sriram Ponna.
| User | Count |
|---|---|
| 6 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |