SQL et données de tableau

InfoWorks WS Pro compte de nombreux exemples d’objets réseau contenant un tableau de données. Le champ de données Coudes en est une illustration. Il stocke les paires intermédiaires (x, y) qui définissent les courbures d’un objet de lien.

Ces tableaux peuvent prendre deux formes :

Tableaux de valeurs

Si vous effectuez une comparaison avec un tableau de valeurs, InfoWorks WS Pro effectue la comparaison avec tous les éléments du tableau. Voici un exemple pour l’illustrer.

Dans cet exemple :

X = 3

Y (array) = [1, 4, 5], qui peut aussi s’écrire comme ceci : Y1 = 1, Y2 = 4, Y3 = 5

Les résultats de la comparaison seraient les suivants :

X > Y est vrai, car 3 > 1 ≡ X > Y1

X <= Y est vrai, car 3 <= 4 ≡ X <= Y2

Par conséquent, dans cet exemple, X > Y, X >= Y, X < Y et X <= Y sont tous vrais. Il en va de même pour NOT(X > Y) et NOT(X > = Y).

Les comparaisons avec des tableaux de valeurs sont utiles dans la mesure où vous en comprenez le fonctionnement. Par exemple, si X et Y définissent respectivement les valeurs d’altitude des points de consommation et des nœuds, X < Y peut être utilisé pour rechercher des altitudes de points de consommation inférieures au niveau terrain.

Tableaux de structures

Vous pouvez accéder aux champs d’un tableau de structures par leur nom et les traiter de la même manière que n’importe quel autre champ d’objet. La méthode la plus simple consiste à utiliser la liste de la zone Champ SQL de la boîte de dialogue SQL pour choisir l’élément de données.

La syntaxe des champs d’un tableau de structures est

<array>.<field>
Remarque : attention à ne pas confondre les objets liés avec les données de tableau, car la syntaxe est la même : <array>.<field> et <linked_object>.<field>.