Telerik Forums
Reporting Forum
4 answers
90 views
Hi,

we have a problem with the localization of reports.
It works fine when we use the Silverlight ReportViewer. Then we can set the current culture and the report is displayed in that language.
(System.Threading.Thread.CurrentThread.CurrentCulture = cultureInfo)

Now we want to use the report engine directly to generate an pdf document.
So we use:
var serviceClient = new ReportServiceClient(new Uri(App.Current.Host.Source, "../Reports/ReportService.svc"));
               serviceClient.RenderAsync("PDF",
                   PROP_ReportViewer_MCred,
                   deviceInfo,
                   parameters);
               serviceClient.RenderCompleted += new EventHandler<RenderEventArgs>(serviceClient_RenderCompleted);
with that the current culture settings are ignored and the report is always in the default language.
What is the way to go here?
Btw. we are using Report Q2 2012 because of SL4.

Kind regards
Juergen
Top achievements
Rank 1
 answered on 13 Oct 2014
1 answer
152 views
Hi, 

I have a subreport where I need to draw 6 records in the detail section. Always 6 records, not more, not less. If there are no records, I need to draw  6 empty spaces. Or if I have 4 record, I need to draw 4 records and 2 empty spaces.

I limit the maximun number of row to six by setting SELECT TOP 6...

Is there any propperty or method in order to draw in the detail the minimun number of rows needed?

Thanks in advance. Best regards, 
Hinata
Top achievements
Rank 1
 answered on 13 Oct 2014
1 answer
316 views
Below is the sample code (I’M generating reports programmatically
from JSON data)



public static void Export(Telerik.Reporting.ReportBook reportToExport, string type, string cType)

        {

 

            var reportProcessor = new
Telerik.Reporting.Processing.ReportProcessor();

           

            var instanceReportSource = new
Telerik.Reporting.InstanceReportSource();

            instanceReportSource.ReportDocument
= reportToExport;

           

           

              

            if (type.ToLower().Equals("print"))

            {

                 //
Obtain the settings of the default printer.

                PrinterSettings printerSettings
= new
PrinterSettings();

 

                //printerSettings.PrinterName
= " HP Deskjet 3510 series";

                //
Print the report using the printer settings.

               
reportProcessor.PrintReport(reportToExport, printerSettings);

            }

            else

            {

               
Telerik.Reporting.Processing.RenderingResult result =
reportProcessor.RenderReport(type,

                    instanceReportSource, null);

 

 

 

 

                string fileName = "Viewr_" + cType + "_report." + result.Extension;

 

                HttpContext.Current.Response.Clear();

               
HttpContext.Current.Response.ContentType = result.MimeType;

               
HttpContext.Current.Response.Cache.SetCacheability(HttpCacheability.Private);

                HttpContext.Current.Response.Expires
= -1;

               
HttpContext.Current.Response.Buffer = true;

               
HttpContext.Current.Response.AddHeader("Content-Disposition",

                                 string.Format("{0};FileName=\"{1}\"",

                                               "attachment",

                                              
fileName));

               
HttpContext.Current.Response.BinaryWrite(result.DocumentBytes);

               
HttpContext.Current.Response.End();

            }

          

          

 

              

           

           

        }
Stef
Telerik team
 answered on 10 Oct 2014
8 answers
856 views
Hi,

Can you reduce the export options?  I.e. I only wnat PDF on the dropdownlist, thus removing/hiding the other options of "Tiff", "Rich Text","excel" etc..

Updated : From what I have found it appears that you can configure this on the webconfig, but this restricts all reports, can this not be done on the reportviewer itself?

thanks,

JK
Stef
Telerik team
 answered on 10 Oct 2014
2 answers
268 views
Hello,

I'm designing an application that will produce a number of different reports.  There are three pages for each report and a number of different possible configurations for each page.  There are also completely custom configurations for two of the pages.  I'm storing the name of each custom report in a database and have been able to initialize and display a single report.

var typeSource = new TypeReportSource();
typeSource.TypeName = string.Format("Application.ReportLibrary.Custom.{0}, Application.ReportLibrary", myDataObject.CustomReportName);
typeSource.Parameters.Add("id", _id);

this.rvMainView.ReportSource = typeSource;
...
...


I've also been able to display multiple pages of the standard templates by using a reportbook:

var rbBookSource = new ReportBook();

var pageOne = new ReportPageOneType();
pageOne.Parameters.Clear();
pageOne.Parameters.Add("id", ReportParameterType.Integer, _id);
rbBookSource.Reports.Add(pageOne);

var pageTwo = new ReportPageTwoType();
pageTwo.Parameters.Clear();
pageTwo.Parameters.Add("id", ReportParameterType.Integer, _id);
rbBookSource.Reports.Add(pageOne);

this.rvMainView.ReportSource = rbBookSource;
...

What I cannot figure out how to do is to merge/combine these two pieces of functionality:

var rbTypeBook = new ReportBook();

var p1TypeSource = new TypeReportSource();
p1TypeSource.TypeName = string.Format("Application.ReportLibrary.Custom.{0}, Application.ReportLibrary", myDataObject.CustomReportPageOneName);
p1TypeSource.Parameters.Add("id", _id);
rbTypeBook.Reports.Add(p1TypeSource);

var p2TypeSource = new TypeReportSource();
p2TypeSource.TypeName = string.Format("Application.ReportLibrary.Custom.{0}, Application.ReportLibrary", myDataObject.CustomReportPageTwoName);
p2TypeSource.Parameters.Add("id", _id);
rbTypeBook.Reports.Add(p2TypeSource);

this.rvMainView.ReportSource = rbBookSource;
...

Is this possible in any way?

Thanks.
Jonathan
Top achievements
Rank 1
 answered on 10 Oct 2014
1 answer
225 views
Hi, 

I'm not able to filter data in my subreport. I'm trying to add filters to a report and a subreport with the following code. As you can see, I define a filter for the report according to the value selected in a ASP.NET dropdown control. Filters works fine in report (using fillters.addrange method), but it's impossible for subreport.

    Protected Sub Search()
        Try
            Dim rs As InstanceReportSource = DirectCast(Me.rviewer.ReportSource, InstanceReportSource)
            Dim filters As New Telerik.Reporting.FilterCollection
            Dim filterApoyo As New Filter()
            filterApoyo.Expression = "=Fields.IdApoyo"
            filterApoyo.Operator = FilterOperator.Equal
            filterApoyo.Value = "='" + ddlApoyos.SelectedValue + "'"
            filters.Add(filterApoyo)
 
            Dim repProt As ReportProtocolo = DirectCast(rs.ReportDocument, ReportProtocolo)
            repProt.Filters.AddRange(filters)
        Catch ex As Exception
            Throw ex
        End Try
    End Sub

(Note I have not added code for subreport filtering, because I tried a lot of different options and didn't work.) 

Is there any example to add filters programatically to a subreport, please? I can only see examples for reports... 

Thanks in advance. Best regards, 
Hinata
Top achievements
Rank 1
 answered on 10 Oct 2014
1 answer
53 views
I seem to be having trouble with what I think is a very simple newbie issue.

I am unable to get information from my datasource into text areas on the reportHeader.

Originally I had a datasource bound to my report and at that point I had access to the fields I needed to print in the reportHeader.
However when I got to the details section and attempted to bind the datasource to a table so that I could print out the rows, I noticed that I was getting the same data over and over again.
Trolling through your forums revealed that this was solvable by only binding my dataset to the table and not to the whole report, which I did.
That solved the duplicate data in the table problem but now none of the reportHeader text boxes have nothing in them.
Can you tell me what I am doing wrong?

Thank you,

Jim

Nasko
Telerik team
 answered on 10 Oct 2014
1 answer
788 views
I am wondering if there is guidance on editing the Report Viewer template html file. I see the section for the multi-select parameter but if I change it to anything other than a list I get a java script error that "var children = listView.element.children();" saying 
"jquery-1.10.2.js:7093
Uncaught TypeError: Cannot read property 'element' of null "

I would like to use a multi-select dropdown list instead of just a list, as we have over 100 items in the parameter options.

Thanks,

Jim
Stef
Telerik team
 answered on 10 Oct 2014
1 answer
254 views
I'm using Reporting 2013 Q1 in a WPF application. We have several reports which are displayed in a Report Viewer using ViewMode.PrintPreview.

On one of our reports, which has several graphs we sometimes get an error generated by the report ( i.e the report loads and the query is run, data is successfully returned, but the report viewer itself generates the error).

Error is:
Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index

Any ideas what this could be?



Stef
Telerik team
 answered on 10 Oct 2014
5 answers
442 views
Hello,

From the documentation, it doesn't seem hard to create a report programmatically: 

Telerik.Reporting.Report report = new Telerik.Reporting.Report();
  
            string sql = @"SELECT * FROM Recipient";
            string connectionString = "Data Source=EVAN-PC\\SQLEXPRESS;Initial Catalog=AccufloMaster;Integrated Security=True;User ID=sa;Password=creative";
            System.Data.SqlClient.SqlDataAdapter adapter = new System.Data.SqlClient.SqlDataAdapter(sql, connectionString);
            report.DataSource = adapter;
            report.Name = "recipientReport";
              
            return View(report);




However, After I have the report created, how do I view it using the MVC report viewer (which I already have set up). Are there some additional properties I need to set? Ideally, I thought I could just pass the entire Report object to the view and into the viewer, but there is no overlord for that. So once I have the report created programmatically (I have to do this for reasons beyond this thread), how I can view it in the report viewer?


@model Telerik.Reporting.Report
 
 
@using Telerik.Reporting.Examples.CSharp
@{
    ViewBag.Title = "Telerik HTML5 Report Viewer MVC Demo";
}
 
@section styles
{
 
 
 
    <style>
        #reportViewer1 {
            position: absolute;
            left: 5px;
            right: 5px;
            top: 5px;
            bottom: 5px;
            overflow: hidden;
            font-family: Verdana, Arial;
        }
    </style>
 
    <link href="@Url.Content("~/ReportViewer/styles/telerikReportViewer-8.1.14.804.css")" rel="stylesheet" />
}
 
@{
    var typeReportSource = new TypeReportSource() { TypeName = typeof(ReportCatalog).AssemblyQualifiedName };
   // typeReportSource.Parameters.Add("OrderNumber", Model.SelectedInvoice);
    //ReportSource(new UriReportSource() { Uri = "Product Catalog.trdx" })
}
 
 
@(Html.TelerikReporting().ReportViewer()
        // Each report viewer must have an id - it will be used by the initialization script
        // to find the element and initialize the report viewer.
        .Id("reportViewer1")
        // The url of the service which will provide the report viewer with reports.
        // The service must be properly configured so that the report viewer can
        // successfully communicate with the server.
        // For more information on how to configure the service please check http://www.telerik.com/help/reporting/telerik-reporting-rest-conception.html.
        .ServiceUrl(Url.Content("~/api/reports/"))
        // The url for the report viewer template. The template can be edited -
        // new functionalities can be added and unneeded ones can be removed.
        // For more information please check http://www.telerik.com/help/reporting/html5-report-viewer-templates.html.
        .TemplateUrl(Url.Content("~/ReportViewer/templates/telerikReportViewerTemplate-8.1.14.804.html"))
        // Strongly typed ReportSource - TypeReportSource or UriReportSource.
        .ReportSource(Model.Name)
        // Specifies whether the viewer is in interactive or print preview mode.
        // PRINT_PREVIEW - Displays the paginated report as if it is printed on paper. Interactivity is not enabled.
        // INTERACTIVE - Displays the report in its original width and height witn no paging. Additionally interactivity is enabled.
        .ViewMode(ViewModes.PRINT_PREVIEW)
        // Sets the scale mode of the viewer.
        // Three modes exist currently:
        // FIT_PAGE - The whole report will fit on the page (will zoom in or out), regardless of its width and height.
        // FIT_PAGE_WIDTH - The report will be zoomed in or out so that the width of the screen and the width of the report match.
        // SPECIFIC - Uses the scale to zoom in and out the report.
        .ScaleMode(ScaleModes.SPECIFIC)
        // Zoom in and out the report using the scale
        // 1.0 is equal to 100%, i.e. the original size of the report
        .Scale(1.0)
        // Sets whether the viewer’s client session to be persisted between the page’s refreshes(ex. postback).
        // The session is stored in the browser’s sessionStorage and is available for the duration of the page session.
        .PersistSession(false)
        // Sets the print mode of the viewer.
        .PrintMode(PrintMode.AutoSelect)
)
 
@section scripts
{  
    <!--kendo.all.min.js can be used as well instead of kendo.web.min.js and kendo.mobile.min.js-->
    <script src="@Url.Content("~/ReportViewer/js/telerikReportViewer-8.1.14.804.js")"></script>
 
    <!--kendo.mobile.min.js - optional, if gestures/touch support is required-->
 
}

Stef
Telerik team
 answered on 10 Oct 2014
Top users last month
Rob
Top achievements
Rank 3
Iron
Iron
Iron
Atul
Top achievements
Rank 1
Iron
Iron
Iron
Alexander
Top achievements
Rank 1
Veteran
Iron
Serkan
Top achievements
Rank 1
Iron
Shawn
Top achievements
Rank 1
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?