Eine einzelne Ganzzahl – die Gesamtzahl der Seiten eines PDFs – steht hinter einer überraschend großen Zahl realer Entscheidungen: Upload-Limits, Papierschätzung für den Druck, Split-Vorgänge, Fortschrittsbalken. Die meisten PDF-Rendering-Bibliotheken zeichnen nur Seiten und bieten keine einfache Zählung an, und das Senden der Datei an ein Backend nur zum Auslesen einer Seitenzahl erhöht die Latenz und wirft Datenschutzfragen auf.
Wenn jemand ein PDF-Formular ausfüllt und speichert, befinden sich die eingegebenen Werte in den Feldstrukturen des Dokuments – nicht als einfacher Text, den Sie durchsuchen oder in großen Mengen kopieren können. Bei einem Formular mit dreißig oder vierzig Feldern wird die manuelle Übertragung zum Engpass. Das tieferliegende Problem ist, dass jeder Feldtyp seinen Wert anders speichert: Ein Textfeld liefert eine Zeichenkette, ein Kontrollkästchen meldet einen booleschen Wert, ein Kombinationsfeld trennt Optionen von der Auswahl, und ein Optionsfeld speichert das gewählte Element. Ein einheitlicher Aufruf „Gib mir den Wert“ existiert nicht.
Ein Säulendiagramm mit Regionen und Monaten auf derselben Achse hat zwei Probleme, und sie sind nicht dasselbe Problem. Das erste ist, dass die Kategoriebeschriftungen in einer einzigen Zeile zusammenfallen – „Nord“, „Jan“, „Nord“, „Feb“ – und der Leser muss mental neu gruppieren, welcher Monat zu welcher Region gehört. Das zweite ist, dass wenn eine Wachstumsratenreihe neben einer Umsatzreihe hinzugefügt wird, die in die Millionen geht, die Wachstumsrate zu einer flachen Linie wird, die an der Grundlinie klebt, weil eine Wertachse nicht zwei Größenordnungen gleichzeitig bedienen kann.
Eine Verkaufstabelle mit zwanzig Spalten voller Zahlen ist korrekt und unlesbar. Das Auge kann 43.210 nicht schnell genug mit 38.900 über eine Zeile hinweg vergleichen, um das schwache Quartal zu finden, und die Person, die den Bericht liest, weiß das – deshalb bittet sie um ein Diagramm. Aber ein Diagramm pro Spalte bedeutet zwanzig Diagramme, und nun ist das Arbeitsblatt eine Galerie statt einer Tabelle.
Ein Arbeitsblatt ist nicht immer nur ein Raster aus Zahlen. Manchmal ist es eine Leinwand – ein Flussdiagramm, das zwischen Datenblöcken skizziert wird, ein Beziehungsdiagramm, das Teams mit Projekten verbindet, ein Callout, der von einer Notiz auf die Zelle zeigt, die er kommentiert. In all diesen Fällen ist das fehlende Element eine Linie: ein gerader Strich zwischen zwei Kästen, ein gekrümmter Bogen um einen Bereich, ein Ellbogenverbinder, der einmal abknickt und weiterverläuft.
Eine Linie zwischen zwei Kästen in einem Flussdiagramm sagt „diese sind miteinander verbunden“. Ein Pfeil von einem zum anderen sagt „dieser kommt zuerst“. Diese Unterscheidung – die Richtung – ist es, was eine Verbindung von einer Dekoration trennt, und sie ist das Einzige, was die grundlegende `Lines.AddLine()`-API nicht an beiden Enden leisten kann. Ein Prozessfluss benötigt einen Pfeil, der jeden Schritt verlässt; ein Ursache-Wirkungs-Diagramm benötigt Pfeile, die hineinzeigen; ein Vergleich benötigt manchmal Pfeile mit zwei Spitzen, um eine bidirektionale Verknüpfung zu zeigen. Nichts davon ist mit einem einzelnen `EndArrowHeadStyle` möglich.
Jemand hat diese Arbeitsmappe vor Jahren erstellt. Sie wird neu berechnet, wenn sich die Daten ändern, die Summen verschieben sich auf eine Weise, die niemand mehr vorhersieht, und es gibt keine Dokumentation – denn die Formeln sind die Dokumentation. Die Zahlen zu lesen verrät nicht, wie sie erzeugt wurden. Die Regeln zu lesen schon.
Eine generierte Tabellenkalkulation voller vorberechneter Zahlen ist eine Momentaufnahme. Sie sieht in dem Moment, in dem sie erzeugt wird, richtig aus und beginnt sofort zu veralten: Die zugrunde liegenden Daten bewegen sich weiter, die Zahlen darin nicht, und sobald die Datei Ihre Anwendung verlassen hat, kann niemand sagen, welche Zellen geändert werden dürfen. Eine Arbeitsmappe, die ihre Formeln mitführt, bleibt dagegen ein lebendiges Dokument – ändern Sie eine Eingabe, und die Summen folgen.
Page 2 of 3
Heim Spire.Office page 2