Extjs Combobox using json - combobox

What is the max size for combobox using json? I seem to die at 5000 json elements.

To state the obvious, from a usability standpoint rendering thousands of records into any UI component is completely useless. No human will be able to make use of that much data. A better approach would be server-side filtering to fetch a usable subset of the data. The combo also supports remote paging if that's an option for you -- there's an example of that in the Ext samples. There's no "built-in" limit to the amount of data that the combo can handle, but there are practical limits to how much data/rendering any page can handle and still be responsive.

Related

Stream data into ag-grid with angularjs

I am attempting to use ag-grid in an application where events are streamed to the client. Every event received should be added to the grid. I am adding via the insertItemsAtIndex method, and am getting multiple events per second.
Unfortunately ag-grid doesn't seem to handle this scenario very well. The first 10 or so events are displayed promptly, but after that I only see chunks of events displayed after a delay. The browser also completely bogs down to the point that it is unusable.
Is there a better way to use ag-grid for streaming data? I have tried the other addItems method, I have removed any cell renderers, sorts, filters, etc. in order to try and keep it as lean as possible, but with no effect.
There is the enterprise feature of a Viewport Row Model. It's the exact thing that you are looking for. However, if you don't have that option, then I would suggest handling the addition of items outside of the grid, then updating the rows with what you create... that might be more optimized.

Using buffered renderer for grid in extjs

I'm looking to load a pretty big dataset (around 20k rows) and use the extjs 4.2 grid buffered rendering to view the data. I've seen so many examples that are different (extjs 4.2 examples) that my head is spinning and I can't get any of them to work. There is even an extjs page http://www.sencha.com/blog/first-look-at-ext-js-4-2-grid that shows how simple buffered rendering is in extjs 4.2 (just add the buffered rendering plugin to the grid ) but the examples in the sdk don't look like the example on the web page (they still use the stores buffering configs even though the linked to page above explicitly says you don't need to do that in extjs 4.2).
In the end ... I don't want to hit the server over and over and buffer the data that way. I want to load all the data and just buffer the grid's current dataset.
Does anybody know of an example of how to make that happen ?
Sorry my english is not so good.
Also, if I understood your question on the right way, you have to learn the difference between Remote- and Local Filtering. I think what you search is a local filter,
there you can set individual parameters as you want.
take a look to this example, on the button of the grid, you can find buttons to switch between local- and remote filters, there you got a working example for local filtering. Should do what you want :)

Implementing filters for ExtJS Tree grid with large amount of data

I am working on a project which is using ExtJS 4.1
I need to implement a tree grid with filters. As per my understanding from reading various articles, blogs and SO posts, ExtJS does not provide filter mechanism with tree store and we need to write our own filtering mechanism.
For filtering there are two approaches suggested:
1) Load the data into the tree grid and then show / hide the node based on filter conditions
2) Manipulate the store (copy the data and remove the record from the store)
I tried first approach. It was working perfectly with the test data (around 30 nodes).
But with the snapshot of production data, I was getting "Unresponsive Script" error in IE and FireFox. With Chrome it was working fine.
Basically the production database has large amount of data, around 3500 records which form around 900 nodes in the tree grid. I suspect, once the tree store is populated, while rendering all 900 nodes into the tree grid, I get "Unresponsive Script" error.
I am new to ExtJS and not sure what is the best way to tackle this problem.
I would like to know, how does filtering works on grid. Can I replicate same filtering mechanism for Tree grid?
Any suggestions to tackle this problem are welcome.
Instead of Tree if you can use Grid with grouping then use you can use Grid with filtering like this with pagination. If not then you can use something like Ext.grid.plugin.BufferedRenderer which can be used for TreePanel as well but it is available only on 4.2. If none of this is the solution for you then you have to create your own custom filtering than can handle pagination for you.
I have found that loading child nodes on the expand events of each node is a decent way to minimize the dom interaction of the tree panel. That way when you filter, it's only going to need to filter the first level of the tree structure rather than the entire thing. I have it working in an access control management application right now that is handling about 350 resources in one tree panel and two others with about 75 nodes each that are linked together through events. There's no noticeable UI lag with that approach but I haven't scaled it up quite to your scale and it would depend greatly how many items were in the first level of your tree whether or not that could work for you.

How to best display large number of items in program

I currently have a 952 large collection of items. I am displaying about 500+ of them as polygons, and this is causing some noticeable, but manageable lag in my application. What is the most lightweight control / element that I can use to display these items at one time?
DrawingVisuals provide a more lightweight approach for rendering objects than Paths:
http://msdn.microsoft.com/en-us/library/ms742254.aspx
The downside of this approach is that they do not provide events such as mouse enter / leave, you must perform hit testing manually. However, this might be OK for your needs.
There is an even more lightweight approach where you add items to the visual layer directly, you can see an example on this page:
http://msdn.microsoft.com/en-us/library/ms748373.aspx
My advice would be to try DrawingVisuals first.

Large dataset and winforms

I have a dataset which is about 3 million records, and I would like to load them in to a Data Grid within an application (WinForm).
What is the best approach / method of displaying the data.
I need to be able to run a filter to the data to reduce down the data set, ideas would be welcomed
A good idea would be filtering the data in the database and retrieving only the (pre)filtered result set. If this set is still large, use virtual mode, but also rethink your design - if you want to display so much data, that you are getting into performance problems, you might be showing to much data for a user, too.
In addition to filtering you should also consider paging in the backend (your SP should handle paging)
You can bind the grid to the DataSet, using the DataSource property and a BindingSource component. The Forms designer can take care of the creation of the BindingSource for you.
The BindingSource has a Filter property that allows you to filter the content of the DataSet
EDIT: by the way, in data-bound mode, the DataGridView implicitly uses virtual mode, so you don't have to worry about having too many rows in the grid

Resources