Stimulsoft Reports.BLAZOR

Hello, could someone share an example of a visualization of a report with parameters of an "Id" grid?

https://www.stimulsoft.com/en/products/reports-blazor

Saludos!

Hi @fiore2k1,

The Radzen team doesn't provide support for any third party frameworks or applications. Hopefully somebody from the community can help you.

I implemented StimulSoft reports in my application but I am not sure what your problem is. If you explain a bit, maybe I can help you.

Brilliant!
Thanks for your help. I need to generate reports by calling the Stimulsoft view event in a grid referencing the Id of each row as a parameter...

Still I do not get what the problem is. Can you give me a practical example of the task you want to achieve?
Do you need to print let say invoice in a grid without losing focus on current invoice?

exact. That example would help me!!

I made StiViewer page as StimulSoft example with little customization

@using Stimulsoft.Base
@using Stimulsoft.Report
@using Stimulsoft.Report.Blazor
@using Stimulsoft.Report.Dictionary;
@using Stimulsoft.Report.Web
@using System.Globalization
@inject GlobalState.ReportState RS
@inject IJSRuntime JSRuntime

<StiBlazorViewer Report="@Report" Options="@options" Localization="Reports/sr.xml"
                 Width="100%" Height="100%"
                 Theme="StiViewerTheme.Office2010Silver" />
@code
{
    //Report object to use in Viewer
    private bool firsTime = true;

    private StiReport Report;

    private StiBlazorViewerOptions options;

    protected override void OnInitialized()
    {
        base.OnInitialized();

        Stimulsoft.Base.StiLicense.Key = "6vJhGtLLLz2GNvAOiHnz2oxTLLZoeuCpVKN0E" +
"Here is your stimulsoft license key" +
           "z7eQ+8OniCMrn1PeSW/QIn";

        //Init options object
        this.options = new StiBlazorViewerOptions();

        //Set some options
        this.options.Appearance.FullScreenMode = true;
        this.options.Appearance.ScrollbarsMode = true;
        this.options.Toolbar.ShowFullScreenButton = true;
        this.options.Toolbar.ShowAboutButton = false;
        this.options.Toolbar.ShowOpenButton = false;

        this.options.Toolbar.DisplayMode = StiToolbarDisplayMode.Separated;
        this.options.Toolbar.Zoom = StiZoomMode.PageWidth;
        this.options.Toolbar.ViewMode = StiWebViewMode.Continuous;
        var rptname = RS.ReportName;
        //Create empty report object
        var report = new StiReport();
        //Load report template
        report.Load($"Reports/{rptname}");

        report.Dictionary.Databases.Clear();
        report.Dictionary.Databases.Add(new StiSqlDatabase("ConnName", AS.ConnectionString));

        // Add a variable to the Dictionary where is InvId is Invoice number
        if (!string.IsNullOrEmpty(AS.InvId))
        {
            report.Dictionary.Variables["I_InvId"].Value = AS.InvId.Trim();
        }
        this.Report = report;
    }
}

Call this from eg. Invoice page like this

await JSRuntime.InvokeVoidAsync("open", $"{RS.AppName}/RptViewer", "_blank");

and it will open another page with your report. Firstly I did not like it but it is more convenient as it gives your user ability to view more than one report view.