Arbeiten mit der Workbook Model Layer

Arbeiten mit der Workbook Model Layer

Arbeiten mit der Workbook-Modellschicht

Unterhalb des benutzerseitigen API hält das crate eine reine Datenmodellschicht, die das XLSX-Paket spiegelt: Wertstrukturen, Regelmodelle und gemeinsamen Speicher. Die meisten Anwendungen berühren diese Typen nie direkt, aber sie treten zutage, wenn Sie geladene Arbeitsmappen eingehend untersuchen oder zum crate selbst beitragen.


Wertetypen

ColorValue trägt ARGB-Farbkomponenten als einfache a, r, g und b Felder, mit equals und get_hash_code für Vergleiche. Die Zahlenformatierung auf Modellebene befindet sich in NumberFormatValue, das clone zum Kopieren von Formatdefinitionen zwischen Modelldatensätzen unterstützt.


Regelmodelle

Data-Quality-Regeln haben Modellzwillinge: ValidationModel stellt die areas, validation_type, alert_style und operator der Regel sowie die formula1 / formula2 Ausdrücke als Felder bereit; FormatConditionModel und ConditionalFormattingModel übernehmen die gleiche Rolle für bedingte Formatierungsdatensätze. Diese werden mit default konstruiert und Feld für Feld befüllt.


Gemeinsamer Zeichenketten-Speicher

XLSX-Dateien speichern wiederholten Zellentext in einer shared-strings-Tabelle. Der SharedStringRepository modelliert sie als Interner:

  • intern fügt einen String hinzu und gibt dessen Index zurück (wiederverwendet vorhandene Einträge),
  • try_get_value löst einen Index zurück zu seinem String auf,
  • clear setzt das Repository zurück.

Diagnostics

DiagnosticBag erfasst strukturierte Probleme über add während Modelloperationen. Auf der API-Ebene erreicht Sie dieselbe Information über LoadDiagnostics beim Laden von Arbeitsmappen — siehe Übersicht der Funktionen.


Tipps und bewährte Verfahren

  • Bevorzugen Sie das benutzerorientierte API (Workbook, Worksheet, Zellensammlungen) — die Modellebene wird für routinemäßige Tabellenkalkulationsarbeit nicht benötigt.
  • Behandeln Sie Model-Structs als Datenaufzeichnungen: konstruieren Sie sie mit default und setzen Sie anschließend die Felder explizit.
  • Bei der Untersuchung fehlerhafter Dateien kombinieren Sie LoadOptions-Reparatur-Flags mit den Diagnosen, die der Loader meldet.

Häufige Probleme

ProblemUrsacheLösung
Doppelte gemeinsam genutzte ZeichenfolgenUmgehen des InternerLeite Text durch SharedStringRepository.intern
Validierungsregel ignoriertModelfelder unvollständigSetze validation_type, operator und formula1 auf ValidationModel

FAQ

Benötige ich die Model-Schicht, um Tabellenkalkulationen zu schreiben?

Nein. Das Workbook API deckt das Erstellen, Bearbeiten und Speichern von Arbeitsmappen ab; die Model-Schicht bildet die Grundlage.

Warum verwenden Model-Structs default-Konstruktoren?

Sie sind einfache Datenaufzeichnungen, die XLSX-Strukturen spiegeln — default liefert einen leeren Datensatz, den Sie Feld für Feld befüllen.


API Reference Zusammenfassung

Klasse/MethodeBeschreibung
ColorValueARGB-Farbdatensatz (a, r, g, b)
NumberFormatValue.cloneKopiere eine Zahlenformatdefinition
ValidationModelValidierungsregel-Datensatz (Bereiche, Operator, Formeln)
FormatConditionModel.defaultLeerer Datensatz für bedingte Formatierungsregel
SharedStringRepository.internInterniere einen String und gib dessen Index zurück
SharedStringRepository.try_get_valueEinen internierten Index auflösen
DiagnosticBag.addEine strukturierte Diagnose aufzeichnen

Siehe auch

 Deutsch