cancel
Showing results for 
Search instead for 
Did you mean: 

Input Filed with EVS takes so much time to load large no: of Entries

Former Member
0 Kudos

Hi,

I have one inpult filed for which EVS is implemented.

It has to load some 30,000 entries from backend.

For initial loading itself it is taking more than 1 minute .

After loading , if I click on the right side button inside input field, again it is taking more than 1 minute.

I have done the following code to put values to EVS.

   
IPublicPOCC.IEt_Mat_MasterNode mmatNode=wdThis.wdGetPOCCController().wdGetContext().nodeEt_Mat_Master();// model node which has data
IPublicPOCC.IEt_Mat_MasterElement mmatEl;

    	IWDAttributeInfo a=wdContext.nodePODetails().getNodeInfo().getAttribute(IPrivatePOInsertView.IPODetailsElement.MATERIAL);
    	ISimpleTypeModifiable stm=a.getModifiableSimpleType();
        mat_Svs=stm.getSVServices().getModifiableSimpleValueSet();
    	
    	for(int i=0;i<mmatNode.size();i++)
    	{
    		mmatEl=mmatNode.getEt_Mat_MasterElementAt(i);
    		String key=""+mmatEl.getMaterialid();
	        String val=""+mmatEl.getMaterialdesc();
		mat_Svs.put(key,val);
    	}			

Just for executing the for loop it is taking time.

If I execute the same code , and put it in a Properties object it is very fast.

After implementing EVS, inputfield itself is very very slow.

How can I improve the performance.

This is very important for my requirement.

Please help me.

Thanks and Regards

Smitha

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

I think its not a good idea to put 30,000 entries in EVS,

better you create a customized value help (window),

if this is workable with your requirement, open a separate window on click of a button

and design the window the way you want.

bring the data in window's context( i mean view's context) At the application startup itself,

so every time you open or navigate within the view, it will be faster.

Former Member
0 Kudos

Dear Deepak,

Thanks for the reply .

I think , your suggestion may improve performance.

Still my requirement is , I have to put this inputfield as a column in a table.

so in every row along with the input field I have to put Button, to open new window to select from 30,000 entries.

Is there any other way to improve performance of input field with EVS?

Thanks and regards

Regards

Smitha

Edited by: Smitha Nair on Mar 13, 2008 8:35 AM

Edited by: Smitha Nair on Mar 13, 2008 8:36 AM

Former Member
0 Kudos

Then I would advice you to implement OVS,

In EVS we can not filter data from backend(all data will come),

but in OVS we can give some input & query based on which we can restrict the rows getting filled in the value help.

let me explain:

> there are 2 input parameters in the value help(key & value),

> make it madatory for the user to enter both input parameteres in the value help as input (some part of the exact values, dont allow * search, else it will fetch all 30,000 entries)

> So when user wants to make use of value help, will open the help window(OVS), will enter both the search criteria, and will get some records, out of which can select any.

>For this you have to design one RFC with 2 imports, put the validation logic in RFC, return a message if user does not enter any parameter or *.

There are 2 advantages, I see with this option:

> There will be no initial upload, as it will fetch data from backend only when user clicks on Go button in OVS value help

> You can restrict the amount of data getting filled in the value help window, so will take lesser time.

Though this idea looks weird, I could not think of any other option,

may be other SDN experts suggest any.

Hope it helps

Regards,

Deepak

Edited by: Deepak Gupta on Mar 14, 2008 10:21 AM

Answers (0)