cancel
Showing results for 
Search instead for 
Did you mean: 

EVS Value help performance issue

0 Kudos

In our case we have ESS application in which we use Floor plan manager to navigate between the different views.

On pressing the NEXT button of the first view we are calling an RFC and also navigate to the second Screen.

On the initialization (WDINIT method) of this screen we are loading EVS value set from the output node of the function module

Using the standard code mentioned below for all the 8 input fields.

The total of all the F4 help values sums up to 80K (Internal order = 57K CostCenter =13 Ketc)

On debugging the application we see that this is the only place where it takes maximum time( >12 min) to load these values

which when run in Customers system times out giving a blank screen.

To cross check this , on reducing the number of values coming as F4 help (<30 K) the application does not time out.

Can you suggest if there is a better approach of providing this much amount of values for a Input field in WD Java .

As for F4help values there is no criteria on which it can be filtered before loading and hence providing all the values is the requirement.We don't have specific FM that can be executed on certain criteria in order to use OVS help.

-


IWDAttributeInfo attributeInfo = wdContext.getNodeInfo().getChild("CostDistributionPos").getAttribute("CoCo");

ISimpleTypeModifiable payrollType = attributeInfo.getModifiableSimpleType();

payrollType.setFieldLabel("Company Code");

IModifiableSimpleValueSet valueSet = payrollType.getSVServices().getModifiableSimpleValueSet();

int p = wdContext.nodeEt_F4_Cc().size();

for (int j = 0; j < p; j++)

{

valueSet.put(

wdContext.nodeEt_F4_Cc().getEt_F4_CcElementAt(j).getBukrs(),

wdContext.nodeEt_F4_Cc().getEt_F4_CcElementAt(j).getButxt);

}

-


Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi,

have you thought about an initial load?

I mean, do you always have different search criterias for the F4 value help.

Maybe you could load all values at once(what would take probably a long time) but then save these values in a Java Singleton. After you have provided the Singleton object with data it can be accessed from all users on the same Servernode. I think that accessing a java object instead of calling R3 all the time would raise the performance more than a lot!

Regards,

Dennis

former_member197348
Active Contributor
0 Kudos

Hi Parvez,

As for as I know not much optimization is not possible. If it is not a problem and acceptable to the client you can use dropDownBox to improve perfomance. Create a <b>DropDownByIndex </b>and bind the texts property to CoCo. We are using a DropDownByIndex with more than 500 values. It simply takes 3 minutes only for initial load.

regards,

Siva

0 Kudos

Hi Sriram,

Here the values i am getting as an output is in the range of 50K(50000) to 80K(8000).

Thanks

Parvez