Hi
We are creating a SL application, where we are using Telerik Reporting for Reports. We are using ReportParemeter to send input to the Report. We are sending the ids of the selected criteria on UI and formatting it to an Xml format and sending it as Report Parameter string to the report. But when user selects large data on UI, i.e when the size of Report Parameter string is more, then its not able to call the report at all. We are not getting any error as well. But the report is blank. And even the breakpoint at the first line in the report also is not reaching. So, please let us know is there any max size criteria for ReportParameter string? or could it be any other issue? if user selects less number of criteria, its working very well.
Please let us know what would be the issue.
Thanks
Ravindra
We are creating a SL application, where we are using Telerik Reporting for Reports. We are using ReportParemeter to send input to the Report. We are sending the ids of the selected criteria on UI and formatting it to an Xml format and sending it as Report Parameter string to the report. But when user selects large data on UI, i.e when the size of Report Parameter string is more, then its not able to call the report at all. We are not getting any error as well. But the report is blank. And even the breakpoint at the first line in the report also is not reaching. So, please let us know is there any max size criteria for ReportParameter string? or could it be any other issue? if user selects less number of criteria, its working very well.
Please let us know what would be the issue.
Thanks
Ravindra
9 Answers, 1 is accepted
0
Hello Ravindra,
We believe the problem is caused by the WCF service, namely when you issue such a "large" request, it does require some settings. The allowed request size should be increased on the service side (in the web.config):
Define binding with longer max size:
<system.serviceModel>
...
<bindings>
<basicHttpBinding>
<binding name="ServicesBinding" maxReceivedMessageSize="4000000" maxBufferSize="4000000">
<readerQuotas maxArrayLength="4000000" maxStringContentLength="4000000"/>
</binding>
</basicHttpBinding>
</bindings>
...
</system.serviceModel>
and use it in the service declaration
<service name="Telerik.Reporting.Service.ReportService"
behaviorConfiguration="ReportServiceBehavior">
<endpoint address=""
binding="basicHttpBinding"
bindingConfiguration="ServicesBinding"
contract="Telerik.Reporting.Service.IReportService">
...
The used values for these attributes are random and if you need to, they can be increased more. If the problem persist, please use Fiddler proxy to identify the exact problem that occurs i.e. sniffing the response from the server should give you an idea or exact error.
Hope this information helps
Kind regards,
Steve
the Telerik team
We believe the problem is caused by the WCF service, namely when you issue such a "large" request, it does require some settings. The allowed request size should be increased on the service side (in the web.config):
Define binding with longer max size:
<system.serviceModel>
...
<bindings>
<basicHttpBinding>
<binding name="ServicesBinding" maxReceivedMessageSize="4000000" maxBufferSize="4000000">
<readerQuotas maxArrayLength="4000000" maxStringContentLength="4000000"/>
</binding>
</basicHttpBinding>
</bindings>
...
</system.serviceModel>
and use it in the service declaration
<service name="Telerik.Reporting.Service.ReportService"
behaviorConfiguration="ReportServiceBehavior">
<endpoint address=""
binding="basicHttpBinding"
bindingConfiguration="ServicesBinding"
contract="Telerik.Reporting.Service.IReportService">
...
The used values for these attributes are random and if you need to, they can be increased more. If the problem persist, please use Fiddler proxy to identify the exact problem that occurs i.e. sniffing the response from the server should give you an idea or exact error.
Hope this information helps
Kind regards,
Steve
the Telerik team
Register for the Q2 2011 What's New Webinar Week. Mark your calendar for the week starting July 18th and book your seat for a walk through of all the exciting stuff we will ship with the new release!
0
Francis
Top achievements
Rank 1
answered on 25 Sep 2011, 11:25 AM
Hi Steve,
I have tried what you recommended for Ravindra but it didnt work. Basically I am getting a result set from different tables in silverlight, I include some calculated fields hence I have created a model for the results. I serialize this to XML and pass it as a report parameter to a telerik report. It works for the first 14 records after which my code wont even get to the NeedDataSource event of the report. I have tried to increase the string size as recommended, but the error persist. Does increasing the maxStringContentLength increase the size of the string parameter type?
My other question is is there a way I can add my own parameter type (e.g. XML) to the already existing parameter types (string,int,etc)?
Thank you in advance and looking forward to some help on this one.
Francis.
I have tried what you recommended for Ravindra but it didnt work. Basically I am getting a result set from different tables in silverlight, I include some calculated fields hence I have created a model for the results. I serialize this to XML and pass it as a report parameter to a telerik report. It works for the first 14 records after which my code wont even get to the NeedDataSource event of the report. I have tried to increase the string size as recommended, but the error persist. Does increasing the maxStringContentLength increase the size of the string parameter type?
My other question is is there a way I can add my own parameter type (e.g. XML) to the already existing parameter types (string,int,etc)?
Thank you in advance and looking forward to some help on this one.
Francis.
0
Francis
Top achievements
Rank 1
answered on 25 Sep 2011, 02:40 PM
Hi Steve,
Got to work. But am only managing 80 records. I need it to at least pass xml for 1000 records. My scenario is I have a search screen that allows the user to specify a search. The search can return say 1000 persons records but with relations to other tables like vaccines (a llisting of everyone who has been given a particular vaccine and in what hospital you can imagine its being used in the public domain) this results are meant to be printed in report format and am stuck at only 80??? Am using telerik reporting 2011 Q2 version trial. Any way forward on this???
Please help am in a fix.
Francis.
Got to work. But am only managing 80 records. I need it to at least pass xml for 1000 records. My scenario is I have a search screen that allows the user to specify a search. The search can return say 1000 persons records but with relations to other tables like vaccines (a llisting of everyone who has been given a particular vaccine and in what hospital you can imagine its being used in the public domain) this results are meant to be printed in report format and am stuck at only 80??? Am using telerik reporting 2011 Q2 version trial. Any way forward on this???
Please help am in a fix.
Francis.
0
Hello Francis,
The Report Parameters are send to the service with GET request. Its maximum length depends on the browser you use and you're most likely exceeding the allowed number of characters. Anyway the Report Parameters are not meant to be used for what you do - sending your data to the report engine. The major usages of the report parameters are:
As the reports reside on the server, the correct approach would be to use the NeedDataSource event where you generate your data query and based on a parameter value, change that query accordingly.
Kind regards,
Steve
the Telerik team
The Report Parameters are send to the service with GET request. Its maximum length depends on the browser you use and you're most likely exceeding the allowed number of characters. Anyway the Report Parameters are not meant to be used for what you do - sending your data to the report engine. The major usages of the report parameters are:
- to vary report data retrieved from a Data Source component
- in expressions to directly provide a value
- in data item filtering, sorting or grouping criteria
As the reports reside on the server, the correct approach would be to use the NeedDataSource event where you generate your data query and based on a parameter value, change that query accordingly.
Kind regards,
Steve
the Telerik team
Explore the entire Telerik portfolio by downloading the Ultimate Collection trial package. Get it now >>
0
Francis
Top achievements
Rank 1
answered on 01 Oct 2011, 05:14 PM
Hi Steve,
Thank you for the response. I appreciate what you are saying. Let me try and explain the situation a bit more. I am using Silverlight 4, entity framework 4 , WCF RIA Services and the MVVM pattern. Now my search query is done using the domain context and I get my results in a domain object. I want to use the domain object as the datasource for my report. I cannot reference the RIAClassLibrary from my Report library. So how do I get to pass the data contained in the domain object to the report? To write a database query begs the question why do I have entity framework that I have already queried the data with in the first place (keep in mind I dont have a view or stored proc in the database that am querying from)? The NeedDataSource event I can only access from the report code behind, report is in the ReportLibrary how do I access the domain object??? Thats why am passing data throught the parameters to the report. Please if you have a better way out of this, a work around that the telerik team has used to pass data from a domain object in silverlight to the report engine, am more than willing to hear about it and please if you dont mind attach a sample app for me I will really appreciate and will be more than greatful. Am still new to telerik and silverlight also so am open to learn a better way of doing it.
Regards,
Francis.
Thank you for the response. I appreciate what you are saying. Let me try and explain the situation a bit more. I am using Silverlight 4, entity framework 4 , WCF RIA Services and the MVVM pattern. Now my search query is done using the domain context and I get my results in a domain object. I want to use the domain object as the datasource for my report. I cannot reference the RIAClassLibrary from my Report library. So how do I get to pass the data contained in the domain object to the report? To write a database query begs the question why do I have entity framework that I have already queried the data with in the first place (keep in mind I dont have a view or stored proc in the database that am querying from)? The NeedDataSource event I can only access from the report code behind, report is in the ReportLibrary how do I access the domain object??? Thats why am passing data throught the parameters to the report. Please if you have a better way out of this, a work around that the telerik team has used to pass data from a domain object in silverlight to the report engine, am more than willing to hear about it and please if you dont mind attach a sample app for me I will really appreciate and will be more than greatful. Am still new to telerik and silverlight also so am open to learn a better way of doing it.
Regards,
Francis.
0
Hello Francis,
We've posted a blog post that represents our point of view how such scenarios could be handled: Using Telerik Reporting with WCF RIA Services.
Kind regards,
Steve
the Telerik team
We've posted a blog post that represents our point of view how such scenarios could be handled: Using Telerik Reporting with WCF RIA Services.
Kind regards,
Steve
the Telerik team
Explore the entire Telerik portfolio by downloading the Ultimate Collection trial package. Get it now >>
0
Nitin
Top achievements
Rank 1
answered on 17 Jan 2020, 03:38 PM
What is Data Limitations As per report
0
Nitin
Top achievements
Rank 1
answered on 17 Jan 2020, 03:39 PM
What is Report Limitations for per report
0
Hi Nitin,
Basically, we don't have data limitations. When it comes to the performance of a high data amount, this will mainly depend on the machine on which the report is rendered. For further information, you can refer to Data Source Components article where all of our data sources are listed.
Regards,
Neli
Progress Telerik
Do you want to have your say when we set our development plans?
Do you want to know when a feature you care about is added or when a bug fixed?
Explore the
Telerik Feedback Portal
and vote to affect the priority of the items