iPlus.gip.core.reporthandler
5.0.0-preview.2
dotnet add package iPlus.gip.core.reporthandler --version 5.0.0-preview.2
NuGet\Install-Package iPlus.gip.core.reporthandler -Version 5.0.0-preview.2
<PackageReference Include="iPlus.gip.core.reporthandler" Version="5.0.0-preview.2" />
<PackageVersion Include="iPlus.gip.core.reporthandler" Version="5.0.0-preview.2" />
<PackageReference Include="iPlus.gip.core.reporthandler" />
paket add iPlus.gip.core.reporthandler --version 5.0.0-preview.2
#r "nuget: iPlus.gip.core.reporthandler, 5.0.0-preview.2"
#:package iPlus.gip.core.reporthandler@5.0.0-preview.2
#addin nuget:?package=iPlus.gip.core.reporthandler&version=5.0.0-preview.2&prerelease
#tool nuget:?package=iPlus.gip.core.reporthandler&version=5.0.0-preview.2&prerelease
gip.core.reporthandler
Core reporting and printing plugin for iPlus.
This project contains the shared rendering pipeline for:
- Scryber HTML/XHTML templates to PDF.
- Legacy FlowDocument support and compatibility helpers.
- Barcode and resource-image preprocessing for template-driven output.
Scryber Template Syntax
The core engine resolves templates through Scryber and binds report data with these conventions:
{{model.PropertyName}}for model-first access.{{values.KeyName}}for named report values.{{reportData}}for full report context.{{vb.Get('CurrentFacilityCharge/Material/MaterialNo')}}for legacy VBContent-style paths.
Minimal template example:
<!doctype html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
<style>
@page { size: 420pt 595pt; margin: 20pt; }
body { font-family: Arial, sans-serif; font-size: 11pt; }
</style>
</head>
<body>
<h1>{{model.Title}}</h1>
<p>Lot: {{vb.Get('CurrentFacilityCharge/FacilityLot/LotNo')}}</p>
</body>
</html>
Barcode And Image Metadata
For printer plugins and PDF output, templates can carry metadata attributes:
data-barcode-typeor printer-specific variants (data-zpl-barcode-type,data-escpos-barcode-type).data-vb-contentto resolve barcode payload from report data.data-barcode-width,data-barcode-height,data-qr-pixels-per-modulefor sizing.data-resource-keyon<img>for design-resource image resolution.data-cups-media(ordata-print-media) to override Linux CUPS paper size (for exampleA4,Letter).
Barcode element example:
<span
data-barcode-type="QRCODE"
data-zpl-barcode-type="QRCODE"
data-escpos-barcode-type="QRCODE"
data-qr-pixels-per-module="20"
data-vb-content="CurrentFacilityCharge/FacilityChargeID">
{{vb.Get('CurrentFacilityCharge/FacilityChargeID')}}
</span>
Legacy FlowDoc XAML To Scryber
Use this mapping when converting old templates.
| Legacy FlowDoc XAML | Scryber Template |
|---|---|
<FlowDocument ...> |
<!doctype html><html ...> with @page CSS |
<Paragraph><Run>Text</Run></Paragraph> |
<p>Text</p> |
<vbr:InlineDocumentValue VBContent="Path" /> |
{{vb.Get('Path/with/slashes')}} |
<vbr:InlineBarcode ... /> |
<span data-barcode-type="..." data-vb-content="..."></span> |
Before (legacy FlowDoc):
<Paragraph TextAlignment="Left" FontSize="12">
<Run xml:lang="de-de">Chargennummer:</Run>
</Paragraph>
<Paragraph TextAlignment="Left">
<vbr:InlineDocumentValue VBContent="CurrentFacilityCharge\FacilityLot\LotNo" FontWeight="Bold" FontSize="14" />
</Paragraph>
<Paragraph TextAlignment="Center">
<vbr:InlineBarcode BarcodeType="QRCODE" VBContent="CurrentFacilityCharge" VBShowColumns="FacilityLot\LotNo" VBShowColumnsKeys="10" />
</Paragraph>
After (Scryber):
<p style="font-size:12pt; text-align:left;">Chargennummer:</p>
<p style="font-size:14pt; font-weight:bold; text-align:left;">
{{vb.Get('CurrentFacilityCharge/FacilityLot/LotNo')}}
</p>
<p style="text-align:center;">
<span
data-barcode-type="QRCODE"
data-zpl-barcode-type="QRCODE"
data-escpos-barcode-type="QRCODE"
data-vb-content="CurrentFacilityCharge"
data-vb-show-columns="FacilityLot/LotNo"
data-vb-show-columns-keys="10">
{{vb.Get('CurrentFacilityCharge/FacilityChargeID')}}
</span>
</p>
In-Repo Examples
- Converted test template: VBControlScripts/FlowDoc_Label_QR_Converted.scryber.html
- Full migration guide: docs/ScryberTemplateMigration.md
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- BarcodeLib (>= 3.1.5)
- ClosedXML (>= 0.105.0)
- CoreWCF.ConfigurationManager (>= 1.8.1)
- CoreWCF.Http (>= 1.8.1)
- CoreWCF.NetTcp (>= 1.8.1)
- CoreWCF.Primitives (>= 1.8.1)
- CoreWCF.WebHttp (>= 1.8.1)
- DocumentFormat.OpenXml (>= 3.5.1)
- DocumentFormat.OpenXml.Framework (>= 3.5.1)
- ESCPOS (>= 1.3.0)
- HtmlAgilityPack (>= 1.13.0)
- iPlus.EntityFrameworkCore (>= 10.0.5)
- iPlus.EntityFrameworkCore.Abstractions (>= 10.0.5)
- iPlus.EntityFrameworkCore.Proxies (>= 10.0.5)
- iPlus.EntityFrameworkCore.Relational (>= 10.0.5)
- iPlus.EntityFrameworkCore.SqlServer (>= 10.0.5)
- iPlus.gip.core.autocomponent (>= 5.0.0-preview.2)
- iPlus.gip.core.datamodel (>= 5.0.0-preview.2)
- iPlus.Scryber.Core (>= 9.6.0.1)
- Microsoft.AspNetCore.Authentication (>= 2.3.10)
- Microsoft.AspNetCore.Authentication.Abstractions (>= 2.3.10)
- Microsoft.AspNetCore.Authentication.Core (>= 2.3.10)
- Microsoft.AspNetCore.Authorization (>= 2.3.10)
- Microsoft.AspNetCore.Connections.Abstractions (>= 2.3.10)
- Microsoft.AspNetCore.Cryptography.Internal (>= 2.3.10)
- Microsoft.AspNetCore.DataProtection (>= 2.3.10)
- Microsoft.AspNetCore.DataProtection.Abstractions (>= 2.3.10)
- Microsoft.AspNetCore.Hosting (>= 2.3.10)
- Microsoft.AspNetCore.Hosting.Abstractions (>= 2.3.10)
- Microsoft.AspNetCore.Hosting.Server.Abstractions (>= 2.3.10)
- Microsoft.AspNetCore.Http (>= 2.3.10)
- Microsoft.AspNetCore.Http.Abstractions (>= 2.3.10)
- Microsoft.AspNetCore.Http.Extensions (>= 2.3.10)
- Microsoft.AspNetCore.Http.Features (>= 2.3.10)
- Microsoft.AspNetCore.Server.Kestrel (>= 2.3.10)
- Microsoft.AspNetCore.Server.Kestrel.Core (>= 2.3.10)
- Microsoft.AspNetCore.Server.Kestrel.Https (>= 2.3.10)
- Microsoft.AspNetCore.Server.Kestrel.Transport.Abstractions (>= 2.3.10)
- Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets (>= 2.3.10)
- Microsoft.AspNetCore.WebSockets (>= 2.3.10)
- Microsoft.AspNetCore.WebUtilities (>= 2.3.10)
- Microsoft.Bcl.AsyncInterfaces (>= 9.0.0)
- Microsoft.CodeAnalysis (>= 5.3.0)
- Microsoft.CodeAnalysis.Analyzers (>= 5.3.0)
- Microsoft.CodeAnalysis.Common (>= 5.3.0)
- Microsoft.CodeAnalysis.CSharp (>= 5.3.0)
- Microsoft.CodeAnalysis.CSharp.Workspaces (>= 5.3.0)
- Microsoft.CodeAnalysis.Workspaces.Common (>= 5.3.0)
- Microsoft.Data.SqlClient (>= 7.0.0-preview3.25342.7)
- Microsoft.Database.Collections.Generic (>= 3.2.0)
- Microsoft.Extensions.Configuration (>= 10.0.8)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.8)
- Microsoft.Extensions.Configuration.Binder (>= 10.0.8)
- Microsoft.Extensions.DependencyInjection (>= 10.0.8)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.8)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.8)
- Microsoft.Extensions.Logging (>= 10.0.8)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.8)
- Microsoft.Extensions.Logging.Console (>= 10.0.8)
- Microsoft.Extensions.Logging.Debug (>= 10.0.8)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.8)
- Microsoft.FASTER.Core (>= 2.6.5)
- Microsoft.Identity.Client.Extensions.Msal (>= 4.87.0)
- Newtonsoft.Json (>= 13.0.4)
- Portable.BouncyCastle (>= 1.9.0)
- QRCoder (>= 1.7.0)
- Scryber.Core.OpenType (>= 9.2.0)
- SixLabors.ImageSharp (>= 3.1.12)
- SkiaSharp (>= 4.150.1)
- SkiaSharp.NativeAssets.Linux (>= 4.150.1)
- SkiaSharp.NativeAssets.Linux.NoDependencies (>= 4.150.1)
- SkiaSharp.NativeAssets.macOS (>= 4.150.1)
- SkiaSharp.NativeAssets.Win32 (>= 4.150.1)
- System.ComponentModel.Annotations (>= 5.0.0)
- System.Composition (>= 10.0.8)
- System.Composition.AttributedModel (>= 10.0.8)
- System.Composition.Convention (>= 10.0.8)
- System.Composition.Hosting (>= 10.0.8)
- System.Composition.Runtime (>= 10.0.8)
- System.Composition.TypedParts (>= 10.0.8)
- System.Configuration.ConfigurationManager (>= 10.0.0)
- System.Data.DataSetExtensions (>= 4.6.0-preview3.19128.7)
- System.Data.SqlClient (>= 4.9.0)
- System.Drawing.Common (>= 10.0.0)
- System.Memory.Data (>= 10.0.8)
- System.Reflection.Context (>= 10.0.2)
- System.Resources.Extensions (>= 10.0.2)
- System.Security.Cryptography.Xml (>= 10.0.10)
- System.ServiceModel.Duplex (>= 6.0.0)
- System.ServiceModel.Federation (>= 10.0.652802)
- System.ServiceModel.NetTcp (>= 10.0.652802)
NuGet packages (9)
Showing the top 5 NuGet packages that depend on iPlus.gip.core.reporthandler:
| Package | Downloads |
|---|---|
|
iPlus.gip.core.reporthandler.avui
Components for rendering reports with flowdocs |
|
|
iPlus.gip.mes.webservices
Components for integration of external systems with MES |
|
|
iPlus.gip.mes.facility
Manager components for warehouse management |
|
|
iPlus.gip.bso.masterdata
Businessobjects for masterdata management |
|
|
iPlus.gip.mes.processapplication
Components for process industry |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 5.0.0-preview.2 | 57 | 10/8/2026 |
| 5.0.0-preview.1 | 197 | 10/6/2026 |