Programme > dico de données > VB

lyziee Messages postés 2 Date d'inscription vendredi 1 juin 2007 Statut Membre Dernière intervention 1 juin 2007 - 1 juin 2007 à 11:01
TeBeCo Messages postés 467 Date d'inscription lundi 24 juin 2002 Statut Membre Dernière intervention 9 mars 2011 - 15 juin 2007 à 22:53
Bonjour

avant de realiser  mon application sous VB je dois établir un dictionnaire de données mais je ne sais pas exactemetn comment faire

Je suis parti sur ca : http://img413.imageshack.us/img413/5884/dicocd6.jpg

Suis je sur la bonne voix pour établir un dictionnaire de données ?

merci

4 réponses

defdlm Messages postés 13 Date d'inscription jeudi 13 octobre 2005 Statut Membre Dernière intervention 25 septembre 2007
1 juin 2007 à 11:38
Salut,
On ne vois pas ton liens !!
Mais un dico de donnée c'est juste la décomposition de tous les éléments que tu as dans ton programme, exemple pour une voiture:
Je decompose au plus: phare, ampoules, fil electrique, capot, jante, pneu etc...
En faite une roue=un pneu, une jante, une valve, un bouchon de valve.
le secret c'est de ts décomposer au maximum !!
0
lyziee Messages postés 2 Date d'inscription vendredi 1 juin 2007 Statut Membre Dernière intervention 1 juin 2007
1 juin 2007 à 11:48
pourtant le lien s'affichechez moi

http://img413.imageshack.us/img413/5884/dicocd6.jpg

http://img413.imageshack.us/img413/5884/dicocd6.jpg

merci pour les info, je pense avoir fait ce qu'il fallait alors, j'epsere jsute une petite confirmation en visualisant mon screen
0
cs_lermite222 Messages postés 492 Date d'inscription jeudi 5 avril 2007 Statut Membre Dernière intervention 2 juillet 2012 4
1 juin 2007 à 13:19
bonjour,
en fait ce n'est pas un dictionnaire que tu veux faire mais des fiches détaillées.
De plus le lien que tu communique montre un exemple avec Excel et non en VB


Pour faire ce que tu veux tu doit t'orienter vers une forme de saisie de données et mémorisation dans une BD.

Si tu est débutant(e), cela va nécessité beaucoup d'heures d'étude de la programmation.


Consulte un maximum de sources et de snippet pour te documenter.
Bon courrage..


A+


louis
0
TeBeCo Messages postés 467 Date d'inscription lundi 24 juin 2002 Statut Membre Dernière intervention 9 mars 2011
15 juin 2007 à 22:53
pour géré de tel collection de donnée en mémoire il y a plusieur solutions abordables :

La liste Générique banale associé a un type utilisateur :
tout d'abord tu créé un type qui convient le mieux aux données que tu veux classifier : une structure, une classe, ect ... (a toi de voir ce qui se rapproche le plus
exemple pour faire un annuaire :
Public Structure Utilisateur
    Dim sNom as String
    Dim sPrenom as String
    Dim sTelephone as String
End Structure
Ensuite tu declare directement une liste specifique a cette classe :
Dim MonAnnuaire as new List(Of Utilisateur)

ensuite tu l'utilise :

'Déclaration d'une structure : 1 enregistrement + remplissage
dim toto as Utilisateur
toto.sNom = "toto"
toto.sNom = "tata"
toto.sTelephone = "0123456789"

'Ajout a l'annuaire
MonAnnuaire.add(toto)

Le Fait d'utiliser des classe generique empechera de faire un : MonAnnuaire.Add(tata) avec "tata" d'un type different de celui de la declaration : "Of Utilisateur" donc tout ce qui est pas du type "Utilisateur" et qui tente d'etre inserer fera planter le code ou meme la compil (ca dépend comment c'est fait)

Le Dictionnaire Générique:
idem avec le dictionnaire sauf que les dictonaire demande en plus une clé ce qui permet de faire des recherche direct sur des element
par exemple ici si on veux se servir du numero de telephone (unique par utilisateur) :
dim MonAnnuaire as New Dictionnary(Of String, Of Utilisateur)
on remarque que la clé est placé avant
cette fois il y a 2 champs generique (marqué pas le "Of") un pour l'item et un pour la cle de type string car : "Dim sTelephone as String"

donc :
on declare la structure de la meme maniere et on fait :
MonAnnuaire.add(toto.sTelephone, toto)
ce qui permet apres de faire de retrouver un Utilisateur directement depuis sont telephone sans connaitre sont nom ou tte les valeur ni boucle ni rien :
lblUtilisateur.Text = toto.Item("7548963254").sNom

ou savoir si ce numéro est deja inséré :
if toto.ContainsKey("0235477842") then ....

La Classe spécifique :
tu peux créé une classe specifique qui herite d'une des classe de collection deja existante (generique ou non) avec laquelle tu gere le "MyBase" pour créé les isnertion ect ...
tu override les membre comme "Add", "Remove" ect ... afin de les specialiser a ta sauce.
tu peux aussi pour vraiment faire qqchs de propre, implementer les interface adéquate pour ce genre de chose du style IEnumerator afin de créé des iterateur pour pouvoir faire un "for each" sur ta classe simplement
ect ect ....

personnellement je ferais le choix numéro 3

TeBeCo
0