Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 12 sur 12
  1. #1
    Membre du Club
    Inscrit en
    juin 2009
    Messages
    161
    Détails du profil
    Informations forums :
    Inscription : juin 2009
    Messages : 161
    Points : 58
    Points
    58

    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 :
    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 Benoît
    Inscrit en
    février 2003
    Messages
    1 731
    Détails du profil
    Informations personnelles :
    Nom : Homme Benoît
    Âge : 33
    Localisation : Belgique

    Informations forums :
    Inscription : février 2003
    Messages : 1 731
    Points : 2 593
    Points
    2 593

    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 mohammed dghoughi
    Développeur .NET
    Inscrit en
    mars 2011
    Messages
    51
    Détails du profil
    Informations personnelles :
    Nom : Homme mohammed dghoughi
    Localisation : Maroc

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

    Informations forums :
    Inscription : mars 2011
    Messages : 51
    Points : 55
    Points
    55

    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 : 58
    Points
    58

    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 :
    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 Sébastien
    Développeur .NET / DBA SQL SERVER
    Inscrit en
    avril 2007
    Messages
    11 173
    Détails du profil
    Informations personnelles :
    Nom : Homme Sébastien
    Âge : 32
    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 173
    Points : 17 129
    Points
    17 129

    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 :
    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 Benoît
    Inscrit en
    février 2003
    Messages
    1 731
    Détails du profil
    Informations personnelles :
    Nom : Homme Benoît
    Âge : 33
    Localisation : Belgique

    Informations forums :
    Inscription : février 2003
    Messages : 1 731
    Points : 2 593
    Points
    2 593

    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 Sébastien
    Développeur .NET / DBA SQL SERVER
    Inscrit en
    avril 2007
    Messages
    11 173
    Détails du profil
    Informations personnelles :
    Nom : Homme Sébastien
    Âge : 32
    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 173
    Points : 17 129
    Points
    17 129

    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 François
    Chef de projet NTIC
    Inscrit en
    janvier 2007
    Messages
    6 608
    Détails du profil
    Informations personnelles :
    Nom : Homme François
    Âge : 53
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : janvier 2007
    Messages : 6 608
    Points : 12 114
    Points
    12 114

    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 : 58
    Points
    58

    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 François
    Chef de projet NTIC
    Inscrit en
    janvier 2007
    Messages
    6 608
    Détails du profil
    Informations personnelles :
    Nom : Homme François
    Âge : 53
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : janvier 2007
    Messages : 6 608
    Points : 12 114
    Points
    12 114

    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
    576
    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 : 576
    Points : 1 066
    Points
    1 066

    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 : 58
    Points
    58

    Par défaut

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

    Code :
    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.

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •