Trick 41: Auf die
Schnelle ne Tabelle
Aufgabe: Schnell mal eben ein paar
Angaben als kleine Tabelle
in Textform aufbereiten.
Warum kann das ein Problem sein?
Zwar gibt es die Tabellenmethodik,
sogar ab V27.1 mit einem
Schnellverfahren (siehe h
table), aber manchmal kommt man damit nicht
klar, weil die Inhalte nicht fertig
und schön in vorhandenen Daten-
feldern stehen, sondern erst
aufbereitet werden müssen mittels
var-Befehlen, wobei dann evtl. auch
noch Zahlenwerte vorher
ausgerechnet werden sollen.
Manchmal will man auch das Ergebnis nicht
in Word verarbeiten, sondern nur
ganz schlicht als TXT-Datei, die
aber wenigstens "ordentlich"
aussehen soll, also mit Text und Zahlen
schön spaltenrichtig
untereinander.
Lösung:
Hierfür sollte man zwei Kniffe
kennen:
1. Textinhalt auf bestimmte
Länge rechts- oder linksbündig
zurechtrücken.
(Falls zu lang, dann abschneiden)
a) Rechtsbündig
Sagen wir,
es steht etwas in #uxy und man will es auf eine
Länge
von 20 Zeichen links mit Leerzeichen auffüllen (d.h.
in ein
20stelliges Feld rechtsbündig einstellen)
var/wri ... #uxy(0,r20)
b) Linksbündig
var/wri ... #uxy(0,20)
2. Zahl mit 2 Dezimalstellen
(gerundet) in ein Feld von 12 Stellen
rechtsbündig
einstellen. Die Zahl steht in #uij
var #uij
Z=
var Z2
ins #uik
...
var/wri
... #uik(0,r12)
Zuerst wird man also dafür
sorgen, daß man alle Textteile in
Variablen oder Datenfeldern
vorliegen hat, dann wird man mit
einem einzigen wri-Befehl diese
Elemente alle hintereinander mit
den gewünschten Zahlenwerten
(0,...) versehen ausgeben:
wri #uab(0,10) "/" #uac(0,20) ":"
#uad(0,r15) n
Das n für "neue Zeile" am Ende
nicht vergessen, denn sonst kommt
alles in eine riesenlange Zeile...
Selbstverständlich kann so ein
Befehl dann in einer Schleife
vorkommen, mit der man eine
Erg.Menge oder die Gesamtbank abarbeitet.
Hat man auf diese Weise eine
Textdatei abc.txt fabriziert, kann man
sie mit help abc.txt
ins Anzeigefeld holen oder sonstwas damit
anstellen.
[Erg.Menge abarbeiten: Schema z.B.
in Fb-Lektion 13.3 oder ganz
kurz in xnext.rtf ]
Word-Tabelle:
Wenn man zwischen den Elementen
statt "/" und ":" jeweils den
Code 9 einsetzt, hat man eine
TXT-Datei, die man in Word einfügen
und dort in eine Word-Tabelle
wandeln kann - das ist das das
Wirkprinzip der Tabellenmethodik.
Hinweis:
Die oben gezeigten
Formatierungstricks sind enthalten in der
Beschreibung xcstring.rtf
Da stehen auch noch mehr Tricks,
wie man seine Feldinhalte zurecht-
frisiseren kann!