cancel
Showing results for 
Search instead for 
Did you mean: 

WebDynpro Table, CellEditor and Popup Window

ged_hurst
Participant
0 Kudos

Hi there,

I need to display a Web Dynpro Table where, a certain column, contains an InputField with a button aside that triggers a popup window. In this window I want to display another component which renders a Tree and sends back the value of the node that's selected by the user.

The component which shows in popup has already been built but I don't know what type of cell variant to create in the table.

If I use a normal InputField that's not okay because with an InputField an OVS can be assigned but I need something more complex (like a Tree UI Element). How can I display an InputField and a button in the same cell?

Thank you.

Regards

Accepted Solutions (1)

Accepted Solutions (1)

thomas_jung
Developer Advocate
Developer Advocate
0 Kudos

> How can I display an InputField and a button in the same cell?

Until NetWeaver 7.02 there is no option to place more than one UI element within the same cell.

>If I use a normal InputField that's not okay because with an InputField an OVS can be assigned but I need something more complex

Why not use a freely programmed search help then. It goes beyond OVS becuase you can design whatever interface in the search help you want. It is all done within your own WD Comonent.

ged_hurst
Participant
0 Kudos

Hello Thomas,

thanks for the precious hint, I've given you full points!

I've got one question more. How about implementing a freely programmed value help within the same component?

I mean, I'm trying to code the freely programmed VH in the main component itself. However, in the context attribute where I'm supposed to attach the VH, I've specified "Input Help Mode" = Freely Programmed but in the "Input Help Component Usage" I can't type in any thing since the value help is implemented in the same component and there's no explicit usage dependency. Yet the system doesn't compile and complains that a component that implements arbitrary search help must be provided.

The thing is that there's none and I don't want to create a new one.

Any pointers on this?

Thanks in advance.

thomas_jung
Developer Advocate
Developer Advocate
0 Kudos

>How about implementing a freely programmed value help within the same component?

No. That isn't how it is designed. The freely programmed value help must be a separate component as a new component usage is created by the framework to support the value help.

ged_hurst
Participant
0 Kudos

Yeah,

I thought no workaround would be possible.

Thank you so much for your speedy reply.

Ciao!

ged_hurst
Participant
0 Kudos

Hello Thomas,

I still have a doubt.

My main component is using a bespoke freely programmed value help and all is okay now.

However I want to pass on to this component a few parameters specified by the user in the main component.

Basically the value help displays a tree of material groups and this tree depends on the vendor (and other things) which are defined in the main component.

How can I pass on these values?

I tried cross-component context mapping but I think there might be some circular dependency (Main uses Value Help and Value Help uses Main) and this didn't succeed.

I tried to expose a method of the main component but this approach is not correct. When I instantiate the main component, from within the value help, I obtain a brand new main component and all of the values typed by the user (in the original main component) are gone.

Any solution to this?

thomas_jung
Developer Advocate
Developer Advocate
0 Kudos

From inside your freely programmed value help component you have a method called SET_VALUE_HELP_LISTENER. This is how you get the value help listener object from the framework. One of the public attributes of this object is a reference to the source, triggering context element. You can access any attribute of this context element - not just the source attribute which triggered the value help. This is generally how you access additional data you might need. Of course this means the data needs to be in the same source context element as your triggering attribute.

The option is that the parent component can have an event handler method for any interface event of the freely programmed value help. You can create an interface event which you trigger upon opening the value help. Then in this event handler you can call a custom interface method of the freely programmed value help component and pass in any data you want.

ged_hurst
Participant
0 Kudos

Hi Thomas,

I tried your solutions and they both work but I'd favour the 2nd especially because the attribute I'm supposed to read does not reside in the same context element. I could have found a workaround to this but I decided to go for the alternate solution which looks more elegant to me.

I really appreciate your help which has been most speedy and effective.

Thank you very much, indeed.

Ciao,

Marco

Answers (0)