• Keine Ergebnisse gefunden

FmtStr$-Funktion

Im Dokument Änderungen in dieser Handbuchrevision (Seite 137-143)

128 EPSON RC+ 5.0 SPEL+ Sprachreferenz Rev.1a

FmtStr$-Funktion

Formatiert einen numerischen Ausdruck.

Syntax

FmtStr$ (numeric expression, strFormat)

Parameter

numeric expression Zu formatierender numerischer Ausdruck.

strFormat Formatspezifizierungs-Zeichenkette.

Rückgabewerte

Eine Zeichenkette, die den formatierten Ausdruck enthält.

Beschreibung

FmtStr$ wird verwendet, um einen numerischen Ausdruck in eine Zeichenkette umzuwandeln.

Spezifikationssymbole für das numerische Format Formatiert einen numerischen Ausdruck.

Zeichen Beschreibung

Keine Anzeige der Zahl ohne Formatierung.

(0) Zahlzeichen-Platzhalter. Anzeige eines Zahlzeichens oder einer Null. Wenn an der Stelle des Ausdrucks ein Zahlzeichen steht, an der in der Formatzeichenkette eine Null (0) erscheint, wird es angezeigt. Sonst wird an dieser Stelle eine Null angezeigt. Wenn eine Zahl weniger Zahlzeichen hat (egal auf welcher Seite der Dezimalen), als der

Formatausdruck Nullen aufweist, werden die vorangehenden oder die anhängenden Nullen angezeigt. Wenn die Zahl mehr Zahlzeichen zur Rechten der Dezimaltrennung hat, als Nullen zur rechten Seite der Dezimaltrennung im Formatausdruck vorhanden sind, wird diese Zahl auf so viele Dezimalstellen gerundet, wie Nullen vorhanden sind.

Wenn die Zahl mehr Zahlzeichen zur Linken der Dezimaltrennung hat, als Nullen zur linken Seite der Dezimaltrennung im Formatausdruck vorhanden sind, werden die überzähligen Zahlzeichen ohne Änderung angezeigt.

(#) Zahlzeichen-Platzhalter. Zeigt ein Zahlzeichen oder gar nichts an. Wenn an der Stelle des Ausdrucks ein Zahlzeichen steht, an der in der Formatzeichenkette ein #-Zeichen erscheint, wird es angezeigt. Sonst wird an dieser Stelle nichts angezeigt. Dieses Symbol funktioniert wie der 0 Zahlzeichen-Platzhalter, mit der Ausnahme, dass die vorangehenden und die anhängenden Nullen nicht angezeigt werden, wenn die Zahl ebenso viele oder weniger Zahlzeichen als #-Zeichen auf beiden Seiten der

Dezimaltrennung im Formatausdruck enthält.

(.) Dezimaler Platzhalter. In einigen Darstellungen wird ein Komma zur Tennung von Dezimalstellen verwendet. Der dezimale Platzhalter bestimmt, wie viele Zahlzeichen zur Linken und Rechten der Dezimalstellen-Trennung angezeigt werden. Wenn der

Formatausdruck ausschließlich Nummernzeichen zur Linken dieses Symbols beinhaltet, beginnen Zahlen kleiner als 1 mit einer Dezimalstellen-Trennung. Um eine vorangehende Null mit Nachkommastellen anzuzeigen, verwenden Sie 0 als ersten

Zahlzeichen-Platzhalter zur Linken der Dezimalstellen-Trennung. Das Zeichen, das tatsächlich als dezimaler Platzhalter in den formatierten Ausgabedaten verwendet wird, hängt von dem Zahlen-Format ab, das Ihr System erkennt.

(,) Tausendertrennzeichen. In einigen Darstellungen wird ein Punkt als

Tausendertrennzeichen verwendet. Das Tausendertrennzeichen trennt Tausender von Hundertern innerhalb einer Zahl, die vier oder mehr Stellen zur Linken der

Dezimalstellen-Trennung besitzt. Die standardmäßige Verwendung des

Tausendertrennzeichens wird definiert, wenn das Format ein Tausendertrennzeichen enthält, das von Zahlzeichen-Platzhaltern umgeben ist (0 oder #). Zwei nebeneinander stehende Tausendertrennzeichen oder ein Tausendertrennzeichen direkt zur Linken der

F

FmtStr$-Funktion

Dezimalstellen-Trennung (je nachdem, ob eine Dezimalstelle definiert ist, oder nicht) bedeutet eine "Skalierung der Zahl, indem man sie durch 1000 teilt und rundet, falls nötig." Beispielsweise können Sie die Format-Zeichenkette “##0,,” verwenden, um 100 Millionen als 100 darzustellen. Zahlen, die kleiner als eine Million sind, werden als 0 angezeigt. Zwei nebeneinanderstehende Tausendertrennzeichen in einer anderen Position als direkt zur Linken der Dezimallstellen-Trennung stellen eine Spezifizierung der Nutzung eines Tausendertrennzeichens dar. Das Zeichen, das tatsächlich als Tausendertrennzeichen in den formatierten Ausgabedaten verwendet wird, hängt von dem Zahlen-Format ab, das Ihr System erkennt.

Verwandte Befehle Left$, Right$, Str$

Beispiel einer FmtStr$-Funktion

Function SendDateCode

String d$, f$

f$ = FmtStr$(10, "000.00") OpenCom #1

Print #1, f$

CloseCom #1 Fend

For...Next

130 EPSON RC+ 5.0 SPEL+ Sprachreferenz Rev.1a

For...Next

Die Befehle For...Next werden zusammen verwendet, um eine Schleife herzustellen, in der Befehle, die sich zwischen den Befehlen For und Next befinden, mehrfach ausgeführt werden, wie vom Benutzer angegeben.

var Die Zählvariable, die mit der For...Next^-Schleife verwendet wird. Diese Variable wird normalerweise als Integer definiert, kann jedoch auch als Realvariable definiert werden.

initValue Der Anfangswert für den Zähler var.

finalValue Der Endwert des Zählers var. Sobald dieser Wert erreicht ist, ist die For...Next Schleife vollständig und die Ausführung wird mit der Anweisung, die auf den Next-Befehl folgt, fortgesetzt.

increment Ein optionaler Parameter, der das Zähl-Inkrement für jede Ausführung der Next-Anweisung innerhalb der For...Next Schleife definiert. Diese Variable kann positiv oder negativ sein. Wenn der Wert negativ ist, muss der Erstwert der Variable größer sein als ihr Endwert. Wird der Inkrement-Wert weggelassen, inkrementiert (erhöht) das System automatisch um 1.

statements Jede gültige SPEL+-Anweisung kann in die For...Next-Schleife eingefügt werden.

Beschreibung

For...Next führt einen Satz von Anweisungen innerhalb einer Schleife mit einer definierten Häufigkeit aus. Die For-Anweisung stellt den Anfang der Schleife dar. Die Next-Anweisung ist das Ende der Schleife. Wie oft die Anweisungen innerhalb der Schleife ausgeführt werden, wird mithilfe einer Variablen gezählt.

Der erste numerische Ausdruck (initValue) ist der Erstwert des Zählers. Dieser Wert kann positiv oder negativ sein, solange die Variable finalValue und die Step-Inkrementierung einander korrekt

entsprechen.

Der zweite numerische Ausdruck (finalValue ) ist der Endwert des Zählers. Dies ist der Wert der, sobald er erreicht ist, die Beendigung der For...Next-Schleife auslöst. Die Steuerung des Programms wird an den nächsten auf den Next-Befehl folgenden Befehl weitergegeben.

Programmanweisungen, die auf die For-Anweisung folgen, werden ausgeführt, bis ein Next-Befehl erreicht wird. Die Zählervariable (var) wird dann durch den Step-Wert inkrementiert, der durch den Parameter increment definiert ist. Wird die Step-Option nicht genutzt, wird der Zähler um 1 (eins) inkrementiert.

Die Zählervariable (var) wird dann mit dem Endwert verglichen. Wenn der Zählerstand kleiner oder gleich dem Endwert ist, werden die Anweisungen, die dem For-Befehl folgen, erneut ausgeführt.

Wenn die Zählervariable größer als der Endwert ist, wird die Ausführung außerhalb der For...Next-Schleife verzweigt und mit dem Befehl fortgefahren, der direkt auf den Next-Befehl folgt.

S

For...Next

Hinweise

Negative Step-Werte:

Wenn der Wert der Step-Inkrementierung (increment) negativ ist, wird die Zählervariable (var) bei jedem Durchlauf durch die Schleife dekrementiert (verringert) und der Erstwert muss größer sein als der Endwert, damit die Schleife funktioniert.

Eine Variable, die auf Next folgt, wird nicht benötigt:

Der Variablenname, der auf den Next-Befehl folgt, kann weggelassen werden. Für Programme, die verschachtelte For...Next-Schleifen beinhalten, wird jedoch empfohlen, den Variablennamen, der auf den Next-Befehl folgt, mit einzubeziehen, damit die Schleifen schnell identifiziert werden können.

Verwandte Befehle Do...Loop

Beispiel für For...Next

Function fornext Integer counter

For counter = 1 to 10 Go Pctr

Next counter

For counter = 10 to 1 Step -1 Go Pctr

Next counter Fend

Function...Fend

132 EPSON RC+ 5.0 SPEL+ Sprachreferenz Rev.1a

Function...Fend

Eine Funktion ist eine Gruppe von Programmanweisungen, die eine Function-Anweisung als erste und eine Fend-Anweisung als letzte Anweisung beinhaltet.

Syntax

Function funcName [(argList)] [As type]

statements Fend

Parameter

funcName Name, der einer spezifischen Gruppe von Anweisungen gegeben wird, die zwischen die Befehle Function und Fend eingebunden werden. Der

Funktionsname muss alphanumerische Zeichen enthalten und darf bis zu 32 Zeichen lang sein. Unterstriche sind ebenfalls zulässig.

argList Optional. Liste von Variablen, die für Argumente stehen, die an die

Funktionsprozedur weitergegeben werden, wenn diese aufgerufen wird. Multiple Variablen werden durch Kommata getrennt.

Das arglist-Argument hat die folgende Syntax:

[ {ByRef | ByVal} ] varName [( )] As type

ByRef Optional. Spezifizieren Sie ByRef, um Veränderungen im Variablenwert von der Calling-Funktion sehen zu können.

ByVal Optional. Spezifizieren Sie ByVal, damit Veränderungen im Variablenwert von der Calling-Funktion nicht gesehen werden können. Dies ist die

Vorgabeeinstellung.

varName Erforderlich. Name der Variablen, die für das Argument steht; folgt den Standardkonventionen für die Variablenbenennung.

As type Erforderlich. Der Argumenttyp muss definiert werden.

Rückgabewerte

Wert, dessen Datentyp mit dem As-Ausdruck am Ende der Funktionsdeklaration definiert wird.

Beschreibung

Die Function-Anweisung zeigt den Beginn einer Gruppe von SPEL+-Anweisungen an. Um anzuzeigen, wo eine Funktion endet, wird die Fend-Anweisung verwendet. Alle Anweisungen zwischen Function und Fend werden als Teile der Funktion betrachtet.

Die durch Function...Fend definierte Kombination von Anweisungen kann als ‚Behältnis’ betrachtet werden, in dem alle Anweisungen, die sich zwischen den Anweisungen Function und Fend befinden, zu der Funktion gehören. Eine Programmdatei kann multiple Funktionen beinhalten.

Verwandte Befehle

Call, Fend, Halt, Quit, Return, Xqt

S

Function...Fend

Beispiel für Function...Fend

Das folgende Beispiel zeigt drei Funktionen innerhalb einer Datei. Die Funktionen mit den Namen task2 und task3 werden als Hintergrundtasks (Background Tasks) ausgeführt, während der Haupttask mit Namen Main im Vordergrund ausgeführt wird.

Function main

Xqt 2, task2 'Führt task2 im Hintergrund aus Xqt 3, task3 'Führt task3 im Hintergrund aus '... weitere Anweisungen

Fend

Function task2 Do

On 1 On 2 Off 1 Off 2 Loop Fend

Function task2 Do

On 10 Wait 1 Off 10 Loop Fend

Im Dokument Änderungen in dieser Handbuchrevision (Seite 137-143)