4D v16.3

ASSERT

Home

 
4D v16.3
ASSERT

ASSERT 


 

ASSERT ( boolAusdruck {; MeldungText} ) 
Parameter Typ   Beschreibung
boolAusdruck  Boolean in Boolean Ausdruck
MeldungText  Text in Text der Fehlermeldung

Der Befehl ASSERT bewertet die im Parameter boolAusdruck übergebene Assertion und stoppt die Ausführung des Code mit einer Fehlermeldung, wenn boolAusdruck falsch zurückgibt. Der Befehl arbeitet im interpretierten und kompilierten Modus.

Ist boolAusdruck wahr, passiert nichts. Ist er falsch, löst der Befehl den Fehler -10518 aus und zeigt standardmäßig den Text der Assertion mit dem Anfang "Assertion fehlgeschlagen:" Sie können diesen Fehler mit einer Methode abfangen, die über den Befehl ON ERR CALL installiert wird, um z.B. Informationen zu einem Logbuch zu liefern.

Optional können Sie den Parameter MeldungText übergeben, um anstelle des Textes der Assertion eine eigene Fehlermeldung anzuzeigen.

Eine Assertion ist eine in den Code eingefügte Anweisung, die zum Herausfinden von Unstimmigkeiten während der Code-Ausführung dient. Sie überprüft, ob eine Anweisung zu einem gegebenen Moment wahr ist und verursacht, wenn das Gegenteil eintritt, eine Ausnahme. Assertionen dienen vorallem dazu, Fälle herauszufinden, die in der Regel gar nicht auftreten sollten. Sie werden hauptsächlich zum Herausfinden von Programmierfehlern verwendet. Über den Befehl SET ASSERT ENABLED können Sie alle Assertionen einer Anwendung (z.B. gemäß dem Versionstyp) global aktivieren oder deaktivieren.

Weitere Informationen zu Assertionen in der Programmierung finden Sie in Wikipedia unter http://en.wikipedia.org/wiki/Assertion_(computing).

Der Entwickler möchte vor Ausführen von Operationen auf einen Datensatz sicherstellen, dass er aktuell im Lese-/Schreibmodus geladen ist:

 READ WRITE([Table 1])
 LOAD RECORD([Table 1])
 ASSERT(Not(Locked([Table 1])))
  // Löst Fehler -10518 aus, wenn der Datensatz gesperrt ist

Über eine Assertion können in einer Projektmethode übergebene Parameter auf ungültige Werte getestet werden. In diesem Beispiel wird eine eigene Meldung verwendet:

  // Methode, welche die Kundennummer gemäß dem in $1 übergebenen Kundennamen zurückgibt.
 C_TEXT($1// Kundenname
 ASSERT($1#"";"Suche nach einem leeren Kundennamen")
  // Ein leerer Name ist in diesem Fall ein abwegiger Wert
  // Bei falscher Assertion erscheint im Fehlerdialogfenster folgendes:
  // "Assertion fehlgeschlagen: Suche nach leerem Kundennamen"



Siehe auch 

Asserted
Get assert enabled
SET ASSERT ENABLED

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Unterbrechungen
Nummer: 1129

Dieser Befehl ändert die Systemvariable ErrorThis command can be run in preemptive processes

 
GESCHICHTE 

Erstellt: 4D v12

 
ARTIKELVERWENDUNG

4D Programmiersprache ( 4D v16)
4D Programmiersprache ( 4D v16.1)
4D Programmiersprache ( 4D v16.2)
4D Programmiersprache ( 4D v16.3)