‎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..
‎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.