4D v17.4entity.lock( ) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v17.4
entity.lock( )
|
Propriété | Type | Description | |
success | booléen | Vrai si l'action de verrouillage a été effectuée avec succès (ou si l'entité est déjà verrouillée dans le process courant), sinon Faux. | |
Disponible uniquement si l'option dk reload if stamp changed est utilisée : | |||
wasReloaded | booléen | Vrai si l'entité a été correctement rechargée, sinon Faux. | |
Disponible uniquement en cas d'erreur : | |||
status(*) | numérique | Code d'erreur, voir ci-dessous | |
statusText(*) | texte | Description de l'erreur, voir ci-dessous | |
Disponible uniquement en cas d'erreur de verrouillage pessimiste : | |||
lockKindText | texte | "Locked by record" | |
lockInfo | objet | Information sur l'origine du verrouillage | |
task_id | numérique | ID du process | |
user_name | texte | Nom d'utilisateur de la session sur la machine | |
user4d_id | texte | Nom d'utilisateur 4D dans le répertoire de la base | |
host_name | texte | Nom de la machine | |
task_name | texte | Nom du process | |
client_version | texte | ||
Disponible uniquement en cas d'erreur critique (clé primaire dupliquée, disque plein...) : | |||
errors | collection d'objets | ||
message | texte | Message d'erreur | |
component signature | texte | Signature du composant interne (p.e. "dmbg" pour le composant de base de données) | |
errCode | nombre | Code d'erreur |
(*) Les valeurs suivantes peuvent être retournées dans les propriétés status et statusText de l'objet Résultat en cas d'erreur :
Constante | Valeur | Comment |
dk status entity does not exist anymore | 5 | L'entité n'existe plus dans les données. Cette erreur peut se produire dans les cas suivants :
statusText associé : "Entity does not exist anymore" |
dk status locked | 3 | L'entité est verrouillée par un verrou pessimiste. statusText associé : "Already locked" |
dk status serious error | 4 | Une erreur critique peut être une erreur de bas niveau de la base de données (ex. clé dupliquée), une erreur matérielle, etc. statusText associé : "Other error" |
dk status stamp has changed | 2 | La valeur du marqueur interne (stamp) de l'entité ne correspond pas à celle de l'entité stockée dans les données (verrouillage optimiste).
|
Exemple avec erreur :
C_OBJECT($employee;$status)
$employee:=ds.Employee.get(716)
$status:=$employee.lock()
Case of
:($status.success)
ALERT("Vous avez verrouillé "+$employee.firstName+" "+$employee.lastName)
:($status.status=dk status stamp has changed)
ALERT($status.statusText)
End case
Exemple avec option dk reload if stamp changed :
C_OBJECT($employee;$status)
$employee:=ds.Employee.get(717)
$status:=$employee.lock(dk reload if stamp changed)
Case of
:($status.success)
ALERT("Vous avez verrouillé "+$employee.firstName+" "+$employee.lastName)
:($status.status=dk status entity does not exist anymore)
ALERT($status.statusText)
End case
Produit : 4D
Thème : ORDA - Entity
4D - Langage ( 4D v17)
4D - Langage ( 4D v17.1)
4D - Langage ( 4D v17.2)
4D - Langage ( 4D v17.3)
4D - Langage ( 4D v17.4)