Spalteninhalte verändern
CadnaA bietet eine komfortable Möglichkeit, Tabelleninhalte für vorgegebene Bereiche und in Abhängigkeit vom vorhandenen Wert zu verändern. Die Veränderung betrifft entweder eine Umrechnung von Zahlwerten (arithmetisch) oder eine Veränderung von Zeichenfolgen (String-Ersetzung).
Für die folgenden Beispiele sollte eine Tabelle - z.B. Punktquelle - in einem CadnaA-Projekt geöffnet sein oder geben Sie einfach ein paar Punkte ein und öffnen Sie anschließend die entsprechende Objekttabelle.
Klicken Sie mit der rechten Maustaste auf die Tabellenspalte, die Sie verändern möchten. Im Kontextmenü wird Spalte verändern gewählt.
Zeilenbereich
In dem sich öffnenden Dialogfenster können Sie unter Zeilenbereich die Veränderung auf einen Bereich bis zur oder ab einer Zeile beschränken, wenn Sie auf die betreffende Zeile klicken. Mit der Standardeinstellung bezieht sich die Veränderung auf alle Elemente der gewählten Spalte.
Wenn die Spalte nur Zahlwerte enthält, ist sowohl eine arithmetische Umrechnung wie auch eine String-Umwandlung möglich. In allen anderen Fällen ist nur die String-Umwandlung möglich.
Arithmetisch
Sie können den vorhandenen Zahlwert durch einen anderen konstanten Wert oder durch einen aus dem vorhandenen berechneten Wert ersetzen.
Die Zeichen +, -, /, * werden als Operatoren in üblicher Weise verwendet. Das Zeichen x steht für den vorhandenen Wert.
++ und -- ergibt die pegelrichtige Addition und Subtraktion.
Alle Operatoren und Beispiele finden Sie im CadnaA-Handbuch „Attribute, Variablen und Schlüsselworte“.
String-Ersetzung
Diese Operation ist u.U. erforderlich, wenn ein Datensatz - z.B. das auf einen Betrieb bezogene CadnaA-Projekt - in einen größeren Umgriff einbezogen werden soll und eine Anpassung der ID notwendig wird.
Suchen nach
Hier wird das Suchmuster definiert. Nur die mit diesem Muster übereinstimmenden Spalteninhalte werden in die String-Umwandlung einbezogen.
Die Zeichen * (beliebige Anzahl von Zeichen) und ? (ein beliebiges Zeichen) werden als Wildcards in üblicher Weise benutzt. Wenn bei der Ersetzung einzelne Zeichenkettenbereiche wieder verwendet werden sollen, so werden diese in Klammern eingeschlossen.
Ersetzen durch
Unter „Ersetzen durch“ kombinieren Sie beliebige Zeichenfolgen mit den im Muster durch Klammern gekennzeichnete Zeichenkettenbereiche. Dabei wird \1...\n als Platzhalter für diese gekennzeichneten Zeichenkettenbereiche verwendet (siehe CadnaA-Handbuch „Attribute, Variablen und Schlüsselworte“).
Automatisches Nummerieren in Tabellen
Mit der Raute # lassen sich die Spalten automatisch nummerieren. Eine Raute # ergibt einen einstelligen Wert von 1 bis 0, zwei Rauten ## einen zweistelligen Wert von 01 bis 99, drei Rauten ### einen dreistelligen Wert von 001 bis 999 usw. Nach dem Wert 9 startet CadnaA wieder bei Null.
Beginne mit Nummer
Angabe der Nummer, bei welcher die Nummerierung mit # starten soll.
Geben Sie die Rauten in das Feld „Ersetzen durch“ ein.
Beispiel
Wie kann festgestellt werden, wie viele Häuser, Schirme, Punktquellen usw. im Projekt vorhanden sind, ohne diese zählen zu müssen?
Die Antwort:
Beispiel
Pfad: Beispiele\Demo1.cna
- Öffnen Sie die Datei DEMO1.CNA und öffnen Sie die Objekttabelle „Haus“.

vorhandene Häusertabelle - Ausgangssituation
- Setzen Sie den Mauszeiger in die Spalte „Bezeichnung“.
- Drücken Sie die rechte Maustaste und wählen Sie den Befehl Spalte verändern aus dem Kontextmenü.
- Nehmen Sie nachfolgende Einstellungen vor.

automatische Nummerierung mit der Funktion „Spalte verändern“
Der String \1 gibt die Anweisung, dass der bereits vorhandene Wert erhalten bleibt - im Beispiel ist die Spalte allerdings leer. Ergänzen Sie die Bezeichnung „Haus“. Der String ### löst die automatische, in diesem Beispiel 3-stellige Nummerierung aus (d.h. es wird hochgezählt). Bei zwei ## ein, so ergibt dies eine 2-stellige Nummer. Befinden sich jedoch mehr als 99 Objekte in der Tabelle, wird ab 100 wieder mit 00 begonnen und für das 101.Objekt mit 01 weitergezählt.

Ergebnis der automatischen Nummerierungsanweisung
Mit diesem Befehl kann also schnell festgestellt werden, wie viele Objekte vorhanden sind.
Um die - zum Beispiel - Zeichenkette zu entfernen, wird wieder der Befehl Spalte verändern aus dem Kontextmenü benutzt. Geben Sie dazu Folgendes ein:

Anweisung zum Entfernen der Zeichenkette „Haus“ im vorgenannten Beispiel
Die Nummerierung bleibt erhalten und die davor stehende Zeichenkette gelöscht. \2 bedeutet, dass der erste geklammerte Begriff erhalten bleibt.
Möchten Sie alles aus der Spalte entfernen, geben Sie im Feld Suchen nach * ein und im Feld Ersetzen durch nichts ein (Feld bleibt leer).