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

WinDev Discussion :

Regrouper tableaux de même structure


Sujet :

WinDev

  1. #1
    Membre actif
    Inscrit en
    Avril 2009
    Messages
    308
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 308
    Points : 231
    Points
    231
    Par défaut Regrouper tableaux de même structure
    Bonjour à tous.

    J'ai un bout de code qui me plait pas trop, car trop de membres déclarés alors que je pense qu'il y a sûrement mieux à faire.

    Le but du code suivant c'est de créer des tableaux de str_éléments.
    Dans les méthodes j'appel ses différents tableaux pour les remplir, et chacun deux ont un contenu différent.

    Mais serait-il possible d'en faire qu'un seul tableau don chaque ligne comporte une structure que je peux identifier par son nom ?
    Par exemple.
    Pour accéder au valeurs :
    -tableau_str[UNB_ENTETE_INTERCHANGE].nomsegments
    Ou encore pour ajouter une valeur
    tableauajoute(tableau_str[UNG_ENTETE_Grp_fonctionnel],nomsegment,valeur,statu)

    Le code existant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Str_éléments est une structure 
    	NomSegments est une chaîne
    	ValeurSegment est une chaîne
    	statu est une chaîne
    FIN
     
    UNB_ENTETE_INTERCHANGE est un tableau de Str_éléments
    UNG_ENTETE_Grp_fonctionnel est un tableau de Str_éléments
    UNH_ENTETE_DE_MESSAGE est  un tableau de Str_éléments
    BGM_DEBUT_DU_MESSAGE est un tableau de Str_éléments
    DTM_DATE_HEURE_PERIODE est un tableau de Str_éléments
    rff_reference est  un tableau de Str_éléments

  2. #2
    Membre chevronné
    Avatar de mogwai162
    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 376
    Points : 1 860
    Points
    1 860
    Par défaut
    Tu peux faire une structure qui contient un tableau de ta structure existante non ?
    Patrick Catella

    Je ne réponds pas aux messages privés si ceux ci suivent un sujet. Il est préférable pour tous de poursuivre la discussion dans le sujet d'origine.

    Je suis Concepteur développeur Windev (10 ans) et Windev mobile (4 ans) en recherche d'emploi. J'etudie toute proposition

  3. #3
    Membre actif
    Inscrit en
    Avril 2009
    Messages
    308
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 308
    Points : 231
    Points
    231
    Par défaut
    Tu veux dire faire comme ceci ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Str_éléments est une structure 
    	NomSegments est une chaîne
    	ValeurSegment est une chaîne
    	statu est une chaîne
    FIN
    Str_de_plusieurs_éléments est une structure
    <div style="margin-left:40px">tab_éléments est un tableau_de Str_éléments</div>fin
    Pour le coup je vois pas comment différencier mes différents tableaux.
    ...Je vais poser sur ça papier ça sera peut-être plus clair.

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 198
    Points : 12 774
    Points
    12 774
    Par défaut
    Bonjour,
    Citation Envoyé par rednight Voir le message
    Pour le coup je vois pas comment différencier mes différents tableaux.
    Pour celà tu peux utiliser un tableau associatif au lieu d'un "simple" tableau.
    Tu peux aussi déclarer une autre structure, qui contient le nom de ton tableau et un tableau dynamique de Str_éléments. Ensuite tu déclares un tableau dynamique de cette structure.

    Tatayo.

  5. #5
    Membre actif
    Inscrit en
    Avril 2009
    Messages
    308
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 308
    Points : 231
    Points
    231
    Par défaut
    Bon je me suis un peu mélangé les pinceaux... mais je crois y être arrivé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    Str_éléments est une structure 
    	NomSegments est une chaîne
    	ValeurSegment est une chaîne
    	statu est une chaîne
    FIN
     
    str_section_elements est une structure
    	sous_tableau_element est un tableau de Str_éléments
    FIN
     
    Un_element est un Str_éléments
    section_elements est une str_section_elements
    tableau_element est un tableau associatif de str_section_elements
     
    :Un_element.NomSegments="C002d1001"
    :Un_element.ValeurSegment=C002d1001
    :Un_element.statu="R"
    TableauAjoute(:section_elements.sous_tableau_element,:Un_element)
     
    :tableau_element["BGM_DEBUT_DU_MESSAGE"]=:section_elements

  6. #6
    Expert éminent sénior
    Avatar de Marco46
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2005
    Messages : 4 413
    Points : 19 609
    Points
    19 609
    Par défaut
    Pour modéliser un échange EDIFACT c'est quand même beaucoup plus facile en POO.
    Un problème avec Git ? Essayez la FAQ, sinon posez votre question sur le forum.



    "Toute personne croyant qu'une croissance exponentielle peut durer indéfiniment dans un monde fini est soit un fou, soit un économiste."
    Kenneth E. Boulding

    "Les richesses naturelles sont inépuisables, car, sans cela, nous ne les obtiendrions pas gratuitement. Ne pouvant être ni multipliées ni épuisées, elles ne sont pas l’objet des sciences économiques."
    Jean-Baptiste Say, Traité d'économie politique, 1803.

    "/home/earth is 102% full ... please delete anyone you can."
    Inconnu

  7. #7
    Membre actif
    Inscrit en
    Avril 2009
    Messages
    308
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 308
    Points : 231
    Points
    231
    Par défaut
    Oui j'ai volontairement pas parlé des classes et des classe héritées.
    Faudrait que je casse tout le code de l'existant, malheureusement les délais le permettent pas.

    Sûrement qu'il faudra y venir à un moment ou à un autre.

    Edit, on va dire que c'est résolu, vu que je pense comme marco que la "best" solution c'est de passer tout ça en POO, chose qui n'est pas d'actualité.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 8
    Dernier message: 02/12/2010, 19h39
  2. [MCD] Regrouper 2 tables ? Même structure, rôle différent
    Par ymoreau dans le forum Schéma
    Réponses: 8
    Dernier message: 01/08/2009, 12h25
  3. Réponses: 4
    Dernier message: 20/03/2007, 09h54
  4. [XML] utilisations de fichiers à même structures
    Par mariemor64 dans le forum XML/XSL et SOAP
    Réponses: 9
    Dernier message: 05/10/2006, 11h29
  5. Comparaison des données de deux schéma de mêmes structure
    Par Moez Sokrati dans le forum Oracle
    Réponses: 1
    Dernier message: 28/03/2006, 18h24

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