How to make a webdynpro component to be as a public part of a DC?
Hi All,
I've created 2 java web dynpro DCs : DC_A and DC_B in both the same software component.
I want to a component of DC_B, let's call it Comp_B, to be the "Used Web Dynpro Component" of Comp_A in DC_A.
I've done the following work:
1. Expose the Comp_B to be the public part of DC_B
2. Add DC_A to the Access List of Comp_B
3. Add DC_B to the "Used DCs" list of DC_A
But when I use the "Embed an existing component" function of Comp_A, I cannot find the Comp_B of DC_B.
Anyone can help me?
Thanks,
YiNing
Hi ,
1) Right click the component B and declare the component B of DC B to the public part.(Add to the public part)
2) Now go to Component A , Right Click Used COmponents>Development Component>Show in--> Component Properties .
then click the Dependicies Tab and click ADD
here you have add the Component B From the "MYComponents" Which is Exposed to the public part, and click next.(Configure dependicies as you wish ie Design Time .Deploy Time , Run Time )
3) After you added the component we have to build it.Right Click the Componenet A
Used Components>Development Component>Build
4) Now declare the Component Usage
Right Click the Componenet A
Used Components-->Add Used Component
Now give the Component Usage Name (for eg ComponentBInst) and select Component B
Now Exchange of data will take place between the component by Context of the interface controller
Similar Messages
-
How to copy existing webdynpro component
How to copy an existing webdynpro component
Hi Venkatesh,
Go to SE80 & open the source webdynpro component. Then right click on the component name & choose "Copy" option.
Regards,
Uday -
How to find the webdynpro component on server
Hi Experts,
I need to identify a webdynpro component in server whether it is there or not. Just i know the name of the component, Why i am asking with that component i am getting some errors while created a callable object in GP. I need to identify the component and delete that.
Is there any other way to do this.......
Please tell any one know how to find the component in server................
Thanks,
SunilHi ,
To create a callable object from a web dynpro project you need three DC like
caf/eu/gp/api
caf/eu/gp/api/wd
com.sap.security.api.sda
but caf/eu/gp/api and caf/eu/gp/api/wd are not available if you work on local development enviornment with out NWDI. Then you need to put those DCs within your local plugin directiory. I am sending you a link through this you will get to download those DCs and where you will put those DCs it is clear in this doc.
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/f7be53bb-0b01-0010-1c96-be3cb6799c1b
In your local mc you will go to the following path
Program FilesSAPIDEIDE70eclipsepluginscom.sap.tc.ap_2.0.0compCAFDCssap.comcaf
here you will create a folder called eu and put the DCs as per the doc. and in SC u put your Toplevel SC.
Now you try from Web Dynpro perspective. You will get all the DCs for callable object.
Thanks
Chandan -
How to make all Button component instances trigger rollOver sound?
Hello all--
I am using the Button component (the one shipped with CS3) in
many places in my AS3 project. I am coding in .as files, not on the
timeline.
I have skinned the Button to use the colors I like. Now I
wish to "skin" it so that all instances generate a rollOver sound,
and I'll be darned if I can figure out how.
I know I can listen for ROLL_OVER events in each Button
instance. But I have many many Buttons and it seems kludgy to add
that same code to every class I have which tracks a Button. I am
hoping there is some way I can make *all* instances of Button
respond to rollOver the same way. I am hoping it is like
setComponentStyle or changing the skin for the Button; I can do it
in one place and it works everywhere.
I guess I can listen on the Stage level for bubble-ups of
ROLL_OVER, trap those that come from Button instances, and handle
it from there, but stagewide listeners also seem a tad kludgy.
Is there some elegant way to make all my Buttons
automagically generate the same rollOver sound?
Many thanks,
Matthew FordIt's regrettable there is no reply. But in case someone comes
across this topic, FYI I put on my main View class (to which all
other views and GUI are childed) an
addEventListener(MouseEvent.MOUSE_OVER...). The MOUSE_OVER events
bubble up to that.
Then in the listener function I see if the event.target is
Button. If it is, I trigger the sound.
Curiously, the supposedly better ROLL_OVER event did not
bubble up predictably. Sometimes it did and sometimes it did not.
But the docs say that event is not supposed to bubble for some
reason.
I still think there is a better way and I'd like to hear it.
Maybe I just need to make my own clone and adaptation of the
Button, but I am not experienced yet with creating components
(SWCs) and it appears that simply overriding the Button class with
my own .as file does not work-- the rollOver functions report
errors that they cannot be overridden. -
How to make JTabbedPane Title component take up entire tab width?
Starting with JDK 1.6, JTabbedPane has been enhanced to allow you to specify an arbitrary Component for the title of a tab (I think before, you could only specify a JLabel and/or icon). We make use of this in our application by specifying a Panel with a GridBagLayout and three children: an Icon (on the left), a label (middle), and a close button (right). the middle component, the label, gets all the weightx and has fill set to HORIZONTAL. Everything looks good - as long as the tabs stay on a single row. When another tab is added and the TabbedPane extends to a second row, things don't look: the tabs are allocated alot more white space now - but the Component isn't being given that extra space! Consequently, the icons on the left and right of my label stay next to the label, instead of staying next to the edges of the tab!
Is this a bug in the JDK?
If it's not a bug, how do I make use of all available tab space?Hi Darryl,
Thanks for the suggestion. Below is a primitive standalone example. It brings up an empty frame and you can click on the "Add Tab" button to add a tab. When you do, you'll see that the tab's "title" area consists of an "i" button, a label, and a "x" button. The tab itself isn't much bigger than those three components, so things look ok. Now, add two more tabs....the 2nd tab still fits on the first row of the TabbedPane, so things still look ok. When you add the third tab, the first tab gets placed on a new 2nd row of the TabbedPane and the tab takes up the whole width of the TabbedPane....but the "i" and the "x" buttons are still scrunched up next to the label - rather than near the edges of the tab, where they would be expected.
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class TabExample extends javax.swing.JFrame {
public TabExample() {
initComponents();
class TabRenderer extends JPanel {
private JButton infoButton;
private JLabel label;
private JButton closeButton;
public TabRenderer(String title) {
infoButton = new JButton("i");
label = new JLabel(title);
closeButton = new JButton("x");
setLayout(new GridBagLayout());
GridBagConstraints gc = new GridBagConstraints();
gc.gridy = 0;
gc.gridx = 0;
gc.anchor = GridBagConstraints.WEST;
gc.fill = GridBagConstraints.NONE;
gc.weightx = 0;
this.add(infoButton, gc);
gc.gridx = 1;
gc.anchor = GridBagConstraints.WEST;
gc.fill = GridBagConstraints.HORIZONTAL;
gc.weightx = 1.0;
this.add(label, gc);
gc.gridx = 2;
gc.anchor = GridBagConstraints.EAST;
gc.fill = GridBagConstraints.NONE;
gc.weightx = 0;
this.add(closeButton, gc);
private void initComponents() {
tabbedPane = new javax.swing.JTabbedPane();
jButton1 = new javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
getContentPane().add(tabbedPane, java.awt.BorderLayout.CENTER);
jButton1.setText("Add Tab");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
addTabHandler(evt);
getContentPane().add(jButton1, java.awt.BorderLayout.SOUTH);
pack();
private void addTabHandler(java.awt.event.ActionEvent evt) {
int index = tabbedPane.getTabCount();
tabbedPane.add(new JPanel(), index);
tabbedPane.setTabComponentAt(index, new TabRenderer("Tab " + index));
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
JFrame f = new TabExample();
f.setSize(400, 300);
f.setVisible(true);
private javax.swing.JButton jButton1;
private javax.swing.JTabbedPane tabbedPane;
} -
How to make ADF Business Component Connection which is using XATransaction?
Hi all,
I'm using ORACLE 10.1.3 ADF business component, how to set this component using XA transaction? Is that possible to use xa transaction manually from application module?
thanksI believe you mean to ask whether ADF BC uses XA Transaction.
You can use a JDBC datasource based on XA Transaction for ADF BC. You might find this link useful for an overview: [XA Data Source Interface and Oracle Implementation|http://download-uk.oracle.com/docs/cd/B10501_01/java.920/a96654/xadistra.htm#1058741]
What do you mean by "+Is that possible to use xa transaction manually from application module?+" - Do you mean exposing the transaction of ADF BC outside its AM..? If so, I'm afraid that its not supported.
Thanks,
~Krithika -
How to code spark custom component with variable number of (skin)parts?
Hello. I'm trying to code a complex Spark custom component that may have a variable number of parts. To help you understand the requirements, the component can be visualized as an HSlider with a unlimited number of thumbs (as opposed to one).
How do I, in general, represent these thumbs in the host component as well as the skin? If I had a fixed number of thumbs, say 5, I could easily represent them as 5 button SkinParts declaratively. However, it's not immediately clear to me how to deal with a variable number of them.
I've studied the HSlider implementation as well as other components and can't find an example that fits this pattern. The closest thing that I can think of is to represent the thumbs as a DataGroup and provide a custom item renderer to render them. Couple that with the general HSlider behaviors that I need to preserve, such as the fairly involved local/global coordinate translations, I don't know whether the approach will work.
Any better ideas? Thanks.#2 sounds utterly strange to me. How would I utilize the phase id?The code below shows my idea whereas I never validate it in any real projects:
public class MyPhaseListener implements PhaseListener {
private static final String IDKEY = "PHASEID";
public static PhaseId getCurrentPhaseId() {
return (PhaseId) FacesContext.getCurrentInstance().getExternalContext().getRequestMap().get(IDKEY);
public void beforePhase(PhaseEvent event) {
event.getFacesContext().getExternalContext().getRequestMap().put(IDKEY,event.getPhaseId());
public PhaseId getPhaseId() {
return PhaseId.ANY_PHASE;
}You can write your constructor like as:
if (MyPhaseListener.getCurrentPhaseId().equals(PhaseId.RENDER_RESPONSE ) {
/* create children because this is the first time to create the component */
} -
How to make a table of the user to non public privilege?
Hi all,
im working with an RAD program and using oracle as the database. currently im on db 10g. I am able to connect to the db but the problem is it shows other users table. It is not only showing the tables of the user i connected to.
this is a problem since it will load other users' table which i dont need in my project.
now i've post around the forum of the RAD program regarding this and a particular user mentioned that he had the similar problem and it's probably because the all those tables showing up is public.
im getting tables from sys,sytem,syman and other preinstalled db user which i dont need to list out for my project.
is there really a condition where these tables are public? if so, how can i change it to private? any appropriate query would help.
i dont want it to show up on my RAD program all those unnecessary tables when i connect to one user for example user1.
anyone can help me out?
Thnx.T101_cyberdyne wrote:
Balazs Papp wrote:
in Oracle, there is a special role, called PUBLIC
anything granted to this role will be applied to every user (obviously, its PUBLIC)
for example SYSTEM.HELP is a "public" table, every user can read it without any permissions granted
you can check this with a query like this:
select * from dba_tab_privs where grantee='PUBLIC' and table_name='HELP';
revoking such permissions from the PUBLIC role is not recommended at all, as they are required for basic operation
disabling the PUBLIC role for a specific user is not possible as per the following note: Is it possible to exclude a user from PUBLIC scope? [ID 156303.1]So are you saying i'm stuck and there's nothing i could do to prevent these public table from showing?
well,this is dissapointing.I guess you need to step back and ask why this is a "problem". So far you've only indicated that you consider to BE a problem, but not WHY. Perhaps you are starting from a flawed assumption. -
Debug WebDynpro Component in NWDS?
Pro's I need some help here...
Does anybody know how to debug a webdynpro component from NWDS?
Thanks, JohannesHi Johannes,
To debug an application
Run-> Debug->Webdynpr->
Right click and select new
Once this is done you will see four tabs
1)Debug: select your project and the application to launch
2) Select the SAP System for Debugging
3)Source need to be added here.
Check the following blog for more detailed exaplination and process to do debugging
/people/karsten.geiseler/blog/2005/07/04/netweaver-portal-debugging
Hope that helps, incase if issues let me know
regards
Anil
Edited by: Anil Dichpally on May 5, 2008 8:11 PM -
How to make this effects on AE CS4
First of all, I apologize for my English
Anyway it's amazing video
I'm wondering can AE do this? or need to use some software like cinema 4D ? How to make the light streak around the guys , and some part it look like it's behind on some parts I tried , rotoscoping some part the light streaks will go to behind , but how to go back to front ? and it look smooth and perfect like the preview video? Anyone could tell me the steps for this project?
Anyway , here are my quesions 1. I don't know how to create the own path for the light streak , for example , i want to make it around the guys . 2. When it's a moving objects , how can I make that perfect for the light streaks path ? Thank someone for helpThe answers are the same ones you got on Video CoPilot. Yes, rotoscoping and yes, Particular. The rest is just a matter of a few keyframes, some tracking and arranging everything in 3D space plus finding the right masking modes. Just keep trying. Nobody can explain to you how to make art, especially since you are a beginner at both AE and Particular.
Mylenium -
How to make taxonomywebtaggingcontrol required
Hi,
I have created custom aspx and I have added taxonomywebtaggingcontrols.I want to make those controls required.
Can any body let me know how to make taxonomywebtaggingcontrols required?
I tried the following link but no luck.
http://sharepoint.stackexchange.com/questions/28602/is-it-possible-to-have-a-required-field-validator-for-taxonomy-webtagging-contro
Any help would be appreciated.
Thank you,
AA.http://sharepoint.stackexchange.com/questions/78561/how-to-make-taxonomy-picker-required-when-used-in-visual-web-part
Taxonomy:TaxonomyWebTaggingControl runat="server" ID="taxProjectOwnerDepartment" Visible="true" IsMulti="false" IsDisplayPickerButton="true">
</Taxonomy:TaxonomyWebTaggingControl>
<asp:CustomValidator ID="rfvProjectOwnerDepartment" runat="server" OnServerValidate="validator_ServerValidate" />
http://sharepoint.stackexchange.com/questions/17019/taxonomywebtaggingcontrol-the-data-entered-was-not-valid-on-postback
Or you can plan to use Javascript to make mandatory that column. -
How to add a new url link in a view of an existing webdynpro component?
How to add a new url link in a view of an existing webdynpro component?
hi ,
refer SAP online hep :
Implementing Enhancements in a View
http://help.sap.com/erp2005_ehp_04/helpdata/EN/46/233f2189f74f08e10000000a114a6b/frameset.htm
To enhance the layout of the view, you can create new UI elements. This procedure is no different u2013 from a technical viewpoint u2013 from creating UI elements in components themselves. All UI elements created within the enhancement implementation can then be processed as usual.
Enhancements means inserting user developments into SAP development objects at predefined positions.
The Enhancement Framework enables you to add functionality to standard SAP software without actually changing the original repository objects, and to organize these enhancements as effectively as possible.
refernce :
have a look at this article
How to Create Enhancement Implementation in Web Dynpro ABAP
http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/700317da-bd79-2c10-368e-8f18bf5d8b81&overridelayout=true
as pointed correctly by Saurav in earlier thread
regards,
amit -
How to call a RFC of a remote system from an ABAP webdynpro component
Dear Experts,
I am a newbie in ABAP Webdynpro.
I am working on a requirement where I have a webdynpro component on ECC system.I need to call a RFC located on CRM system from my webdynpro component on the ECC system.
How do I do that ?? Please help.
Regards,
Mamai.Calling RFC from some other system is same as local except the difference is that you have to give destination name while calling.
And the regarding the method of calling it depends on your FM.
if it is big RFC with complex structure, you can create the service call for it with destination given as RFC desitination.
if it is simple straight forward RFC you can directly call it.
for creating RFC service call call use this method
1. Starting the Wizard
To start the wizard, position the cursor on the Web Dynpro component to be edited in the object list at the left margin of the
workbench window. Open its context menu and choose the entry Create->Service Call. The wizard is started and leads you
through the creation process.
Press Continue.
2. Choice of Controller
On the second dialog window of the wizard, you can choose whether the service call is to be embedded in an existing
controller or whether a new controller is to be created for this purpose. Service calls can only always be embedded in
global controllers u2013 that is, in the component controller or in additionally created custom controllers. It is not possible, to
embed service calls in view controllers.
a. Select radio button Use Existent Controller
b. Do not change the default entry for component: <CC name>
c. Enter for controller COMPONENTCONTROLLER
d. Press Continue.
3. Service Type and Service Selection
a. You now select, which service type should be used for this service call. Select radio button Function Module. Fill the
destination here. Press Continue.
b. Select the service: for Function Module enter <RFC name>. Press Continue.
4. The Required Methods and Context Elements
On the two subsequent dialog windows, default values are listed for giving names to the context nodes and attributes
required by the service call as well as to the required methods. The proposed names are based on the names of the
embedded service, but you can change them as required. However, heed the respective notes in the corresponding dialog
box.
a. Adapt Context: Select from Nodes/Attributes . Press Continue.
b. Specify Method Name: leave all entries as provided: Component: Controller: COMPONENTCONTROLLER Method: EXCUTE_ Press Continue.
5. Completing the Choice
When you have confirmed the last dialog box, the generation is triggered. Afterwards you now have the required methods
and contexts at your disposal for using them within your Web Dynpro component.
or if you want to call directly the use the call statement with destination -
How to get the floor plan in Webdynpro component ?
Hi,
How to get the floor plan in Webdynpro component ?
Best Regards,
TripathiHi,
Just copy the templates from Webdynpro Component by choosing OIF or GAF or QAF template.
Regards,
Bansidahr -
How to make serializable object in webdynpro?
Hi
I have written the following code... when i am executing i am getting the following error..........
<b>javax.xml.rpc.soap.SOAPFaultException: Deserialisation failed</b>
I think is it becoz of data... how to make it serializable
Request_Z_BAPI_CUSTOMER_CHANGE_WS_customerChangeFromData customer = new Request_Z_BAPI_CUSTOMER_CHANGE_WS_customerChangeFromData();
ComplexType_CustomerChangeFromData complexType = new ComplexType_CustomerChangeFromData();
ComplexType_Bapikna101 bapi = new ComplexType_Bapikna101();
Bapikna101 bapi1 = new Bapikna101();
bapi1.setCity("RIYAD");
bapi1.setCountraiso("SA");
bapi1.setCountrniso("SA");
bapi1.setCountry("SA");
bapi1.setCountryiso("SA");
bapi1.setFaxNumber("12345678");
bapi1.setFirstName("First Name");
bapi1.setInternet("[email protected]");
bapi1.setDateBirth("12.12.2006");
bapi1.setLanguIso("EN");
bapi1.setName("Name");
bapi1.setName3("Name 3");
bapi1.setName4("Name 4");
bapi1.setRegion("GB");
bapi1.setFormOfAd("Address");
bapi1.setStreet("Street");
bapi1.setPostlCode("12345");
bapi1.setLangu("X");
bapi1.setTelephone("12345678");
bapi1.setTelephone2("12345678");
bapi1.setCurrency("INR");
bapi1.setCurrencyIso("INR");
bapi1.setOnlyChangeComaddress("X");
complexType.setCustomerNo("0000040009");
complexType.setPiDistrChan("01");
complexType.setPiDivision("01");
complexType.setPiSalesorg("QNIN");
customer._setUser("abap");
customer._setPassword("quinnox");
CustomerChangeFromData data = new CustomerChangeFromData();
data.setPiAddress(bapi1);
//bapi.setOriginalBean(bapi1);
complexType.setOriginalBean(data);
wdComponentAPI.getMessageManager().reportSuccess(" "+complexType.getOriginalBean().getCustomerNo());
wdComponentAPI.getMessageManager().reportSuccess(" "+complexType.getPiAddress());
wdContext.nodeRequest_Z_Bapi_Customer_Change().bind(customer);
complexType.setPiAddress(bapi);
wdComponentAPI.getMessageManager().reportSuccess(" "+data.getPiAddress().getCity());
customer.setParameters(complexType);
help me
Best Regards
Ravi Shankar BHi ashuthosh,
What is the structure of your import and Export parameters of your RFC.
There are 2 ways to acheive it.
In the RFC either
1. Use a Table parameter
2. Use a Export Structure
If you use a Table parameter in your RFC then in your webdynpro when you import your adaptive RFC model you would get the Table as a class.
Assume your RFC/BAPI is called "Bapi_RFC_Insert"
write the code
Bapi_RFC_Insert in = new Bapi_RFC_Insert();
wdContext.nodeBAPI_RFC_Insert_InputElement().bind(in);
<TableName> <someName> = new <TableName>
<someName>.setTabValue1();
<someName>.setTabValue2();
in.add<>(<someName>);
This should pass values as a batch.
You can also do this using Export parameters. But a table is much better.
Let me know if you require more information.
regards
ravi
Maybe you are looking for
-
HoW DO i DOWNLOAD PHOTOS AND CONTACTS FROM THE COMPUTER TO MY NEW IPHONE?
How do I download photos and contact off of Icloud from computer to my new Iphone ?
-
Reverse cost center & profit center plan data
Hi , Any one can tell how to reverse the cost center and profit center plan data. We have loaded plan data for 2010 there are some correction we want to reverse the posted data and reload the plan values. Thanks Pacers
-
Crystal Reports 2008 Fix Pack 2.7 - Merge Modules Dependencies
What version of the Visual C++ 8.0 Merge Modules is the latest Cyrstal Reports 2008 Fix Pack 2.7 looking for? I'm having issues getting the dlls to register. CEReportSource.dll failed to regester and so on . . . . I'm using InstallShield 2008 with a
-
X6 full screen handwriting for Chinese language do...
I bought Nokia X6 in Hong Kong 2 months ago, at that time I can use full screen handwriting for Chinese language. But after updating the SW I'm no longer able to use Chinese handwriting input. Help me please to offer me some advices on how to solve t
-
Dell Inspiron 3847 and MX100 256GB SSD
I bought several new Insprion 3847 and was planning on upgrading with MX100 256GB SSDs. I'm getting BSOD after cloning the hard drives on all of them with any SSD I try. Can anyone confirm this is a known incompatibility or suggest a fix? I've use