Append select options details in one intennal table
Hi
Here by i am selecting Specification data ESTRH-subid in selection screen using SELECT-OPTIONS
i.e SELECT-OPTIONS: s_specif FOR estrh-subid
I need to populate that SUBID details in one internal table, Please let me know procedure
and
I need to count no of recors selected in that selection, the reason is depends on number of records selected in selection screen, the program should run either foreground or back groud
MAdhu
You need something like this?
TABLES: vbak.
DATA: w_counter TYPE i.
TYPES: BEGIN OF ty_auart,
auart TYPE vbak-auart,
END OF ty_auart.
DATA: t_auart TYPE STANDARD TABLE OF ty_auart.
FIELD-SYMBOLS: <fs_auart> LIKE LINE OF t_auart.
SELECTION-SCREEN BEGIN OF BLOCK test.
SELECT-OPTIONS: r_auart FOR vbak-auart.
SELECTION-SCREEN END OF BLOCK test.
START-OF-SELECTION.
LOOP AT r_auart.
w_counter = w_counter + 1.
APPEND INITIAL LINE TO t_auart
ASSIGNING <fs_auart>.
<fs_auart>-auart = r_auart-low.
ENDLOOP.
Greetings,
Blag.
Similar Messages
-
Reading from select-options field into the internal table
Hi,
I have to read the low and high ranges from the select-options fields into a field in the internal table in order to update the same field in line item table. since the user may change the screen fields, i need to pass the values directly from the screen and store it in a variable in the internal table. Is there a way to pass both ranges, low and high to one variable which holds the entire range?
Thanks,
SruthyHi,
In the Selection screen you can directly read the field(Select-option)value using read statement as follows:
READ TABLE <SELECT-OPTIONS field name> [using index] INTO <work area>.
After reading you can directly access all the values as follows and can store them in the variables:
var1 = <work area>-LOW
var2 = <work area>-HIGH
var3 = <work area>-SIGN
var4 = <work area>-OPTION
as per your requirement.
I think this will help you.
<b>Kindly reward if helpful.</b>
Regards,
Shakuntala. -
Select option in dialog, in a table control
Hi Friends,
My need is creating dynamic select options in a table control in dialog screen. How can I do my desire?
Thanks.Hi,
You can make use of
FREE_SELECTIONS_INIT
and
FREE_SELECTIONS_DIALOG
Please see the documentation
a®s -
Select-option in module pool with table Control
HI,
How to use the select-option in Module Pool and how Can i use the Table control in it.
Can any body give me some Clues.
with rgds
RanjithHi ..
PBO.
LOOP at <table contriol>
module --- Inside the module
DATA: g_uti TYPE REF TO cl_fobu_input_util.
if rollname <> space.
CREATE OBJECT g_uti
EXPORTING typename =rollname.
*....convert to external pattern
CALL METHOD g_util->output_convert
EXPORTING
field_value_int = p_value " This is Tablecontrol-low
IMPORTING
field_value_ext = p_value. " Retrun value for Low
ENDLOOP.
lly you have code in PAI
DATA: g_util_1 TYPE REF TO cl_fobu_input_util.
if rollname <> space.
CREATE OBJECT g_util_1
EXPORTING typename = rollname.
*....convert to internal pattern
CALL METHOD g_util_1->input_convert
EXPORTING
field_value_ext = p_value
IMPORTING
field_value_int_c = p_value.
The above code should be written for tablecontrol-high aswell..
you can also refer: Inlcude LSE16NF10 line no 341 & 434 (SE16n)
Nag -
Appending All the fields of one internal table to other
Hi,
while running a FM I get three internal tables, my requirement is that I am running this FM at item level if it is possible to append all the tables datas get as a result of this FM to other internal table having same structure.
I know it is possible while using loop, I need a solution with out using the loop
Regards
NausalMove Itab1[] to itab2[].
data: begin of itab occurs 0,
Maktx LIKE MAKT-MAKTX,
end of itab.
data: begin of itab1 occurs 0,
Maktx LIKE MAKT-MAKTX,
end of itab1.
select maktx from makt into table itab where maktx like 'M1%'.
move itab[] to itab1[].
loop at itab1.
write:/ itab1-maktx.
endloop. -
SELECT-OPTION to internal table
Hi,
I need to convert the select-option values into an internal table.
For example, if there is a select-option S_WERKS... i need all the values entered for S_WERKS into the internal table. The internal table structure contains only WERKS.
My actual requirement is, for the given plant values as select-option, i need to fetch all details of the plants. And I should not use any SELECT statements at any stage. Only through function module/ BAPI/BADI/Class methods.
I found one function module T001W_READ, but i need to pass the plant for that.
Please suggest.
Thanks in advance.
kishoreHi Kishore
Why can't you use any SELECTs? If it is so required why not writing your own FM to select them? You can pass your select-option via a generic parameter and assign it to a range at the beginning of your FM. Or you can assign it to a select-option-like table (you can find structure names of similar type from DDIC)
<i><b>e.g.</b></i>
TABLES t001w .
RANGES s_werks for t001w-werks .
DATA: BEGIN OF lt_werks ,
werks LIKE t001w-werks ,
END OF lt_werks .
s_werks[] = it_werks_so[] .
SELECT werks FROM t001w
INTO lt_werks
WHERE werks IN s_werks .
As another thing, let me introduce you the SDN Forums pointing system: You can assign points to posts which you find helpful while solving your problem. You can reward points by pressing the yellow star icon at header of each post. You can assign;
- one 10 points (solved)
- two 6 points (very helpful answer)
- many 2 points (helpful answer)
*--Serdar -
How to Fill Internal Table with contents of Select-Option
Hi all:
There is a select-option s_matnr on the self-made screen. An internal table t_int is declared in the program. The requirement is that users makes selection with multiple material numbers. I want to put the values of s_matnr into internal table t_int directly. Would you please tell me how?
Thank you very much in advance.
Edited by: dongdong guo on Jun 13, 2008 3:40 AMHi,
Select option works like an internal table only.
For table selection you can use it directly using IN operator in where clause
eg : where matnr IN s_matnr.
Before that you may need to validate the content of the select-option. For that also you need to transfer the content to a new internal table.
u can loop at the select-option.
eq: loop at s_matnr.
if s_matnr-low = 'MAT1'.
condition.
endif.
endloop.
if you just want to check whether any single valid material number exist in your user screen, then u can use a select single option with s_matnr directly.
select single matnr from mara
where matnr in s_matnr.
select-option s_matnr behaves like an internal table with four fields.
sign, option, low, high. -
Select options - dynp_values_update
Hi,
I need to update a select option ( multiple values ) in the selection screen. I tried with DYNP_VALUES_UPDATE but it was not working. I am checking on this for last two days but did not reach the solution.
Please donot tell me to use submit statement ( calls an internall session ) becuase that is what i got when i searched in SCN. I want this functionality to happen when the f4 help is selected. We are providing a popup of multiple checkboxes when f4 is pressed on a select option. When one or more check boxes are selected then those values must be appended to the select option. Please give me some ideas.
If i have to use DYNP_VALUES_UPDATE then how should i use it for select option ?
Regards
KesavHello Keshav,
Not sure why you've used REUSE_ALV_POPUP_TO_SELECT. You can achieve the same by turning on the MULTIPLE_CHOICE param in F4IF_INT_TABLE_VALUE_REQUEST. Check this code snippet:
DATA: v_field TYPE fieldname.
SELECT-OPTIONS: s_field FOR v_field NO INTERVALS.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF screen-name = 'S_FIELD-LOW'.
screen-input = '0'.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_field-low.
* Local type declarations
TYPES : BEGIN OF t_flds,
tabname TYPE dfies-tabname,
fieldname TYPE dfies-fieldname,
keyflag TYPE dfies-keyflag,
fieldtext TYPE dfies-fieldtext,
END OF t_flds.
CONSTANTS: lc_field TYPE fieldname VALUE 'FIELDNAME'.
* Local data declarations
DATA:
ls_flds TYPE t_flds,
lt_flds TYPE STANDARD TABLE OF t_flds,
ls_values TYPE ddshretval,
lt_values TYPE STANDARD TABLE OF ddshretval,
lt_dfies TYPE TABLE OF dfies,
ls_dfies TYPE dfies.
* Get field details of the Table
CALL FUNCTION 'DDIF_FIELDINFO_GET'
EXPORTING
tabname = 'MARC'
langu = sy-langu
TABLES
dfies_tab = lt_dfies
EXCEPTIONS
not_found = 1
internal_error = 2
OTHERS = 3.
IF sy-subrc = 0.
LOOP AT lt_dfies INTO ls_dfies WHERE fieldname NE 'MANDT'.
MOVE-CORRESPONDING ls_dfies TO ls_flds.
APPEND ls_flds TO lt_flds.
ENDLOOP.
ELSE.
EXIT.
ENDIF.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = lc_field
window_title = 'Select the Table Field'(001)
dynpprog = sy-repid
dynpnr = sy-dynnr
dynprofield = 'S_FIELD-LOW'
value_org = 'S'
multiple_choice = 'X'
display = 'F'
TABLES
value_tab = lt_flds
return_tab = lt_values.
s_field-sign = 'I'.
s_field-option = 'EQ'.
LOOP AT lt_values INTO ls_values .
s_field-low = ls_values-fieldval.
APPEND s_field.
ENDLOOP.
DATA: lt_dynpread TYPE STANDARD TABLE OF dynpread,
lwa_dynpread TYPE dynpread.
READ TABLE s_field INDEX 1.
IF sy-subrc = 0.
lwa_dynpread-fieldname = 'S_FIELD-LOW'.
lwa_dynpread-fieldvalue = s_field-low.
APPEND lwa_dynpread TO lt_dynpread.
* Update the screen field values
CALL FUNCTION 'DYNP_VALUES_UPDATE'
EXPORTING
dyname = sy-repid
dynumb = sy-dynnr
TABLES
dynpfields = lt_dynpread
EXCEPTIONS
invalid_abapworkarea = 1
invalid_dynprofield = 2
invalid_dynproname = 3
invalid_dynpronummer = 4
invalid_request = 5
no_fielddescription = 6
undefind_error = 7
OTHERS = 8.
IF sy-subrc NE 0.
ENDIF.
ENDIF.
Hope this helps.
BR,
Suhas -
Hi Gurus,
Please let me know which is the best way to validate a select option and performance way also it must be best.
May be this is a silly question but still I was not able to find the best convincing answer in the FORUM.
Kindly validate.
Method 1:
AT SELECTION-SCREEN ON so_vbeln . " Delivery document
PERFORM validate_vbeln .
FORM validate_vbeln.
DATA : l_t_vbeln TYPE TABLE OF vbuk-vbeln WITH HEADER LINE ,
l_f_vbeln TYPE vbuk-vbeln .
RANGES ra_vbeln FOR vbuk-vbeln.
LOOP AT so_vbeln.
IF NOT so_vbeln-low IS INITIAL.
ra_vbeln-sign = 'I'.
ra_vbeln-option = 'EQ'.
ra_vbeln-low = so_vbeln-low.
APPEND ra_vbeln.
ENDIF.
IF NOT so_vbeln-high IS INITIAL.
ra_vbeln-sign = 'I'.
ra_vbeln-option = 'EQ'.
ra_vbeln-low = so_vbeln-high..
APPEND ra_vbeln.
ENDIF.
ENDLOOP .
IF NOT so_vbeln[] IS INITIAL.
SELECT vbeln INTO TABLE l_t_vbeln
FROM vbuk
WHERE vbeln IN ra_vbeln.
ENDIF.
LOOP AT so_vbeln.
IF so_vbeln-low space.
READ TABLE l_t_vbeln WITH KEY = so_vbeln-low.
IF sy-subrc 0.
SET CURSOR FIELD 'SO_vbeln-LOW'.
MESSAGE e001(vb) WITH so_vbeln-low.
ENDIF.
ENDIF.
IF so_vbeln-high space.
READ TABLE l_t_vbeln WITH KEY = so_vbeln-high.
IF sy-subrc 0.
SET CURSOR FIELD 'SO_vbeln-HIGH'.
MESSAGE e001(vb) WITH so_vbeln-high.
ENDIF.
ENDIF.
ENDLOOP.
ENDFORM. " validate_vbeln
Method 2
AT SELECTION-SCREEN ON so_werks.
PERFORM validate_plant.
FORM validate_plant.
DATA: BEGIN OF l_t_werks OCCURS 0,
werks LIKE t001w-werks,
END OF l_t_werks.
IF NOT so_werks[] IS INITIAL.
SELECT werks INTO TABLE l_t_werks
FROM t001w
WHERE werks IN so_werks.
ENDIF.
LOOP AT so_werks.
IF so_werks-low space.
READ TABLE l_t_werks WITH KEY werks = so_werks-low.
IF sy-subrc 0.
MESSAGE e892(m7) WITH so_werks-low.
ENDIF.
ENDIF.
IF so_werks-high space.
READ TABLE l_t_werks WITH KEY werks = so_werks-high.
IF sy-subrc 0.
MESSAGE e892(m7) WITH so_werks-high.
ENDIF.
ENDIF.
ENDLOOP.
ENDFORM.Hello Raj,
For me if the SELECT-OPTION fetches atleast one record from the check table, processing should be allowed to proceed.
It's not required to check each & every records in the select-option & throw an error message for these invalid records (unlike PARAMETERs)
I would code something like this:
SELECT vbeln INTO TABLE l_t_vbeln UP TO 1 ROWS
FROM vbuk
WHERE vbeln IN so_vbeln. ENDSELECT.
IF sy-subrc NE 0.
MESSAGE 'No valid Sales Order selected for the input range. Please check.' TYPE 'E'.
ENDIF.
BR,
Suhas -
i have 5 select options on the screen. i want to take each select option .e.g one to one correpondence... I have to use a select query looping on the select option and send mails depending on the select query. also i have to concatenate the select option values in a variable
hi
hope it will help you.
Pls reward if help.
SELECT-OPTIONS: BEDAT FOR EKKO-BEDAT.
SELECT-OPTIONS: EBELN FOR EKKO-EBELN.
SELECT-OPTIONS: MATNR FOR EKPO-MATNR.
SELECT-OPTIONS: EREKZ FOR EKPO-EREKZ.
SELECT-OPTIONS: KOSTL FOR EKKN-KOSTL.
SELECT-OPTIONS: AUFNR FOR EKKN-AUFNR
DATA: INT LIKE ZSIMM_PO_HISTORY OCCURS 0 WITH HEADER LINE.
DATA: LW_EKKO TYPE EKKO,
LW_EKPO TYPE EKPO,
LW_EKKN TYPE EKKN,
LW_LFA1 TYPE LFA1.
SELECT * FROM EKKO INTO LW_EKKO
WHERE ( EBELN IN EBELN ) AND
( BEDAT IN BEDAT ).
CLEAR: INT.
IF SY-SUBRC = 0.
MOVE-CORRESPONDING LW_EKKO TO INT.
ENDIF.
SELECT * FROM EKPO INTO LW_EKPO
WHERE ( EBELN = LW_EKKO-EBELN ) AND
( MATNR IN MATNR ) AND
( EREKZ IN EREKZ ).
CLEAR: INT.
MOVE-CORRESPONDING LW_EKKO TO INT.
IF SY-SUBRC = 0.
MOVE-CORRESPONDING LW_EKPO TO INT.
ENDIF.
*SELEKCIJSKI EKRAN ZA CC IN ORDER
CLEAR: EKKN.
SELECT SINGLE * FROM EKKN WHERE ( EBELN = LW_EKPO-EBELN ) AND
( EBELP = LW_EKPO-EBELP ) AND
( KOSTL IN KOSTL ) and
( AUFNR IN AUFNR ).
MOVE EKKN-KOSTL TO INT-KOSTL.
MOVE EKKN-AUFNR TO INT-AUFNR.
CALL FUNCTION 'ME_READ_HISTORY'
EXPORTING
EBELN = LW_EKPO-EBELN
EBELP = LW_EKPO-EBELP
WEBRE = ' '
TABLES
XEKBES = BETS.
LOOP AT BETS WHERE ZEKKN EQ SPACE.
MOVE-CORRESPONDING BETS TO INT.
APPEND INT.
ENDLOOP.
IF SY-SUBRC NE 0.
APPEND INT.
ENDIF.
REFRESH BETS.
CLEAR: LW_EKPO.
ENDSELECT.
CLEAR: LW_EKKO.
ENDSELECT. -
Cant't get the data through SELECTION-OPTION
hi all,
i have created a REPORT in which i have two SELECTION-OPTION i-e one is ANLKL from TABLE ANLA and other is GJAHR from table ANLC.Problem which i m facing is that when i execute without giving my SELECTION-OPTION GJAHR.it gives me all data for example(2005,2007,2008),but when im defining it with by 2005 it gives blank fields even though there is data with GJAHR by 2005.
This is the coding of my report:
include zalsd_alv_incl.
TABLES:ANEP,ANLA,ANLC.
SELECT-OPTIONS:
S_ANLKL FOR ANLA-ANLKL DEFAULT '1100' to '2790',
S_GJAHR FOR ANLC-GJAHR.
DATA:BEGIN OF gi_anla OCCURS 0,
bukrs LIKE anla-bukrs,
ANLN1 LIKE anla-ANLN1,
ANLN2 LIKE anla-ANLN2,
AKTIV LIKE ANLA-AKTIV,"Asset capitalization date
ANLKL LIKE ANLA-ANLKL,"Asset Class
END OF gi_anla,
BEGIN OF GI_ANLC OCCURS 0,
bukrs LIKE anlc-bukrs,
NAFAP LIKE anlc-nafag,"Posted Depreciation
kansw LIKE anlc-kansw,"Asset Acquisation Value
ANLN2 LIKE anlc-anln2,"Asset Subnumber
ANLN1 LIKE anlc-ANLN1,"Main Asset Number
GJAHR LIKE ANLC-GJAHR,"Fiscal Year
AFABE LIKE ANLC-AFABE,"Real depreciation area
ANSWL LIKE ANLC-ANSWL,"Transactions for the year
END OF GI_ANLC,
BEGIN OF gi_main OCCURS 0,
sno type i, "S.No
bukrs LIKE anla-bukrs,"Company code
ANLN1 LIKE anlc-ANLN1,"Main Asset Number
anln2 LIKE anlc-anln2,"Asset Subnumber
AKTIV LIKE ANLA-AKTIV,"Asset capitalization date
ANLKL LIKE ANLA-ANLKL,"Asset Class
NAFAG LIKE anlc-nafag,"Ordinary Depreciation Posted
kansw LIKE anlc-kansw,"Asset Acquisation Value
GJAHR LIKE ANLC-GJAHR,"Fiscal Year
PSTEND LIKE anlc-PSTEND,"Posting depreciation up to period
AFABE LIKE ANLC-AFABE,"Real depreciation area
ANSWL LIKE ANLC-ANSWL,"Transactions for the year
END OF gi_main.
START-OF-SELECTION.
PERFORM get_data.
PERFORM organize_data.
PERFORM f_display_report.
END-OF-SELECTION.
form get_data.
SELECT anlc~bukrs anlc~anln1 ANLC~ANLN2 kansw nafaG PSTEND ANSWL ANLKL AKTIV
INTO CORRESPONDING FIELDS OF TABLE gi_main
FROM
ANLC
INNER JOIN ANLA ON
anlc~bukrs = anla~bukrs AND
anlc~anln1 = anla~anln1 AND
ANLC~ANLN2 = ANLA~ANLN2
WHERE AFABE eq '1'
AND GJAHR IN S_GJAHR
AND ANLA~ANLKL in S_ANLKL.
ENDFORM.
FORM organize_data.
data: lv_index type sy-tabix.
LOOP at gi_anla.
move sy-tabix to gi_main-sno.
READ TABLE gi_anla WITH KEY bukrs = gi_anla-bukrs
anln1 = gi_anla-anln1
anln2 = gi_anla-anln2.
MOVE-CORRESPONDING gi_anla to gi_main.
READ TABLE gi_anlc WITH KEY bukrs = gi_anlc-bukrs
anln1 = gi_anlc-anln1
anln2 = gi_anlc-anln2.
IF sy-subrc = 0.
MOVE-CORRESPONDING gi_anlc to gi_main.
ENDIF.
APPEND gi_main.
CLEAR gi_main.
ENDLOOP.
ENDFORM.
form f_display_report.
perform fill_fieldcat using 'SNO' 5 'S.No.' 'gi_main'.
perform fill_fieldcat using 'ANLKL' 20 'Asset Class' 'gi_main'.
perform fill_fieldcat using 'ANLN1' 20 'Asset Number' 'gi_main'.
perform fill_fieldcat using 'ANLN2' 20 'Asset Subnumber' 'gi_main'.
perform fill_fieldcat using 'AKTIV' 20 'Asset Capitalization Date' 'gi_main'.
perform fill_fieldcat using 'KANSW' 20 'Asset Acquisation Value' 'gi_main'.
perform fill_fieldcat using 'NAFAG' 20 'Posted Depreciation' 'gi_main'.
perform fill_fieldcat using 'PSTEND' 20 'Posting depreciation up to period' 'gi_main'.
perform fill_fieldcat using 'ANSWL' 20 'Transactions for the year' 'gi_main'.
perform add_heading_alv using c_alv_head_header '' 'Ghulam Farooq Group'.
perform display_alv using gi_main[].
endform.
Thankks,
abapfkHi,
I created a program with the 2 select-option and a structure for storage and a select statement.
REPORT Z_ANLA_ANLC_TEST.
TABLES:ANEP,ANLA,ANLC.
SELECT-OPTIONS:
S_ANLKL FOR ANLA-ANLKL DEFAULT '1100' to '2790',
S_GJAHR FOR ANLC-GJAHR.
DATA :
BEGIN OF gi_main OCCURS 0,
sno type i, "S.No
bukrs LIKE anla-bukrs,"Company code
ANLN1 LIKE anlc-ANLN1,"Main Asset Number
anln2 LIKE anlc-anln2,"Asset Subnumber
AKTIV LIKE ANLA-AKTIV,"Asset capitalization date
ANLKL LIKE ANLA-ANLKL,"Asset Class
NAFAG LIKE anlc-nafag,"Ordinary Depreciation Posted
kansw LIKE anlc-kansw,"Asset Acquisation Value
GJAHR LIKE ANLC-GJAHR,"Fiscal Year
PSTEND LIKE anlc-PSTEND,"Posting depreciation up to period
AFABE LIKE ANLC-AFABE,"Real depreciation area
ANSWL LIKE ANLC-ANSWL,"Transactions for the year
END OF gi_main.
START-OF-SELECTION.
SELECT anlcbukrs anlcanln1 ANLC~ANLN2 kansw nafaG PSTEND ANSWL ANLKL AKTIV
INTO CORRESPONDING FIELDS OF TABLE gi_main
FROM
ANLC
INNER JOIN ANLA ON
anlcbukrs = anlabukrs AND
anlcanln1 = anlaanln1 AND
ANLCANLN2 = ANLAANLN2
WHERE AFABE eq '1'
AND GJAHR IN S_GJAHR
AND ANLA~ANLKL in S_ANLKL.
BREAK-POINT.
Here is the result at the break point
GI_MAIN[] Standard Table[831x12(116)]
S_ANLKL[] Standard Table[0x4(38)]
S_GJAHR[] Standard Table[1x4(22)]
S_GJAHR-LOW 2009
S_GJAHR-HIGH 0000
I entered value only in GJAHR.
I see there is no problem with the JOIN and the selection, i assume there is a problem with the data.
Try creating a simple query using sqvi and check it.
Regards,
George. -
Fill select-options in Page with flow logic ???
Hello All,
I created a BSP Application using Page with Flow Logic.
In the first page of my Application I'm using 2 input fields as select-options.
Now I'm populating a Ranges of that Field using the type :-
selopttab
I populated the ranges table like :-
wa_bname_sel-sign = 'I'.
wa_bname_sel-option = 'BT'.
wa_bname_sel-low = '*'.
wa_bname_sel-high = 'Z'.
ELSE.
wa_bname_sel-sign = 'I'.
wa_bname_sel-option = 'EQ'.
wa_bname_sel-low = p_bname.
wa_bname_sel-high = p_bname.
ENDIF.
APPEND wa_bname_sel TO p_bname_sel.
CLEAR wa_bname_sel.
But the problem is I checked the corresponding DATABASE Table entries by passing thesame value .
i.e I passed the low and high values to the field as '*' and 'Z'.
The total number of entries differ when passing '*' and 'Z' to when passing SPACE.
I tried even with contains Pattern .This time the total number of records fetching has Increased but the sum is not exact when passed SPACE to the Database Table.
So what should I pass to the Low and High values of my Ranges Table to get all the entries ????
DOes this type of building the Ranges work in BSP's ?
How are u people working out for the select-options functionality in Page with flow logic ?
Message was edited by:
deepu kHello Jessy,
To populate select-options or Ranges in Page with flow logic I used the following code :
************************ Bulid the Select-Options**************************************
DATA: p_bname_sel TYPE STANDARD TABLE OF selopttab,
p_bsp_name_sel TYPE STANDARD TABLE OF selopttab,
p_tcode_sel TYPE STANDARD TABLE OF selopttab.
DATA: wa_bname_sel TYPE selopttab,
wa_bsp_name_sel TYPE selopttab,
wa_tcode_sel TYPE selopttab.
* Select-Options for Username
REFRESH p_bname_sel.
CLEAR wa_bname_sel.
IF ( p_bname IS INITIAL ).
wa_bname_sel-sign = 'I'.
wa_bname_sel-option = 'CP'.
wa_bname_sel-low = '*'.
wa_bname_sel-high = ''.
ELSE.
wa_bname_sel-sign = 'I'.
wa_bname_sel-option = 'EQ'.
wa_bname_sel-low = p_bname. " p_bname is the Input field and the value is taken from it
wa_bname_sel-high = p_bname.
ENDIF.
APPEND wa_bname_sel TO p_bname_sel.
CLEAR wa_bname_sel.
* Select-Options for BSP_Application
REFRESH p_bsp_name_sel.
CLEAR wa_bsp_name_sel.
IF ( p_bsp_name IS INITIAL ).
wa_bsp_name_sel-sign = 'I'.
wa_bsp_name_sel-option = 'CP'.
wa_bsp_name_sel-low = '*'.
wa_bsp_name_sel-high = ''.
ELSE.
wa_bsp_name_sel-sign = 'I'.
wa_bsp_name_sel-option = 'EQ'.
wa_bsp_name_sel-low = p_bsp_name. " Input field
wa_bsp_name_sel-high = p_bsp_name.
ENDIF.
APPEND wa_bsp_name_sel TO p_bsp_name_sel.
CLEAR wa_bsp_name_sel.
* Select-Options for TCODE
REFRESH p_tcode_sel.
CLEAR wa_bsp_name_sel.
IF ( p_tcode IS INITIAL ).
wa_tcode_sel-sign = 'I'.
wa_tcode_sel-option = 'CP'.
wa_tcode_sel-low = '*'.
wa_tcode_sel-high = ''.
ELSE.
wa_tcode_sel-sign = 'I'.
wa_tcode_sel-option = 'EQ'.
wa_tcode_sel-low = p_tcode. " Input field
wa_tcode_sel-high = p_tcode.
ENDIF.
APPEND wa_tcode_sel TO p_tcode_sel.
CLEAR wa_tcode_sel.
* Select all the related entries when either BSP or TCode is choosen
IF ( ( p_bsp_name IS NOT INITIAL ) AND ( p_tcode IS INITIAL ) )
OR
( ( p_bsp_name IS INITIAL ) AND ( p_tcode IS INITIAL ) ).
REFRESH gt_final.
SELECT bname
bsp_name
description
ldate
ltime
calls
FROM <custom_table>
INTO TABLE gt_final
AND bsp_name IN p_bsp_name_sel
AND ldate IN p_ldate_sel.
endif.
Hope that wud help u !!!
Regards,
Deepu.K -
Clearing Select-Options in selection screen
Hello,
im having trouble clearing the select options in a selection screen.
i dont really know why, but if i run the program, and add REFRESH TABLE_RANGE[] (which was declared as a select-options) , it does clear the table in the debug, but shows it again on the screen.
i've tried CLEAR too, but it didnt really help.
is there a know solution?
thanks.Hi,
There are two things associated with select-option one is header and other table
Try
CLEAR: TABLE_RANGE[] .
CLEAR TABLE_RANGE.
And are you sure your select-option name is TABLE_RANGE as I think only 8 character are allowed to name the selection screen field.
Regards,
Atish -
Change from Parameter to Select-options.
Hi All,
Requirement is to change the existing program.
One of my requirement is to change parameter(P_VKORG) to Select-options(S_VKORG).
I mean earlier we have only one Slaes Organization, now we have got to use multiple Sales organizations. For this requirement I have used select-options insted of Parmeters.
But the code has:
a)PERFORMS using Parameters( P_VKORG). This inturn is used in the select statement of the FORM-ENDFORM.
b)READ statement also has P_VKORG in where condition.
How should these be replaced with Select-options(S_VKORG)?
What would be the effect if I directly replace them with S_VKORG.
Kalyani Tyou cannot just directly replace with S_VKORG.
select option is a structure with 4 fields, sign, option, low and high, hence it has to be dealt accordingly.
a. performs has to be changed to 'tables S_VKORG'
eg. perform get_data tables s_vkorg.
b. read statement has to be modified to deal with multiple values. best option will be to select for data in s_vkorg, and save in an internal table.
for eg, if select option was for vkorg,
select vkorg from tvko into t_tvko where vkorg in s_vkorg.
now t_tvko has list of possible vkorgs - regardless of we had a range or ne or gt or CP or whatever we had in select option.
now modify the read table to do for entries in T_TVKO.
c. in the select statement which is used in forms, wherever you see ' = P_vkorg' , replace with IN S_VKORG. -
Hello @all,
I want to make reporting in webdynpro ABAP. I have one Webdynpro component for this. For this I have see many tutorials. But in all the select-options and alv are on one view. i want to make it on two views. Has anybody an tutorial for this or an idea how i can do this easily.
On one view i have my select options implemented with one container. Now I want to make the ALV table, but i want display the alv on a other site, not under the select options.
Anybody an idea how i can do this.
Thanks and regards
ChrispHi,
You can proceed as follows:
1.Create select options in one view and ALV table in other view.
2.since its reporting you might be having some button like SEARCH ,once the user
enters the data in the selection screen he clicks on the SEARCH button .
3.In the action handler of the SEARCH button ,get the data from based on the selection criteria
and store that value in component controller attribute.(create an attribute in comp controller level)
4.Create an outbound plug for selection screen view and inbound plug for the ALV table View .
once you get the data ,based on selection criteria, fire the outbound plug in action handler of the button.
5.now in the second view bind the ALV table with data which was stored in the component controller level.
Priya
Maybe you are looking for
-
How to switch off iTunes match
I got a new Iphone 5S, I try to sync my musics to my phone, But I have got the following: "Iphone can access music in icloud. songs can be downloaded and played via Wi-Fi or a cellular network." Also I cannot get my ringtunes on to my new phone. Are
-
How do I populate the address book when trying to send a photo(s) by email?
How do I populate the address book when trying to send a photo(s) by email?
-
Ability to adjust multiple images at the same time as in Bridge
Why the extra step of having to sync develop settings? Why not have lightroom's develop module work like Camera Raw? I would like the ability to select my main image and any others that need the same adjustments, then make adjustments to the one whil
-
Can I create a JTA EntityManagerFactory in a utility class in a .jar file?
I have utility classes in a .jar file inside of a .war file deployed in Glassfish 3.1. One of these utility classes, CredentialsUtil, needs to access a database. I can't inject an EntityManager into CredentialsUtil since it is not an EJB. (For securi
-
Hello all. I have quite a trouble with JVM: We're developing a multimodule web application. Modified wars (=modules) are sent from continuous integration server to our development JBoss many times a day - this redeploys modified WAR. The same for cli