Method, parameters and attributes
Dear SAP friends!
Could anybody explain me how to find possible values of a parameter?
Here is an example:
CALL METHOD o_picture->set_display_mode
EXPORTING
display_mode = cl_gui_picture=>display_fit_center.
Parameter "display_mode" has 4 possible values. The parameter values could be found in Attributes Tab.
But how I can identify that these 4 values are related to "display_mode" parameter?
Let's say I want to use method "set_display_mode" of class "cl_gui_picture".
I go to SE84 and display the class. Then I find the method I want to use and click "parameters". Then I see the parameter "display_mode".
I know that possible values of the parameter could be found in Attributes Tab. But there so many of them...
How do I know which is which? Clicking on "display_mode" doesn't give any information and there is no documentation available in English...
Thanks,
Tatyana
Yes, this is a little bit tricky at times. But the class, method, attributes are designed to be intuitive, meaning that the wording of the methods and and attributes are described in such a way that it is easy to recoginize what contansts can be used to pass to method calls. Lets take the class CL_GUI_DOCKING_CONTAINER for example. Lets look at the CONSTRUCTOR method and its parameter SIDE. You will see that this parameter is of TYPE I and that it is actually using on of the constants as its default, DOCK_AT_LEFT. So if you go to the attributes tab and look for DOCK_AT_LEFT, you will find other contants that are available to pass to this parameter.
If you are looking for a hard list of values(or constants in attributes tabs) which can be passed to any given parameter of any given method, I do not believe that this functionality exists.
REgards,
Rich Heilman
Regards,
Rich Heilman
Similar Messages
-
Hiding methods and attributes while inheriting
Hello All,
This is kinda urgent. While making a subclass I want to block access to methods and attributes of super class when anone creates an object of sub-class. In my particular situation I cannot override the methods.
Let me explain it with an example:
I have a class A which contains an attribute of type Object. All the methods accept Object type parameters and act accordingly. Now I want to create a sub-class B which acts on Strings only. I can create a wrapper to class A but I want to add some behavior which is specific to strings and use rest of the behavior as in class A. I cannot override the methods of class A because they take Objects as parameters whereas in class B the same methods take string as parameters.
I hope you have understood the problem. Please reply ASAP.
Thanks in advanceSorry the diagram turned out wrong. ObjectClass and StringClass are both supposed to be derived
from the AbstractBaseClass.
This method is one way to achieve what you want. You make an AbstractBaseList class that has only
protected methods that take objects.
To implement a generic Object version of this class you extend it and override the protected methods in
the AbstractBaseList class to make them public.
To implement a String list you extend the AbstractBaseList class and override the protected methods to
make them public (but change the type of the parameters).
The only problem with this approach is that the return types of the methods cannot be changed. Therefore
I recommend the AbstractBaseList implement a method called
protected Object getByIndex(int i) {
// do list type stuff in here
Then the ObjectList can implement
public Object get(int i) {
return super.getByIndex(i);
and the StringList can implement
public String get(int i) {
return (String) super.getByIndex(i);
In effect all you need to do is to implement wrapper classes that enforce type casting on the Object based
set/get values.
Another option is to use JDK1.5 with its generics classes. These effectivly allow you to specify which type of
object an instance of a class accepts.
Another question. What is the matter with the Collections classes provided in the JDK?
matfud -
Get method parameters at runtime?
Hey guys,
is there a way to get the parameters of a methods parameters at runtime? I have a reference to an object and would like to know which paranmeter does a method have.?
thxHello
You can use class CL_OO_CLASS (instance attribute METHOD_PARAMETERS ).
Regards
Uwe -
Can we chagne Super class method parameters in Sub class
Hi,
I created a super class. In that class i created a method. That method is having 4 input parameters and 4 export parameters.
I created a sub class for that super class. I need to use only 2 input parameters in this class rather than 4 parameters. I want to delete 2 Input parameters in the sub class of the super class method. Is it possible.
If possible. can we give an simple code or pseudo code?
regards,
krishnaHi,
I think you can not.
Because, only public attributes can be inherited and they will remain public in the subclass.
for further detail check,
http://help.sap.com/saphelp_nw70/helpdata/en/1d/df5f57127111d3b9390000e8353423/content.htm
regards,
Anirban -
Difference between text data and attributes in master data?
Hello,
a charcteristic in BW maintains texts, hierarchies and attributes.
What exactly is the difference between texts and attributes?
Attributes describe master data like a customer. The country where the customer resides, the industry etc. describe and classify the customer. Attributes are not just the structure/metadata of the characteristics. They are also the content. The following table should visualize what i mean:
customer-no. | name
112 | mcpherson inc.
113 | donalds inc.
Texts contain contain the description of a characteristic. Texts define a characteristic. An example is the customers name. It does not describe the customer but defines him/her.
Is my understanding about these two parts of master data right?
What else except the customer's name belongs to the texts?
If I set up a characteristic like the customer in SAP BW, do I have to create an attribute "name". The name belongs to texts, not to attributes?? If I upload master data then, how does it work?
Thanks in advance.Hi,
If your analysis includes country and region then country and region should be included in the Infocube.This is required because only if you include these characteristics then you can restrict your queries for country and region.You may need to select some particular countires/region and show the report.Then you have to restrict your queries to only those countries/region.This is possible only if you have these characteristic in your infocube.
I am just envisaging your model like this.
Characteristic in the Infocube
Customer
Country
Region
Customer Attributes
Customer Number (SID which is self generated)
Customer Address1,2 ,3
Registration No
Date of Registration
Deposit Amount
etc ...
Region Attributes
Region Number (SID)
Total Customers
Sale Office Address
Number of Sales Persons
Customer Attributes
Customer Number (SID)
Total Customers
Head Office Address
Number of Sales Persons
GDP
Total Population
So the conclusion is whichever entity you want to restrict or analyse should be a part of Infocube.It is very difficult to do analysis based on attributes as I mentioned in my earlier post that they are only "Display attributes" (u can just show that's it).
Yes!! there are methods available for analysis based on characteristics in attributes table and you have to do either with virtual characteristic or replacement path or with writing code in customer exits.But a good design and earlier study of all possible report combination and having a good design will avoid good amount of development time and changes.
I have suffered when I had only 0CALDAY in my cube and when I want to take a monthly analysis, I was unable to do it and then I have to redesign my whole cube.
Please anyone, correct me if I am wrong.
Regs
Gopi. -
Parameters and Select Option in ABAP OO
Hi all,
it's possible to build an application starts with a method of a class thats declares parameters and select-option or I have to do it custom creating a dynpro and some input field as parameters?
thanks
enzoJust to add detail: the function module RS_REFRESH_FROM_SELECTOPTIONS returns a table of TYPE RSPARAMS_TT.
The structure of this table is:
SELNAME
RSSCR_NAME
KIND
RSSCR_KIND
SIGN
TVARV_SIGN
OPTION
TVARV_OPTI
LOW
TVARV_VAL
HIGH
TVARV_VAL
the first field is the name of the selection parameter, the others have the same structure obtained declaring a range with:
TYPES|DATA <rangetab> TYPE RANGE OF <type>.
see the help topic http://help.sap.com/saphelp_470/helpdata/en/9f/dba71f35c111d1829f0000e829fbfe/content.htm -
MVC Problem with getter method of table attribute in model class
Hi,
I am on 620 SP34. I am writing a bsp application with mvc. One of the model classes has an attribute of type table. I use this attribute in a htmlb-tableview and '//MODEL/ZMY_TAB' for data binding. If I try to activate a getter method for this attribute, the application dumps with exception <i>BSP exception: Structure component with name "ZMY_TAB" does not exist</i>. I find the SAP source, that raising this exception (see below). The source code looks like: <i>"I don't support getter methods for tables in attribute path"</i>! The setter method works fine, so I am at a loss. Has anyone of you wrote a getter method for an table attribute in bsp-mvc? Have I to consider anything special?
Thanks,
Carsten
Main Program CL_BSP_MODEL==================CP
Source code of CL_BSP_MODEL==================CM00Z
METHOD IF_BSP_MODEL_BINDING~GET_ATTRIBUTE_DATA_REF
* check if attribute exists for binding!
if exists_attribute( l_name ) is initial.
return.
endif.
* setter or getter defined? Not supported for DATA REF requests
if get_getter( attribute_name = l_name ) is not initial.
raise exception type cx_bsp_inv_component
exporting name = l_name.
endif.You have two options:
1. Make your attributes public. It should work fine.
2. If you need to process the attribute values before it is used, you can make the attribute private but will need three methods
GET_T_ZMY_TAB that returns the table
SET_T_ZMY_TAB that sets the values
GET_M_T_ZMY_TAB that returns DDIC information about the attribute. The same holds good for structures(Change to GET_S_ and GET_M_S_ ) and simple attributes(Change to GET_ and GET_M_).
The set and get methods are kind of documented at http://help.sap.com/saphelp_nw04/helpdata/en/fb/fbb84c20df274aa52a0b0833769057/content.htm but there is no mention of the GET_M_ methods. I could not find one single document on the Model part MVC.
Once I added the GET_M_XYZ methods to my attributes, my BSPs started to work fine.
Cheers
Sreekanth -
Automatic output of method parameters
Hi,
Sometimes I find myself System.out'ing all parameters of a method. Is there a one-step way to do this? A one-liner that will output all method parameters (using reflection I guess) of the method the code is running in.
for e.g
public Car makeCar(Color carColor, int noOfWheels){
System.out.println(outputAllParametersOfThisMethod();
}Console:
carColor=Blue
noOfWheels=4
Appreciate any help that I can get!Hi,
You can map these all parameters in Process instruction sheets and operator can view the PI sheet to view the process or qc parameter.
Find below the link
[http://help.sap.com/saphelp_47x200/helpdata/en/05/603bc6462311d182b50000e829fbfe/frameset.htm]
http://help.sap.com/saphelp_47x200/helpdata/en/05/603bc6462311d182b50000e829fbfe/frameset.htm
Sanjay -
Problem in compilation with very large number of method parameters
I have java file which I created using WSDL2Java. Since the actual WSDL has a complex type with a large number of elements(around 600) in it, Consequently the resulting java file(from WSDL2Java) has a method that takes 600 parameters of various types. When I try to compile it using javac at command prompt, it says "Too many parameters" and doesn't compile. The same is compiling successfully using JBuilder X . The only way I could compile successfully at command prompt is by reducing the number of parameters to around 250 but unfortunately that it's not a workable solution. Does Sun specify any upper bound on number of parameters that can be passed to a method?
... a method that takes 600 parameters ...Not compatible with the spec, see Method Descriptors.
When I try to compile it using javac at
command prompt, it says "Too many parameters" and
doesn't compile.As it should.
The same is compiling successfully using JBuilder X .If JBuilder produces a class file, that class file may very well be invalid.
The only way I could compile
successfully at command prompt is by reducing the
number of parameters to around 250Which is what the spec says.
but unfortunately that it's not a workable solution.Pass an array of objects - an array is just one object.
Does Sun specify
any upper bound on number of parameters that can be
passed to a method?Yes. -
Combine standard task (ABAP method call) and additional UWL Action Handlers
Hi, i have defined a task with an asynchronous ABAP method call and a terminating event which i want to use "as is" in the universal worklist, that means that the standard action has to be the ABAP method call defined for the task.
In addition to that i want to add an extra button to the workitem view in the worklist which opens a web dynpro application. The web dynpro needs a parameter from the workitem container. Opening the web dynpro is not required for completing the task, so i do not consider using secondary methods.
I created an UWLConfiguration for the task type without defining the defaultAction attribute, since defaultAction should not be overwritten. I wanted to use SAPWebDynproABAPLauncher to generate the button since i can easily include values from the workitem container in the call.
When executing a workitem from the worklist the ABAP method call is not performed, instead a window opens which just displays the workitem. The button to web dynpro is generated and works fine.
Does anyone have a clue how i can use UWL to define an additional button with SAPWebDynproABAPLauncher without overwriting the standard task definition?
My definition:
<ItemTypes>
<ItemType
name="uwl.task.webflow.TS95100103"
connector="WebFlowConnector"
defaultView="DefaultView">
<ItemTypeCriteria
systemId="ED1CLNT100"
externalType="TS95100103"
connector="WebFlowConnector"/>
<CustomAttributes>
<CustomAttributeSource
id="WEBFLOW_CONTAINER"
objectIdHolder="externalObjectId"
objectType="WebFlowContainer"
cacheValidity="final">
<Attribute
name="HROBJECT_OBJEKTID"
type="string"
displayName="HROBJECT_OBJEKTID"/>
</CustomAttributeSource>
</CustomAttributes>
<Actions>
<Action
name="launchWebDynPro"
groupAction=""
handler="SAPWebDynproABAPLauncher"
returnToDetailViewAllowed="yes"
launchInNewWindow="yes"
launchNewWindowFeatures="resizable=yes,scrollbars=yes,
status=yes,toolbar=no,menubar=no,
location=no,directories=no">
<Properties>
<Property
name="WebDynproApplication" value="hr01_app"/>
<Property
name="newWindowFeatures"
value="resizable=yes,scrollbars=yes,status=yes,
toolbar=no,menubar=no,location=no,directories=no"/>
<Property
name="DynamicParameter"
value="candidacy_id=${item.HROBJECT_OBJEKTID}
&from_workflow=X"/>
<Property
name="openInNewWindow" value="yes"/>
<Property
name="System" value="SYSTEM_ALIAS_ERP"/>
<Property
name="WebDynproNamespace" value="hr01"/>
</Properties>
<Descriptions default="Show"/>
</Action>
</Actions>
</ItemType>
</ItemTypes>
Thank you very much, best regards, Martin
Edited by: Martin Sommer on Dec 1, 2008 5:51 PMfound a solution with transaction launcher and custom transaction
-
Check Required Elements and Attributes in JAXB
Hi
I need check required elements and attributes in JAXB java classes , if there are any value for them place it , otherwise place default value in xml file , because of it I upgrade JAXB2.0 to JAXB 2.1 to support "required" in "XmlElement" , I read in "JavaWS(JAXB)Tutorial.pdf" that JAXB itself check required elements and attributes , if there are any value for them place it , otherwise place default value in xml file , the exact part of document is :
<< A property is said to have a set value if that value was assigned to it during unmarshalling or by invoking its mutation method. The value of a property is
its set value, if defined; otherwise, it is the propertys schema specified default value, if any; otherwise, it is the default initial value for the propertys base type as it would be assigned for an uninitialized field within a Java class. >>
I want to know , dose JAXB do this task ? (now I work with JAXB2.1 but it doesnt do this task.Maybe I must set some configuration)
and if JAXB doesnt do it , how I can check required elements and attributes in JAXB ?
Please help me.
Shariatits all on Apple's Developer site
http://developer.apple.com/DOCUMENTATION/AppleApplications/Reference/FinalCutPro _XML/index.html -
Open hub destination of text and attribute for Functional Area
Hi Expert
I have a requirement to accommodate both attribute ( 0FUNCT_LOC_ATTR) and text ( 0FUNCT_LOC_TEXT ) for functional area in open hub destination .For this a DSO has been created from both 0FUNCT_LOC_ATTR, 0FUNCT_LOC_TEXT data sources .Problem is that DSO has 0FUNCT_AREA ( Functional Area ) as only key fields . So text for both english ( EN ) and Dutch ( NL) for particular 0FUNCT_AREA not getting loaded .If we assign both 0LANGU and 0FUNCT_AREA as composite key of dso , data from attribute transformation is loaded as blank as there is no language filed in attribute data source ( 0FUNCT_LOC_ATTR ). Please let me know how can I design to accommodate both text for different language and functional area for open hub destination .
I know that I can create separate open hub destination for master data TEXT and Attribute.
Any help is highly appreciated.
Regards
SaikatHI Saikat,
You can create an additional characteristics counter and make it a key field in the DSO.After that we can populate this characteristics in the end routine .It value would increase by 1 everytime different text comes for the same functional area.
Sample code
data: counter type n,
w_farea type /bio/oifunc_area.
Sort result_package by func_area.
count =0.
*checking whether we have the same functional area or we have a different functional area.
Loop at result_package assigning <Result_fields>.
if w_farea is initial or w_farea = <result_fields>-func_area.
count = count +1.
else
count =1.
endif.
w_farea= <result_fields>-func_area.
<Result_fields>-zcount = count.
ENDLOOP.
Clear w_farea.
This way the value of counter would get increased by one everytime a new text comes for the same functional area.We can have any number of texts for the same functional area by this method.
The only issue would be when some delta update comes for the existing text in this method.If you are doing a full load to the DSO from the datasource, then there would be no issue with this method. -
Netbeans 6.0 - code completion of method parameters
I just updated to NetBeans 6.0 and I find the code completion of method parameters very annoying and counter productive.
It inserts the parameters as keywords when choosing a method from the list after pressing CTRL+SPACE.
How can I switch this off?
I searched the options and also the forum but didn't find a solution.I know that pressing space or whatever replaces the selected parameter. For a method with a single parameter is not a big problem but this is a poor workaround if a method has more parameters, like eg
public static String formatDate(Date myDate, String myFormat)
When typing
Str.form<CTRL+SPACE,choose method, ENTER>
it looks like
Str.formatDate(myDate, errorMessage)
Although myDate is selected and I can overwrite it, I have to proceed to the next parameter with CTRL+M instead of simply typing a comma. This is very annoying if a method has more parameters and as this annoyance occurs approx. every 5 lines that accumulates. -
No Method onSort and no actionBinding sort found
I built UIX page that contains a sortable read-only table. When I access it with my browser by name untitled.uix, then I can sort the table without any problems, but when I access it by Struts action untitled.do, then sort commands still work, but I get the following errors in my application errorlog:
No Method onSort and no actionBinding sort found
What can be the reason for this?
Mihkel NõgesYour query is currect if table name and attribute name are currect.
Can you write what type of error is comming? -
Parsing (COunting Elements and Attributes)
Can anyone point me to the method sfor counting elements and attributes in a parsed XML document. For example, I have a XML document that contains a number of 'word' files, I need to produce a printout that gives the total number. The files have a size attribute and I need to calculate and printout the total size of all the files together
ChuckBing,
Thanks for the pointers. I now have the following method:
} public void startElement(String elementName, AttributeList al) throws SAXException
String attributeValue;
if (elementName.equals("PRICE"))
if(al.getLength()>0)
for(int j = 0;j<al.getLength();j++)
attributeValue = al.getValue(j);
System.out.println("Total Attribute value is " + attributeValue);
}This obviously allows me to extract the detail from "PRICE" but "PRICE" actually has two attributes. I can't find another method that allows me to extract out the detail for a specific attribute.
Can you suggest anything?
Maybe you are looking for
-
New HTML for Business Partner Search in CIC0
Hi, I created a new HTML object, copy of CRM_CIC_SEARCH_DISPLAY, in SMW0, changed the HTML code and assigned this new HTML to my Business Partner Search profile. But when testing this change it seems that the HTML is incorrect because when I search a
-
Combine into a single PDF bugs, Acrobat 9
There are a things about using the Combine into a single PDF document that are quite frustrating. Two of them have been the case for a few versions of Acrobat, one just since Acrobat 9. Firstly, only in Acrobat 9 when dragging files into the combine
-
Background Image on a Component
How do I add a background image to a component, in this case, a scrollpane containing a drawing area. This is for a level editor for my game. I want a level's background image to be drawn and tiled so the user can get a better preview of what the lev
-
How to install license for expired SAP J2EE engine?
Hi, I had used evaluation copy of the SAP J2EE engine. This copy works for few days and now the SAP J2EE engine is stopped. After its expiration, we purchased the permanent license. My question is: <b>how to install license for the expired SAP J2EE e
-
Will the creative suite CS5 work on yosemite
I'm just wondering if Photoshop CS5, After Effects CS5, Illustrater CS5, etc. will work in OS X 10.10 Yosemite. I'd love to upgrade but right now i'm a little bit scared of not being able to use my creative suite anymore after installing yosemite. th