1. #1
    Membre du Club
    Inscrit en
    juin 2009
    Messages
    161
    Détails du profil
    Informations forums :
    Inscription : juin 2009
    Messages : 161
    Points : 64
    Points
    64

    Par défaut nom de variable dynamique

    bonjour,

    Je doit créer plusieurs variable dans mon code nbrepersonne_jours1, nbrepersonne_jours2...nbrepersonnes_jour7

    je voudrais savoir si dynamiquement c'est possible de leur attribué des valeurs

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    dim nbrepersonne_jours1 as integer
    dim i as integer = 0
    dim nbrejoursselectionnés as integer
     
    for i = 0 to nbrejourselectionnés
    nbrepersonne_jours & i  = datatable.rows(0).item(0)
    next
    Le code que j'ai ecrit n'est qu'un exemple de ce que je voudrais faire ,je voudrais savoir si c'est possible et si oui qu'elle est la syntaxe correspondant

    Merci d'avance

  2. #2
    Expert Confirmé
    Homme Profil pro
    Inscrit en
    février 2003
    Messages
    1 764
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Belgique

    Informations forums :
    Inscription : février 2003
    Messages : 1 764
    Points : 2 997
    Points
    2 997

    Par défaut

    On cree une List<int> (List(Of Int))
    Je ne suis qu'un pauvre débutant alors ne frappez pas si mes idées ne sont pas bonnes

  3. #3
    Membre du Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    mars 2011
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : mars 2011
    Messages : 50
    Points : 59
    Points
    59

    Par défaut

    donc Ce cas il est préférable d'utiliser un tableau de 7 case
    par exemple dans chaque case tu stocke la valeur correspondante
    Attention : les indices de tab comme du 0.

  4. #4
    Membre du Club
    Inscrit en
    juin 2009
    Messages
    161
    Détails du profil
    Informations forums :
    Inscription : juin 2009
    Messages : 161
    Points : 64
    Points
    64

    Par défaut

    j'avais pensé a un tableau ou une liste , mais mon probleme c'est que je n'ai pas le choix on m'impose de faire comme ca car chaque variable va me servir ensuite a créer un fichier XML qui va se présenter sous la forme

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <debut>
             <nbrespersonne_jour1>2</nbrespersonne_jour1>
             <nbrespersonne_jour2>5</nbrespersonnes_jour2>
    ...
    </debut>
    Donc je suis obligé de gérer dynamiquement mon nom de variable
    pour une exploitation ultérieure de ce fichier XML

  5. #5
    Expert Confirmé Sénior Avatar de Pol63
    Homme Profil pro
    Développeur .NET / DBA SQL SERVER
    Inscrit en
    avril 2007
    Messages
    11 829
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur .NET / DBA SQL SERVER
    Secteur : Industrie

    Informations forums :
    Inscription : avril 2007
    Messages : 11 829
    Points : 21 474
    Points
    21 474

    Par défaut

    il y a bien une méthode, mais ca reste du charlatanisme ^^

    il faut que les variables soit sur la classe et ca doit ressembler à ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    me.gettype.getfield("nbrepersonne_jours" & i, nonpublic or instance).setvalue(me,la valeur, nothing)
    pour une propriété c'est getproperty à la place de getfield, si elle est publique, il faut remplacer nonpublic par public
    et getvalue à la place de setvalue s'il faut lire la valeur

  6. #6
    Expert Confirmé
    Homme Profil pro
    Inscrit en
    février 2003
    Messages
    1 764
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Belgique

    Informations forums :
    Inscription : février 2003
    Messages : 1 764
    Points : 2 997
    Points
    2 997

    Par défaut



    A quoi ca sert de faire du XML si les champs deviennent obligatoire?
    Le XML est fait pour gerer les list.

    Si tu <nbrespersonne_jour1> ton XML n'est plus dynamique.

    Si tu veux absolument faire ainsi c'est lors de la sauvegarde du fichier XML que tu dois remplacer lstnbrespersonne_jour[X] par nbrepersonne_jourX
    Je ne suis qu'un pauvre débutant alors ne frappez pas si mes idées ne sont pas bonnes

  7. #7
    Expert Confirmé Sénior Avatar de Pol63
    Homme Profil pro
    Développeur .NET / DBA SQL SERVER
    Inscrit en
    avril 2007
    Messages
    11 829
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur .NET / DBA SQL SERVER
    Secteur : Industrie

    Informations forums :
    Inscription : avril 2007
    Messages : 11 829
    Points : 21 474
    Points
    21 474

    Par défaut

    il y a certains systèmes avec des limites plutot que des listes non délimitées ...

  8. #8
    Inactif
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    janvier 2007
    Messages
    6 607
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : janvier 2007
    Messages : 6 607
    Points : 13 122
    Points
    13 122

    Par défaut

    Citation Envoyé par mattmax Voir le message
    Donc je suis obligé de gérer dynamiquement mon nom de variable
    On est jamais "obligé" de gérer dynamiquement les noms de variables, sauf à faire un générateur de code. Ton affirmation vient du fait que tu t'enfermes dans ta conception, visiblement erronée.

    On ne voit dasn ton exemple aucune nécessité d'avoir un lien entre un nom de variable et celui d'un noeud xml.

    Tu ne serais pas un ex dev PHP par hasard ?

  9. #9
    Membre du Club
    Inscrit en
    juin 2009
    Messages
    161
    Détails du profil
    Informations forums :
    Inscription : juin 2009
    Messages : 161
    Points : 64
    Points
    64

    Par défaut

    Le problème est que ce n'est pas moi qui décide de la conception , mon chef a creer un modele XML qui sert dans un programme qu'il a développe lui meme en Windev pour creer des éditions, et les éléments XML sont en dur dans le code WINDEV je n'ai pas trop le choix ,donc je dois adapter dans mon code VB.net et dans le XML que mon chef a créer

    Mais je pense avoir trouver une solution qu'il faut que je teste

  10. #10
    Inactif
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    janvier 2007
    Messages
    6 607
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : janvier 2007
    Messages : 6 607
    Points : 13 122
    Points
    13 122

    Par défaut

    Citation Envoyé par mattmax Voir le message
    Le problème est que ce n'est pas moi qui décide de la conception , mon chef a creer un modele XML qui sert dans un programme qu'il a développe lui meme en Windev pour creer des éditions, et les éléments XML sont en dur dans le code WINDEV je n'ai pas trop le choix ,donc je dois adapter dans mon code VB.net et dans le XML que mon chef a créer
    Encore une fois,on ne voit pas le rapport entre le nom des variables et celui des balises XML.

  11. #11
    Membre Expert Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    octobre 2008
    Messages
    829
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : octobre 2008
    Messages : 829
    Points : 1 671
    Points
    1 671

    Par défaut

    @mattmax : quand tu mets 1 topic en résolu tu pourrais au moins avoir l’amabilité de poster la solution, ne serais-ce que par respect pour les membres qui ont essayés de te t'aider.

    Merci.

  12. #12
    Membre du Club
    Inscrit en
    juin 2009
    Messages
    161
    Détails du profil
    Informations forums :
    Inscription : juin 2009
    Messages : 161
    Points : 64
    Points
    64

    Par défaut

    Je testais la solution je n'allais posté la solution si elle ne fonctionnait pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    accueiljour_prevu = XmlDoc.CreateElement("ACCUEIL" & j & "JOUR" & k & "_PREVU")
    ou j et k sont mon nombre d'accueil et mon nombre de jour

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

Discussions similaires

  1. [JSTL] nom de variable "dynamique"
    Par gmonta31 dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 04/05/2006, 13h31
  2. Nom de variable dynamique
    Par mavina dans le forum Linux
    Réponses: 7
    Dernier message: 26/04/2006, 20h48
  3. Réponses: 4
    Dernier message: 13/09/2005, 11h50
  4. Noms de Variables dynamiques
    Par horec dans le forum Langage
    Réponses: 7
    Dernier message: 22/07/2005, 16h47
  5. [SQL SERVER 2000] Noms de variables dynamiques
    Par cassoulet dans le forum MS SQL-Server
    Réponses: 9
    Dernier message: 08/09/2004, 11h44

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