4D v15Get locked records info |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v15
Get locked records info
|
Get locked records info ( laTable ) -> Résultat | ||||||||
Paramètre | Type | Description | ||||||
laTable | Table |
![]() |
Table de laquelle vous souhaitez connaître les enregistrements verrouillés | |||||
Résultat | Objet |
![]() |
Description des enregistrements verrouillés (le cas échéant) | |||||
Introduit dans 4D v14 R3
Thème : Enregistrements (verrouillage)
La commande Get locked records info retourne un objet décrivant le ou les enregistrement(s) actuellement verrouillé(s) dans laTable.
L'objet retourné contient une propriété "records" qui est un tableau d'objets :
{
"records": [
objet description,
(…)
]
}
Chaque élément de tableau "objet description" identifie un enregistrement verrouillé dans la table spécifiée et contient les propriétés suivantes :
Propriété | Type | Description |
contextID | UUID (Chaîne) | UUID du contexte de la base à l'origine du verrouillage |
contextAttributes | Objet | Objet contenant les mêmes informations que la commande LOCKED BY mais appliquées à l'enregistrement, à la différence près que Get locked records info retourne le nom d'utilisateur défini dans le système et non celui de l'utilisateur 4D (voir ci-dessous). |
recordNumber | Entier long | Numéro de l'enregistrement verrouillé |
L'objet contextAttributes est constitué des propriétés suivantes :
Note : Vous pouvez obtenir le nom d'utilisateur 4D à partir de la valeur de user4d_id en utilisant le code suivant :
GET USER LIST($tabNoms;$tabIDs)
$nom4DUser:=Find in array($tabIDs;user4d_id)
Note : La commande fonctionne uniquement avec 4D et 4D Server. Elle retourne toujours un objet invalide lorsqu'elle est appelée depuis un 4D distant. Elle peut toutefois être appelée depuis un 4D distant si la méthode d'appel dispose de l'option "Exécuter sur serveur" ; elle retourne dans ce cas les informations relatives au serveur. Lorsqu'elle est appelée depuis un composant, elle s'applique à la base hôte.
Vous exécutez le code suivant :
$vOlocked :=Get locked records info([Table])
Si deux enregistrements sont verrouillés dans la table [Table], l'objet suivant est retourné dans $vOlocked :
{
"records": [
{
"contextID": "A9BB84C0E57349E089FA44E04C0F2F25",
"contextAttributes": {
"task_id": 8,
"user_name": "roland",
"user4d_id": 1,
"host_name": "iMac de roland",
"task_name": "P_RandomLock",
"client_version": -1342106592
},
"recordNumber": 1
},
{
"contextID": "8916338D1B8A4D86B857D92F593CCAC3",
"contextAttributes": {
"task_id": 9,
"user_name": "roland",
"user4d_id": 1,
"host_name": "iMac de roland",
"task_name": "P_RandomLock",
"client_version": -1342106592
},
"recordNumber": 2
}
]
}
Si le code est exécuté sur 4D Server et que le verrouillage est causé par un poste client distant, l'objet suivant est retourné dans $vOlocked :
{
"records": [
{
"contextID": "B0EC087DC2FA704496C0EA15DC011D1C",
"contextAttributes": {
"task_id": 2,
"user_name": "achim",
"user4d_id": 1,
"host_name": "achim-pcwin",
"task_name": "P_RandomLock",
"is_remote_context": true,
"client_uid": "0696E66F6CD731468E6XXX581A87554A",
"client_version": -268364752
},
"recordNumber": 1
}
]
}
Produit : 4D
Thème : Langage
4D v15 - Mise à jour (édition standard) ( 4D v15)