| 4D v18entity.save( ) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 
 | 
    4D v18
 entity.save( ) 
         | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Eigenschaft | Typ | Beschreibung | |
| success | Boolean | wahr bei erfolgreichem Sichern, sonst falsch | |
| Nur bei Verwenden von dk auto merge verfügbar: | |||
| autoMerged | Boolean | wahr bei Ausführen von "auto merge", sonst falsch | |
| Nur bei Fehler verfügbar: | |||
| status(*) | Zahl | Fehlercode, siehe unten | |
| statusText(*) | Text | Fehlerbeschreibung, 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 | |
| componentSignature | 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 automerge failed | 6 | (Nur bei  Verwenden der Option dk auto merge) Der Modus automatisches Mischen beim Sichern der Entity ist fehlgeschlagen. Zugewiesener Statustext: "Auto merge failed" | 
| 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). 
 | 
Eine neue Entity erstellen:
 C_OBJECT($status;$employee)
 $employee:=ds.Employee.new()
 $employee.firstName:="Mary"
 $employee.lastName:="Smith"
 $status:=$employee.save()
 If($status.success)
    ALERT("Employee created")
 End ifEine Entity ohne die Option dk auto merge aktualisieren:
 C_OBJECT($status;$employees;$employee)
 $employees:=ds.Employee.query("lastName=:1";"Smith")
 $employee:=$employees.first()
 $employee.lastName:="Mac Arthur"
 $status:=$employee.save()
 Case of
    :($status.success)
       ALERT("Employee updated")
    :($status.status=dk status stamp has changed)
       ALERT($status.statusText)
 End caseEine Entity mit der Option dk auto merge aktualisieren:
 C_OBJECT($status;$employees;$employee)
 
 $employees:=ds.Employee.query("lastName=:1";"Smith")
 $employee:=$employees.first()
 $employee.lastName:="Mac Arthur"
 $status:=$employee.save(dk auto merge)
 Case of
    :($status.success)
       ALERT("Employee updated")
    :($status.status=dk status automerge failed)
       ALERT($status.statusText)
 End case
	Produkt: 4D
	Thema: ORDA - Entity
	
        
        
	
	4D Programmiersprache ( 4D v18)
	
	
	
 Fehler melden
Fehler melden