OPEN(String [, Variable1, ...]);
OPEN
Die Funktion öffnet ein parametrisierbares Dialogfenster. Hiermit kann unter anderem ein aktuell laufender Prozess visuell dargestellt werden.
Parameter
Dialog:
Nach der Definition der Variablen kann der Dialog geöffnet und weitere Dialogfunktionen verwendet werden.
String:
Hier wird der Text angegeben, der später angezeigt werden soll. Es wird von Microsoft empfohlen diesen in einer Text-Variable zu hinterlegen.
Mithilfe der Raute (#) kann eine variable Zahl angezeigt werden.
Mit dem At-Zeichen (@) kann eine variable Zahl zwischen 0 und 9999 als Prozentsatz anhand eines Fortschrittbalkens angezeigt werden.
Die Anzahl der #- oder @-Zeichen im String gibt die Länge der Fortschrittsanzeige oder der variablen Zahl an.
Mit einem Backslash (\) kann eine neue Zeile generiert werden.
Mithilfe der UPDATE – Funktion kann der Dialog während des Durchlaufs aktualisiert werden.
Variable:
Optionaler Parameter, der jeden Datentyp, der im Dialog angezeigt werden soll, beinhalten kann.
Beispiel 1
Zunächst werden folgende Variablen hinterlegt:
Name | Datentyp | Subtyp |
---|---|---|
ZaehlerDialog | Dialog | |
i | Integer |
Anschließend wird folgende Textkonstante angelegt:
Name | ConstantValue |
---|---|
ProzentTxt | Zähle bis 10.\Aktuell bei #1 |
Danach wird folgender Code ausgeführt:
i := 0; ZaehlerDialog.OPEN(ProzentTxt,i); REPEAT SLEEP(100); i += 1; ZaehlerDialog.UPDATE(); UNTIL i=10; SLEEP(500); ZaehlerDialog.CLOSE;
Sobald der Code ausgeführt wurde, erscheint das folgende Ergebnis:
Beispiel 2
Zunächst werden folgende Variablen hinterlegt:
Name | Datentyp | Subtyp |
---|---|---|
Item | Record | |
ProzentDialog | Dialog | |
Counter | Decimal | |
Factor | Decimal |
Anschließend wird folgende Textkonstante angelegt:
Name | ConstantValue |
---|---|
ProzentBalkenTxt | Artikel prüfen #1##### @2@@@@@@@@ |
Danach wird folgender Code ausgeführt:
ProzentDialog.OPEN( 'Artikel prüfen #1##### @2@@@@@@@@'); Factor := 9999 / Item.COUNT; Item.FINDSET; REPEAT Counter += 1; ProzentDialog.UPDATE(1, Item."No."); ProzentDialog.UPDATE(2, (Counter * Factor) DIV 1); SLEEP(20); UNTIL Item.NEXT = 0; ProzentDialog.CLOSE;
Sobald der Code ausgeführt wurde, erscheint das folgende Ergebnis.
Eine ausführliche Erklärung und einen weiteren Anwendungsbereich finden Sie in dem Artikel „Einen Fortschrittsbalken realisieren".