> Tech > Matrices de structures de données

Matrices de structures de données

Tech - Par Renaud ROSSET - Publié le 24 juin 2010

Une matrice de structure de données est une matrice autonome qui contient un certain nombre d’éléments, chacun comme une structure de données :

d item s like( item )
d dim( 99 )

La matrice ITEMS contient 99 éléments comme la structure de données ITEM.
Cependant, il

n’y a pas de sous-champs ID et DESC dans la matrice. La matrice est initialisée avec des blancs à l’exécution. Pour éviter des erreurs de données décimales lors du référencement de la zone ITEM.ID d’un élément, vous devez initialiser explicitement la matrice :

clear item;
items = item;

Vous devez utiliser un index et une structure de données pour accéder aux composantes d’un élément de matrice :

item = items( idx );
id = item.id;

Vous pouvez trier la matrice :

sorta items;

et consulter les éléments, à la condition de spécifier les valeurs des deux sous-champs de la structure de données ITEM :

item.id = 123;
item.desc = ‘WIDGET’;
idx = %lookup( item: items );

Il est un peu plus compliqué de consulter un ITEM.ID dans la matrice. Il faut d’abord ajouter le mot-clé ASCEND à la définition de matrice et définir une structure de données pour contenir la clé pour la consultation :

d items s like( item )
d dim( 99 )
d ascend
d key ds likeds( item )

Vous devez ensuite trier la matrice et utiliser %LOOKUPGE pour trouver une correspondance partielle sur un ITEM.ID :

sorta items;
clear key;
key.id = 123;
idx = %lookupge( key: items);
if idx > 0;
item = items( idx );
if key.id = item.id;
// found!
endif;
endif;

Téléchargez cette ressource

Microsoft 365 Tenant Resilience

Microsoft 365 Tenant Resilience

Face aux failles de résilience des tenants M365 (configurations, privilèges, sauvegarde). Découvrez 5 piliers pour durcir, segmenter et surveiller vos environnements afin de limiter l’impact des attaques. Prioriser vos chantiers cyber et améliorer la résilience de vos tenants Microsoft 365.

Les plus consultés sur iTPro.fr

A lire aussi sur le site

À la une de la chaîne Tech