Passing select-options parameters type to the class
Hi All,
I am creating one class and I want to pass the select-options parameters directly to it like s_plant,s_mtart etc .
So while specifying these as paramters what type I should give them?
Rgds,
Madhuri
Whatever you finally decide upon, you must have a Data Dictionary definition. So either create one for each type (bukrs, vkorg, etc.) or use a general one like RSELOPTION. However with the general one you have to put extra code in the class to convert back from a CHAR 45 field to your special field.
Anyway, using the Data Dictionary is fun! So go create as many new tables as you need. In the long term, the work you do in the Data Dictionary is never wasted and it may save you time in the future when you need that structure / table again for a different program.
Creating these structures and tables is easy if you use shortcuts. For example in local definitions in your program you can code...
data range1 type range of bukrs.
or
data wa_bukrs type bukrs.
ranges range1 for wa_bukrs.
either of these gives you the structure... no need to manually type sign, option, low, high...
What about Global (data dictionary) definitions? yes, there are also shortcuts...
start transaction SE11, enter range table name in the 'Data' field (e.g. ZMYRANGETAB), Hit Create, choose to create a Table Type... now you are on the blank new Maintain Table Type screen. enter a short text for your new table, then choose
Edit->Define as ranges table type
next enter your data element (e.g. BUKRS) under 'data element', hit Save and activate. You just created your range table without manually entering sign, option, low, high...
But wait there's more... on the same screen you can now (after saving the range table) also enter a structure name such as ZMYRANGE in the field 'structured row type'. Hit Create and you are taken to the Maintain Structure screen where the sign, option, low and high are already populated... add a short description and save and activate... you just created a workarea for your range table.
You just created a table type ZMYRANGETAB and a structure ZMYRANGE with minimal effort.
Similar Messages
-
Problem in passing select-options to class meathods , type any table
<h1>how to pass type any table to class meathod</h1>
<h3>hi all
i'm trying to build class to validate the selection screen , like select-options and parameters
while writing meathod to validate the select-options
its throwing parameter mismath error</h3>
<h4>i tried like made import parameter in class meathod as 'TYPE ANY TABLE' and tried to pass select-options from my program it is saying type mismatch , how to overcome this problem </h4>
<h4>and i want to pass any select option , either of type lfa1-lifnr or mara-matnr or any other</h4>
Moderator message : Don't shout, use proper font size for explaining the question. This has been discussed in ABAP forums before. Search for available information. Thread locked.
Edited by: Vinod Kumar on Sep 14, 2011 11:20 AMhI
Triggering and Handling events
At the moment of implementation, a class defines its:
Instance events (using the EVENTS statement)
Static events (using the CLASS-EVENTS statement)
Classes or their instances that receive a message when an event is triggered at runtime and want to react to this event define event handler methods. Statement: METHODS
CLASS IC1_VEICHLE DEFINATION.
PUBLIC SECTION.
METHOD CONSTRUCTOR IMPORTING
EVENTS VEICHEL_CREATION.
ENDCLASS
CLASS LC1_VEICHLE IMPLIMENTATION.
METHOD CONSTRUCTOR
RAISE EVENT VEICHLE_CREATION.
REWARD IF USEFULL -
HOW TO PASS SELECT-OPTIONS AS IMPORT PARAMETER TO A CLASS
Hi experts,how to pass select options value as a export parameters to a zclass.
can give me some idea.
Thanks
saiAs Sachin already said, selection options are stored in an internal table. You can reconstruct the table type without the corresponding input fields using the type addition RANGE OF.
So - assuming you have the following in your program:
DATA: wa TYPE sflight.
SELECT-OPTIONS so_car FOR sflight-carrid.
you can create a publically-visible type in your class using direct type entry and the code
TYPES: my_selectoption TYPE RANGE OF sflight-carrid.
and use this to define the importing parameter of the method.
The only other thing you have to remember is that select-options generates an internal table with header line. Thereore, to pass the table to the method, you would use (in the above example) so_car[], and not just the name of the select-option.
Hope this helps.
Regards
Jon. -
Passing select-options to method of class
Hai friends,
Could u please tell me how to pass select-options as parameters to method of a class.Hi
You have to declare the select
options like
<b>DATA: l_kunnr TYPE STANDARD TABLE OF wselkunnr,</b>
see this example
*& Report ZCL_TEST_ANJI
REPORT zcl_test_anji.
TABLES kna1.
DATA: l_kunnr TYPE STANDARD TABLE OF wselkunnr,
l_kna1 TYPE STANDARD TABLE OF kna1,
l_sales TYPE STANDARD TABLE OF vbak,
l_cust TYPE kna1,
l_vbak TYPE vbak.
DATA: obj_cust TYPE REF TO zcl_test_anji.
SELECT-OPTIONS: s_kunnr FOR kna1-kunnr.
Start of Selection
START-OF-SELECTION.
CREATE OBJECT obj_cust.
SET HANDLER obj_cust->event_handler_1 FOR obj_cust.
SET HANDLER obj_cust->event_handler_2 FOR obj_cust.
l_kunnr[] = s_kunnr[].
CALL METHOD obj_cust->zcust
EXPORTING
s_cust = l_kunnr
RECEIVING
it_kna1 = l_kna1.
IF NOT l_kna1[] IS INITIAL.
LOOP AT l_kna1 INTO l_cust.
WRITE: / l_cust-kunnr, 12 l_cust-name1,
48 l_cust-ort01, 85 l_cust-land1,
95 l_cust-pstlz.
HIDE l_cust-kunnr.
ENDLOOP.
ENDIF.
At line Selection
AT LINE-SELECTION.
CASE sy-lsind.
WHEN 1.
CALL METHOD obj_cust->zso
EXPORTING
im_kunnr = l_cust-kunnr
RECEIVING
it_so = l_sales.
IF NOT l_sales[] IS INITIAL.
LOOP AT l_sales INTO l_vbak.
WRITE: / l_vbak-kunnr, 12 l_vbak-vbeln,
24 l_vbak-vkorg, 30 l_vbak-audat,
43 l_vbak-netwr.
ENDLOOP.
ENDIF.
ENDCASE.
<b>Reward points if useful</b>
Regards
Anji -
Passing select-options to the smartforms
Hi,
I working for smartform, I have to print select-options (S_INNUM) value in the one of the window of the smartform
what is the approach for this1. Go to se11
cteate a structure zselect_option.
with the fields: low types kunnr
high types kunnr
sign types char1
options types char2.
than save,check and activate the structure.
2.go to smartforms
Doubl click on form interface.
in table tab declare the parameters as
s_kunnr like zselect_option
it_kna1 like kna1.
3.Double click on global definition
declare a work area in global data like as
wa_kna1 type kna1.
4.Click on Main window
create -> flow logic -> prgmlines.
Give the input paramer as s_kunnr
output parameter as it_kna1.
again..Click on Main window
create -> flow logic -> loop.
in that loop click on data tab
provide it_kna1 into wa_kna1.
than click on loop -> create -> text.
drag and drop our fields from Globel Data.
save and activate our smartform.
5. create a driver prmg as..shown below
tables:kna1.
select-options:s_kunnr for kna1-kunnr.
data:it_kna1 type table of kna1.
DATA:F_NAME TYPE RS38L_FNAM.
start-of-selection.
select *
from kna1
into table it_kna1
where kunnr in s_kunnr.
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
FORMNAME = 'ZSMARTFORM' "(Give Smartform name)
* VARIANT = ' '
* DIRECT_CALL = ' '
IMPORTING
FM_NAME = F_NAME.
CALL FUNCTION f_name
TABLES
S_KUNNR = s_kunnr
IT_KNA1 = it_kna1.
save ,check and activate and exicute the prgm... -
Passing Select option to the sub routine
Hi All ,
how can we pass select option values to a subroutine ,
Thanks in Advance
VinayHi Vinay Kolla,
Check out this.
TYPES: TYP_DATUM TYPE RANGE OF SY-DATUM.
DATA: WA_DATUM TYPE LINE OF TYP_DATUM.
SELECT-OPTIONS : S_DATUM FOR SY-DATUM.
START-OF-SELECTION.
PERFORM WRITE_DATUM TABLES S_DATUM[].
*& Form write_datum
* text
* -->P_S_DATUM text
FORM WRITE_DATUM TABLES P_S_DATUM TYPE TYP_DATUM.
LOOP AT P_S_DATUM INTO WA_DATUM.
WRITE : /10 WA_DATUM-SIGN,
WA_DATUM-OPTION,
WA_DATUM-LOW,
WA_DATUM-HIGH.
ENDLOOP.
ENDFORM.
Regards,
R.Nagarajan.
We can - -
Passing select-options value in method
How to pass select-options value in method ?
Example:
Select-options: carrid for spfli-carrid.
class cl_myclass implementation.
select carrid connid from
spfli where carrid in carrid.
endclass.
ThanksHello Anee
The coding of this functionality is quite simple:
REPORT zmy_report.
DATA: go_myclass TYPE REF TO zcl_myclass,
gd_repid TYPE syst-repid.
PARAMETERS:
p_bukrs ...
SELECT-OPTIONS:
o_kunnr ...
START-OF-SELECTION.
gd_repid = syst-repid.
CREATE OBJECT go_myclass
EXPORTING
id_calling_program = gd_repid.
And that's how your CONSTRUCTOR method should look like:
METHOD constructor. " IMPORTING parameter id_calling_program
CALL FUNCTION 'RS_REFRESH_FROM_SELECTOPTIONS'
EXPORTING
CURR_REPORT = id_calling_report
TABLES
SELECTION_TABLE = me->mt_selopts.
" NOTE: define mt_selopts as instance attribute of table type RSPARAMS_TT
ENDMETHOD.
Finally you have to extract the parameter and select-options from MT_SELOPTS.
Regards
Uwe -
Passing Select-options in OO ABAP
Hi,
How to use select-options in oo ABAP?
Regards,
Ravi SHi Ravi,
You have to define a type as below
TYPES:tr_matnr TYPE RANGE OF matnr.
DATA: gv_matnr TYPE mara-matnr.
SELECT-OPTIONS: so_matnr FOR gv_matnr.
CLASS lcl_example DEFINITION
CLASS lcl_example DEFINITION.
PUBLIC SECTION.
METHODS:
get_data
EXPORTING
so_matnr TYPE tr_matnr.
ENDCLASS.
CLASS lcl_example IMPLEMENTATION
CLASS lcl_example IMPLEMENTATION.
METHOD get_data.
SELECT COUNT(*)
FROM mara
WHERE matnr IN so_matnr[].
ENDMETHOD.
ENDCLASS.
If you have to pass it globally create a table type that has the same structure as select-opton ( that is low high sign option ).
PLEASE REWARD THE POINTS
Thanks & Regards,
Sujith -
Passing Select-options as parameter to function module
I need to pass a select-option as a parameter to a function module. Is this possible?
There is an option of passing all the values of the select-option to an internal table, passing that internal table as parameter to the function module, and then adding it manually again to a select-option in the function module.
But is there any direct way to do this?Hi,
I have a similar problem: I have RFC function module to which I want to pass select options. Therefore I defined table parameters as follows:
IT_RUNID TYPE EFG_TAB_RANGES
IT_PERNR TYPE EFG_TAB_RANGES
IT_REINR TYPE EFG_TAB_RANGES
I can successfully pass my values to the module, but if I try to check these parameters
using
CHECK IT_TRIPS-RUNID IN IT_RUNID.
CHECK IT_TRIPS-PERNR IN IT_PERNR.
CHECK IT_TRIPS-REINR IN IT_REINR.
the check always fails, I guess because there are leading zeros in the ranges. Is there a way to solve this problem?
Thanks and regards,
Martin -
Passing selection-options to standard PROG
Hi All,
i want to submit a standard program into zprogram , in standard program there are 3 select-options . i need to pass zselect-options into these 3 select-options in standard program.
if u have any code please pass to me.
please help me.
Many Thanks
Narencheck this
Syntax Diagram
SUBMIT
Basic forms:
1. SUBMIT rep.
2. SUBMIT (name).
Extras:
1. ... LINE-SIZE col
2. ... LINE-COUNT line
3. ... TO SAP-SPOOL List output to the SAP spool database
4. ... USING SELECTION-SCREEN scr
5. ... VIA SELECTION-SCREEN
6. ... AND RETURN
7. ... EXPORTING LIST TO MEMORY
8. ... USER user VIA JOB job NUMBER n
9. ...Various additions for passing parameters to rep
10. ... USING SELECTION-SETS OF PROGRAM prog
Effect
Calls report rep.
The system leaves the active program and starts the new report rep. In basic form 2, you can specify the name of the report in the field name. You must specify the name in uppercase, otherwise a runtime error occurs.
Note
You can only start programs with type '1' using SUBMIT. If the program has a different type, the system triggers a runtime error.
Please consult Data Area and Modularization Unit Organization documentation as well.
Addition 1
... LINE-SIZE col
Effect
The list generated by the report has the line width col.
Addition 2
... LINE-COUNT line
Effect
The list generated by the report has line lines per page.
Addition 4
... USING SELECTION-SCREEN scr
Effect
When you execute the report, the system uses the selection screen number that you specify in the scr field. This must be a selection screen defined using the SELECT-OPTIONS, PARAMETERS and SELECTION-SCREEN statements.If you omit the addition, the system uses the standard selection screen 1000.
This addition allows you to start the same report in different situations, using a different selection screen each time.
Notes
The addition VIA SELECTION SCREEN determines whether the report is processed in the foreground or the background.
What happens if the required screen does not exist or is not a selection screen?
Screen 1000:
If you want to use the standard selection screen (... USING SELECTION-SCREEN 1000 or do not specify a ... USING SELECTION-SCREEN) addition, the system does not process a selection screen.
Other selection screens:
The system triggers a runtime error.
Addition 5
... VIA SELECTION-SCREEN
Effect
The selection screen is displayed. In this case, the selection screen is displayed again after the report list has been displayed. The values entered by the user remain displayed.
Addition 6
... AND RETURN
Effect
Returns to the calling transaction or program after the called program has been executed. SUBMIT ... AND RETURN creates a new internal session.
Addition 7
... EXPORTING LIST TO MEMORY
Effect
Does not display the output list of the called report, but saves it in ABAP memory and leaves the called report immediately. Since the calling program can read the list from memory and process it further, you need to use the addition ... AND RETURN . Also, since the called report cannot be requested for printing, the addition ... TO SAP-SPOOL is not allowed here. In addition, you must not assign a function code to the ENTER key in the current GUI status. The saved list is read from the SAP memory using the function module 'LIST_FROM_MEMORY' and can then be saved to the database using EXPORT, for example. You can process this list further with the function modules 'WRITE_LIST', 'DISPLAY_LIST' ... of the function group "SLST".
Addition 8
... USER user VIA JOB job NUMBER n
Effect
Schedules the specified report in the job specified by the job name job and the job number n. The job runs under the user name user and you can omit the addition USER user. The assignment of the job number occurs via the function module JOB_OPEN (see also the documentation for the function modules JOB_CLOSE and JOB_SUBMIT). This addition can only be used with the addition ...AND RETURN.
Note
When scheduling a report with the SUBMIT ... VIA JOB job NUMBER n statement, you should always use the addition ...TO SAP-SPOOL to pass print and/or archive parameters. Otherwise, default values are used to generate the list and this disturbs operations in a production environment.
SY-SUBRC = 0:
Job scheduled successfully
SY-SUBRC = 4:
Job scheduling terminated by user
SY-SUBRC = 8:
Error in job scheduling (JOB_SUBMIT)
SY-SUBRC = 12:
Error in internal number assignment
Addition 10
... USING SELECTION-SETS OF PROGRAM prog
Effect
Uses variants of the program prog when executing the program rep.
Note
Important
The programs prog and rep must have the same SELECT-OPTIONS and PARAMETERs. Otherwise, variants of the program prog may be destroyed.
Note
When using this addition, the specified variant vari of the program prog is taken in USING SELECTION-SET vari. On the other hand, all variant-related actions on the selection screen of rep (Get, Save as variant, Display, Delete) refer to the variants of prog.
Example
SUBMIT REPORT01
VIA SELECTION-SCREEN
USING SELECTION-SET 'VARIANT1'
USING SELECTION-SETS OF PROGRAM 'REPORT00'
AND RETURN.
Effect
Executes the program REPORT01 with the variant VARIANT1 of the program REPORT00.
Exceptions
Non-Catchable Exceptions
Cause: The specified program was not found.
Runtime Error: LOAD_PROGRAM_NOT_FOUND
Cause: Invalid value passed to a selection with SIGN.
Runtime Error: SUBMIT_WRONG_SIGN
Cause: The specified program is not a report.
Runtime Error: SUBMIT_WRONG_TYPE
Cause: More than one value passed to a report parameter.
Runtime Error: SUBMIT_IMPORT_ONLY_PARAMETER
Cause: Table passed to a selection with WITH sel IN itab that has an unexpected structure.
Runtime Error: SUBMIT_IN_ITAB_ILL_STRUCTURE
Additional help
Starting Executable Programs (Reports)
Regards
Prabhu -
How to pass selection screen parameters in text elements?
how to pass selection screen parameters in text elements?
don't you mean he other way around. Assign text-elements (selection texts) to select options?
This you do in the menu where you can find text-elements, selection texts.
menu Goto->text elements->selection texts.
Edited by: Micky Oestreich on May 10, 2008 2:45 PM -
Passing SELECT-OPTIONS value to Function Module
Hi,
I need to pass select-options value to a function module.
Code is like the following:
SELECT-OPTIONS seltab FOR object-type.
CALL FUNCTION 'Z_MY_FM'
EXPORTING
sel_tab = seltab
IMPORTING
result_tab = it_result
I have found a similar problem in the SDN forum: How to pass select-options parameter to FM?
However, that could not help me much in solving my problem.
So far I have tried to created a structure in DDIC with the following components for the select-options:
SIGN - BAPISIGN
OPTION - BAPIOPTION
LOW - ZBWOBJECTTYPE (my type)
HIGH - ZBWOBJECTTYPE (my type)
and subsequently a table type for this structure which is specified in the "Import" tab of my function module.
Unfortunately, when I ran the program a runtime exception occured (CALL_FUNCTION_CONFLICT_TYPE).
Could anyone please help me on this issue?
Thanks in advance.
Regards,
Joon MengHello Joon,
CALL FUNCTION 'Z_MY_FM'
EXPORTING
sel_tab = seltab
IMPORTING
result_tab = it_result
You have defined SELTAB as a SELECT-OPTION.
So when you pass only SELTAB, the header line is transferred to the FM. When you pass SELTAB[] the whole table(range) is passed.
It is similar to the concept of an internal table with header line.
Hope i am clear.
Anyways how have you defined result_tab and sel_tab ?
BR,
Suhas -
Showing error in passing select option to smartforms
Dear Friends,
I have done program of passing select option to smartforms. But it was showing errorin Types of Global defination that the flat structure is not allowed. So pls guide me.
Thanks in advance,
PradipkumarHi Pradip,
<li>When you want pass select-option from program to Smartform. You need create one structure in SE11 (data dictionary) and Use that under Form interface ->Tables tab
<li>The structure should have the following fields.
low
high
sign
option
<li>The structures should be same in the program and smartform when that is used as interface.
Thanks
Venkat.O -
How to Pass Select-options Single values as Parameter value to Method ?
Hi Friends,
I need to pass select-options values(single values) for s_arbpl to the method "process_percent_planned". Now all single values are in internal table s_arbpl-low field. I need to pass this internal table(s_arbpl-low) values to the method where i will run query based on these single values.In my below code i am passing value through variable w_arbpl. I have defined this parameter in the method.But here only one value is passed to method. I want multiple single values (in s_arbpl-low) should be passed. Please let me know how to correct code.
Tables: crhd.
Data: ktext type auftext,
w_arbpl type arbpl.
select-options: s_arbpl for crhd-arbpl.
ktext = 'Test'
create object obj_plan.
call method obj_plan->process_percent_planned
exporting
ktext = ktext
w_arbpl = s_arbpl-low.
Thankshi ,
when you want to pass S_ARBPL AS PARAMETER IN SELEC OPTION
ARBPL SUCH AS
WIN002
WIN003
WIN004
WIN005
WIN006
WIN007
IN MULTIPLE SELECTION S_ARBPL
THEN
USE
Tables: crhd.
Data: ktext type auftext,
w_arbpl type arbpl.
select-options: s_arbpl for crhd-arbpl.
ktext = 'Test'
LOOP AT S_ARBPL .
create object obj_plan.
call method obj_plan->process_percent_planned
exporting
ktext = ktext
w_arbpl = s_arbpl-low.
ENDLOOP.
REGARDS
dEEPAK .
THEN SELECT THAT
call method obj_plan->process_percent_planned
exporting
ktext = ktext
w_arbpl = s_arbpl-low. -
Pass Select-option as FunctioModule parameter ?
Hi experts,
I need to pass the Select-option parameter as import of a function module.
How can i do that?
Regards
DhanyaOk, so you can start by creating your structure in the ABAP dictionary, define 4 fields, SIGN, OPTION, LOW and HIGH. SIGN should be character with length 1, OPTION should be character length 2, LOW and HIGH should be the same type as your select-option fields, for example, the first one BUKRS, it should be typed like this field. Now that you have your structure, you can now use it in the definition of your funciton module in the TABLES tab, now all you need to do is pass the select-option to your function call via this new TABLES parameter.
~ As find in forum.
Regards,
Amit
reward all helpful replies.
Maybe you are looking for
-
Batch automation with actions.
Jeffrey, Thanks for getting back to me, here is what the issue I am having looks like. 1) I had Photoshop CS5 on my Dell Precision Laptop. I created an action named "Vintage + BW" that went through these following steps. 1) Run "vintage action" that
-
SSD/Library/Preferences/.GlobalPreferences.plist Resets After Editing
Hello, After editing the SSD/Library/Preferences/.GlobalPreferences.plist to fix an issue with my ColorSync profiles (Unable to change profile on external monitor) I lose the settings when I reboot. Here's a more detailed description. I have an error
-
"Switching" Ipads... best way to sync apps/ files/ etc?
My current ipad (16 gb) is going to my mom, and I will be getting hers (64 gb) since I need the space for files/ videos/ etc. We have our own apps and files on it already, what is the best way to "switch" Ipads? If I restore it, can I get my paid app
-
Display authorization for plan data
Dear All, I have to split users into two categories as reviewers and planners. I have created two roles from rsecadmin. For plan users it is working perfectly but for the reviewers system gives an authorization issue. Plan users auth: 0TCAACTVT - ACT
-
Hi, I have handling units defined in VL01N to do the packing of the materials. Now it is necessary to print a label with the info of each HU. What is the stadard SAP Program to print these HU based forms?