TsgcHTMLReport
Raporty sekcyjne do PDF
Silnik za przeglądarką to osobny komponent niewizualny. Zapisuje PDF przez TsgcHTMLExportPDF, silnik PDF z sgcHTML, a ten sam raport można też zapisać jako arkusz Excela.
Sekcje
Nagłówek raportu, nagłówki stron, zagnieżdżone grupy z nagłówkami i stopkami, wiersze szczegółów, stopki stron i stopka raportu. Nagłówki grup mogą się powtarzać na każdej nowej stronie, KeepTogether trzyma grupę na jednej stronie, NewPageBefore i NewPageAfter łamią strony, a nagłówek raportu z NewPageAfter jest stroną tytułową.
Elementy
Sekcje zawierają tekst, obrazy, linie, prostokąty, wykresy, tekst sformatowany, kody kreskowe, kody QR i podraporty. Tekst jest przycinany do swojego pola, a elementy z AutoHeight powiększają sekcję, aby zmieścić zawinięty tekst.
Wyrażenia i PrintIf
Teksty zawierają wyrażenia w [ ]: pola z maską, takie jak [Amount:#,##0.00], [Sum(Field)], [Count], [Avg(Field)], [Min(Field)], [Max(Field)], [RunningSum(Field)], [Page] z [Pages], [Param.Name] i [GroupValue]. Sekcje i elementy drukują się tylko wtedy, gdy ich warunek PrintIf jest prawdziwy, na przykład Amount > 1000.
Źródła danych
Wiersze pochodzą z DataSet, Grid, tablicy JSON w RowsJSON albo ze zdarzenia OnGetRow. LoadFromGrid buduje raport tabelaryczny z kolumn TsgcHTMLComponent_Grid, z nagłówkami na każdej stronie, paskowanymi wierszami, sumami kolumn liczbowych i numerami stron.
Wykresy, kody kreskowe i kody QR
Element wykresu rysuje wiersze swojej sekcji jako grafikę wektorową: słupkowy, słupkowy poziomy, słupkowy skumulowany, liniowy, warstwowy, kołowy lub pierścieniowy, jeden wykres na grupę w sekcji grupy. ChartSource drukuje TsgcHTMLComponent_Chart tak, jak pokazuje go strona webowa. Elementy kodów kreskowych rysują Code 128, a elementy kodów QR używają poziomu korekcji błędów M.
Element podraportu drukuje inny raport wewnątrz swojej sekcji, na przykład pozycje zamówienia, powiązany z wierszem nadrzędnym przez LinkFields, do 5 poziomów głębokości, i kontynuuje na kolejnych stronach. Element tekstu sformatowanego drukuje HTML, a z AutoHeight płynie przez strony po nagłówkach stron.
Czcionki i języki
Elementy domyślnie drukują czcionkami Base-14, które zawierają znaki Windows-1252. Zarejestruj czcionki TrueType w Fonts, aby drukować cyrylicę, grekę, arabski, hebrajski, chiński, japoński, koreański lub symbole. Osadzane są tylko wydrukowane glify, a FallbackFonts i AutoFallback pokrywają znaki, których czcionce brakuje.
Ten sam wynik wszędzie
Liczby i daty drukują się z DecimalSeparator, ThousandSeparator, DateFormat i TimeFormat raportu, nigdy z ustawień regionalnych maszyny, więc raport drukuje się tak samo na każdym komputerze i w .NET. Przy stałej CreationDate te same dane wejściowe dają te same bajty PDF.
Definicja jako JSON
SaveToJSON zapisuje ustawienia strony, czcionki, sekcje, elementy i parametry, a LoadFromJSON odczytuje je z powrotem po zwalidowaniu całej definicji, ze ścieżką JSON każdego błędu. Użytkownicy projektują raporty w przeglądarce w Report Designer, a dwukrotne kliknięcie raportu otwiera ten sam projektant w IDE Delphi.
Jeden raport, wiele żądań
Generate, SaveToFile, SaveToStream, GetPDFBytes, ExportToXLSX i HasData budują każde własną kopię wierszy i układu. Jeden raport obsługuje jednocześnie kilka żądań serwera webowego, każde filtrowane własnymi parametrami, bez własnej blokady.