IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Fortran Discussion :

Naviguer dans une table associative (object LCM)


Sujet :

Fortran

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 9
    Par défaut Naviguer dans une table associative (object LCM)
    Bonjour à tous,

    Merci par avance de l'aide que vous aller m'apporter.

    Je vais essayer d'être le plus clair possible.

    Je dois développer un module dans code de calcul qui est codé en fortran77.

    Alors posons les bases du problème:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CHARACTER     NAMISO(NI)*12
    Avec
    NAMISO :
    TOTO1 0001
    TOTO2 0001
    TOTO3 0001
    TOTO4 0001
    TOTO5 0001

    NAMISO est un vecteur de caractères. (Je ne sais pas pourquoi les espaces ne s'affichent pas correctement sur le forum mais c'est bien 12 caractères)

    Maintenant j'aimerais me déplacer dans un object LCM (dont l'iplist est "IPLIB")
    pour aller chercher des informations et les manipuler dans chaque dossiers (qui porte chaque nom de NAMISO) contenu dans IPLIB. Pour cela il faut utiliser la commande LCMGID (pour se déplacer dans une structure de table associative):

    INTEGER BLA(NG)
    ......................................
    IPTOTO=LCMGID(IPLIB,'TOTO1 0001')
    CALL LCMGET(IPTOTO,'BLABLA',BLA)
    Me permet d'aller dans le dossier "TOTO1 0001" de "IPLIB" et d'aller chercher le vecteur numérique "BLABLA" du dossier (qui a l'ip: IPTOTO) et me créer le vecteur "BLA" (qui est définit plus haut en variable locale)

    Cela fonctionne, maintenant je voudrais boucler sur tout les composants de NAMISO, un peu comme ceci:

    DO II=1,NI
    .....
    IPTOTO=LCMGID(IPLIB,'NAMISO(II)')
    CALL LCMGET(IPTOTO,'BLABLA',BLA)
    .....
    ENDDO
    Et ici je n'arrive pas à lui faire comprendre que NAMISO(II) doit prendre la "valeur" ou plutôt le nom du dossier. J'ai essayé plusieurs manips sans succès. Cela doit être dynamique en fait.

    Voila, j'espère que c'est le plus clair possible.

    Si vous avez des questions pour faciliter l'aide, n'hésitez pas!

    Merci par avance.

    SpyGer

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Février 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 9
    Par défaut
    Edition du message car LCMSIX est en fait remplacé par LCMGID.

  3. #3
    Membre extrêmement actif
    Inscrit en
    Avril 2008
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Âge : 65

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 573
    Par défaut passage d'un argument valeur d'un element tableau de chaine de carateres
    bonjour SpyGer

    Le passage d'un argument qui est un element d'un tableau de chaine de carateres se fait comme pour les nombres .Il faut revoir le code de la boucle comme suit(rien ne sert d'encadrer par des guillemets l'argument 'NAMISO(II)' ).........

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    DO II=1,NI
    .....
    C
    C ligne à virer
    IPTOTO=LCMGID(IPLIB,'NAMISO(II)')
    C
    C bonne syntaxe 
    C
    IPTOTO=LCMGID(IPLIB,NAMISO(II))
     
    CALL LCMGET(IPTOTO,'BLABLA',BLA)
    .....
    ENDDO
    bon code..............

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Février 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 9
    Par défaut
    Merci beaucoup.

    Cela fonctionne parfaitement

    Au plaisir (peut être sur un prochain post ^^)

Discussions similaires

  1. Comment insérer dans une table associative ?
    Par CinePhil dans le forum Hibernate
    Réponses: 2
    Dernier message: 02/12/2010, 12h21
  2. naviguation dans une table avec bindingscontext
    Par asmar dans le forum VB.NET
    Réponses: 0
    Dernier message: 04/03/2010, 01h02
  3. [AC-2003] Rendre un enregistrement dans une table associée obligatoire ?
    Par marot_r dans le forum Modélisation
    Réponses: 4
    Dernier message: 31/03/2009, 21h53
  4. Recherche de donnee dans une table associée
    Par josoft dans le forum Requêtes
    Réponses: 2
    Dernier message: 14/07/2003, 15h22
  5. Recherche de donnee dans une table associée
    Par josoft dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 14/07/2003, 15h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo