Need a special offer?Find out if your project fits.
+

Facing issue with Flexmonster Pivot table when data volume is high

Answered
Jayita Biswas asked on June 3, 2020

Hi Team,
We are facing an issue with Flexmonster pivot table. We have connected the Flexmonter with CDS database. CDS has a limitation that it can fetch only 5000 records at a time. We have near around 100000 records in the report. For fetching this 100000 records it is hitting 20 times to the database. When custom web api is calling from Flexmonster then it is getting timeout. Do you have any lazy loading or On demand loading in Flexmonster so that  first time 5000 records will load then when page will scroll more data will load?
Below is the snippet of code:
pivot = new Flexmonster({
container: "pivotContainerOrder",
componentFolder: "https://cdn.flexmonster.com/",
toolbar: true,
width: "100%",
height: "680",
reportcomplete: filter,
customizeCell: customizeCell,
report: {
dataSource: {
type: "json",
/* URL to the Data Compressor .NET */

filename: "https://localhost:44322/api/salesorder/getsalesorderfromcds?RequstedShipDateFrom=" + rsdFrom + "&RequstedShipDateTo=" + rsdTo + "&lstAccGuid=" + accIds + "&orderView=" + selectedOrderView,
mapping: {
"Customer Order No": {
type: "string"
},
"Customer": {
type: "string"
},
"PO No./BOL": {
type: "string"
},
"Ship to Contact": {
type: "string"
},
"Ship to Company": {
type: "string"
},
"State/Province": {
type: "string"
},
"Order Date": {
type: "string"
},
"Requested Ship Date": {
type: "string"
},
"Ship Date": {
type: "string"
},
"Warehouse": {
type: "string"
},
"Status": {
type: "string"
},
"Hold Reason": {
type: "string"
},
"Order Type": {
type: "string"
},
"Package Type": {
type: "string"
},
"Carrier": {
type: "string"
},
"Service": {
type: "string"
},
"Tracking No": {
type: "string"
}
}
},
options: {
grid: {
title: "Orders",
type: "flat",
showTotals: "off",
showGrandTotals: "off"
}
},
},
licenseKey:licencekey
});
 

1 answer

Public
Illia Yatsyshyn Illia Yatsyshyn Flexmonster June 4, 2020

Hello,
 
Thank you for reaching out to us.
 
Our team wants to explain that the problem you are facing is likely to be connected with the way the data is loaded. Every time the data needs to be loaded, the data set will be fetched from the database to Flexmonster Data Compressor and passed to the client-side. Being heavy enough, the process of fetching the data set from the database is likely to cause the timeout exception.
 
Such limitations can be overcome using Flexmonster Data Server. The server will load the whole data set right after it is launched and preserve it on the server. Now, every time the data needs to be loaded, it will be taken directly from the server without the need to access the database.
Moreover, Flexmonster data server allows loading larger data sets to the client-side and increases the loading speed if pivot forms are used. It is due to the fact that only the required piece of information is going to be loaded at once. It will be aggregated and filtered on the server, decreasing the load on the client-side.
 
However, Flexmonster Data Server does not allow connection to the CDS database out of the box.
We suggest considering complementing it with a custom loader that would allow such a connection. Please refer to our example demonstrating the implementation of such parser for the Data Server as a DLL. It demonstrates loading the data from the inline array. The data source can be replaced with a required one (CDS database).
 
Our team hopes it helps.
Please let us know in case any assistance is needed.
 
Regards,
Illia

Please login or Register to Submit Answer