Hi,
I'm investigating the possibilities to migrate from Crystal Reports reporting to JSReport for our accounting solution. Currently I have a POC in which i can print a very simple report containing 50 client records.
Since some of our customers produce reports containing 50.0000+ records, I did some tests with somewhat larger data: up to a 1000 records (8 display fields) it works, but given 2000 records i already get a timeout.
public static string Generate(string jsonData)
{
ILocalUtilityReportingService rsu;
var rs = new LocalReporting();
rs.RunInDirectory(Path.Combine(Directory.GetCurrentDirectory(), "jsreport"));
rs.KillRunningJsReportProcesses();
rs.UseBinary(JsReportBinary.GetBinary());
rs.Configure(cfg => cfg.AllowedLocalFilesAccess().FileSystemStore().BaseUrlAsWorkingDirectory());
rsu = rs.AsUtility().Create();
jsonData = "{\"klanten\":" + jsonData + "}";
var customerReport = rsu.RenderByNameAsync("klanten", jsonData).Result; // HERE Timeout Error: pdf generation not completed after 30000ms (1).
customerReport.Content.CopyTo(File.OpenWrite(@"c:\temp\test.pdf"));
return string.Empty;
}
I'm working from within .NET, with chrome-pdf, handlebars engine.
For now my data is provided in a json string, but data is pulled out of ms sql server.
Before I invest more time in the POC: any ideas or examples whether it is possible to work with such large data (output will sometimes be 100's of A4 pages)