DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Syntaxe WLangage / Types du WLangage
  • UUID vide
  • Conversions possibles
  • Opérations disponibles
  • Comparaison
  • Génération d'un UUID
  • Rubriques HFSQL
  • Gestion des types UUID dans les champs
  • Interface COM
  • Sérialisation
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Le type UUID permet de manipuler facilement :
  • des UUID ou des GUID,
  • des identifiants automatiques uniques HFSQL de type UUID,
  • les identifiants des objets et des interfaces COM/Automation,
  • etc.
Les variables de type UUID sont disponibles :
  • en 128 bits. Les UUID sur 128 bits vérifient la RFC 4122.
  • en 256 bits.
Le type UUID est un type nullable. Pour plus de détails, consultez Activation des types nullables.
Exemple
v est un UUID  // Déclaration d'un UUID sur 128 bits par défaut
v1 est un UUID sur 128
v2 est un UUID sur 256
Syntaxe

Déclaration et affectation d'un type UUID Masquer les détails

<Nom de la variable> est un UUID = <Valeur>

OU


 <Nom de la variable> est un UUID
 <Nom de la variable> = <Valeur>
<Nom de la variable> :
Nom de la variable à déclarer.
<Valeur> :
Valeur à affecter à la variable. Une variable de type UUID peut être affectée avec :
Remarques

UUID vide

Par défaut, lors de la création d'une variable de type UUID, cette variable est vide. Sa valeur correspond :
  • à la constante Nil_UUID pour les variables de type UUID sur 128.
  • à la constante Nil_UUID_256 pour les variables de type UUID sur 256.

Conversions possibles

Le but principal des conversions est de permettre un débogage facile tout en détectant les opérations n'ayant pas de sens. Les conversions en chaîne ou buffer sont possibles mais il n'est pas possible d'effectuer une conversion vers une variable de type numérique.
Un UUID 128 est convertible :
  • en chaîne au format héxadécimal standard "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx".
  • en buffer au format "big-endian" (16 octets).
Un UUID 256 est convertible :
  • en chaîne au format héxadécimal "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx".
  • en buffer au format "big-endian" (32 octets).
Les autres conversions ne sont pas autorisées. En particulier, un UUID 128 n'est pas convertible en un UUID 256 et réciproquement.

Opérations disponibles

Le but principal des opérations est de permettre un débogage facile tout en détectant les opérations n'ayant pas de sens. La concaténation avec une chaîne est donc autorisée mais aucune opération arithmétique n'est autorisée.
Un UUID (128 ou 256) peut être concaténé avec une chaîne ou un buffer.

Comparaison

Les UUID sont comparables afin de permettre le tri et la recherche dichotomique dans un tableau.
  • Les UUID 128 peuvent être comparés à des UUID 128, des chaînes et des buffers.
  • Les UUID 256 peuvent être comparés à des UUID 256, des chaînes et des buffers.

Génération d'un UUID

Un UUID 128 peut être généré :
  • grâce à la fonction DonneGUID. Exemple :
    v est un UUID = DonneGUID()
  • grâce à la fonction DonneUUID. Exemple :
    v est un UUID = DonneUUID()
Un UUID 256 peut être généré :
  • grâce à la fonction DonneGUID. Exemple :
    v est un UUID sur 256 = DonneGUID(guidBrut256)
  • grâce à la fonction DonneUUID256. Exemple :
    v est un UUID sur 256 = DonneUUID256()

Rubriques HFSQL

  • Les rubriques de type UUID 128 et UUID 256 sont disponibles dans l'analyse.
  • Les rubriques de type UUID 128 et UUID 256 peuvent être automatiques. Dans ce cas, ce sont des identifiants automatiques de type UUID. Un UUID sera automatiquement généré lors de l'appel de la fonction HAjoute.

Gestion des types UUID dans les champs

Des masques de saisie et d'affichage de type "UUID" et "UUID 256" sont disponibles pour les différents champs permettant de manipuler ces types.
Le binding est disponible vers les rubriques HFSQL et les variables de type UUID.

Interface COM

Un UUID 128 peut être utilisé pour stocker les CLSID et les IID des objets et des interfaces COM. Il peut donc être utilisé dans les fonctions COMCréeInstance et COMRécupèreInterface.

Sérialisation

Les UUID sont sérialisables (fonction Sérialise) :
  • UUID 128 :
    • Sérialisable en XML et en JSON : chaîne au format standard "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
    • Sérialisable en binaire : format binaire "big-endian".
  • UUID 256 :
    • Sérialisable en XML et en JSON : chaîne au format "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
    • Sérialisable en binaire : format binaire "big-endian".
Version minimum requise
  • Version 24
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 06/03/2024

Signaler une erreur ou faire une suggestion | Aide en ligne locale