|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre du Club
![]() Inscription : décembre 2006 Messages : 95 ![]() |
Bonjour,
Je travaille actuellement sur un programme qui utilise deux tableaux dans lesquel je stocke des informations lors d'une premiere lecture d'un fichier. Au deuxieme passage je souhaite extraire certaine information du 2eme tableau grace a une comparaison dans le 1er. Dans l'idée je voulais connaitre la position dans le 1er tableau pour extraire mon information du 2eme tableau. 1ere question : Est-il possible de travailler dans un seul tableau? 2eme question : j'utilise la fonction %lookup et j'aimerais savoir si avec cette fonction je peux connaitre la position d'un élement dans le tableau. Et pour finir la fonction tel que je l'ai écrite mais qui ne fonctionne pas : eval recup=%lookup(ediseg:zonkey) ediseg=le champs que je compare zonkey=le nom de mon tableau recup=la variable dans laquelle je souhaite récupérer la position. Je continue les recherches de mon coté, si quelqu'un sait comment utiliser cette focntion ou même avais de la doc, j'en serais ravi !!! Merci à tout ceux qui prendront le temps de me lire. A+ Bertrand |
|
|
00
|
|
|
#2 | |||
|
Membre Expert
![]() Inscription : novembre 2004 Messages : 1 298 ![]() |
Je ne comprends pas la première question. Explique un peu plus ce que tu cherches à faire.
Citation:
Code :
|
|||
|
|
00
|
|
|
#3 |
|
Membre du Club
![]() Inscription : décembre 2006 Messages : 95 ![]() |
Merci pour cette réponse !!!
je vais essayer de l'implémenter ce matin. Pour en revenir à la première question, actuellement j'utilise 2 tableaux, mais j'aimerais en utiliser un seul, par exemple dans la 1ere colonne ma première information et dans la seconde colonne, la deuxième information. Je pense que tu as répondu à cette question dans ton exemple ou tu utilise la DS. A+ |
|
|
00
|
|
|
#4 | ||
|
Membre du Club
![]() Inscription : décembre 2006 Messages : 95 ![]() |
Merci pour la solution,
J'ai conservé ma méthode mais je m'en suis sortis avec vos explication sur la fonction %lookup. Code :
Bertrand |
||
|
|
00
|
|
|
#5 |
|
Invité régulier
![]() Inscription : novembre 2003 Messages : 14 ![]() |
Bonsoir,
Bien que solutionné, j'apporte une précision dans l'utilisation de tables dont l'indice du poste d'une table correspond au poste de la table où est stockée l'information nécessaire à un traitement. L'instruction OCCUR autorise la création de Table/tableau à multiple dimensions de taille maximale bien supérieure à celle des 9999 postes d'une table mono dimension. Le revers de la médaille est la contrainte d'une routine d'initialisation, en effet l'instruction CLEAR, MOVEA ne nettoie que le 1er poste d'une occurence. Mais les possibilités offertes balaie d'une main cette contrainte. Création d'une table multi-dimentionnelle avec l'instruction OCCUR : D TBLx OCCURS(32xxx) Cf. doc pour le maxi D TBL1 1 30 DIM(10) => 10 postes de 3 D TBL2 1 30 DIM(01) => 30 postes de 1 D TBL3 1 30 DIM(02) => 15 postes de 2 Chargement d'un fichier paramètre de 150 enregistrements maxi D PARM OCCURS(150) D PRM_ENRGT 1 75 Longeur de l'enregistrement D PRM_COD 1 3 Code table D PRM_TYP 4 5 Type d'enregistrement D PRM_CLE 6 20 Clé d'accès D PRM_RES 21 70 Paramètres à récupérer D PRM_Tbl1 21 70 DIM(05) => 10 poste de 5 Il va de soit que c'est au programmeur de gérer l'overflow ! Ce ne sont que des exemples d'utilisation. @+ |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com