Deze openbare leden ondersteunen integraties die I/O inspecteren, serialisators implementeren of berekening over werkmappen heen coördineren, met werkmapleden gedeclareerd in lxHandleX en de werkruimtegrafiek gedeclareerd in lxDepGraph
Gewone toepassingen gebruiken eerst celformattering, SaveAs, Recalculate en de externe-werkmap-werkruimte-API's; stijlpoolregistratie en grafiekscheduling vereisen dezelfde index- en levensduurconventies als de serialisators en berekeningsengine van de library
TXLSXWorkbook.OnReadCell ontvangt bladindex, rij, kolom, opgeslagen waarde en formule van elke gematerialiseerde cel tijdens XLSX-parsing, met een schrijfbare Cancel-vlag; TXLSXWorkbook.OnWriteCell ontvangt een schrijfbare uitvoerwaarde plus Skip- en Cancel-vlaggen voordat een cel wordt geserialiseerd, zodat een host uitvoer kan transformeren of weglaten zonder de werkmap-API te vervangen door de directe stream-API
Beide callbacks gebruiken 1-based werkblad- en celcoördinaten, en hun gedeclareerde types zijn TXLSXCellReadEvent en TXLSXCellWriteEvent; callbacks draaien binnen de actieve I/O-bewerking, dus start geen andere bewerking op dezelfde werkmap vanuit een callback
TXLSXWorkbook.RecoveryMode staat standaard op False en laat ondersteunde werkblad-XML-parseerfouten uitkomen als waarschuwingsdiagnoses terwijl het openen doorgaat, waarbij mogelijk slechts gedeeltelijk herstelde werkbladinhoud achterblijft; het garandeert geen herstel uit een onleesbaar ZIP-pakket, dus inspecteer diagnoses en herstelde data vóór het opslaan
TXLSXWorkbook.FireProgress stuurt een fase, status, actueel aantal en totaal aantal naar de toegewezen progress-handlers, waarbij de legacy-handler werkingsmeldingen ontvangt en de uitgebreide handler alle statussen; een uitgebreide handler kan annulering vragen, behalve dat de melding aan het einde van het schrijven een al vastgelegde uitvoer niet kan terugdraaien
TXLSXWorkbook.AddDiagnostic voegt een diagnose toe die eigendom is van de werkmap en geeft die terug, registreert de meegegeven code, ernst, bewerking, melding, native code, bladcontext en pakketonderdeelnaam, kopieert de exception-klassenaam wanneer een exception wordt meegegeven en roept OnDiagnostic aan; het wordt niet eigenaar van de exception en geeft die niet door
function TXLSXWorkbook.AddDiagnostic(ACode: Integer; ASeverity: TXLSDiagnosticSeverity; AOperation: TXLSDiagnosticOperation; const AMessage: WideString; ANativeCode, ASheetIndex: Integer; const ASheetName, APartName: WideString; AException: Exception): TXLSDiagnostic;
TXLSXWorkbook.CSVEmitFormulas staat standaard op False en zet CSV-uitvoer voor formulecellen om van formuleresultaten naar formuletekst; resultaatuitvoer probeert formule-evaluatie en valt terug op opgeslagen celtekst of -waarde wanneer evaluatie mislukt; TXLSXWorkbook.CSVQuoteAllStrings staat ook standaard op False en forceert aanhalingstekens rond tekstvelden, terwijl getallen, datums, Booleans, Null en Empty de normale aanhaalregels volgen
TXLSXWorkbook.LastSaveUsedStreaming rapporteert of de meest recente voorbereide opslag werkbladstreaming gebruikte, terwijl TXLSXWorkbook.LastSavePeakRowXmlChars het grootste gebufferde rij-XML-fragment rapporteert, TXLSXWorkbook.LastSaveBufferedWorksheetXmlChars de gecombineerde gebufferde werkblad-XML rapporteert, en TXLSXWorkbook.LastSavePeakAuxiliaryXmlChars het grootste gevolgde hulp-XML-fragment; dit zijn tekenaantallen uit serializer-instrumentatie en geen metingen van het totale procesgeheugen, en ODS-uitvoer gebruikt het XLSX-werkbladstreamingpad niet
TXLSXWorkbook.TryCopyPreservedPart probeert een in aanmerking komend bewaard brononderdeel, inclusief zijn gecomprimeerde representatie, te kopiëren naar een door de aanroeper geleverde bestemmings-TZipArchive en geeft True terug bij kopiëren of False wanneer normale serialisatie nodig is; de bron moet beschikbaar blijven vanuit een op bestand gebaseerde opening, en ontbrekende of expliciet weggegooide onderdelen kunnen niet worden gekopieerd
De aanroeper is eigenaar van het doelarchief en moet dat normaal afsluiten; een terugrolfout bij gecomprimeerd kopiëren kan alsnog een exception geven, en deze helper bouwt geen volledig werkmappakket en werkt zijn relaties of contenttypes niet bij
TXLSXWorkbook.SaveAsEncryptedAgile accepteert een bestandsnaam en niet-leeg wachtwoord, serialiseert het XLSX-pakket in het geheugen en schrijft de Agile-versleutelde container, met 1 bij succes of -1 bij een gerapporteerde fout; de optionele VerifyEncryptedSave doet een heropen-controle na het schrijven, en de methode vereist geheugen voor zowel het onversleutelde pakket als zijn geserialiseerde bytes
TXLSXWorkbook.VerifyEncryptedFile opent het meegegeven bestand en wachtwoord in een tijdelijke werkmap en geeft alleen True terug wanneer die opening slaagt, met exceptions omgezet naar False; dit controleert leesbaarheid en vergelijkt niet elke cel met de huidige werkmap, en volgt het normale OpenEncrypted-gedrag voor een niet-versleutelde XLSX-invoer
TXLSXWorkbook.DocSecurity bewaart het bitveld van uitgebreide documenteigenschappen: 1 betekent wachtwoordbeveiliging, 2 aanbeveling alleen-lezen, 4 afgedwongen alleen-lezen-status en 8 annotatievergrendeling; deze metadatabits passen zelf geen versleuteling of toegangsbeperkingen toe
TXLSXWorkbook.DocPropsTouched is de alleen-lezen vlag die schrijvers van documenteigenschappen gebruiken om te beslissen of gevolgde eigenschappen zijn ingesteld; gevolgde eigenschapsetters zoals Title zetten die, terwijl direct toegewezen uitgebreide metadata die niet automatisch zet
TXLSXWorkbook.WorkbookProtectHash stelt de geladen of gegenereerde legacy-werkmapbeveiligingshash bloot, normaal vier hexadecimale cijfers of een lege string wanneer er geen wachtwoordhash bestaat; gebruik de werkmapbeveiligingsmethoden om beveiliging te wijzigen in plaats van deze alleen-lezen waarde toe te wijzen, en houd werkmapstructuurbeveiliging gescheiden van versleutelde bestandsopslag
TXLSXWorkbook.ThemeMajorFont en TXLSXWorkbook.ThemeMinorFont stellen de uit het thema geladen kop- en bodylettertypen bloot en overschrijven de namen wanneer het standaard Office-thema wordt gegenereerd; een letterlijk bewaard thema gaat vóór deze lettertypenaaminstellingen
TXLSXWorkbook.DefaultTableStyleName en TXLSXWorkbook.DefaultPivotStyleName laten de standaardnamen die in de stijltabel staan voor nieuw ingevoegde Excel-tabellen en draaitabellen roundtrippen; ze toewijzen formatteert niet direct elke bestaande opnieuw
TXLSXWorkbook.ResolveTableStyle geeft een werkmap-eigen aangepaste stijl op naam terug, lost anders ondersteunde ingebouwde TableStyleLight1 tot en met TableStyleLight21, TableStyleMedium1 tot en met TableStyleMedium28, of TableStyleDark1 tot en met TableStyleDark11 op en cachet die, en geeft nil terug bij een onbekende naam; geef de teruggegeven stijl niet vrij
TXLSXWorkbook.FastStyleAppend staat standaard op False en laat bulkcreatie deduplicatiescans in de stijlpools en gewone samengestelde-stijlregistratie overslaan, met een grotere stijltabel als prijs voor sneller invoegen wanneer veel onderscheiden stijlen worden aangemaakt
function TXLSXWorkbook.RegisterCompositeXf( AFont, AFill, ABorder, ANumFmt, AAlign, AProt: Integer): Integer; overload; function TXLSXWorkbook.RegisterCompositeXf( AFont, AFill, ABorder, ANumFmt, AAlign, AProt, ABuiltinNumFmt: Integer): Integer; overload; function TXLSXWorkbook.RegisterLinkedCompositeXf( AFont, AFill, ABorder, ANumFmt, AAlign, AProt, AParentXfId: Integer; ALinkedParts: TXLSXFormatParts): Integer;
TXLSXWorkbook.RegisterCompositeXf registreert de gecombineerde lettertype-, opvullings-, rand-, getalnotatie-, uitlijnings- en beveiligingsindices en geeft de absolute cellXfs-index terug, geen compositiepool-slot; de overload met zeven argumenten accepteert een ingebouwd getalnotatie-ID dat vóór de meegegeven aangepaste notatieindex gaat, waarbij nul betekent geen overschrijving
TXLSXWorkbook.RegisterLinkedCompositeXf registreert daarnaast de ouder-stijl-XF-ID en de aan die ouder gekoppelde notatieonderdelen, met aparte items voor verschillende ouder- of koppelingscombinaties; ook hij geeft een absolute cellXfs-index terug
TXLSXWorkbook.CompositeXfBase geeft de eerste absolute compositie-index terug, berekend uit de actuele eendimensionale stijlpools, terwijl TXLSXWorkbook.CompositeXfCount het aantal geregistreerde compositie-items telt; een poolslot dat GetCompositeXf gebruikt is de absolute index minus de basis, en de basis kan veranderen wanneer die pools groeien, dus deze waarden horen bij de actuele serialisatiestatus
TXLSXWorkbook.RegisterCondDxf registreert een geleende TXLSDxfStyle-referentie en geeft zijn zero-based differentiële-stijl-ID terug, waarbij een bestaande ID wordt hergebruikt voor dezelfde objectreferentie; houd het object in leven zolang serialisatie het gebruikt
TXLSXWorkbook.ResetCondDxfs wist het aantal in het actieve register zonder geleende stijlen vrij te geven, en TXLSXWorkbook.CondDxfCount rapporteert dat aantal; het voorbereiden van opslag bouwt dit register opnieuw, dus bewaar deze ID's niet los van het pakket dat wordt weggeschreven
TXLSXWorkbook.PivotCaches is de door de werkmap beheerde verzameling TXLSPivotCaches die werkblad-draaitabellen delen; AddPivotTable hergebruikt een matchende broncache of maakt er een aan, en RefreshPivotCache vernieuwt de geïdentificeerde cache met behoud van ondersteunde ledenidentiteiten
TXLSXWorkbook.RecalcThreads staat standaard op nul, waarbij nul of één seriematige herberekening betekent en grotere waarden worker-evaluatie van onafhankelijke formuliegrenzen inschakelen; werkmappen met dynamische arrays gebruiken hoe dan ook een seriematige pass, what-if-datatabelknooppunten blijven serieel, en door workers gebruikte handlers voor gebruikersfuncties moeten thread-safe zijn
TXLSXWorkbook.SolveCycleIteratively is een geavanceerd ingangspunt dat normaal door Recalculate wordt aangeroepen wanneer iteratie is ingeschakeld, knoopindices uit de actuele afhankelijkheidsgrafiek van die werkmap verbruikt en cyclusknooppunten evalueert in de meegegeven TList; indices uit een werkruimtegrafiek of andere werkmap zijn niet uitwisselbaar
De solver gebruikt IterateCount en IterateDelta, behoudt de eindwaarden zelfs wanneer de iteratielimiet is bereikt en geeft lxOk terug zonder convergentie te certificeren; leden van dynamische-array-cycli geven lxErrorCircumRef terug, en het CycleCount-argument van de signatuur vervangt de cyclusclassificatie op de grafiekknooppunten niet
TXLSWorkspaceDepGraph bewaart formuleafhankelijkheden over door de aanroeper geleverde werkmap- en bladidentiteiten heen, zonder werkmappen te openen of formules te evalueren; bouw een grafiek vanuit de actuele formules en opgeloste verwijzingen en bouw hem opnieuw op na structurele of formulewijzigingen die die verwijzingen ongeldig maken
function TXLSWorkspaceDepGraph.AddNode( const AWorkbookIdentity, ASheetName: WideString; ASheetIndex, ARow, ACol, AOutRow2, AOutCol2: Integer; AVolatile: Boolean; AReferences: TXLSWorkspaceDepReferenceList; ARefUnstable: Boolean = False): Integer; procedure TXLSWorkspaceDepGraph.DirtyTopoOrder(AOrder: TList; out ACycleNodeCount, ABlockedNodeCount: Integer);
TXLSWorkspaceDepGraph.AddNode voegt een formuleknoop toe en geeft zijn zero-based knoopindex terug, waarbij de meegegeven verwijzingen worden gekopieerd in plaats van dat hun lijst wordt beheerd; bladindices zijn 1-based, terwijl rij- en kolomcoördinaten, inclusief de rechteronderhoek van de inclusieve uitvoerrechthoek, zero-based calculatorcoördinaten zijn
TXLSWorkspaceDepReferenceList.Add voegt een opgeloste cel-, bereik- of gedefinieerde-naam-verwijzingsrecord toe, TXLSWorkspaceDepReferenceList.Items leest die records op zero-based index, en TXLSWorkspaceDepReferenceList.Clear reset de lijst voor hergebruik; de aanroeper is eigenaar van deze invoerlijst en kan die wissen of vrijgeven nadat AddNode de items heeft gekopieerd
TXLSWorkspaceDepGraph.BuildEdges lost opgeslagen cel- en bereikverwijzingen op tegen formule-uitvoerrechthoeken; verwijzingen gemarkeerd met LookupScan propageren vuilheid maar leggen geen evaluatievolgorde op en doen niet mee aan cyclusdetectie
TXLSWorkspaceDepGraph.NodeIndexOf lost een werkmap, blad, rij en kolom op naar een zero-based knoopindex of -1 wanneer afwezig, met gebruik van de bladnaam wanneer beschikbaar en de gedeclareerde bladindex als fallback
TXLSWorkspaceDepGraph.FindDependentsOfDefinedName wist een meegegeven niet-nil TList en vult die met de knoopindices die rechtstreeks naar het benoemde symbool verwijzen in de opgegeven werkmap en scope, waarbij een negatieve scope-index alle scopes matcht; items worden gecodeerd als Pointer(NativeInt(NodeIndex)), dus een nil-lijstitem kan knoop nul representeren
TXLSWorkspaceDepGraph.BeginDirtyGeneration start een nieuwe generatie, reset het aantal actieve dirty-knooppunten en de cyclusgeblokkeerde vlaggen en maakt eerdere dirty-stempels inactief; roep het aan voordat je de knooppunten voor een nieuwe herberekeningspass markeert
TXLSWorkspaceDepGraph.MarkAllDirty markeert elke knoop in de actuele generatie; TXLSWorkspaceDepGraph.MarkWorkbookDirty zaait knooppunten van de geïdentificeerde werkmap en knooppunten die ernaar verwijzen en propageert dan naar afhankelijken, terwijl TXLSWorkspaceDepGraph.MarkVolatileDirty volatile knooppunten zaait en TXLSWorkspaceDepGraph.MarkCyclesDirty gedetecteerde cycluscomponenten zaait, ook met propagatie van hun vuilheid
TXLSWorkspaceDepGraph.IsNodeDirty rapporteert of een geldige knoop de actuele generatiestempel draagt en geeft False terug bij een ongeldige index; TXLSWorkspaceDepGraph.DirtyGeneration stelt die stempel bloot en TXLSWorkspaceDepGraph.DirtyNodeCount telt de knooppunten die in de actieve generatie zijn gemarkeerd
TXLSWorkspaceDepGraph.DirtyTopoOrder vereist een niet-nil door de aanroeper beheerde TList, wist die en vult die met dirty-knoopindices in afhankelijkheidsvolgorde, exclusief dirty-cyclusknooppunten en knooppunten die door die cycli geblokkeerd worden; zijn twee uitvoeraantallen onderscheiden cyclusleden van geblokkeerde benedenstroomse knooppunten, en lijstitems gebruiken dezelfde pointergecodeerde zero-based indexconventie
TXLSWorkspaceDepGraph.HasRefUnstable rapporteert of een knoop met de referentie-onstabiel-vlag is toegevoegd, zodat de aanroeper niet hoeft te leunen op een verouderd statisch schema wanneer formuleverwijzingen op evaluatietijdstip kunnen veranderen; de grafiek lost die veranderlijke verwijzingen niet zelf op
TXLSWorkspaceDepGraph.NodeCount telt formuleknopen, TXLSWorkspaceDepGraph.ReferenceCount telt gekopieerde verwijzingen, en TXLSWorkspaceDepGraph.EdgeCount rapporteert de opgebouwde afhankelijkheidsedges; roep BuildEdges aan voordat je edgestatistieken verbruikt
TXLSWorkspaceDepGraph.WorkbookCount telt geïnterneerde werkmapidentiteiten, inclusief identiteiten die via verwijzingen zijn geïntroduceerd, en TXLSWorkspaceDepGraph.WorkbookIdentities somt die op per zero-based index; deze identiteitsstrings zijn grafieksleutels en geen bewijs dat een extern bestand is geladen
TXLSWorkspaceDepGraph.ComponentCount rapporteert het aantal sterk samenhangende componenten na componentopbouw, die wordt getriggerd door MarkCyclesDirty, DirtyTopoOrder of componenttoegang; elk Components-record levert NodeStart, NodeCount en IsCycle
TXLSWorkspaceDepGraph.ComponentNodes stelt de afgeplatte zero-based knoopindexarray voor die componenten bloot, geïndexeerd van NodeStart van een component tot en met NodeStart + NodeCount - 1; aantallen en geïndexeerde records beschrijven de actuele grafiek en moeten na grafiekreconstructie opnieuw worden opgevraagd
Ga verder met aanvullende XLSX-facade-leden en het XLSX-facade-overzicht voor de gewone werkmap-ingangspunten