Version 2003 (Geändert)
Folgende Tabelle zeigt die Fehlermeldungen in der Syntax während der Code Ausführung in der Benutzer- oder Runtime-Umgebung. Einige der Fehler treten nur im interpretierten Modus bzw. im kompilierten Modus auf, einige in beiden Modi. Mit einer Methode Unterbrechung bei Fehler mit dem Befehl ON ERR CALL können Sie diese Fehler ausfindig machen.
Code | Beschreibung |
1 | Eine "(" -Klammer wird erwartet. |
2 | Ein Datenfeldname wird erwartet. |
3 | Dieser Befehl kann nur auf ein Datenfeld einer Untertabelle |
angewandt werden. | |
4 | Die Parameter der Liste müssen alle vom gleichen Typ sein. |
5 | Tabelle fehlt, auf die dieser Befehl angewandt werden kann. |
6 | Dieser Befehl kann nur in einem Datenfeld einer Untertabelle |
angewandt werden. | |
7 | Ein numerischer Parameter wird erwartet. |
8 | Ein alphanumerischer Parameter wird erwartet. |
9 | Das Ergebnis einer Bedingung wird erwartet. |
10 | Dieser Befehl ist auf diesen Datentyp nicht anwendbar. |
11 | Dieser Befehl ist zwischen zwei Bedingungen nicht anwendbar. |
12 | Dieser Befehl ist zwischen zwei numerischen Argumenten nicht |
anwendbar. | |
13 | Dieser Befehl ist zwischen zwei alphanumerischen Argumenten |
nicht anwendbar. | |
14 | Dieser Befehl ist zwischen zwei Argumenten vom Typ Datum |
nicht anwendbar. | |
15 | Diese Operation ist mit den zwei Argumenten nicht kompatibel |
16 | Dieses Datenfeld ist nicht verknüpft. |
17 | Ein Tabellenname wird erwartet. |
18 | Die Datenfeldtypen sind nicht kompatibel. |
19 | Das Datenfeld ist nicht indiziert. |
20 | Das Zeichen = wird erwartet. |
21 | Diese Methode ist nicht vorhanden. |
22 | Zum Sortieren oder graphisch darzustellen, müssen die |
Datenfelder der gleichen Tabelle oder Untertabelle angehören. | |
23 | Das Zeichen "<" oder ">"wird erwartet. |
24 | Das Zeichen ";" wird erwartet. |
25 | Die Anzahl der zu sortierenden Datenfelder ist zu groß. |
26 | Datenfeld kann nicht vom Typ Text, Bild, Blob oder Untertabelle sein. |
27 | Der Tabellenname muss dem Datenfeldnamen vorangestellt werden. |
28 | Das Datenfeld muss numerisch sein. |
29 | Der Wert muss 1 oder 0 sein. |
30 | Eine Variable wird erwartet. |
31 | Es gibt keine Menüleiste mit dieser Nummer. |
32 | Ein Datum wird erwartet. |
33 | Der Befehl oder die Methode ist nicht vorhanden. |
34 | |
35 | Die Mengen sind aus verschiedenen Tabellen. |
36 | Ungültiger Tabellenname. |
37 | Das Zeichen := wird erwartet. |
38 | Dies ist eine Funktion, keine Methode. |
39 | Diese Menge ist nicht vorhanden. |
40 | Dies ist eine Methode, keine Funktion. |
41 | Eine Variable oder ein Feld einer Untertabelle wird erwartet. |
42 | Der Datensatz konnte nicht auf den Stapel gelegt werden. |
43 | Die Funktion wurde nicht gefunden. |
44 | Die Methode wurde nicht gefunden. |
45 | Datenfeld oder Variable wird erwartet. |
46 | Ein alphanumerisches oder numerisches Argument wird erwartet. |
47 | Das Datenfeld muss alphanumerisch sein. |
48 | Syntaxfehler. |
49 | Dieser Operator ist hier nicht anwendbar. |
50 | Diese Operatoren dürfen nicht zusammen verwendet werden. |
51 | Dieses Plug-In ist nicht implementiert. |
52 | Ein Array wird erwartet. |
53 | Angabe liegt außerhalb des Array-Bereichs. |
54 | Die Argumente sind nicht kompatibel. |
55 | Ein Argument vom Typ Boolean wird erwartet. |
56 | Datenfeld, Variable oder Tabelle wird erwartet. |
57 | Ein Operator wird erwartet. |
58 | Eine ")" -Klammer wird erwartet. |
59 | Dieser Argumententyp ist hier nicht anwendbar. |
60 | Parameter oder lokale Variable konnte in der kompilierten |
Datenbank im Befehl EXECUTE nicht benutzt werden. | |
61 | Array konnte in der kompilierten Datenbank nicht geändert |
werden. | |
62 | Dieser Befehl kann nicht auf eine Untertabelle angewendet werden. |
63 | Datenfeld ist nicht indiziert. |
64 | Datenfeld vom Typ Bild oder Variable wird erwartet. |
65 | Der Wert muss 4 Zeichen enthalten |
66 | Der Wert darf nur ein Zeichen enthalten |
67 | Dieser Befehl kann nicht auf dem 4D Server ausgeführt werden. |
68 | Eine Liste wird erwartet. |
69 | Eine Referenz auf ein externes Fenster wird erwartet. |
Tipps
Einige dieser Fehlermeldungen zeigen einen Syntaxfehler an, wenn Sie sich vertippt haben. Sie erhalten zum Beispiel den Fehler #37, wenn Sie v:=0 ausführen wollen, jedoch v=0 getippt haben. Diesen Fehler beheben Sie im Methodeneditor der Designumgebung.
Einige dieser Fehlermeldungen beruhen auf einfachen Programmierfehlern. Sie erhalten zum Beispiel den Fehler #5, wenn Sie den Befehl ADD RECORD ausführen, ohne zuvor mit dem Befehl DEFAULT TABLE die Standardtabelle gesetzt oder einen Parameter für die Tabelle übergeben zu haben. In diesem Fall gibt es keine Tabelle, auf die der Befehl angewendet werden kann. Prüfen Sie, ob Sie vergessen haben, für diesen Befehl die Standardtabelle zu setzen oder einen Parameter für die Tabelle zu übergeben.
Einige dieser Fehlermeldungen zeigen einen Fehler bei fehlerhaftem Design an. Sie erhalten zum Beispiel den Fehler #16, wenn Sie den Befehl RELATE ONE auf ein Datenfeld ohne Verknüpfung anwenden. Prüfen Sie in diesem Fall, ob Ihr Code falsch ist oder ob Sie lediglich vergessen haben, die Verknüpfung für dieses Datenfeld einzurichten.
Einige Fehler liegen, wenn sie auftreten, nicht genau da, wo Ihr Code abbricht. Erhalten Sie zum Beispiel in einer Unterroutine den Fehler #53 (indice out of range) für die Zeile vpFld:=Field($1;$2), beruht der Fehler auf einer falschen Tabellen- und/oder Datenfeldnummer, die der Unterroutine als Parameter übergeben wurde. Der Fehler liegt also in der aufrufenden Methode und nicht dort, wo der Fehler auftritt. Durchlaufen Sie in diesem Fall Ihren Code im Fenster Debugger im Schrittmodus, um herauszufinden, welche Programmierzeile dafür verantwortlich ist. Beheben Sie dann den Fehler im Methodeneditor der Designumgebung.
Hinweis: Wenn Sie Fehler mit dem Befehl ON ERR CALL abfragen, können Sie die Syntaxfehler im Klartext aus einer 4D Resource entnehmen. Beispiel:
If ((Error > 0) & (Error < 69)) $Errortext:=Get indexed string(29;error) Alert ($Errortext) End if
Referenz