Werken met de Workbook Model Layer

Werken met de Workbook Model Layer

Werken met de Workbook Model Layer

Onder de gebruiksvriendelijke API houdt de crate een eenvoudige gegevensmodellaag bij die het XLSX-pakket weerspiegelt: waardestructuren, regelmodellen en gedeelde opslag. De meeste toepassingen raken deze types nooit direct, maar ze komen naar voren wanneer je geladen werkboeken grondig inspecteert of bijdraagt aan de crate zelf.


Waarde Types

ColorValue draagt ARGB-kleurcomponenten als eenvoudige a, r, g, b velden, met equals en get_hash_code voor vergelijkingen. Getalopmaak op modelniveau bevindt zich in NumberFormatValue, die clone ondersteunt voor het kopiëren van opmaakdefinities tussen modelrecords.


Regelmodellen

Data-quality-regels hebben model-tweelingen: ValidationModel exposeert de areas, validation_type, alert_style, operator van de regel en de formula1 / formula2 expressies als velden; FormatConditionModel en ConditionalFormattingModel vervullen dezelfde rol voor voorwaardelijke opmaakrecords. Deze worden geconstrueerd met default en veld-voor-veld ingevuld.


Gedeelde tekenreeksopslag

XLSX-bestanden slaan herhaalde celtekst op in een shared-strings-tabel. De SharedStringRepository modelleert dit als een interner:

  • intern voegt een string toe en retourneert de index (hergebruikt bestaande vermeldingen),
  • try_get_value lost een index op naar zijn string,
  • clear reset de repository.

Diagnostics

DiagnosticBag verzamelt gestructureerde issues via add tijdens modelbewerkingen. Op het API niveau bereikt dezelfde informatie je via LoadDiagnostics bij het laden van werkboeken — zie Overzicht van functies.


Tips en best practices

  • Geef de gebruiksgerichte API de voorkeur (Workbook, Worksheet, celcollecties) — de modellaag is niet nodig voor routinematige spreadsheet-werkzaamheden.
  • Behandel modelstructuren als gegevensrecords: maak ze aan met default, stel vervolgens de velden expliciet in.
  • Bij het onderzoeken van misvormde bestanden, combineer LoadOptions reparatie-vlaggen met de diagnostiek die de loader rapporteert.

Veelvoorkomende problemen

ProbleemOorzaakOplossing
Dubbele gedeelde stringsDe interner omzeilenLeid tekst door SharedStringRepository.intern
Validatieregel genegeerdModelvelden onvolledigStel validation_type, operator en formula1 in op ValidationModel

FAQ

Heb ik de modellaag nodig om spreadsheets te schrijven?

Nee. De Workbook API dekt het maken, bewerken en opslaan van werkmappen; de modellaag vormt de basis.

Waarom gebruiken modelstructuren default-constructors?

Het zijn eenvoudige gegevensrecords die XLSX-structuren weerspiegelen — default levert een leeg record dat je veld voor veld invult.


API Reference Samenvatting

Klasse/MethodeBeschrijving
ColorValueARGB-kleurenrecord (a, r, g, b)
NumberFormatValue.cloneKopieer een getalopmaakdefinitie
ValidationModelValidatieregelrecord (gebieden, operator, formules)
FormatConditionModel.defaultLeeg voorwaardelijke opmaakregelrecord
SharedStringRepository.internIntern een string, retourneert de index
SharedStringRepository.try_get_valueLos een geïnterneerde index op
DiagnosticBag.addRegistreer een gestructureerde diagnostiek

Zie ook

 Nederlands