I have data set have 3 columns and 150,000 rows.
I saw your demo page that draw one million rows data to pivot so I thought that 150,000 rows data is not a big problem.
My logic flow is this:
User makes condition -> select data from query as user’s condition (the result came out 150,000 rows) -> give result data to flexmonster by ‘setReport’ method.
And I tried these things, too. give result data to flexmonster by ajax result, json file, csv file.
But It comes out same problem all.
I don’t know how to deal with it.
I can give you my 150,000 rows data. but I don’t want to attach file in this place.
If you let me know way of private contact, I’ll send you file.
Thank you for writing. You can send all the sensitive information by email. Also could you please specify what browser you are using for the tests?
That will definitely help us in our investigation.
Waiting for the update from you.
I send a mail to you. Please check this 🙂 Thanks!
Thank you for the provided details. We have converted the excel file to the CSV and loaded it into the component. Everything works as expected. Here is a video example: https://www.screencast.com/t/WzEyL4J2 . It seems that you may have sent data in the incorrect format. Please have a look at the following article: https://www.flexmonster.com/doc/json-data-source/ . It looks like the JSON format should fit you better. In such case, the simple setReport call should look the following way:
Please let us know if the information above was helpful to solve the case.
Thank you for replying fast, Dmytro.
But My problem is not solved yet.
I tried your way of video. local csv what imported from local did well. The browser not paused after drawing pivot.
But My system doesn’t send data of pivot from user’s local computer. we make data from server-side and then make json file.
we call setReport method on ajax response area all at once.
and we apply slice options(rows, columns, value) on slice option of setReport method at once.
I want to see video that you test in condition what I said.
: use setReport with slice options(rows, columns, value) at once. not control by toolbar button. Just code. I tested setReport with slice options(only rows and columns. not column). In this condition, 150,000 data works good, too. So I thought that columns options is little bit awkward.
Please check this. I’ll waiting your reply.
(+) we found these problems. please check this, too.
Thank you for your feedback. When you are loading data asynchronously you need to be sure that component is already loaded and ready to listen to your requests. For such cases, we recommend using Flexmonster’s events. The
reportcomplete event allows making sure that everything is up and running. After that, you can run setReport API call. Here is an example: http://jsfiddle.net/flexmonster/2qb8wzh1/. You can find more information about our events here: https://www.flexmonster.com/api/reportcomplete/ .
As an alternative approach, you can load data firstly and then initialize pivot object with all the configurations without using setReport API call.
Regarding your latest question, we assume that the new data file you were using for tests is slightly bigger than the previous one. Please note, that Flexmonster component is a browser application. Therefore, it is limited with the RAM and CPU resources comparing to the desktop applications such as Excel Pivot Table. It is difficult to define strict data limit since that really depends on the case. As you have already noticed, that number depends on the client’s RAM size, data structure and also on the browser which is used for the tests. However, such difficulties can be solved with a certain amount of optimization. In such cases, we recommend our clients prefiltering the data on the server side. Such approach produces more specific reports and protects weak client’s machines from crashing. Please find our recommendations in the following articles: https://www.flexmonster.com/blog/blog-perform-faster/, https://www.flexmonster.com/blog/sql-pivot-table-best-performance/ .
Let us know if you have any other question.