Telerik Forums
Reporting Forum
12 answers
949 views
Hi,

I'm currently working on a ASP.NET MVC application in which we recently start integrating with Telerik Report.

I designed the report as shown in report-design.png. I fed the object datasource at runtime and it works just fine with the following code. And it shows in view as in report-view.png.

/// <summary>
/// Summary description for Report2.
/// </summary>
public partial class TelerikQuoteReport : Telerik.Reporting.Report
{
    public TelerikQuoteReport() //WISH IT TO ACCEPT PARAMETER LIKE ID
    {
        InitializeComponent();

        var appCon = new AppContext(new DbContext());
        var rep = new OperationalDocumentRepository(appCon);

        //WISH TO REPLACE THE ID WITH PARAMETER SO I CAN REUSE THE REPORT WITH DIFFERENT DATA
        this.DataSource = new List<ODQuote>() { rep.GetDocument<ODQuote>(new Guid("968e62ac-b295-4fd1-b93b-7fdc99d03093")) };
    }
}

Except now I want to dynamically feed the ID so I can reuse the report with different data. I tried the following approach and tried to feed a parameter to the report constructor, but without any luck.

$(document).ready(function () {
        $("#reportViewer1").telerik_ReportViewer({
            serviceUrl: "/api/reports",
            templateUrl: "/ReportViewer/templates/telerikReportViewerTemplate-8.1.14.804.html",
            reportSource: {
                report: "TelerikReports.TelerikQuoteReport, TelerikReports",
                parameters: { Id: '@ViewData["Id"]' }
            },
            viewMode: telerikReportViewer.ViewModes.INTERACTIVE,
            scaleMode: telerikReportViewer.ScaleModes.SPECIFIC,
            scale: 1.0,
            ready: function () {
                //this.refreshReport();
            }
        });
    });

So my question is in the case of using object datasource in reports, how could we dynamically change the datasource so we can use the same report template with the same "type" of data which is essentially replacing with different instances.

Thank you.
Todor
Telerik team
 answered on 21 Mar 2019
6 answers
316 views

Hi,

In my project I have a report with the name Report1.cs .

Obviously it isn't so easy as it seems to be to rename a report in a ReportLibrary.

Right click with mouse and then rename.

From Report1.cs to "ReportTemperature.cs".

So far so good.

But when I  run my project I get a obstinate error.

Please see the attachement.

The funny thing is ...The file does not exist in the folder.

Has anyone experience with this thing?

 

 

Simon
Top achievements
Rank 1
 answered on 20 Mar 2019
1 answer
1.1K+ views

I am converting our current reports from Aspose to Telerik because our version of Aspose is way out of date and upgrading costs thousands of dollars.  We currently have sales order totals in our invoice header and it lists packing fees, tax, shipping, discount, subtotal, etc..  However, charges are only displayed if they are greater than 0 so you could have any combination of these items listed.  So, I thought I would just put a table in the header to pull a list of relevant items from the database.  Simple, right?  Why can't I add a table to the report header and what am I supposed to do to display my data? 

Neli
Telerik team
 answered on 20 Mar 2019
4 answers
334 views

This appears to be a new problem with VS2017 (15.0.0+ 26228.10) and Reporting R1 2017

We have a large project that has worked well with VS2015, but after migration to VS2017 we are seeing the designer crash when we try to open a Value editor (Edit Expression) when the project has a User Function defined. 

I tried to add this one user function to the Sample report project downloaded from Telerik (CSharp.ReportLibrary)

public static class OurCompanyFunctions
    {
        [Function(Category = "Testing", Namespace = "OurCompanyNameSpace", Description = "What will happen?", IsVisible = true, Name = "FunctionName")]
        public static string ValueIsNull(object val)
        {
            return "did it work?";
        }
    }

 

I tried to change the "Value" on a Text box by opening the Edit Expression editor. 

Here is the Exception in the event log

 

Application: devenv.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.ArgumentNullException

Server stack trace: 
   at System.Linq.Enumerable.Cast[TResult](IEnumerable source)
   at Telerik.Reporting.Design.Common.Utils.AggregateFunctionHelper.GetAggregateFunctions(IServiceProvider provider)
   at Telerik.Reporting.Design.Common.ExpressionBuilder.CategoryAdapter.<GetAggregates>d__28.MoveNext()
   at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
   at Telerik.Reporting.Design.Common.ExpressionBuilder.CategoryAdapter.FillAggregates(Category funcCategory, IServiceProvider provider)
   at Telerik.Reporting.Design.Common.ExpressionBuilder.CategoryAdapter.CreateHierarchy(IServiceProvider provider, Boolean isFieldsTreeVisible)
   at Telerik.Reporting.Design.Common.ExpressionBuilder.ExpressionBuilderDialog.LoadCategories(IServiceProvider provider)
   at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Object[]& outArgs)
   at System.Runtime.Remoting.Messaging.StackBuilderSink.AsyncProcessMessage(IMessage msg, IMessageSink replySink)
   at System.Runtime.Remoting.Proxies.RealProxy.EndInvokeHelper(System.Runtime.Remoting.Messaging.Message, Boolean)
   at System.Runtime.Remoting.Proxies.RemotingProxy.Invoke(System.Object, System.Runtime.Remoting.Proxies.MessageData ByRef)
   at Telerik.Reporting.Design.Common.ExpressionBuilder.ExpressionBuilderDialog+LoadCategoriesDelegate.EndInvoke(System.IAsyncResult)
   at Telerik.Reporting.Design.Common.ExpressionBuilder.ExpressionBuilderDialog.OnLoadCategoriesComplete(System.IAsyncResult)
   at System.Runtime.Remoting.Messaging.AsyncResult.SyncProcessMessage(System.Runtime.Remoting.Messaging.IMessage)
   at System.Runtime.Remoting.Messaging.StackBuilderSink.AsyncProcessMessage(System.Runtime.Remoting.Messaging.IMessage, System.Runtime.Remoting.Messaging.IMessageSink)
   at System.Runtime.Remoting.Proxies.AgileAsyncWorkerItem.ThreadPoolCallBack(System.Object)
   at System.Threading.QueueUserWorkItemCallback.WaitCallback_Context(System.Object)
   at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
   at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
   at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
   at System.Threading.ThreadPoolWorkQueue.Dispatch()
   at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback()

 

Silviya
Telerik team
 answered on 20 Mar 2019
1 answer
777 views

We are using Telerik Viewer in Winform. 

Is it possible to change the default layout view from 100% to Whole Page? When we generate the report, we want this option to be selected automatically. 

 

Neli
Telerik team
 answered on 19 Mar 2019
1 answer
867 views

Hi all,

Is it possible to pass object with set of fields to sub report. I was going to load all data in main report and pass some parts to subreport but there are only simple types for parameters and no object type. is it possible via report designer or I have to convert to visual studio? report is quite complex

 

thanks in advance

Silviya
Telerik team
 answered on 19 Mar 2019
10 answers
965 views

I have a report/Invoice that was made using the Report Designer, so it's in trdp format.  It is server up via a MVC vb.net RESTful reporting service.  Despite countless setbacks due to the Telerik Report dynamic limitations, I actually have it working, but there it one final nail that needs to be pounded into the coffin...the Invoice Logo.  It, much like every things else in our system, is not static.  It needs to be set, to correspond to what company happens to be running the Invoice with that particular request.

The million dollar question, how does one dynamically set a picturebox in a trdp report via a call to a RESTful reporting service?  

I have a sinking feeling this is going to involve the ReportPackager. The Reports Controller is very simple:

Namespace Controllers
    <RoutePrefix("api/Reports")>
    Public Class ReportsController
        Inherits ReportsControllerBase
 
        Protected Overrides Function CreateReportResolver() As IReportResolver
            Dim reportsPath = HttpContext.Current.Server.MapPath("~/Reports")
 
            Return New ReportFileResolver(reportsPath).AddFallbackResolver(New ReportTypeResolver())
        End Function
 
        Protected Overrides Function CreateCache() As ICache
            Return Telerik.Reporting.Services.Engine.CacheFactory.CreateFileCache()
        End Function
 
    End Class
End Namespace
SSirica
Top achievements
Rank 3
Iron
Iron
Iron
 answered on 18 Mar 2019
10 answers
534 views

Our main project is a Asp.NET core 2.0 MVC project that targets .NET Core 2.0. We would like to add Telerik reporting to our project. 

Unfortunately I cannot do that directly since the Telerik report engine is using GDI+ and therefore the project must target classic .net. This means I must do this in a separate project so I can not re-use services like authentication on the controllers etc. Second and more important, our project must run on linux which the reporting service can not. Also we would like to dynamically render the report viewer pages and not be depended on static html pages like the Html 5 report viewer. Because of this limitations Telerik reporting is now not an option for us.

So my questions is will Telerik reporting get full .net core support in the future so we can target .net core too? 

 

Best Regards,

Michel

Ivan Hristov
Telerik team
 answered on 18 Mar 2019
2 answers
570 views

Hi 

It works in visual studio more in linux happens the error "Unable to get report parameters."

Has anyone had this problem yet?

Thank you 

Marcelo

Silviya
Telerik team
 answered on 18 Mar 2019
0 answers
150 views

I would like to create a subgroup with a clustered graph. The first group will be the columns headers and the second one, the description in my first column.

The axis will be represented this way :

X - 2 groups

Y - The corresponding value between the 2 groups

I am using Telerik 2016.

English is not my first language, but I think that the image in attached files sums what I am trying to do.

Thanks in advance!

Claudia
Top achievements
Rank 1
 asked on 15 Mar 2019
Top users last month
Miljana
Top achievements
Rank 2
Iron
Iron
Joel
Top achievements
Rank 3
Bronze
Bronze
Bronze
Cynthia
Top achievements
Rank 1
John
Top achievements
Rank 1
Iron
Mozart
Top achievements
Rank 1
Iron
Veteran
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?