La description de données natives s’effectue en utilisant la syntaxe
suivante :
Pour un type simple :
Nom_var:type[taille[.decimal]]
Pour une structure de données :
(Nom_var1:type1[taille1[.decimal1]]) (Nom_var2:type2[taille2[.decimal2]])…..
Nom_var est le nom de la variable correspondant côté client (WinDev)
Type est égal à une lettre correspondant au type, dans la nomenclature DDS. Les types actuellement reconnus sont les suivants :
• A : chaîne de caractères. La taille est obligatoire.
• H : chaîne de caractères sans conversion. La taille est obligatoire.
• P : décimal condensé. La taille en nombre total de chiffres significatifs est obligatoire. La taille de la partie décimale est facultative.
• S : décimal étendu. La taille en nombre total de chiffres significatifs est obligatoire. La taille de la partie décimale est facultative.
• U : entier non signé. La taille fournie correspond au nombre de chiffres, et induit la taille en octets. Le nombre de chiffres peut être égal à 3, 5, 10, ou 20, ce qui correspond respectivement à 1, 2, 4 ou 8 octets (soit 8, 16, 32 ou 64 bits). La taille par défaut est 5, donc 4 octets.
• I : entier signé. La taille fournie correspond au nombre de chiffres, et induit la taille en octets. Le nombre de chiffres peut être égal à 3, 5, 10, ou 20, ce qui correspond respectivement à 1, 2, 4 ou 8 octets (soit 8, 16, 32 ou 64 bits). La taille par défaut est 5, donc 4 octets.
• B : entier signé. Alternative à ‘I’. Le nombre de chiffres est interprété comme suit : s’il est <= à 4 il s’agit d’un entier sur 2 octets (16 bits), autrement il s’agit d’un entier sur 4 octets (32 bits).
• F : type flottant. La taille correspond au nombre d’octets (4 ou 8), et est par défaut égale à 8, soit 64 bits, ce qui correspond au type « double » sur PC.
• D : type date. Date au format *ISO (aaaa-mm-jj).
• T : type time. Heure au format hh.mm.ss
• Z : type timestamp (date et heure), au format *ISO, soit aaaa-mm-jj-hh.mm.ss.MMMMMM.
Exemples :
'dtest3:D' : date, nom de variable ‘dtest3’.
'numfact:U20' : entier non signé sur 8 octets, nom de variable ‘numfact’.
(ident_a:P9)(code:A10)(date_fin:D) : structure composée de 3 éléments, dont les membres côté PC se nomment ‘ident_a’, ‘code’ et ‘date_fin’, et dont les types locaux sont P9, A10 et date (dans ce cas le nom de la variable WinDev est donné à part).