Manuel §1.6.98    

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.