Fonction GetBlob
La fonction GetBlob permet d'extraire d'un blob un champ défini par son type et son décalage dans le blob.
GetBlob( VariableBlob, Type, Decalage {, Longueur}): Valeur;
La fonction attend en paramètre une variable blob, un type élémentaire et un décalage dans le blob; dans certains cas un quatrième paramètre définit la longueur de la zone à extraire.
Les types reconnus sont:
|
Type |
Longueur |
Commentaire |
|
Void |
En paramètre |
Cela permet de créer une variable blob par extraction d'une partie d'une autre variable blob, la longueur du champ extrait est défini par le paramètre longueur. |
|
Char |
1 |
Obtention d'un entier à partir du caractère non signé. |
|
Byte |
1 |
Obtention d'un entier à partir du caractère non signé. |
|
Short |
2 |
Obtention d'un entier à partir d'un entier signé de 16 bits |
|
Word |
2 |
Obtention d'un entier à partir d'un entier non signé de 16 bits |
|
Integer |
4 |
Obtention d'un entier à partir d'un entier signé de 32 bits |
|
DWord |
4 |
Obtention d'un entier à partir d'un entier non signé de 32 bits (attention aux débordements éventuels!) |
|
Float |
4 |
Obtention d'un flottant à partir d'un flottant de 32 bits |
|
Double |
8 |
Obtention d'un flottant à partir d'un flottant de 64 bits (attention aux débordements éventuels) |
|
Date |
4 |
Obtention d'une date à partir d'un champ date (time_t) |
|
String |
En paramètre |
Permet d'extraire une chaine de caractère dont la longueur est défini par le 4° paramètre. |
|
Handle |
4 |
Obtention d'une valeur handle (par exemple handle de fenêtre). |
La fonction rend une valeur Sisal contenant la valeur extraite.
Temperature = GetBlob( TrameRecue, Integer, 24);
Dans cet exemple, un équipement a transmis dans une trame binaire différentes données, l'entier de 4 caractéres placé à partir de la position 24 contient la température qui nous intérésse.