Inhaltsverzeichnis

Namensmuster

Mit dem Namensmuster wird jedem erzeugten Zug ein Name zugewiesen. Zugnamen müssen Systemweit einmalig sein. Diese werden vorzugsweise aus aus variablen Blöcken berechneten Zugnummern erzeugt (alle Rechenoperationen außer der Division stehen dafür zur Verfügung).

Die Zugnamen bzw. die Namensmuster zu deren Berechnung können entweder im Feld Namensmuster oder dem Zugscript angegeben werden.

Der Name des Zuges darf bei Multiplakationsbefehlen im Zusammenhang mit Zahlen nicht direkt an Buchstaben geschrieben werden. TFN65380+$ti*2 ist also falsch geschrieben und muss korrekterweise TFN 65380+$ti*2 lauten, um keine Probleme im ZSL zu verursachen.

Mit folgenden Variablen kann gerechnet werden:

Variable Bedeutung
$zi Laufende Nummer über alle erzeugten Züge des Zugtemplates (von 0 an gezählt) (Verwendung im Namensmusterfeld)
$ti Laufende Nummer über alle erzeugten Züge des aktuellen takt()-Befehls (von 0 an gezählt) (Verwendung nur im Taktbefehl)
$zid Die vom System vergebene eindeutige ID des Zuges (ungleich der Zugtemplate-ID (TID))
$sec Die Minutenzahl seit 0:00, welche der Abfahrtszeit am ersten Halt im ersten Stellwerk entspricht.
$time Abfahrtszeit des Zuges am Referenzbahnsteig als vierstellige Zahl (z. B. 1252)

Zusätzlich zu den variablen Blöcken können weitere fixe Blöcke eingefügt werden, welche für jeden Zug des Zugtemplates gleich sind.

Alle Blöcke müssen durch ein Leerzeichen voneinander getrennt sein.
Variable Blöcke dürfen keine Buchstaben enthalten. Des Weiteren ist keine führende 0 erlaubt.

Wird ein %-Zeichen eingefügt, wird alles dahinter im Fahrplan nicht dargestellt.

Beispiele

RB 12101 erzeugt

RB 12101

RB 12101+$zi*2 erzeugt

RB 12101
RB 12103
RB 12105

RB 12101+$ti*2 erzeugt ebenfalls

RB 12101
RB 12103
RB 12105

S 1 % A-B $time erzeugt zum Beispiel

S 1 % A-B 0915
S 1 % A-B 0935
S 1 % A-B 0955
S 1 % A-B 1015
S 1 % A-B 1035


Einbindung des Namensmusters im ZugScript

Im Feld Namensmuster kann ein Namensmuster festgelegt werden, welches dann für alle Züge des Zugtemplates gilt.

Alternativ kann das Namensmuster auch direkt im takt()-Befehl festgelegt werden. Somit können für das gleiche Zugtemplate mehrere Namensmuster verwendet werden. Dabei ist Folgendes zu Beachten:

Bei der Verwendung von Namensmustern im takt()-Befehl sollte als Variable für die laufende Nummer $ti verwendet werden. Nur $ti fängt für jeden Befehl neu zu zählen an.

Beispiele

Im folgenden Beispiel werden die nur zweistündig verkehrenden Zwischenzüge (06:30…) in das Nummernschema der stündlich verkehrenden Züge eingereiht:

takt(60,ID=1,GLEIS=1,MILZEIT=0600..1200,NAME=RB 2000+$ti*4);
takt(120,ID=1,GLEIS=1,MILZEIT=0630..1230,NAME=RB 2002+$ti*8);

Es würden folgende Züge entstehen:

RB 2000 (06:00) ($ti = 0)
RB 2004 (07:00) ($ti = 1)
RB 2008 (08:00) ($ti = 2)
RB 2012 (09:00) ($ti = 3)
RB 2016 (10:00) ($ti = 4)
RB 2020 (11:00) ($ti = 5)

RB 2002 (06:30) ($ti = 0)
RB 2010 (08:30) ($ti = 1)
RB 2018 (10:30) ($ti = 2)

Die Verwendung von $zi würde hier unerwartete Ergebnisse produzieren:

takt(60,ID=1,GLEIS=1,MILZEIT=0600..1200,NAME=RB 2000+$zi*4);
takt(120,ID=1,GLEIS=1,MILZEIT=0630..1230,NAME=RB 2002+$zi*8);

Es würden folgende Züge entstehen:

RB 2000 (06:00) ($zi = 0)
RB 2004 (07:00) ($zi = 1)
RB 2008 (08:00) ($zi = 2)
RB 2012 (09:00) ($zi = 3)
RB 2016 (10:00) ($zi = 4)
RB 2020 (11:00) ($zi = 5)

RB 2050 (06:30) ($zi = 6) !!!
RB 2058 (08:30) ($zi = 7) !!!
RB 2066 (10:30) ($zi = 8) !!!


Die laufenden Nummern beziehen sich auf die im Zugscriptlauf erzeugten Züge und sind damit nicht unbedingt zeitlich geordnet:

takt(60,ID=1,GLEIS=1,STUNDE=10,STUNDE=5,NAME=RB 2000+$ti*2);

RB 2000 (10:00) ($zi = 0)
RB 2004 (05:00) ($zi = 1)