Platzhalter

Platzhalter sind dafür da, bestimmte Teile eines Textes für Inhalte freizuhalten, die erst zur Laufzeit entstehen. Sie werden durch ein bestimmtes Zeichen und einer fortlaufenden Nummer definiert. Erst beim Programmdurchlauf werden diese Platzhalter dann durch Werte ersetzt.

Bei der Verwendung steht die erste Variable für den ersten Platzhalter, die zweite Variable für den zweiten Platzhalter usw.

1. Der Platzhalter %

Dies ist wohl der bekannteste Platzhalter in Navision. Er wird durch das Prozentzeichen und einer fortlaufenden Nummer definiert. Verstanden wird der Platzhalter von den Befehlen ERROR, MESSAGE, CONFIRM, STRSUBSTNO, SETFILTER, SETRANGE sowie dem Befehl OPEN einer Dialog-Variable.

WITH Item DO
	MESSAGE('%1 ''%2'' wurde gelöscht.', TABLECAPTION, "No.");

WITH SalesLine DO
	SETFILTER(Type, '%1|%2', Type::Item, Type::Resource);

2. Der Platzhalter #

Dieser Platzhalter wird durch das Rautezeichen und einer fortlaufenden Nummer definiert. Verstanden wird dieser Platzhalter von den Befehlen ERROR, MESSAGE, CONFIRM, STRSUBSTNO, SETFILTER, SETRANGE sowie dem Befehl OPEN einer Dialog-Variable.

Der Unterschied zu einem Platzhalter der mit dem Prozentzeichen gekennzeichnet wird, ist der, dass hier noch angegeben werden kann wie viele Zeichen reserviert werden sollen. Dieser Platzhalter kommt sehr oft in dem OPEN-Befehl einer Dialog-Variable zum Einsatz.

MESSAGE('Artikel #1####### wurde gelöscht.', '1020');
MESSAGE('Artikel #1####### wurde gelöscht.', '10208899');
Artikel 1020 wurde gelöscht.
Artikel 1028899 wurde gelöscht.
Dialog.OPEN(
	'#1#################################\\' +
	'Zeilen buchen#2######\' +
	'Verkauf und MwSt. buchen   #3######\' +
	'Debitor buchen#4######\' +
	'Buchung an Gegenkonto#5######');
Fortschrittsbalken in Aktion

3. Der Platzhalter @

Dieser Platzhalter wird durch das AT-Zeichen (Affenschaukel, Klammeraffe) und einer fortlaufenden Nummer definiert. Er reserviert den Platz für einen Fortschrittsbalken. Verstanden wird dieser Platzhalter nur von dem Befehl OPEN einer Dialog-Variable.

Dialog.OPEN(
	'#1############################################\\' +
	'Zeilen buchen#2###### @3@@@@@@@@\' +
	'Verkauf und MwSt. buchen#4###### @5@@@@@@@@\' +
	'Debitor buchen#6###### @7@@@@@@@@\' +
	'Buchung an Gegenkonto#8###### @9@@@@@@@@');
Fortschrittsbalken in Aktion