2006 Feb 20 9:43 AM
hi frnds,
my requirement, i have a selection screen with a select-option. After the user inputs the value in the select-options, i have to display a screen which shows some of the values which may not be correct. then the user will
go back to the selection screen to re-input the values..
any suggestions to do this elegently. Now im using some crude method. plz remember that, the displayed values will be more than 1, so i cant use a 'message'...
all answers assured points..
regards,
Madan...
2006 Feb 20 9:49 AM
hi madan...
what is the relation between displayed values after the selection screen and the user inputs..
hi madan...
what is the relation between displayed values after the selection screen and the user inputs..
2006 Feb 20 9:49 AM
hi madan,
1. displayed values will be more than 1, so i cant use a 'message'...
Thats fine.
U can use
a) alv list display
b) simple write statement to show the information list
2. If some wrong value is there, then u can show
as above a,b.
Other wise u can process the rest of the logic.
regards,
amit m.
2006 Feb 20 9:49 AM
hi madan...
what is the relation between displayed values after the selection screen and the user inputs..
2006 Feb 20 9:56 AM
If there are wrong values then, it will will be excluded from the select options.. as arun has mentioned, im using the list, but is there a better way doing it, like popping a small screen with the values..
2006 Feb 20 10:12 AM
Hi,
If U have any check table for the values entered on the
selection screen(I mean for the field) then U can write
a select.
Select Myfield from checktableforfield
into table it_tab
where myfield in s_myfield.
Now U can populate/show all these values which valid.
I think this should work.
Regards,
GSR.
2006 Feb 20 10:38 AM
Hi,
Try this code.It will work for all the select-options low value.Even though I am using message,it will show you all the invalid values at a strectch.
REPORT zzz_jaytest1 NO STANDARD PAGE HEADING message-id zhrt.
tables pa0001.
select-options s_pernr for pa0001-pernr.
data v1(100).
start-of-selection.
loop at s_pernr.
...check for invalid.If so,write the logic
concatenate v1 ',' s_pernr-low into v1.
endloop.
concatenate v1 ' not valid' into v1.
message i000 with v1.
leave list-processing.
Kindly reward points by clikcing the star on the left of reply,if it helps.
2006 Feb 20 10:49 AM
hi jayanthi,
im using the same logic as u have mentioned, but the control never goes to the list...
my code is sumting like this,
start-of-selection.
if itab[] is not initial.
loop at itab.
write:/ itab.
endloop.
call selection-screen 1000.
if if itab[] is initial.
call screen 9000.
endif.
the control goes to the itab and write statement, but b4 the list is displayed, screen 9000 is called.
regards,
madan..
2006 Feb 20 11:03 AM
Hi,
I understood from your code that,if itab is blank,you want screen 9000 to be called and if itab is not initial,you want to write something.
First thing I want to tell you,avoid using write statement.Write won't work here.
if not itab[] is initial.
...write the logic as I told before using concatenation and then print finally the message
leave list-processing."Control will go to selection screen
else.
call screen 9000.
endif.
2006 Feb 20 10:05 AM
hi Madan,
i think you can use CALL SELECTION-SCREEn..
something like this..
tables : vbak.
data : it like table of vbak with header line.
SELECTION-SCREEN BEGIN OF SCREEN 500 TITLE title
AS WINDOW.
PARAMETERS name TYPE sy-uname.
SELECTION-SCREEN END OF SCREEN 500.
SELECTION-SCREEN BEGIN OF SCREEN 200 AS WINDOW.
SELECTION-SCREEN COMMENT /2(30) TEXT-100.
SELECTION-SCREEN END OF SCREEN 200.
select * into table it from vbak where vbeln between '0000004970' and
'0000004980'.
SELECTION-SCREEN BEGIN OF SCREEN 300 AS WINDOW.
selection-screen comment /2(15) com.
SELECTION-SCREEN END OF SCREEN 300.
*COM = 'Unauthorised User'.
loop at it.
concatenate it-vbeln com into com.
endloop.
title = 'Input name'.
CALL SELECTION-SCREEN '0500' STARTING AT 5 5.
CALL SELECTION-SCREEN '0300' STARTING AT 5 5.
write : / 'hi'.
CALL SELECTION-SCREEN '0500' STARTING AT 5 5.it might work..
if it doesn't the best way will be to use an ALV ..
regards
satesh
2006 Feb 20 10:34 AM
U can use FM
CALL FUNCTION 'POPUP_WITH_TABLE_DISPLAY'
EXPORTING
ENDPOS_COL = 5
ENDPOS_ROW = 5
STARTPOS_COL = 1
STARTPOS_ROW = 1
TITLETEXT = 'Title'
IMPORTING
CHOISE =
TABLES
VALUETAB = vbeln
EXCEPTIONS
BREAK_OFF = 1
OTHERS = 2
2006 Feb 20 10:34 AM
POPUP_TO_GET_VALUE: This function can be used in a program to return some value to user through a popup on the screen.
for more details check this site...
2006 Feb 20 10:53 AM
hI MADAN,
1. U want to show SMALL WINDOW ?
2. do like this :
3.
REPORT zbha_temp.
PARAMETERS : A TYPE C.
DATA : BEGIN OF itab OCCURS 0,
f(30) TYPE c,
END OF itab.
START-OF-SELECTION.
itab-f = 'AAA'.
APPEND itab.
itab-f = 'BBB'.
APPEND itab.
CALL FUNCTION 'POPUP_WITH_TABLE_DISPLAY'
EXPORTING
endpos_col = 15
endpos_row = 15
startpos_col = 10
startpos_row = 10
titletext = 'Title'
IMPORTING
CHOISE =
TABLES
valuetab = itab
EXCEPTIONS
BREAK_OFF = 1
OTHERS = 2
.
REGARDS,
AMIT M.
| User | Count |
|---|---|
| 6 | |
| 3 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |