cancel
Showing results for 
Search instead for 
Did you mean: 

Using ESF to connect to OVS

Former Member
0 Kudos

Hello,

Has anyone tried to connect to the Object Value Selector Interface using ESF? Any help is highly appreciated.

Thanks and Best Regards, Ritu

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi Ritu,

I assume that ESF == Enterprise Services Framework == <COOL>.

So I create a small application that uses services from one of xApps based on CAF 0.9 codebase.

There are 2 modes for OVS in WD: OVS by context & OVS by CMI query. I try both, but only first works. The reason is problem with CMI model class info names as it generated by CAF. For example, if we have result aspect Category, then its name is "Aspect.Category". Built-in OVS component try to use this name to create context node and, obviously, failes due to "." in name.

Well, as I said, first approach works. However, it is not perfect (it is irrelevant for ESF, it is common OVS shortcomings):

1. UI is ugly. Really ugly. It seems that component was not updated since SP4, and there were a lot of changes in properties' defaults for UI components

2. OVS force to use at least one input parameter. Not a big issue, if you realy have parameters, but what to do otherwise?

3. Current value may be shown in parameter, but not in list (via highlighting corresponding row)

4. The only way to close OVS pop-up is to re-select value again, i.e. there is nothing like "Cancel" button. Very inconvinient if you have large list and current value is not at top.

WBR,

Valery Silaev

EPAM Systems

Former Member
0 Kudos

Hi Valery,

You are right. I refeered to <cool>. Coincidentally I too work for xApps and I want to use CAF 1.0. Do you think there is some way in which CAF can provide a fix for the Aspect. problem- I can discuss this with the developers then. I also agree regarding the cancel - I found this quite annoying when I used the OVS with RFC- I'll try to see if the WebDynpro colleagues can implement this.

Thanks a lot.

Best Regards, Ritu

Former Member
0 Kudos

Ritu,

As far as OVS component is concerned, I guess it is more appropriate place for fixing names. Namely, there is no restrictions on CMI names (AFAIR), but there is certain restrictions for WD Context Node names.

So the fix <i>should</i> be applied in OVS component itself, and it is as simple as regular expression that transforms any non-word characters into undersore symbol (_)

VS

Former Member
0 Kudos

Thanks a lot Valery. I will contact the WebDynpro team to help us with this.

Thanks and Best Regards, Ritu

joerg_singler
Explorer
0 Kudos

Hi all,

first I want to comment some statements in this discussion:

1)It exists two modes for the OVS-Component Context-based and CMIQuery-based and both implementations have been working since stack02 (internal codename sp5).

2)In the Context-based variant you have to specify an input node for the input parameters, but you don't have to specify any parameter. In the CMIQuery-based variant, you don't have to specify any node, but only the instance of the cmiquery.

3)The UI: it is almost a generic ui, which is built with a simple algorythm, and the ui-elements use the default-values as defined, but if there are special wishes let me know them, each feedback is welcome, but if we don't get them, we can not change it ... ;(

4)"."-notation of ESF is also fixed in ESF (sp6/sp7), not in the component, because in ovs we do not convert the name in both directions, we take it as it is and this is quite ok.

5)To close the popup, there are still two ways to do it:

a)selection of an element or

b)to click outside of the popup in the screen.

Well, we know that it is not quite intuitive, but we just have to accept the possibilities of popups in NW04.

Second, I want to pronounce again, that we need your feedback to build usable ui's in Web Dynpro and it is welcome here.

Regards Joerg

Former Member
0 Kudos

Regarding [2]:

It seems there is a pesky bug in com.sap.tc.webdynpro.components.ovs.views.SearchView inside OVS component (on my machine tcwdcorecomp is deployed along with sources).

Joerg, sorry again for not using CSN.

Here is a cut from wdDoModifyView method:

Iterator propertyInfos = inputModelClassInfo.iteratePropertyInfos();
int i = 0;
ICMIModelClassPropertyInfo propertyInfo = (ICMIModelClassPropertyInfo)propertyInfos.next();
path.append(propertyInfo.getName());
UIElementFactory.getInstance().addUIElement(view, container, path.toString(), String.valueOf(i), propertyInfo.getDataType(), IWDMatrixData.class, action);
path.setLength(basePathLength);
Class matrixData = null;
for (; propertyInfos.hasNext();) {
  ...
}

Obviously, this code assumes that there is at least on attribute in input parameters node, what is incorrect according to description in [2].

VS