sgcUI sgcReports est disponible dès maintenant

sgcReports. Conçois-le une fois. Tous les formats.

Construis un rapport en code avec une chaîne fluide ou charge une définition JSON à l'exécution, avec groupes, sous-totaux, maître-détail et codes-barres. Livre-le en PDF balisé, Excel, CSV ou PNG depuis un aperçu de bureau, un service Windows ou un démon Linux64. Un moteur de rapports pour Delphi, C++ Builder et .NET, avec le code source inclus.

  • VCL
  • FireMonkey
  • WinForms
  • Linux64 headless
  • Delphi 7 à 13
Fenêtre d'aperçu sgcReports avec une page de facture et un code QR
  • 4formats d'export à partir d'un seul rapport préparé : PDF, XLSX, CSV et PNG
  • PDF/UA-1PDF balisé et accessible par défaut, PDF/A-3 sur demande
  • 3types de source de données : tout TDataSet, tableaux JSON et tes propres événements
  • 0DLL externes ou pilotes d'imprimante, donc il fonctionne dans des services et des démons Linux64

Tout ce dont un moteur de rapports a besoin.

Des mises en page versionnées avec ton projet, des données d'où qu'elles viennent, des fichiers pour chaque lecteur et un moteur qui n'a besoin d'aucune fenêtre. sgcReports couvre tout cela dans un seul produit.

  • Rapports en code

    Un constructeur fluide ou une définition JSON, tous deux versionnés avec ton projet.

  • Toutes les données

    Des jeux de données avec maître-détail, des tableaux JSON ou des lignes issues de tes propres événements.

  • Tous les formats

    PDF balisé, PDF/A-3, XLSX, CSV et PNG à partir d'un seul rapport préparé.

  • Fonctionne partout

    Aperçu de bureau, services Windows, démons Linux64 et points de terminaison HTTP.

Regarde-la en action.

Capturé à partir des démos sgcReports fournies avec l'essai.

La démo ReportFluent : un rapport complet écrit avec le constructeur fluide, puis exporté dans tous les formats
Rapports en code

Écris un rapport complet en quelques lignes lisibles.

  • TsgcReportBuilder décrit les styles, les pages, les bandes et les éléments dans une seule chaîne fluide qui se compile, se compare et se refactorise avec ton projet.
  • Style, Page, GroupHeader, MasterData, GroupFooter et PageFooter se lisent comme la mise en page.
  • SaveToPDF, SaveToXLSX, SaveToCSV et SaveToPNG directement depuis le constructeur.
Ventes groupées par région avec des en-têtes de groupe, des sous-totaux par région et un total général
Bandes et groupes

Des groupes, des sous-totaux et des numéros de page qui fonctionnent tout simplement.

  • Une vraie mise en page par bandes, de rbtReportTitle à rbtReportSummary, avec des en-têtes et des pieds de groupe et des en-têtes de colonne.
  • GroupExpression rompt un groupe quand sa valeur change ; les groupes imbriqués donnent deux niveaux ou plus.
  • StartNewPage, RepeatOnEveryPage et KeepTogether contrôlent l'enchaînement des pages, et TotalPages affiche « Page 2 sur 7 ».
La démo ReportInvoice : une facture maître-détail avec en-tête, lignes, totaux et un code QR
Toutes les données

Des factures directement depuis ta base de données.

  • TsgcReportDataSetSource se lie à tout TDataSet, FireDAC compris, et relie les lignes de détail à leur maître avec MasterFields et DetailFields.
  • TsgcReportJSONSource lit une chaîne ou un fichier JSON, RecordsPath choisit le tableau.
  • TsgcReportEventSource récupère des lignes depuis ton code via OnFirst, OnNext et OnGetValue.
La démo ReportPDFUA : sortie PDF/UA-1 balisée avec texte alternatif et rôles de titre
Livre-le partout

PDF accessible par défaut, PDF/A sur demande.

  • PDFUA vaut True par défaut sur TsgcReportPDFExport : PDF/UA-1 balisé avec un ordre de lecture logique.
  • AltText et TagRole sur les éléments décrivent les images et les titres.
  • Écris PDFA à rpaA3b ou rpaA3a quand le document part vers une archive à long terme.

Un rapport de ventes groupé en quelques lignes.

Un en-tête par région, une ligne par vente et un sous-total par région, enregistrés en PDF, XLSX et CSV. La même API en Delphi, C++ Builder et C#.

dotnet add package esegece.sgcReports

Versions C++ Builder et C#

uses
  Classes, SysUtils,
  sgcReports_Types, sgcReports_Model, sgcReports_Data, sgcReports_Fluent;

const
  CS_SALES = '[' +
    '{"Region":"East","Customer":"Acme Corp","Amount":1450.00},' +
    '{"Region":"East","Customer":"Blue Harbor","Amount":600.00},' +
    '{"Region":"North","Customer":"Nordic Labs","Amount":2100.75},' +
    '{"Region":"North","Customer":"Fjord Ltd","Amount":880.20}]';
  CS_TOTAL = '[FormatFloat(''#,0.00'', Sum(Sales.Amount))]';

procedure ExportSalesReport(const aFolder: string);
var
  oSales: TsgcReportJSONSource;
  oBuilder: TsgcReportBuilder;
begin
  oSales := TsgcReportJSONSource.Create(nil);
  oBuilder := TsgcReportBuilder.Create;
  try
    oSales.SourceName := 'Sales';
    oSales.JSON := CS_SALES;
    oBuilder.Title('Sales by region').Author('eSeGeCe').Units(ruMillimeters)
      .Style('Base').Font('Arial', 10).EndStyle
      .Style('Group').Font('Arial', 11).Bold.BackColor($EEEEEE).EndStyle
      .Page.Paper(rpsA4).Margins(15)
      // one header per region, one line per sale, a subtotal per region
      .GroupHeader('Sales.Region', 9).Style('Group')
      .Text('Region: [Sales.Region]', 0, 1, 180, 7).TagRole(rtrHeading2).EndBand
      .MasterData('Sales', 6).Style('Base')
      .Text('[Sales.Customer]', 2, 0, 120, 6)
      .Text('[Sales.Amount]', 130, 0, 50, 6).AlignRight.Format('#,0.00').EndBand
      .GroupFooter(9).Style('Base')
      .Text('Region total ' + CS_TOTAL, 80, 1, 100, 6).AlignRight.Bold.EndBand
      .PageFooter(8).Style('Base')
      .Text('Page [Page] of [TotalPages]', 0, 1, 180, 6).AlignCenter.EndBand
      .EndPage.Data(oSales);
    // accessible PDF (PDF/UA is on by default), plus the same data as Excel
    oBuilder.SaveToPDF(IncludeTrailingPathDelimiter(aFolder) + 'sales.pdf');
    oBuilder.SaveToXLSX(IncludeTrailingPathDelimiter(aFolder) + 'sales.xlsx');
    oBuilder.SaveToCSV(IncludeTrailingPathDelimiter(aFolder) + 'sales.csv');
  finally
    oBuilder.Free;
    oSales.Free;
  end;
end;

Fait partie de sgcUI.

Achète sgcReports seul, ou obtiens-le dans sgcUI Enterprise aux côtés de tous les autres produits sgcUI, avec un thème et un runtime communs. Chacun est fourni avec le code source.

Seule

sgcReports

Le moteur de rapports seul, avec le code source complet et 1 an de mises à jour.

€199 / développeur
Tarifs de sgcReports

Standard

sgcGrid, sgcNavigation, sgcToolbar et sgcEditors.

€380 / développeur
Voir Standard

Professional

Standard plus sgcCharts, sgcDashboard et sgcGauges.

€529 / développeur
Voir Professional
Inclut sgcReports

Enterprise

Les 15 produits sgcUI.

€699 / développeur
Voir Enterprise

sgcReports dessine sa sortie PDF et ses codes-barres avec le moteur sgcPDF, donc sgcPDF est requis dans toutes les configurations. Pour .NET, esegece.sgcReports.Community sur NuGet est gratuit. sgcReports figure aussi dans le bundle All-Access.

Découvrir sgcUI

Mets sgcReports dans ta propre application dès aujourd'hui.

Télécharge l'essai et lance les démos ReportInvoice, ReportGroups et ReportExports, ou parcours d'abord toutes les fonctionnalités.

Les derniers articles du blog

Voir tous les articles →

Tu vois la vue sgcReports d'eSeGeCe.

Montre-moi un autre angle →
Garantie satisfait ou remboursé de 30 joursPas satisfait ? Demandez un remboursement intégral dans les 30 jours suivant l'achat. Voir la politique de remboursement