Page 1 of 1

UL_2012.03.09 - StiSLViewerControl.ApplyRenderedReport() Exception

Posted: Thu Mar 15, 2012 6:01 am
by dstoermer
Hi all,
I downloaded the new pre-release from your website.
We use the StiSLViewerControl via WCF-Service the complete Report is transfered to the client.

But in the new Version UL_2012.03.09 we get an Exception, when we use the following method:

private void service_LoadReportCompleted(object sender, ReportService.LoadReportCompletedEventArgs e)
{
try
{
viewer.progress.Start("Reporting", StiLocalization.Get("DesignerFx", "LoadingDocument"), false);
if (e.Error == null && e.Result != null && e.Result.Length > 2)
{
viewer.ApplyRenderedReport(e.Result); //Exception here
}

viewer.progress.Close();
viewer.progress = null;
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}

}

Exception Stackstrace:
bei System.IO.Compression.StiZipInputStream.GetNextEntry()
bei Stimulsoft.Report.SL.Helpers.StiParseResultsHelper.DecodeString(String xml)
bei Stimulsoft.Report.SL.Helpers.StiParseResultsHelper.FromServer.ParseReportAfterRender(String xml, StiReport& mainReport, List`1& errors, Boolean isDesigner)
bei Stimulsoft.Report.Viewer.StiSLViewerControl.ApplyRenderedReport(String xml, Boolean isRequestFromUser)
bei Stimulsoft.Report.Viewer.StiSLViewerControl.ApplyRenderedReport(String xml)
bei Reports.MainPage.service_LoadReportCompleted(Object sender, LoadReportCompletedEventArgs e)

On the Server-side the report-string is transfered like this:
return RenderingReportHelper.CheckReportOnInteractions(report, true);

This combination of actions worked till today, I think you changed something inside the methods, what need I have to change, so that we can use the Stimulsoft Control again?!

I wish you a nice day,
kind regards
Daniel

UL_2012.03.09 - StiSLViewerControl.ApplyRenderedReport() Exception

Posted: Fri Mar 16, 2012 1:59 am
by Alex K.
Hello,

Please update the WCF from our site, now available version 1.8.2:
http://www.stimulsoft.com/ShowNews.aspx?id=2380

Thank you.

UL_2012.03.09 - StiSLViewerControl.ApplyRenderedReport() Exception

Posted: Mon Mar 19, 2012 4:31 am
by dstoermer
Good Morning Aleksey,
thank you very much for your quick response.
I've tried out the examples.

I think I use the same methods, but I still got the exception "Wrong Local header signature: 0x6C6D583C" with this Stacktrace:
bei System.IO.Compression.StiZipInputStream.GetNextEntry()
bei Stimulsoft.Report.SL.Helpers.StiParseResultsHelper.DecodeString(String xml)
bei Stimulsoft.Report.SL.Helpers.StiParseResultsHelper.FromServer.ParseReportAfterRender(String xml, StiReport& mainReport, List`1& errors, Boolean isDesigner)
bei Stimulsoft.Report.Viewer.StiSLViewerControl.ApplyRenderedReport(String xml, Boolean isRequestFromUser)
bei Stimulsoft.Report.Viewer.StiSLViewerControl.ApplyRenderedReport(String xml)
bei EKO.Reports.MainPage.service_LoadReportCompleted(Object sender, LoadReportCompletedEventArgs e)


I've updated all reports with your new designer.exe, but no improvement.

On the server-side I have this service-method:

Code: Select all

[OperationContract]
        public string LoadReport(ReportItem Item)
        {
            if (!string.IsNullOrEmpty(Item.ReportName))
            {
                StiReport report = new StiReport();
                report.Load(HttpContext.Current.Request.MapPath("..\\..\\Reports") + "\\" + Item.ReportName);

                report.GlobalizationManager = new GlobalizationManager(new CultureInfo(Item.ParameterDictionary["@Sprache"].ToString().ToLower()));
                report.GlobalizationStrings.LocalizeReport(Item.ParameterDictionary["@Sprache"].ToString().ToLower());

                foreach (var item in report.Dictionary.Databases.Items)
                {
                    ((Stimulsoft.Report.Dictionary.StiSqlDatabase)(item)).ConnectionString = ConfigurationManager.AppSettings["ConnStringReports"].ToString();
                }

                report.Compile();

                switch (Item.ReportName)
                { 
                    case "XXX.mrt":
                        report.CompiledReport.DataSources["AAAAAA"].Parameters["@Sprache"].ParameterValue = Item.ParameterDictionary["@Sprache"].ToString();
                        break;
                 }

                report.Render(false);
                return RenderingReportHelper.CheckReportOnInteractions(report, true);
            }

            return null;
        }
And on the client side, I have this completed-event:

Code: Select all

private void service_LoadReportCompleted(object sender, ReportService.LoadReportCompletedEventArgs e)
        {
            try
            {
                viewer.progress.Start("Reporting", StiLocalization.Get("DesignerFx", "LoadingDocument"), false);
                if (e.Error == null && e.Result != null && e.Result.Length > 2)
                {
                    viewer.ApplyRenderedReport(e.Result);
                }
                
                viewer.progress.Close();
                viewer.progress = null;
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                viewer.progress.Close();
                viewer.progress = null;
            }
           
        }
Do you have a hint for me, where I can dig to find the error?

I wish you a nice day,
kind regards
Daniel

UL_2012.03.09 - StiSLViewerControl.ApplyRenderedReport() Exception

Posted: Mon Mar 19, 2012 5:26 am
by Alex K.
Hello,

Please send us a sample project which reproduces the issue for analysis.

Thank you.

UL_2012.03.09 - StiSLViewerControl.ApplyRenderedReport() Exception

Posted: Mon Mar 19, 2012 7:45 am
by dstoermer
Hi Aleksey,
I don't need to send you a sample project.
I figured it out.

One helper-method was missing.

You should mention at your posted link: http://www.stimulsoft.com/ShowNews.aspx?id=2380
that all silverlight users have to migrate the helper-methods.

But thanks a lot, I wish you a nice day,
kind regards
Daniel

UL_2012.03.09 - StiSLViewerControl.ApplyRenderedReport() Exception

Posted: Tue Mar 20, 2012 3:02 am
by Anton Lozovskiy
Hello,

Let us know if you need any additional help.

Thank you.

Re: UL_2012.03.09 - StiSLViewerControl.ApplyRenderedReport()

Posted: Wed Dec 05, 2012 10:43 pm
by ruby103
Hello,
I have a problem with StiSLViewerControl.InvokePrintReport();
I always a exception like this :

à System.Windows.Printing.PrintDocument.PrintInternal(String documentName, PrinterFallbackSettings printerFallbackSettings, Boolean useDefaultPrinter)
à System.Windows.Printing.PrintDocument.Print(String documentName)
à Stimulsoft.Report.Viewer.StiPrintReport.Print()
à Stimulsoft.Report.Viewer.StiSLViewerControl.OnPrintReport(EventArgs e)
à Stimulsoft.Report.Viewer.StiSLViewerControl.InvokePrintReport()
à CIBApplication.ReportHelper.service_LoadReportCompleted(Object sender, LoadReportCompletedEventArgs e)
à CIBApplication.ReportServiceReference.ReportServiceClient.OnLoadReportCompleted(Object state)


On the server-side I have this service-method:

Code: Select all

public string LoadReport(string reportName, string reportParam)
        {
            if (!string.IsNullOrEmpty(reportName))
            {
                StiReport report = new StiReport();
                report.Load(HttpContext.Current.Server.MapPath("/Reports") + "\\" + reportName + ".mrt");
                report.Dictionary.Databases.Remove(report.Dictionary.Databases[0]);
                report.Dictionary.Databases.Add(new Stimulsoft.Report.Dictionary.StiSqlDatabase("CIB",
                  "CIB",
                  ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString,
                  false));
                report.Compile();

                report["monParam1"] = reportParam;
                report.Render(false);
                return StiSLRenderingReportHelper.CheckReportOnInteractions(report, true);
            }

            return null;
        }

And on the client side, I have this completed-event:

Code: Select all

 private void service_LoadReportCompleted(object sender, ReportServiceReference.LoadReportCompletedEventArgs e)
    {
      myReportViewer.progress.Start("ReportService", StiLocalization.Get("DesignerFx", "LoadingDocument"), false);
      if (e.Error == null && e.Result != null && e.Result.Length > 2)
      {
        myReportViewer.ApplyRenderedReport(e.Result);
      }
      else
      {
        MessageBox.Show("Erreur à la génération de l'édition");
      }

      myReportViewer.progress.Close();
      myReportViewer.progress = null;
      myReportViewer.InvokePrintReport(); 
    }
Do you have a hint for me, where I can dig to find the error?

Re: UL_2012.03.09 - StiSLViewerControl.ApplyRenderedReport()

Posted: Thu Dec 06, 2012 6:49 am
by HighAley
Hello.

We couldn't find an exception message.
Please, send us a sample working project to reproduce the issue.

Thank you.