Telerik Forums
Reporting Forum
1 answer
8 views

Hello, 
I'm creating a multi-column report that's printing Across Then Down. I used the Multi-Column Example to get started. And it works perfect. Now I need to use the same data source for fields in my Report Header and Footer. When I assign the same Data source from the List to the report the list is duplicated for ever record in the data. When I remove the List Data Source and try to do a binding expression on the List (Property Path=DataSource Expression=ReportItem.DataObject) the List no longer does multi-column, and is just a single column. I also tried using the PageExec() function to try and access the List scope and  Details scope to get the data that way, but was unsuccessful. 

Due to an external integration, I can only use a single data source as the external tooling replaces all the Data sources with something it configures and inserts into the report XML. 

So how can I achieve this? 

Sample data out of the database is attached. 

 

Thanks

 

1 answer
25 views

We are unable to use the report builder in visual studio for a .net 8 core project

If we use the standalone builder, we can not find out how to load the data from class / model.

We were expecting the external to be able to point to the build / dll and select the appropiate view model

Dess | Tech Support Engineer, Principal
Telerik team
 answered on 24 Jun 2024
1 answer
10 views

Hello everyone,

I have an issue with visibel paremter.
To be precise I have to show different texts based on the users language.
The basic process looks like this:

Client sets language parameter -> Telerik language paremeter -> SQL selects language label based on language parameter -> Result set in language label value -> language label value set in visible report parameter text

I cannot implement the language labels into the select of the report. Therefor the multilangual labels have an own query. This ml query is set into the language label parameter.

The additional step setting the result of the SQL in the language label value is necessary as the visible parameter already has an SQL source.

Follwing steps i tried:
set the sql query for the language label (Label Text parameter.txt)
set the text value of the target to the value of the parameter mentioned above (Visible Parameter.png)
use the sql query with hardcoded language as a test (SQL hardcoded language.png)
This works fine (Result hardcoded language.png)

Changing sql to language parameter (Select with parameter.png)
SQL gets a result (Result check sql with parameter.png)
Does not work in runtime (Result SQL with parameter.png)

Changing SQL to get every text label and filter in the parameter. (SQL get all labels.png)
Testing the idea, hardcode language filter in parameter (Parameter Filter.png)
Check result works (result hardcoded filter.png)

Changing to filter with parameter (Filter with parameter.png)
Result does not work (Result filter with parameter.png)

So the problem only exists if I use a parameter. Which is unavoidable as I need the language from the active user.

I know that I could hardcode it into the parameter.text with an IIF expression.
I would have to do this for every language and every label and I´d like to avoid that.

Is there any possibility to put result of an SQL query into the parameter.text when the target parmeter already has a different query and is set visibile?

1 answer
25 views
I generate reports through Telerik Reporting, the reports are displayed correctly in the system, but when switching to the browser's print window (in all browsers), the report is displayed followed by an unnecessary blank page, for example: if the report displays 3 pages, 4 pages are displayed with the last page being blank

Looking for a quick solution because it is very disturbing
Ivan Hristov
Telerik team
 answered on 21 Jun 2024
0 answers
10 views

Hello, Im facing a problem with c# telerik report designer.  We have specified report and all columns were looking good until we add one more "Comments". So major view looks ok but all childs have moved rows into right side without any reason and column are not aligned to its parent. How to align this? picture in attachment.

1 answer
13 views

Let’s say we have the data below.

How could I put this into a table and it show only the items in each Pet/Grouping per page.    

For example:

Page 1

Page 2

Page 3

I tried making a group header for Pet, with a child of Grouping and then putting a page break at the bottom of the Grouping group but that didn’t work.  I always get the result at the bottom here.

What am I missing?

 

Dess | Tech Support Engineer, Principal
Telerik team
 answered on 18 Jun 2024
0 answers
13 views

Hello

I'm using the WebDataSource component from Web Report Designer, and I want to receive data from our REST API. 

On endpoints with no auth it works fine and the data gets loaded. But when I try to use 2-step auth (get token and pass it to api), I get a popup from web data source Wizard:

Error

Could not get preview.. An error has occurred. Object reference not set to an instance of an object.

 

And the debugger shows this:

WebDesigner Warning: 0 : Newtonsoft.Json.JsonReaderException: Error reading JObject from JsonReader. Path '', line 0, position 0.
   at Newtonsoft.Json.Linq.JObject.Load(JsonReader reader, JsonLoadSettings settings)
   at Newtonsoft.Json.Linq.JObject.Parse(String json, JsonLoadSettings settings)
   at Telerik.Reporting.Processing.WebServiceDataSource.ErrorParsers.ErrorManager.ParseJson(String responseContent)
WebDesigner Error: 0 : Object reference not set to an instance of an object.
   at Telerik.Reporting.Processing.WebServiceDataSource.WebServiceClient.SendCore(IWebServiceRequestSettings settings, AuthenticationHeaderValue authHeader, HttpClient httpClient, HttpClientHandler httpClientHandler)
   at Telerik.Reporting.Processing.WebServiceDataSource.WebServiceClient.GetTwoStepAuthorizationHeader(WebServiceTwoStepAuthentication processedAuth)
   at Telerik.Reporting.Processing.WebServiceDataSource.WebServiceClient.Request(WebServiceDataSource processedDS)
   at Telerik.Reporting.Processing.WebServiceDataSource.WebServiceDataProvider.GetRemoteRawData(WebServiceDataSource processedDS)
   at Telerik.Reporting.Processing.WebServiceDataSource.WebServiceDataProvider.get_RawData()
   at Telerik.Reporting.Processing.WebServiceDataSource.WebServiceSchemaAdapter.AddDataMeasures(SimpleDataModel model)
   at Telerik.Reporting.Processing.Data.SimpleDataProvider`1.GetSchemaCore()
   at Telerik.Reporting.Processing.Data.DataProvider`1.Telerik.Reporting.Processing.Data.IDataProvider.GetSchema()
   at Telerik.WebReportDesigner.Services.ConnectionsService.GetDataModel(DataSourceInfo dsi)
WebDesigner Error: 0 : Object reference not set to an instance of an object.
   at Telerik.Reporting.Processing.WebServiceDataSource.WebServiceClient.SendCore(IWebServiceRequestSettings settings, AuthenticationHeaderValue authHeader, HttpClient httpClient, HttpClientHandler httpClientHandler)
   at Telerik.Reporting.Processing.WebServiceDataSource.WebServiceClient.GetTwoStepAuthorizationHeader(WebServiceTwoStepAuthentication processedAuth)
   at Telerik.Reporting.Processing.WebServiceDataSource.WebServiceClient.Request(WebServiceDataSource processedDS)
   at Telerik.Reporting.Processing.WebServiceDataSource.WebServiceDataProvider.GetRemoteRawData(WebServiceDataSource processedDS)
   at Telerik.Reporting.Processing.WebServiceDataSource.WebServiceDataProvider.get_RawData()
   at Telerik.Reporting.Processing.WebServiceDataSource.WebServiceSchemaAdapter.AddDataMeasures(SimpleDataModel model)
   at Telerik.Reporting.Processing.Data.SimpleDataProvider`1.GetSchemaCore()
   at Telerik.Reporting.Processing.Data.DataProvider`1.Telerik.Reporting.Processing.Data.IDataProvider.GetSchema()
   at Telerik.WebReportDesigner.Services.ConnectionsService.GetDataModel(DataSourceInfo dsi)

Auth URL is `https://localhost:5001/api/Account/Token2` and it should return plain text string with the token.

Request body is

{
  "login": "admin",
  "password": "foobar"
}

I click next-next in the Wizard and on the last step get the error above.

Why does not it work ??

Dmitry
Top achievements
Rank 1
 asked on 17 Jun 2024
1 answer
18 views
Currently have a report setup with a summary view and detail view. The summary view can have at the most 10 pages but if they go to detail it can have anywhere from 100-5000 pages. I have scoured through the web and I cant seem to find it, but I would like to have the report set to where if they choose "Detail" view, it won't render on the page but auto go to export to excel. Is this possible? At this point it can take longer than 4 minutes to render.
Dess | Tech Support Engineer, Principal
Telerik team
 answered on 06 Jun 2024
0 answers
11 views

I have a textbox containing a string built from a datasource value.

How to use the text of this box in a watermark ?

 

I tried without success things like :

= PageExec('textBox88', First(Fields.Column1))
Fx
Top achievements
Rank 1
 asked on 04 Jun 2024
1 answer
59 views

I have tried generating a PDF directly from my report and I have tried opening it in a viewer.  I always come back to this error.

FileNotFoundException: Could not load file or assembly 'DocumentFormat.OpenXml, Version=2.0.5022.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.

I've tried installing the package listed in Nuget, but that exact version does not appear to be available.  The versions I tried did not fix the problem.

Here is my code for generating the report...


InstanceReportSource report = new InstanceReportSource();
report.ReportDocument = new BatchReport();
report.Parameters.Add("BatchNumber", batch.ID);

ReportGenerator.DisplayPDF(report);



public static void DisplayPDF(InstanceReportSource source)
{
    ReportProcessor reportProcessor = new ReportProcessor();
    RenderingResult result = reportProcessor.RenderReport("PDF", source, null);

    if (!result.HasErrors)
    {
        string fileName = result.DocumentName + "." + result.Extension;
        string path = System.IO.Path.GetTempPath();
        string filePath = System.IO.Path.Combine(path, fileName);

        using (System.IO.FileStream fs = new System.IO.FileStream(filePath, System.IO.FileMode.Create))
        {
            fs.Write(result.DocumentBytes, 0, result.DocumentBytes.Length);
        }

        Process.Start($"file://{filePath}");
    }
}

BTW, I am working on a .NET Framework 4.7.2 project.
Todor
Telerik team
 answered on 04 Jun 2024
Top users last month
Michael
Top achievements
Rank 2
Iron
Wilfred
Top achievements
Rank 1
Alexander
Top achievements
Rank 2
Iron
Iron
Matthew
Top achievements
Rank 1
Iron
ibra
Top achievements
Rank 1
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?