Declined
Last Updated: 01 Feb 2024 14:47 by ADMIN
Created by: Martin
Comments: 1
Category: Reporting
Type: Feature Request
0

The format of a cell, textbox, can only be set using the predefined options for a number or date time. I want to be able to set the formatting of a textbox in an expression. i.e. `=Fields.Formatting`, which would equate to`{0:##,#0.00 "kW"}`. This is because the cell could be any type of unit, i.e. "kW", "Amps", "kWh"

Using a format would allow the cell content to still be output as a number and when exporting to Excel, the displayed value would be in a user-recognised format but then would allow them to click on the cell and view the full, unrounded, number.

The above functionality is available in SSRS reporting using the formula `=IIf(Globals!RenderFormat.Name = "CSV", "0.00","#,0.00 '" & MAX(Fields!ReadingTypeUnit.Value) & "'")`, which allows for exporting to CSV to round the number.

 

Unplanned
Last Updated: 25 Jan 2024 13:55 by Todor

I have a table with grouping and GroupPageBreak set to After for the group.

In the detail cell of the table, I have a Panel with a Crosstab in it. The Crosstab has row groups, however, their properties are the default, hence, they don't force any Page Breaks.

When the report is previewed or exported to PDF, each table group is on its own page as expected.

I have set SplitWorksheetOnPageBreak to True for Excel rendering, so that each soft page, i.e. Crosstab in the table group is in a new worksheet.

This works fine, except that the first table group is split into two worksheets.

Unplanned
Last Updated: 24 Jan 2024 15:51 by YikFong

Currently, I can send only String content when making a POST request with the WebServiceDataSource component.

My Web API requires me to the content as Form URL Encoded and I cannot do that with the WebServiceDataSource component, and have to use the ObjectDataSource component to manually request the data correctly.

Completed
Last Updated: 18 Mar 2025 14:33 by ADMIN
Release 2025 Q2

This behavior is observed only on Azure environment and it is working as expected on local machine.

It seems the Character ID (CID) is mapped to a wrong position visible in the inserted text and in the CMAP table and this leads to an incorrect glyph loading.

Completed
Last Updated: 31 Jan 2024 12:24 by ADMIN
Release 2024 Q1

In .NET Core the localization routines have changed and the approach to localize an application provided in the documentation doesn't work.

When adding the localized .resx files as described in the documentation - with BuildAction set to None - the resource strings cannot be obtained and even the default string values are lost. This effect can be mitigated with changing the BuildAction to EmbeddedResource.

 

Unplanned
Last Updated: 23 Jan 2024 13:05 by Jean-Marc
Created by: Jean-Marc
Comments: 0
Category: Reporting
Type: Feature Request
2

Currently, the PDF rendering extension supports three versions of the standard – PDF/A-1b (2005), PDF/A-2b (2011), PDF/A-3b (2013).

I am generating invoice that need to be compliant with the Factur-X standard (similar to ZUGFeRD in Germany)

It is a PDF/A-3u compliant file where the human visible PDF is still there as a main document (like before), but where there is an XML File attached/included, which is standardized.
Unplanned
Last Updated: 25 Apr 2025 11:31 by ADMIN
The Telerik.Reporting NuGet package brings unnecessary assemblies when used in .NET Framework projects due to the change to the nuspec in the Telerik Reporting - Progress® Telerik® Reporting R2 2022 SP1 (16.1.22.622) release.
In Development
Last Updated: 28 Apr 2025 10:34 by ADMIN
Created by: Support
Comments: 3
Category: Reporting
Type: Bug Report
4

If I use an HTML5-based Report Viewer with the default CONTINUOUS_SCROLL page mode and I start scrolling to the next page, the Get Document Page request is made multiple times for the same page.

If I move to the next page via the toolbar buttons or if I use the SINGLE_PAGE page mode, then problem is not reproduced.

Completed
Last Updated: 07 Aug 2024 10:27 by ADMIN
Will it be possible to configure the stand-alone report designer to use the Skiasharp rendering engine when generating export files from the preview? This would help us verify that what we see at design-time is similar to what is being generated at run-time. Currently we have to copy report files into a Linux docker container to perform this type of testing.
Unplanned
Last Updated: 17 Jan 2024 13:26 by n/a
Created by: n/a
Comments: 0
Category: Reporting
Type: Feature Request
2

As a user, I would like to be able to define guidelines for my report using the rulers surrounding the design window. The guidelines will make it a lot easier to line things up on the report.

Completed
Last Updated: 31 Jan 2024 11:11 by ADMIN
Release 2024 Q1
When using the GDI graphics engine, my custom rendering extension works as expected but the Skia graphics engine does not respect it and I cannot use it. 
Unplanned
Last Updated: 10 Jan 2024 15:02 by Krishnan

When I open a tab that includes the Angular report viewer and close it immediately after, before the viewer can be properly initialized, the following error will be thrown:

core.js:7744  ERROR Error: Uncaught (in promise): TypeError: perspectiveManager.dispose is not a function
TypeError: perspectiveManager.dispose is not a function
    at Object.dispose (telerikReportViewer.js:8447:30)
    at TelerikReportViewerComponent.ngOnDestroy (telerik-report-viewer.component.js:61:27)
    at executeOnDestroys (core.js:6118:1)
    at cleanUpView (core.js:6021:1)
    at destroyViewTree (core.js:5847:1)
    at destroyLView (core.js:5999:1)
    at RootViewRef.destroy (core.js:22750:1)
    at ComponentRef$1.destroy (core.js:25284:1)
    at RouterOutlet.deactivate (router.js:5577:1)
    at ActivateRoutes.deactivateRouteAndOutlet (router.js:2101:1)
    at resolvePromise (zone.js:1211:1)
    at resolvePromise (zone.js:1165:1)
    at zone.js:1278:1
    at _ZoneDelegate.invokeTask (zone.js:406:1)
    at Object.onInvokeTask (core.js:28767:1)
    at _ZoneDelegate.invokeTask (zone.js:405:1)
    at Zone.runTask (zone.js:178:1)
    at drainMicroTaskQueue (zone.js:585:1)
    at ZoneTask.invokeTask [as invoke] (zone.js:491:1)
    at invokeTask (zone.js:1661:1)

Unplanned
Last Updated: 10 Jan 2024 08:58 by Christian

We have the requirement to use a GS1-128 Barcode and have to encode dynamically long identifiers in it.

We found ways to add a FNC1 sign using C# or VB.NET but we are looking for a solution that uses only the Standalone Report Designer.

Completed
Last Updated: 31 Jan 2024 11:11 by ADMIN
Release 2024 Q1

When rendering a Report in PDF with Skia Sharp, the Arial Bold Italic font is rendered as Normal. Arial Bold and Arial Italic fonts are rendered correctly.

When rendering with GDI+ all fonts are displayed correctly.

Completed
Last Updated: 23 Jan 2024 06:55 by ADMIN
Release 2024 Q1
Created by: Damian
Comments: 0
Category: Reporting
Type: Bug Report
2

The following exception is thrown when setting up the .NET 6, .NET 7, and .NET 8 demos with version 17.2.23.1114 to utilize Reporting REST Service Redis Storage. The storage is configured to use the StackExchange.Redis version 2.0.601 with Telerik.Reporting.Cache.StackExchangeRedis.2:

Error registering the viewer with the service. An error has occurred. Method not found: 'Boolean StackExchange.Redis.IDatabase.StringSet(StackExchange.Redis.RedisKey, StackExchange.Redis.RedisValue, System.Nullable`1<System.TimeSpan>, Boolean, StackExchange.Redis.When, StackExchange.Redis.CommandFlags)'.

In the previous Reporting versions, 17.1.23.718 and 17.0.23.118 the Redis storage with the same setup works as expected.

Unplanned
Last Updated: 03 Jan 2024 09:41 by Shannon
After I insert a field in the report, the Explorer pane automatically resets its position. If I have a data source with a huge number of fields this gets annoying as I have to scroll again to where the fields I want to use are.
Completed
Last Updated: 14 Nov 2024 11:02 by ADMIN
Release 2024 Q4
If the password of the SQL user contains the percentage symbol (%) before a number, the last three steps of the SQL Data Source Configuration Wizard cannot be completed.
Need More Info
Last Updated: 05 Jan 2024 10:39 by ADMIN
Created by: Damian
Comments: 1
Category: Reporting
Type: Bug Report
0

Hi,

We have today updated our docker reporting container to improve security, and at the same time upgraded to ,NET 8 from .NET 7 (Which worked fine).  The error we're getting from Kubernetes is as shown below..... 

   at Telerik.Reporting.Processing.ReportProcessor.RenderReportSafe(Func`2 renderCallback, String format, IRenderingContext renderingContext)
   at Telerik.Reporting.Processing.ReportProcessor.RenderReport(String format, ReportSource reportSource, Hashtable deviceInfo, CancellationToken cancellationToken)
   at Telerik.Reporting.Processing.ReportProcessor.RenderReport(String format, ReportSource reportSource, Hashtable deviceInfo)
   at ReportService.UI.Controllers.API.ReportExportController.GenerateReportPDFBase64(ReportRequestDTO reportRequest) in /src/ReportService.UI/Controllers/API/ReportExportController.cs:line 35
   at lambda_method492(Closure, Object, Object[])
   at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.SyncObjectResultExecutor.Execute(ActionContext actionContext, IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeActionMethodAsync()
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeNextActionFilterAsync()
--- End of stack trace from previous location ---
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeInnerFilterAsync()
--- End of stack trace from previous location ---
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextResourceFilter>g__Awaited|25_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Rethrow(ResourceExecutedContextSealed context)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.InvokeFilterPipelineAsync()
--- End of stack trace from previous location ---
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
   at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.Builder.Extensions.UsePathBaseMiddleware.InvokeCore(HttpContext context, PathString matchedPath, PathString remainingPath)
   at Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddlewareImpl.<Invoke>g__Awaited|10_0(ExceptionHandlerMiddlewareImpl middleware, HttpContext context, Task task)
   --- End of inner exception stack trace ---
   at Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddlewareImpl.HandleException(HttpContext context, ExceptionDispatchInfo edi)
   at Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddlewareImpl.<Invoke>g__Awaited|10_0(ExceptionHandlerMiddlewareImpl middleware, HttpContext context, Task task)
   at Microsoft.AspNetCore.Localization.RequestLocalizationMiddleware.Invoke(HttpContext context)
   at Serilog.AspNetCore.RequestLoggingMiddleware.Invoke(HttpContext httpContext)
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.ProcessRequests[TContext](IHttpApplication`1 application)
[18:05:37 INF] HTTP GET /ready responded 200 in 0.1777 ms
[18:05:47 INF] HTTP GET /ready responded 200 in 0.1380 ms
[18:05:57 INF] HTTP GET /ready responded 200 in 0.1588 ms
Logs from 12/29/2023, 5:54:22 PM

 

Our dockerfile is as shown below....

#See https://aka.ms/customizecontainer to learn how to customize your debug container and how Visual Studio uses this Dockerfile to build your images for faster debugging.

FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base
WORKDIR /app
EXPOSE 80
ENV ASPNETCORE_HTTP_PORTS=80

# Creates a non-root user with an explicit UID and adds permission to access the /app folder
# For more info, please refer to https://aka.ms/vscode-docker-dotnet-configure-containers
RUN adduser -u 5678 --disabled-password --gecos "" appuser && chown -R appuser /app
USER appuser

FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
WORKDIR /src
COPY ["AppointmentService.Api/NuGet.config", "./"]
COPY ["AppointmentService.Api/AppointmentService.Api.csproj", "AppointmentService.Api/"]
COPY ["AppointmentService.Domain/AppointmentService.Domain.csproj", "AppointmentService.Domain/"]
COPY ["AppointmentService.Infrastructure/AppointmentService.Infrastructure.csproj", "AppointmentService.Infrastructure/"]
COPY ["AppointmentService.Data/AppointmentService.Data.csproj", "AppointmentService.Data/"]

# Set the PAT for the IQHT NuGet feed
ARG IQHTNugetPAT=localhost
RUN sed -i "s|</configuration>|<packageSourceCredentials><iQHealthTech><add key=\"Username\" value=\"IQHTNuget\" /><add key=\"ClearTextPassword\" value=\"${IQHTNugetPAT}\" /></iQHealthTech></packageSourceCredentials></configuration>|g" ./NuGet.config

RUN dotnet restore "AppointmentService.Api/AppointmentService.Api.csproj"
COPY . .
WORKDIR "/src/AppointmentService.Api"
RUN dotnet build "AppointmentService.Api.csproj" -c Release -o /app/build

FROM build AS publish
RUN dotnet publish "AppointmentService.Api.csproj" -c Release -o /app/publish /p:UseAppHost=false

FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "AppointmentService.Api.dll"]

Our Kubernetes deployment manifest is as below...


apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    service: appointmentservice
  name: appointmentservice
spec:
  replicas: 1
  selector:
    matchLabels:
      service: appointmentservice
  strategy: {}
  template:
    metadata:
      labels:
        service: appointmentservice
      annotations:
        dapr.io/enabled: "true"
        dapr.io/app-id: "iqht-dev-appointmentservice"
        dapr.io/app-port: "80"
    spec:
      containers:
        - image: acriqemodevuks01.azurecr.io/appointmentservice:v$(Build.BuildNumber)
          securityContext:
            runAsUser: 5678
            allowPrivilegeEscalation: false
            readOnlyRootFilesystem: true
            runAsNonRoot: true
          imagePullPolicy: IfNotPresent
          name: appointmentservice
          startupProbe:
            httpGet:
             path: /health/startup
             port: 80
            failureThreshold: 30
            periodSeconds: 10
          readinessProbe:
            httpGet:
              path: /ready
              port: 80
            successThreshold: 3
          ports:
            - containerPort: 80
          env: 
          - name: "ASPNETCORE_ENVIRONMENT"
            value: "iqemov2-development"
          volumeMounts:
            - name: secrets
              mountPath: /app/secrets
              readOnly: true
          resources: 
            limits:
              cpu: 75m
              memory: 100Mi
            requests:
              cpu: 50m
              memory: 50Mi 
      restartPolicy: Always
      volumes:
        - name: secrets
          secret:
            secretName: secret-appsettings
status: {}
...
apiVersion: v1
kind: Service
metadata:
  labels:
    service: appointmentservice
  name: appointmentservice
  namespace: iqemov2-development
spec:
  type: ClusterIP
  ports:
    - port: 80
      protocol: TCP
  selector:
    service: appointmentservice
status:
  loadBalancer: {}
  

I wonder whether you are able to provide us with some guidance on how we can resolve this issue so that we can deploy it to the customer.

Thanks in advance for any help you can provide to help us resolve this issue.

Regards,

Damian

Unplanned
Last Updated: 29 Dec 2023 11:37 by Jeyanthi

When an item has borders applied and the report is exported to PDF, the border lines "stick out" at the joints. The image below illustrates this.

Some additional information about the issue:

  • The issue seems to appear only in Chromium-based browsers.
    • Microsoft Edge -> reproducible
    • Google Chrome -> reproducible
    • Opera -> reproducible
    • Mozilla Firefox -> not reproducible
    • Adobe Acrobat -> not reproducible
  • The borders "stick out" differently based on the zoom level. In some zoom levels, there are no issues, in others the borders "stick out" at the bottom, right, etc. 
Completed
Last Updated: 23 Jan 2024 06:56 by ADMIN
Release 2024 Q1

To allow localization for the WebReportViewer in Version 17.1.23.718 and before, it was enough to provide a customized Version of "telerikReportViewer.stringResources.js", which extended the property "window.telerikReportViewer.sr".

This worked for both, the WebReportViewer and the Preview of the WebReportDesigner. With version R3 2023 SP1 (17.2.23.1114), this approach does not work anymore.