Page 1 of 1

load multi report together

Posted: Mon Dec 10, 2018 8:53 am
by 2394745852@qq.com
load multi report together

Re: load multi report together

Posted: Mon Dec 10, 2018 1:48 pm
by Lech Kulikowski
Hello,

Sorry, maybe we did not exactly understand your question. Could you explain your issue in more details?

Thank you.

Re: load multi report together

Posted: Tue Dec 11, 2018 1:52 am
by 2394745852@qq.com
I want to see two different types of report protection in one viewer.

Re: load multi report together

Posted: Tue Dec 11, 2018 1:54 am
by 2394745852@qq.com
I want to see two different types of reports in one viewer

Re: load multi report together

Posted: Tue Dec 11, 2018 2:09 am
by 2394745852@qq.com
I want to do a batch printing function, but the batch print report templates are not necessarily the same, so I want to know how to implement this function in the report printing function.

Re: load multi report together

Posted: Tue Dec 11, 2018 8:08 pm
by Lech Kulikowski
Hello,

You can render several reports then merge in one and send to the viewer.

Thank you.

Re: load multi report together

Posted: Wed Dec 12, 2018 12:53 am
by 2394745852@qq.com
How to implement this process in code?

Thank you.

Re: load multi report together

Posted: Wed Dec 12, 2018 7:57 am
by Lech Kulikowski
Hello,

You can use the following code:

Code: Select all

var report1 = new Stimulsoft.Report.StiReport();
report1.loadFile("Reports/1.mrt");
var report2 = new Stimulsoft.Report.StiReport();
report2.loadFile("Reports/2.mrt");
var reportMerge = new Stimulsoft.Report.StiReport();
reportMerge.reportUnit = report1.reportUnit;
reportMerge.render();
reportMerge.renderedPages.clear();
report1.renderAsync(function () {
    for (var index = 0; index < report1.renderedPages.count; ++index) {
        reportMerge.renderedPages.add(report1.renderedPages.getByIndex(index));
    }
});
report2.renderAsync(function () {
    for (var index = 0; index < report2.renderedPages.count; ++index) {
        reportMerge.renderedPages.add(report2.renderedPages.getByIndex(index));
    }
});
viewer.report = reportMerge;
viewer.renderHtml("viewerCont");

Re: load multi report together

Posted: Wed Dec 12, 2018 8:29 am
by 2394745852@qq.com
Thank you .I also find another ways:

var report = new window.Stimulsoft.Report.StiReport();
report.NeedsCompiling = false;
report.IsRendered = true;
report.render();
report.renderedPages.clear();
let that=this;
for(var i=0;i<testdata.testdata.length;i++){
var sourceReport_list= new window.Stimulsoft.Report.StiReportsCollection();
if(testdata.testdata.type==2){
//格挡
sourceReport_list = new window.Stimulsoft.Report.StiReport();
sourceReport_list.load(ssmrt);
var dataSet = new window.Stimulsoft.System.Data.DataSet("LatticeblockData");
dataSet.readJson(testdata.testdata.printdata);
sourceReport_list.dictionary.databases.clear();
sourceReport_list.regData(dataSet.dataSetName, "LatticeblockData", dataSet);
sourceReport_list.render();
report.renderedPages.addRange(sourceReport_list.renderedPages.list);
}
if(testdata.testdata.type==1){
//水印
sourceReport_list = new window.Stimulsoft.Report.StiReport();
sourceReport_list[i].load(delmrt);
var dataSet2 = new window.Stimulsoft.System.Data.DataSet("WatermarkData");
dataSet2.readJson(testdata.testdata[i].printdata);
sourceReport_list[i].dictionary.databases.clear();
sourceReport_list[i].regData(dataSet2.dataSetName, "WatermarkData", dataSet2);
sourceReport_list[i].render();
report.renderedPages.addRange(sourceReport_list[i].renderedPages.list);
}
}
report.print();

}

Re: load multi report together

Posted: Wed Dec 12, 2018 11:35 am
by Lech Kulikowski
Thank you for the provided solution.