Telerik Forums
Reporting Forum
5 answers
527 views

I have a report being rendered in an Angular component using the HTML report viewer. I want to display some additional information once the report has finished rendering - so I'm binding to the renderingEnd event of the viewer.

My problem is that I can't access the properties of component from within the callback function. "this" refers to the report viewer itself. Can you please point me in the direction to access the component's properties?

Thanks in advance.

Bob

 

 

Bob
Top achievements
Rank 1
 answered on 07 Mar 2018
1 answer
613 views

I've web application and using AspNetCore 2.0. I'm using Telerik Reporting v12.0.18.125
I'm facing a memory leak issue in my system. After displaying the Report using Report Viewer the Report object is still in the memory heap and refreshing the report one time create more 3 report instances and it is never removed from the memory.
I'm using below CustomReportResolver to Resolve the report using DependencyInjection 

public class CustomReportResolver : IReportResolver
  {
      private readonly IIocResolver iocResolver;
      private readonly IAbpSession abpSession;
 
      public CustomReportResolver(IIocResolver iocResolver,IAbpSession abpSession)
      {
          this.iocResolver = iocResolver;
          this.abpSession = abpSession;
      }
 
      public ReportSource Resolve(string reportId)
      {
          var reportType = Type.GetType(reportId);
 
          if (reportType == null)
              throw new UserFriendlyException($"Could not find a corresponding report for type '{reportId}'.");
 
          var report = (Report) this.iocResolver.Resolve(reportType);
          var customReport = report as ReportBase;
          if (customReport != null)
          {
              customReport.TenntId = abpSession.TenantId;
              customReport.UserId = abpSession.UserId;
              customReport.IocResolver = this.iocResolver;
          }
 
          var reportSource = new InstanceReportSource {ReportDocument = report};
          return reportSource;
      }
  }

and this is the ReportsController

[ApiExplorerSettings(IgnoreApi = true)]
   public class ReportsController : ReportsControllerBase, ITransientDependency
   {
       public ReportsController(IHostingEnvironment environment, IIocResolver iocResolver, IAbpSession abpSession)
       {           
           this.ReportServiceConfiguration =
              new ReportServiceConfiguration
              {
                  HostAppId = "Html5DemoApp",
                  Storage = new FileStorage(),
                  ReportResolver = new CustomReportResolver(iocResolver,abpSession)
              };
       }
   }

I want to find a way to remove the Report Instance from the memory to avoid this memory leak issue.

Thanks,

 

Todor
Telerik team
 answered on 07 Mar 2018
2 answers
336 views

Hi,

I am creating a label in report designer which will include a Code128 barcode. The barcode will include the identifiers 01,13,320 and 21. 

GS1 identifiers: https://www.gs1-128.info/application-identifiers/

I am stuck with building the identifier 320 net-weight in pound (two decimal places --> 3202). Within the database I find values like 7.4563 or 34.2300 or 101.1000, etc. My question is how to round the value, get rid of the separator and to add leading zeros? Values should look like 000746, 003423 and 010110.

The round() functions seems to work with decimal places and I don't find any function to add leading zeros. 

Any help is greatly appreciated! Thanks!

Katia
Telerik team
 answered on 06 Mar 2018
1 answer
266 views

This is a very old topic https://www.telerik.com/forums/how-change-default-margins

Has Telerik supports this feature yet ?

 

Katia
Telerik team
 answered on 06 Mar 2018
1 answer
165 views

Hi Team,

 

 

I have  Telerik Devcomplete license and I have installed the same in my machine. Now I want to Create some invoice reports. For creating new  report do i need to install anything else. In Nugget package I could see Telerik.Reporting.Trial. Is this a trial version?. Please help me on this

Katia
Telerik team
 answered on 06 Mar 2018
1 answer
198 views

I have a report that needs png images of signatures on it. I have the raw image data stored in my database which looks like this,

"‰PNGIHDR  ´     àÀÄÙ    IDATx^읛ÅÒ…Ž8À9øþÿ!:‚³
gÃWï™>s[ciw$vWëê{ûckW35NW:õÅÑFÙÒi´@Z -H ¤Ò+j/Юè›ËÛN ¤Òi´@Z -Ðæ@H ¤Òi´@Z -Xi $ ]é×—7ŸH ¤Òi´@Z -€6Ç@Z -H ¤Òi´ÀJ[ íJ¿¾¼ù´@Z -H ¤Òi´9Òi´@Z -H "

This data is accessible by my datasource. When I set the value of my picturebox to this field and change the mimetype to "image/png" I get an error that reads "Invalid image data"

When I was using SSRS I would use PDF# and VB code to render this report into a pdf and the signatures into  system.drawing.image objects and then draw them onto the pdf with x and y coordinates.

What I would really like to do is have this data render to an image in a Picturebox on my report so I no longer have to programatically place signatures onto a pdf of my report after is has been rendered as a pdf. I would like to see the signatures on my report in the reportviewer.

 

Is this possible? thank you!

-Kevin

Todor
Telerik team
 answered on 05 Mar 2018
1 answer
221 views

I have a multi-value parameter whose values can be 1,2,3,4.  

Is there a way to check if a certain value is selected in this parameter?

I was thinking of setting a binding on visibility to: 

    IIf(Parameters.Parameter1.Value.Contains(1), True, False)

This way, if value 1 is selected, it's visibility will be true.  Otherwise it will be false.

Your help is greatly appreciated.

Thanks,

Phil

 

Phil
Top achievements
Rank 1
 answered on 02 Mar 2018
6 answers
332 views

Hi,

I've been seeing this issue for a long time, but I can't seem to find where to log the errors that are being thrown when users are generating reports with the WebAPI/HTML5 report viewer.

I see tons of exceptions happening that look like this:

* /api/reports/clients/094113-ecd1/instances/094113-5731/documents/094113-aabb094141-da97 - 500 Internal Server Error

* /api/reports/clients/094843-e940/instances/095003-e56b/documents/095003-5023095009-20af - 500 Internal Server Error

* /api/reports/clients/112823-f291/instances/113024-cb46/documents/113024-837d113030-be3d - 500 Internal Server Error

* /api/reports/clients/112823-f291/instances/113219-b3dd/documents/113219-bc2d113229-8387 - 500 Internal Server Error

Is there anything I can do to catch these? Is it as simple as adding a filter to catch the webapi unhandled exceptions and logging them?

 

Todor
Telerik team
 answered on 02 Mar 2018
0 answers
124 views

I have designed an A-4 half sheet portrait print, while output is automatically getting switched to landscape.

Kindly provide an apt solution to this.

 

Muhammed
Top achievements
Rank 1
 asked on 02 Mar 2018
7 answers
1.6K+ views
Hi Guys,

I'm hoping this is an easy thing to fix but I've had a play and a search and can't figure it out!

What I need to do in my system is generate a report, save it to my harddrive as a PDF so that I can then attach it to an email. This all needs to be done programatically. I found your example and have been trying to get it to work but for some reason (I expect I'm missing something obvious) it doesn't like the "response" bit of the code below:

    RepQuote quote_rep = new RepQuote(_qu);
 
Telerik.Reporting.Processing.ReportProcessor reportProcessor = new ReportProcessor();
RenderingResult result = reportProcessor.RenderReport("PDF", quote_rep, null);
 
string fileName = result.DocumentName + ".pdf";      
      
Response.Clear();
Response.ContentType = result.MimeType;
Response.Cache.SetCacheability(HttpCacheability.Private);
Response.Expires = -1;
Response.Buffer = true;
 
Response.AddHeader("Content-Disposition",
string.Format("{0};FileName=\"{1}\"",
  "attachment",
   fileName));
 
Response.BinaryWrite(result.DocumentBytes);
Response.End();

I'm guessing im just missing a "using" statement but the code wont compile past "Response.Clear()". It can't find the response class. I did a search around and people suggested adding "using System.Web" to get it to work but that didn't help. I'm a relative newbie with C# so any help would be appreciated!
Fred Green
Top achievements
Rank 1
 answered on 01 Mar 2018
Top users last month
Chester
Top achievements
Rank 1
Iron
Simon
Top achievements
Rank 1
Iron
Douglas
Top achievements
Rank 2
Iron
Iron
SUNIL
Top achievements
Rank 3
Iron
Iron
Iron
Marco
Top achievements
Rank 3
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?