4D v17.4entity.drop() |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v17.4
entity.drop()
|
Eigenschaft | Typ | Beschreibung | |
success | Boolean | wahr bei erfolgreichem Löschvorgang, sonst falsch | |
Nur bei Fehler verfügbar: | |||
status(*) | Zahl | Fehler-Code, siehe unten | |
statusText(*) | Text | Beschreibung des Fehlers, siehe unten | |
Nur bei Fehler beim pessimistischen Sperrverfahren verfügbar: | |||
LockKindText | Text | "Gesperrt durch Datensatz" | |
lockInfo | Objekt | Information über Ursprung des Sperrens | |
task_id | Zahl | Prozess Id | |
user_name | Text | Benutzername der Sitzung auf dem Rechner | |
user4d_id | Text | Benutzername im 4D Datenbankverzeichnis | |
host_name | Text | Rechnername | |
task_name | Text | Prozessname | |
client_version | Text | ||
Nur bei ernstem Fehler verfügbar (z.B. Primärschlüssel existiert bereits, Festplatte voll...): | |||
errors | Collection von Objekten | ||
message | Text | Fehlermeldung | |
component signature | Text | interne Signatur der Komponente (z.B. "dmbg" steht für die Datenbankkomponente) | |
errCode | Zahl | Fehlercode |
(*) Bei einem Fehler in den Eigenschaften status und statusText des Objekts Result können folgende Werte zurückgegeben werden:
Konstante | Wert | Kommentar |
dk status entity does not exist anymore | 5 | Die Entity existiert nicht mehr in den Daten. Dieser Fehler kann in folgenden Fällen auftreten:
Zugewiesener Statustext: "Entity does not exist anymore" |
dk status locked | 3 | Die Entity wird durch pessimistisches Sperrverfahren gesperrt. Zugewiesener Statustext: "Already locked" |
dk status serious error | 4 | Ein ernsthafter Fehler ist ein low-level Fehler in der Anwendung, wie z.B. duplizierter Schlüssel, Hardware Fehler, etc. Zugewiesener Statustext: "Other error" |
dk status stamp has changed | 2 | Der interne Stempelwert der Entity passt nicht zum Wert der in den Daten gespeicherten Entity (optimistisches Sperrverfahren).
|
Beispiel ohne die Option dk force drop if stamp changed:
C_OBJECT($employees;$employee;$status)
$employees:=ds.Employee.query("lastName=:1";"Smith")
$employee:=$employees.first()
$status:=$employee.drop()
Case of
:($status.success)
ALERT("Sie haben "+$employee.firstName+" "+$employee.lastName gelöscht) //Die gelöschte Entity bleibt im Speicher
:($status.status=dk status stamp has changed)
ALERT($status.statusText)
End case
Beispiel mit der Option dk force drop if stamp changed:
C_OBJECT($employees;$employee;$status)
$employees:=ds.Employee.query("lastName=:1";"Smith")
$employee:=$employees.first()
$status:=$employee.drop(dk force drop if stamp changed)
Case of
:($status.success)
ALERT("Sie haben "+$employee.firstName+" "+$employee.lastName gelöscht) // Die gelöschte Entity bleibt im Speicher
:($status.status=dk status entity does not exist anymore)
ALERT($status.statusText)
End case
Produkt: 4D
Thema: ORDA - Entity
4D Programmiersprache ( 4D v17)
4D Programmiersprache ( 4D v17.1)
4D Programmiersprache ( 4D v17.2)
4D Programmiersprache ( 4D v17.3)
4D Programmiersprache ( 4D v17.4)