FORUMS PROFESSIONNELS
WINDEV
,
WEBDEV
et
WINDEV Mobile
Accueil
|
Messages récents
|
Connexion
|
Déconnexion
|
Français
Accueil
→
WINDEV 2024
→
nom de variable inconnu ou modifier le nom d'une variable
nom de variable inconnu ou modifier le nom d'une variable
Débuté par Yannick C, 24 juil. 2017 17:43 - 5 réponses
Connectez-vous…
Yannick C
#1
Membre enregistré
43 messages
Popularité : +1 (1 vote)
Posté le 24 juillet 2017 - 17:43
Bonjour,
Est-ce que quelqu'un a une astuce pour définir un nom de variable inconnu à l'avance ? ou pour modifier le nom d'une variable ?
Par exemple, je voudrais faire ceci :
index
+
+
{
"variable"
+
index
}
est une
C
onnexion
C'est pour gérer des connexions multiples dans une classe générique qui sera utilisée par plusieurs projets (dont le nombre de connexions est variable)
Je suis obligé d'utiliser cette approche car si je déclare dans ma classe une variable "cnx est une Connexion", la connexion sera la même si j'instancie plusieurs fois ma classe, comme si la variable était globale alors qu'elle ne l'est pas.
Ca a l'air d'être lié à la gestion interne des connexions, qui apparaissent dans le débogueur sous le nom "obj#<nom de connexion>"...
Je suis donc obligé de déclarer des noms de variables différents pour chaque connexion, et je voudrais donc générer un nom unique dans le constructeur de ma classe connexion.
Any idea?
Merci d'avance
Yannick
Signaler
0
0
Damien
#2
Membre enregistré
281 messages
Popularité : +24 (26 votes)
Posté le 24 juillet 2017 - 18:55
Ce n'est pas possible en w-language, une idée serait d'utiliser un tableau de connexion.
Signaler
1
0
THIERRY TILLIER
#3
Membre enregistré
1 144 messages
Popularité : +50 (142 votes)
Posté le 24 juillet 2017 - 20:25
Avec une variable dynamique?
Signaler
0
0
Yannick C
#4
Membre enregistré
43 messages
Popularité : +1 (1 vote)
Posté le 25 juillet 2017 - 09:19
@Damien
j'avais commencé par ça, mais comme je déclare une variable connexion avec ses propriétés elle reste la même pour tous les éléments du tableau...
@Thierry
une variable Connexion ne peut pas être dynamique... Connexion n'est pas une classe
En attendant de trouver mieux, je déclare mes connexions en global dans mon projet et je les passe en paramètre des méthodes de ma classe... ça ne me plaît pas mais ça fonctionne
Merci à tous les 2
Si je trouve mieux je posterai la solution
Signaler
0
0
Philippe SB
#5
Membre enregistré
2 571 messages
Popularité : +222 (260 votes)
Posté le 25 juillet 2017 - 10:49
Je suis d'accord avec Damien, il faut faire un tableau de connexions:
ta
MesConnexions
est un tableau
associatif
de
C
onnexions
cnx
UneConnexion
est une
C
onnexion
cnx
UneConnexion
..
BaseDeDonnées
=
"bdd1"
cnx
UneConnexion
..
Libellé
=
"Connexion à toto"
cnx
UneConnexion
..
Provider
=
hAccèsHFClientServeur
cnx
UneConnexion
..
User
=
"user1"
ta
MesConnexions
[
"toto"
] =
cnx
UneConnexion
VariableRAZ
(
cnx
UneConnexion
)
cnx
UneConnexion
..
BaseDeDonnées
=
"bdd2"
cnx
UneConnexion
..
Libellé
=
"Connexion à tutu"
cnx
UneConnexion
..
Provider
=
hAccèsNatifMySQL
cnx
UneConnexion
..
Utilisateur
=
"userMySql"
ta
MesConnexions
[
"tutu"
] =
cnx
UneConnexion
VariableRAZ
(
cnx
UneConnexion
)
cnx
UneConnexion
..
BaseDeDonnées
=
"bdd3"
cnx
UneConnexion
..
Libellé
=
"Connexion à titi"
cnx
UneConnexion
..
Provider
=
hODBC
cnx
UneConnexion
..
Utilisateur
=
"odbc"
ta
MesConnexions
[
"titi"
] =
cnx
UneConnexion
POUR
TOUT
cnx
Connexion
,
s
Cle
de
ta
MesConnexions
Trace
(
"------------------------------------------------------------------------"
)
Trace
(
"[%sCle%] : [%cnxConnexion..BaseDeDonnées%]"
)
Trace
(
"[%sCle%] : [%cnxConnexion..Provider%]"
)
Trace
(
"[%sCle%] : [%cnxConnexion..Utilisateur%]"
)
FIN
Résultat:
------------------------------------------------------------------------
toto : bdd1
toto : WinDevClientServeurHF
toto : user1
------------------------------------------------------------------------
tutu : bdd2
tutu : WinDevMySQL
tutu : userMySql
------------------------------------------------------------------------
titi : bdd3
titi : MSDASQL
titi : odbc
--
Cordialement,
Philippe SAINT-BERTIN
Géode Informatique
Signaler
1
0
Yannick C
#6
Membre enregistré
43 messages
Popularité : +1 (1 vote)
Posté le 25 juillet 2017 - 11:33
La piste du tableau associatif me semble la meilleure en effet !
Un grand merci pour votre aide !
Signaler
0
0
→ Revenir à WINDEV 2024
WINDEV 2024
WEBDEV 2024
WINDEV Mobile 2024
WINDEV (précédentes versions)
WEBDEV (précédentes versions)
WINDEV Mobile (précédentes versions)
Etats & Requêtes
Hors-sujet
Outils
Français
English
Español
Portuguesa
Fermer cette fenêtre
Type de recherche
Uniquement les sujets
Tous les messages
Période de recherche
Date indifférente
Moins d'une heure
Moins de 24 heures
Moins d'une semaine
Moins d'un mois
Moins d'un an
Annuler
Aperçu de votre message
Ajouter une image
Importer une image depuis une URL
Envoyer une image depuis un fichier de votre disque
Déposez ici un fichier ou cliquez sur "Parcourir..."
ou
Annuler
0%
WLangage
SQL
XML, HTML
JAVA, Javascript
Texte