Dokumentacija HotXLS

API za prevedena poročila

Enota lxReport enkrat prevede nadomestne znake in strukturne pasove poročil, nato pa uporabi podatke v lasti klicatelja prek omejenih kazalcev brez ponovnega preiskovanja ustvarjenih objektov delovnega zvezka

Pogodbe tabel in kazalcev

IXLSReportCursorMoveNext, RowIndex in Values izpostavijo po eno vrstico, ki jo je mogoče prebirati le naprej
IXLSReportTableName, ColumnCount, ColumnNames in CreateCursor določajo ponovno uporaben tabelarni vir
IXLSReportRandomAccessTableRowCount in dvodimenzionalni Values dodata indeksiran dostop, ki ga uporabljajo združitve in relacijski indeksi
IXLSReportTableProviderTryGetTable leno razreši poimenovano tabelo
TXLSReportMemoryTableAddRow, ColumnIndexOf, CreateCursor, ColumnCount, ColumnNames in RowCount zagotavljajo lastno izvedbo v pomnilniku
TXLSReportDataContextRegisterTable, AddProvider, TryGetTable, RequireTable, ClearLoadedTables in LoadedTableCount usklajujejo željene in lene vire

Nadzorovani ponudniki poizvedb

IXLSReportQueryExecutor.ExecuteReadOnly ohranja izvajanje poizvedb v lasti gostitelja in sprejema samo definicije, registrirane s kodo aplikacije

TXLSReportQueryParameter, TXLSReportQueryParameters in TXLSReportQueryDefinition izpostavljajo Name, CommandText, TimeoutMS, ParameterCount, Parameters, SetParameter in ClearParameters

TXLSReportQueryProvider uporablja RegisterQuery, RemoveQuery, Clear in TryGetTable, pri čemer Count, Definitions in MaximumTimeoutMS izpostavljajo seznam dovoljenih in zgornjo mejo časovne omejitve

Relacije in leni kombinatorji tabel

TXLSReportRowIndexes in TXLSReportRelationIndex hranita številke podrejenih vrstic v predalih s sestavljenim ključem; uporabite FindChildRows ali CreateChildCursor ter preverite BucketCount ali IndexedRowCount

TXLSReportAggregateKind, TXLSReportAggregate in TXLSReportJoinKind konfigurirajo TXLSReportTableFactory

Definicije agregatovCountAggregate, MinAggregate in Aggregate
Projekcija in redukcijaTop, Columns, NRows in Min
SestavljanjeUnion, Join in Split vračajo lene poglede brez kopiranja celotnih vmesnih vsebin vrstic

Pasovi poimenovanih in eksplicitnih obsegov

TXLSReportBandKind izbira razširitev po vrsticah, stolpcih ali navzkrižnih tabelah, TXLSReportBandState pa poroča stanje življenjskega cikla

TXLSCompiledReportBand sprejme definiran sklic natančnega obsega ali CreateForRange in se nato razširi prek preobteženih metod Run; DefinedName, ScopeSheetIndex, Kind, Sheet, SheetIndex, FirstRow, FirstCol, LastRow, LastCol, TargetCount in State izpostavljajo prevedeni načrt

TXLSCompiledTableReportBand.Run razširi eno podatkovno-predložno vrstico Excelove tabele ob ohranjanju metapodatkov tabele; preverite TableName, Sheet, SheetIndex, ExcelTable, TemplateRow in State

TXLSCompiledSheetReportBand.Run ustvari liste za vsak zapis z uporabo NameColumn, NamePrefix in DeleteTemplateAfterRun; TXLSCompiledOverflowReportBand.Run ustvari nadaljevalne liste z uporabo NamePrefix in DeleteTemplateAfterRun

Predloge celotnega delovnega zvezka

TXLSReportTemplateTarget in TXLSReportTemplateTargets izbirata celice, pripombe, hiperpovezave, oblike, glave in noge, imena listov, definirane sklice in lastnosti dokumenta

TXLSCompiledReportTemplate.Compile zajame cilje in izraze, Analyze vrne naslovljene TXLSReportIssues, preobtežene metode Run uporabijo vrednosti, WriteDiagnostics pa zapiše težave na delovni list; TargetAreas in TargetCount opisujeta prevedeno površino

TXLSReportIssueKind, TXLSReportIssue in TXLSReportIssues prepoznajo nepravilno, manjkajočo, neveljavno, neznano ali ciklično vsebino nadomestnih znakov s koordinatami cilja in celice

Vključitve, slike in oblikovanje

IXLSReportIncludeResolver.Resolve dobavlja poimenovane fragmente, njegova zastavica Immutable pa omogoča varno ponovno uporabo; TXLSReportIncludeLibrary ponuja Add, Remove, Clear, Freeze, Resolve, Count in Immutable

IXLSReportImageProvider.TryGetImage vrne TXLSReportImageValue, konfiguriran z TXLSReportImageFit; TXLSReportMissingImagePolicy nadzira manjkajoče vire, TXLSReportImageBinder.Apply, MissingPolicy in ClearDirectiveCell pa posodabljajo natančne direktive slik

TXLSReportDynamicFormat in TXLSReportFormatEvent omogočata poganjalcu, da uporabi številske formate, višine vrstic in širine stolpcev za vsak cilj posebej

Ponovno uporabno izvajanje

TXLSReportRunPhase, TXLSReportRunState, TXLSReportRunProgress in TXLSReportRunProgressEvent opisujejo meje napredka in preklica

TXLSCompiledReportRunner izpostavlja Run, RunToStream, RunToFile in Cancel, pri čemer ReportTemplate, State, Progress, OnProgress in OnFormat nadzorujejo ponovno uporabno izvajanje; neuspelo preverjanje pred determinističnimi zapisi sproži EXLSReportData

Načrtovanje, preverjanje in selitev

TXLSReportPaginationPlanner ponuja načrte KeepTogether, SplitRows, MergeSimilar in BalanceColumns za fiksne noge in uravnotežen izhod

TXLSReportTemplateChecker ponuja Check, CheckBand in CheckTableBand; TXLSReportTemplateMigrator ponuja MigrateText in MigrateWorkbook za podprte oblike zapuščenih nadomestnih znakov

Primer

Table := TXLSReportMemoryTable.Create('Orders', ['Customer', 'Amount']);
Table.AddRow(['A. Datum', 1200]);
Table.AddRow(['Contoso', 950]);
Values := TStringList.Create;
Template := TXLSCompiledReportTemplate.Create(Workbook);
try
  Values.Values['Title'] := 'Quarterly orders';
  Template.Run(Values);
finally
  Template.Free;
  Values.Free;
end;

Glej tudi