|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Membre actif
![]() Richard Ingénieur développement logiciels Inscription : août 2004 Messages : 166 ![]() |
Bonjour à tous,
Je viens de lire à peu près tout ce qui concerne la POO sur le forum sans trouver réponse à mon problème. Voilà j'ai développé une appli de gestion dans laquelle on trouve, très schématiquement, des affaires, des factures, du CA, du Volume d'affaires... Chaque affaire est, bien sûr désignée par une clé unique, de même que les factures, par exemple. par contre les infos les concernant peuvent figurer dans d'autres tables (exp: entête de facture, lignes de factures et pied de facture sont 3 tables différentes). Mon idée serait de déclarer un nouvel objet Affaire, par exemple (en lui passant son ID unique en paramètre) qui pourrait me renvoyer - des propriétés en lecture seule comme son CA (autre table) ou le volume d'affaires concerné (encore une autre table). - des propriétés en lecture/écriture, comme un statut (en cours, sans suite, clôturée...) Je pourrais également lui appliquer des méthodes (suppression dans certains cas de figure...) Mon problème est un souci de création des modules de classe correspondants. Pourriez-vous me donner un début de piste à suivre? (en fait je suis parvenu à créer une classe affaire grâce à laquelle je parviens à déclarer un objet affaire avec certaines propiétés, mais je ne trouve pas la syntaxe pour affecter cet objet vide à une affaire existante) Merci d'avance... Ci-après un proto de ce que j'ai fait (ne riez pas Code :
Code :
|
||||
|
|
00
|
|
|
#2 | ||
![]() ![]() ![]() |
Bonjour,
Il peut être également intéressant (envisageable) d'utiliser des structures (Type). Code :
Mais ça peut être un truc intéressant ; le problème c'est que ce que tu vas mettre en place sera pas ou peu portable du fait que cela sera propriétaire (d'un point de vus sujet traité) ; or, par définition, la POO est faîte pour être réutilisable et donc générique. Argy
__________________
Ils comptent sur vous... Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment. Web Site ‡ @Mail Livres : VBA pour OFFICE 2007 et MICROSOFT ACCESS 2007 Nouveau Tutoriel : Déployer vos applications avec Microsoft Access 2010 MDB Viewer : Visionneuse Access v4.0 |
||
|
|
10
|
|
|
#3 |
|
Membre actif
![]() Richard Ingénieur développement logiciels Inscription : août 2004 Messages : 166 ![]() |
Merci argyronet de ta réponse rapide.
Je tiens compte de tes remarques mais je me suis mal exprimé: l'idée de base était d'avoir un property get d'un ID (IDAffaire) et de dire dans mon code: Après déclaration de la nouvelle affaire : et de pouvoir avoir à dispo des propriétés du genre: Et des méthodes style: ou Le problème c'est que j'ai du mal à concevoir le passage du paramètre ID dans le module de classe. Cela dit tu as peut-être raison en disant que tout çà çà n'est qu'une nouvelle manière (plus complexe) d'avoir ce que j'ai déjà dans des fonctions classiques. Je me voyais déjà comparant des trucs comme: ou Code :
Si Affaire.Facturée Alors affaire.Cloture |
|
|
00
|
|
|
#4 | ||||
![]() ![]() ![]() |
Oui effectivement vu comme ça... Bon voici un exemple :
Dans un module, tu colles : Code :
Code :
tblAffaires avec les champ d de l'instruction Type (voir code) tblCAAffaires avec les champs IDAffaire(Long) et CA(Monnaie) tblStatut avec les champs IDStatut(Long) et Statut(Texte) et les valeurs 1, 2 et 3 respectivement pour En cours, Clôturé et Annulé En espérant que cela t'aide dans ton projet... Argy
__________________
Ils comptent sur vous... Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment. Web Site ‡ @Mail Livres : VBA pour OFFICE 2007 et MICROSOFT ACCESS 2007 Nouveau Tutoriel : Déployer vos applications avec Microsoft Access 2010 MDB Viewer : Visionneuse Access v4.0 |
||||
|
|
00
|
|
|
#5 | ||||
|
Membre actif
![]() Richard Ingénieur développement logiciels Inscription : août 2004 Messages : 166 ![]() |
Re-Bonjour Argy!
Effectivement, j'ai réussi à "bidouiller" un truc équivalent en créant un module de classe "Affaire" qui contient: Code :
Code :
UneAffaire CA 15536.89 Datdeb #29/06/2008# DatFin #14/08/2008# IDduContact "KRAMER Terry Allen : ALLEN COMPANY" LibelleAffaire "Ca" ReferenceAffaire "2008 01 L13" C'est exactement ce que je voulais!!! Merci argy tu m'as mis sur la piste...
|
||||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com