Page 1 of 2

Merege two StiReport

Posted: Thu Mar 27, 2014 7:57 pm
by miladrasooli
Hi everyone,
I want to merge two StiReports using the following code but it only shows a blank page:

Code: Select all

 
            StiReport newreport = new  StiReport();
            newreport.ReportCacheMode = StiReportCacheMode.On;
            newreport.RenderedPages.CanUseCacheMode = true;
            newreport.RenderedPages.CacheMode = true;
            newreport.RenderedPages.Clear();
            Stimulsoft.Report.StiReport s1 = new  Stimulsoft.Report.StiReport();
            s1.Load("d:\\temp\\rpt1.mrt");
            Stimulsoft.Report.StiReport s2 = new  Stimulsoft.Report.StiReport();
            s2.Load("d:\\temp\\rpt2.mrt");
            s1.Render();
            s2.Render();
            s1.RenderedPages[0].Report = newreport;
            s2.RenderedPages[0].Report = newreport;
            newreport.RenderedPages.Add(s1.RenderedPages[0]);
            newreport.RenderedPages.Add(s2.RenderedPages[0]);
            newreport.Show();
Thank you

Re: Merege two StiReport

Posted: Fri Mar 28, 2014 5:24 am
by HighAley
Hello.

Please, try to set next property before showing report:

Code: Select all

newreport.IsRendered = true;
Thank you.

Re: Merege two StiReport

Posted: Fri Mar 28, 2014 7:36 am
by miladrasooli
after add line "newreport.IsRendered = true;"
give me error after newreport.show "Can't showing report because report require compilation."
thanks.

Re: Merege two StiReport

Posted: Fri Mar 28, 2014 8:28 am
by HighAley
Hello.

Then set the newreport.IsCompiled = true too.

Thank you.

Re: Merege two StiReport

Posted: Fri Mar 28, 2014 8:35 am
by miladrasooli
newreport.IsCompiled IsCompiled is ReadOnly i cant change value

Re: Merege two StiReport

Posted: Fri Mar 28, 2014 9:24 am
by miladrasooli

Code: Select all

    StiReport newreport = new StiReport();

            newreport.ReportCacheMode = StiReportCacheMode.On;
            newreport.RenderedPages.CanUseCacheMode = true;
            newreport.RenderedPages.CacheMode = true;
            newreport.RenderedPages.Clear();
            newreport.IsRendered = true;
            newreport.Compile(); 

            
            Stimulsoft.Report.StiReport s1 = new Stimulsoft.Report.StiReport();
            s1.Load("d:\\temp\\rpt1.mrt");
            Stimulsoft.Report.StiReport s2 = new Stimulsoft.Report.StiReport();
            s2.Load("d:\\temp\\rpt2.mrt");
                s1.Render();
                s2.Render();


                newreport.RenderedPages.Add(s1.RenderedPages[0]);
                newreport.RenderedPages.Add(s2.RenderedPages[0]);
                newreport.Show();
thanks working . most i use newreport.Compile(); befor add Rendered Page . but when i show newreport i have blank page befor all page added .
how to remove blanked page 1.i used newreport.Pages.RemoveAt(0) so it's not working. thanks

Re: Merege two StiReport

Posted: Fri Mar 28, 2014 9:27 am
by HighAley
Hello.

Could you specify which version do you use?
Try not to use Compile() method.

Thank you.

Re: Merege two StiReport

Posted: Fri Mar 28, 2014 9:29 am
by miladrasooli
Stimul Report Ultimate 2013.1.1505.0

Re: Merege two StiReport

Posted: Fri Mar 28, 2014 9:35 am
by HighAley
Hello.

Could you send us a screen-shot of the report with empty page for analysis?

Thank you.

Re: Merege two StiReport

Posted: Fri Mar 28, 2014 9:52 am
by miladrasooli

Code: Select all

StiReport newreport = new StiReport();

            newreport.ReportCacheMode = StiReportCacheMode.On;
            newreport.RenderedPages.CanUseCacheMode = true;
            newreport.RenderedPages.CacheMode = true;
            newreport.RenderedPages.Clear();
            newreport.IsRendered = true;
            newreport.Compile(); 

            
            Stimulsoft.Report.StiReport s1 = new Stimulsoft.Report.StiReport();
            s1.Load("d:\\temp\\rpt1.mrt");
            Stimulsoft.Report.StiReport s2 = new Stimulsoft.Report.StiReport();
            s2.Load("d:\\temp\\rpt2.mrt");
                s1.Render();
                s2.Render();


                newreport.RenderedPages.Add(s1.RenderedPages[0]);
                newreport.RenderedPages.Add(s2.RenderedPages[0]);
                newreport.Show();