[opendcf: 44] Re: [OpenDCF] MCD et SVN

28 views
Skip to first unread message

Pierre-Adrien Coustillas

unread,
Apr 20, 2010, 9:21:28 AM4/20/10
to Yannick Lorenz, alain ada, ffe...@gmail.com, Mohamed Thiam, ts...@inbox.fr, Emmanuel CEGO, Adel Adman, ope...@googlegroups.com
(j'ai ajouté ope...@googlegroups.com dans les destinataires, pour ceux qui s'était inscrit il y a longtemps vous pouvez gérer votre abonnement sur http://groups.google.com/group/opendcf)


En faite le but de l'héritage est simplement de centraliser les champs identiques dans une même table et de créer des tables supplémentaire qui vont contenir uniquement les champs distinct (ce qui est souvent utilisé quand on crée une table tiers).
Avantage :
- gain de place (dans le cas d'OpenDCF ce n'est pas un argument suffisant)
- pas de redondance de champs . Ca c'est plus interessant car en effet si on souhaite ajouter un champ dans devis_ligne, y'a de très forte chance qu'il faut l'ajouter dans commande_ligne (idem si modification de champ).
- inconvénient, ca augmente la complexité du MCD et des jointures avec des tables plus généraliste.

Quels tables seraient concernés :
commande_ligne et devis_ligne (oui ca semble interessant, tous les champs sont identiques)
commande et devis (moins interessant, il y a plusieurs champ différent, cela crérait 3 tables en tout, table_commune, champs_spécifique_devis, champs_spécifique_commande --> à réfléchir)



Je propose de créer une table ligne_dc (dc comme devis commande)  regroupant commande_ligne et devis_ligne :
id_ligne_dc (clef, auto incremente)
type (devis ou commande)
id_devis_commande (l'identifiant du devis ou de la commande : c'est ce point qui me fait bizare, lorsqu'on fera des jointures il faudra toujours ajouter un WHERE type='devis' en plus du ON  )
id_article (facultatif, car peut ne pas être renseigné si article libre)
autre_champ_de_l'article
autre_champ_de_l'article
autre_champ_de_l'article
autre_champ_de_l'article



Qu'en pensez vous ?






--
1G6
22 rue rhin tortu
67100 Strasbourg
Société de Services et de Formations en Logiciels Libres
http://formation.1g6.biz
Tél : 06 64 63 70 35



----- Mail Original -----
De: "Yannick Lorenz" <ylo...@1g6.biz>
À: "Pierre-Adrien Coustillas" <pcous...@1g6.biz>
Cc: "alain ada" <alai...@gmail.com>, ffe...@gmail.com, "Mohamed Thiam" <mth...@inbox.fr>, ts...@inbox.fr, "Emmanuel CEGO" <ec...@inbox.fr>, "Adel Adman" <aad...@inbox.fr>
Envoyé: Mardi 20 Avril 2010 10:21:09
Objet: Re: [OpenDCF] MCD et SVN

Bonjour à tous,

Je me permet de rajouter mon grain de sel...
Je trouve qu'il y a beaucoup de ressemblance entre les entités "commande" et "devis" et de même pour "devis_ligne" et "commande_ligne".
Ayant un peu cherché comment résoudre cela, je suis tombé ici : http://sqlpro.developpez.com/cours/modelisation/heritage/
Cela ressemble fortement au projet...

Je vous laisse y jeter un oeil !

Yannick




----- Mail Original -----
De: "Pierre-Adrien Coustillas" <pcous...@1g6.biz>
À: "Mohamed Thiam" <mth...@inbox.fr>, ts...@inbox.fr, "Emmanuel CEGO" <ec...@inbox.fr>, "Adel Adman" <aad...@inbox.fr>
Cc: "alain ada" <alai...@gmail.com>, ffe...@gmail.com, "Yannick Lorenz" <ylo...@1g6.biz>
Envoyé: Lundi 19 Avril 2010 21:16:23
Objet: [OpenDCF] MCD et SVN

Hello messieurs

  N'ayant toujours pas de réponse négative d'aucun d'entre vous, j'envoie les mails à tous le monde :-)

J'ai avancé un peu sur le MCD. Il n'y a pas encore toutes les tables mais il est dispo ici : http://opendcf.1g6.biz/opendcf.mwb  (à ouvrir avec mysql work bench)
Concernant le besoin de dupliquer les articles à chaque création de ligne de Devis ou Commande Yannick propose de créer une table des articles utilisés.

J'ai également ajouter dans le SVN  : branches/2.0 (qui ne contient rien pour l'instant) et branches/sandbox (dans lequel zend est pret à etre utilisé dans son répertoire public).
La branche sandbox est comme son nom l'indique le bac à sable pour y rélaiser tous "vos patez" avant d'être placé dans la branches/2.0

Vous pouvez effectuer le checkout avec  : svn checkout http://opendcf.googlecode.com/svn/branches/2.0 sandbox. Sur windows en client graphique svn vous pouvez utiliser le très bon tortoise .
Fred et Alain si en plus vous souhaitez effectuer des commit, demander moi que je vous envoye un mot de passe.

a+

Pierre-Adrien Coustillas

unread,
Apr 20, 2010, 11:12:36 AM4/20/10
to Yannick Lorenz, alain ada, ffe...@gmail.com, Mohamed Thiam, ts...@inbox.fr, Emmanuel CEGO, Adel Adman, ope...@googlegroups.com
Humm... c'est bien pratique que tu est déjà fait du zend :-D

Ok, donc le raisonement c'est : " on optimise au mieux la base afin d'éviter les duplication de champ et ce léger surplus de complexicité sera rattraper par zend."

Pourquoi pas. (J'ai confiance en Merise et en Zend et le raisonement va dans ce sens).

Je vais adapter le MCD et posterai un message pour vous informer quand c'est ok.

Merci Yannick

a+



--
1G6
22 rue rhin tortu
67100 Strasbourg
Société de Services et de Formations en Logiciels Libres
http://formation.1g6.biz
Tél : 06 64 63 70 35



----- Mail Original -----
De: "Yannick Lorenz" <ylo...@1g6.biz>
À: "Pierre-Adrien Coustillas" <pcous...@1g6.biz>
Cc: "alain ada" <alai...@gmail.com>, ffe...@gmail.com, "Mohamed Thiam" <mth...@inbox.fr>, ts...@inbox.fr, "Emmanuel CEGO" <ec...@inbox.fr>, "Adel Adman" <aad...@inbox.fr>, ope...@googlegroups.com
Envoyé: Mardi 20 Avril 2010 16:02:47

Objet: Re: [OpenDCF] MCD et SVN

Bonjour,

Le nombre de table importe peu. Si on ajoute des jointures cela n'est pas grave je pense, dans le sens où il y aura des classes PHP (avec zend) qui seront mappés avec la structure de la BDD... Une classe abstraite "Contrat" qui sera étendue avec une classe "Devis", une "Commande". Les méthodes getDateCreation(), getIdClient(), ... seront donc dans la classes abstraite puisque commune au "Devis" et "Commande".


On aura donc une méthode $monObjetDevis->getLignes(); (présent dans la partie Modele du MVC...) qui s'occupera de faire la jointure.
Ce que je veux dire c'est qu'on aura qu'une seule fois la jointure en code SQL dans le projet. Ainsi s'il faut modifier le "WHERE type='devis'" il suffira de le modifier une seule fois (et non 150 fois comme dans les projet PHP sans objet...)

Tout ce charabia pour dire que la complexité de la base de données influera très peu sur la partie développement. Donc pour moi la complexité du MCD n'est pas vraiment un inconvénient...

Bonne fin de journée

Yannick




----- Mail Original -----
De: "Pierre-Adrien Coustillas" <pcous...@1g6.biz>
À: "Yannick Lorenz" <ylo...@1g6.biz>
Cc: "alain ada" <alai...@gmail.com>, ffe...@gmail.com, "Mohamed Thiam" <mth...@inbox.fr>, ts...@inbox.fr, "Emmanuel CEGO" <ec...@inbox.fr>, "Adel Adman" <aad...@inbox.fr>, ope...@googlegroups.com
Envoyé: Mardi 20 Avril 2010 15:21:28

Pierre-Adrien Coustillas

unread,
Apr 20, 2010, 1:14:06 PM4/20/10
to Yannick Lorenz, alain ada, ffe...@gmail.com, Mohamed Thiam, ts...@inbox.fr, Emmanuel CEGO, Adel Adman, ope...@googlegroups.com
Si tout se base sur les clef etrangère est ce qu'on va jusqu'a utiliser innodb et les contrainte d'intégrité ?

--
1G6
22 rue rhin tortu
67100 Strasbourg
Société de Services et de Formations en Logiciels Libres
http://formation.1g6.biz
Tél : 06 64 63 70 35



----- Mail Original -----
De: "Yannick Lorenz" <ylo...@1g6.biz>
À: "Pierre-Adrien Coustillas" <pcous...@1g6.biz>
Cc: "alain ada" <alai...@gmail.com>, ffe...@gmail.com, "Mohamed Thiam" <mth...@inbox.fr>, ts...@inbox.fr, "Emmanuel CEGO" <ec...@inbox.fr>, "Adel Adman" <aad...@inbox.fr>, ope...@googlegroups.com
Envoyé: Mardi 20 Avril 2010 17:36:10

Objet: Re: [OpenDCF] MCD et SVN

La complexité existera un peu avec Zend, uniquement dans la partie Modèle.
De plus, il sera intéressant de voir comment faire pour que zend te fasse les jointures tout seul (il n'y aura pas --ou peu selon la méthode-- de SQL à écrire...). En gros tu donnera les clés étrangères (donc la structure de la BDD en quelque sorte) et il fera le reste...

Pour plus de détail vous pouvez fouiller ici : http://framework.zend.com/manual/en/zend.db.html
On trouve des objets pour envoyer des requêtes en écrivant du SQL, d'autres sans...

Voilà



----- Mail Original -----
De: "Pierre-Adrien Coustillas" <pcous...@1g6.biz>
À: "Yannick Lorenz" <ylo...@1g6.biz>
Cc: "alain ada" <alai...@gmail.com>, ffe...@gmail.com, "Mohamed Thiam" <mth...@inbox.fr>, ts...@inbox.fr, "Emmanuel CEGO" <ec...@inbox.fr>, "Adel Adman" <aad...@inbox.fr>, ope...@googlegroups.com
Envoyé: Mardi 20 Avril 2010 17:12:36

Pierre-Adrien Coustillas

unread,
Apr 20, 2010, 1:18:12 PM4/20/10
to Yannick Lorenz, alain ada, ffe...@gmail.com, Mohamed Thiam, ts...@inbox.fr, Emmanuel CEGO, Adel Adman, ope...@googlegroups.com
Oui la doc officiel y'a rien de tel, je n'en suis qu'au chapitre " Create Your Project " :-) 

Faut dire que je ne pensais pas dans mon ecriture du MCD me posé la question de ce que peut m'apporter Zend. Faut d'ailleurs je pense pas trop se poser la question, sinon mon nez me dit qu'il y à un bug dans l'analyse (structure d'une BDD en fonction de ca qu'apporte un langage, hummm ... faut faire attention.)

et les autres vous êtes mort ? Alain je crois que après Yannick c'est toi qui connais le mieux Zend ?



--
1G6
22 rue rhin tortu
67100 Strasbourg
Société de Services et de Formations en Logiciels Libres
http://formation.1g6.biz
Tél : 06 64 63 70 35



----- Mail Original -----
De: "Yannick Lorenz" <ylo...@1g6.biz>
À: "Pierre-Adrien Coustillas" <pcous...@1g6.biz>
Cc: "alain ada" <alai...@gmail.com>, ffe...@gmail.com, "Mohamed Thiam" <mth...@inbox.fr>, ts...@inbox.fr, "Emmanuel CEGO" <ec...@inbox.fr>, "Adel Adman" <aad...@inbox.fr>, ope...@googlegroups.com
Envoyé: Mardi 20 Avril 2010 17:44:54

Objet: Re: [OpenDCF] MCD et SVN

http://framework.zend.com/manual/fr/zend.db.html

En français ça risque d'être mieux ^^

Pierre-Adrien Coustillas

unread,
Apr 22, 2010, 3:44:20 AM4/22/10
to ope...@googlegroups.com, alain ada, ffe...@gmail.com, Mohamed Thiam, ts...@inbox.fr, Emmanuel CEGO, Adel Adman, Yannick Lorenz
Ok nouvelle version du mcd : http://opendcf.1g6.biz/opendcf_v2.mwb

Vous en pensez quoi ?




--
1G6
22 rue rhin tortu
67100 Strasbourg
Société de Services et de Formations en Logiciels Libres
http://formation.1g6.biz
Tél : 06 64 63 70 35



----- Mail Original -----
De: "Pierre-Adrien Coustillas" <pcous...@1g6.biz>
À: "Yannick Lorenz" <ylo...@1g6.biz>
Cc: "alain ada" <alai...@gmail.com>, ffe...@gmail.com, "Mohamed Thiam" <mth...@inbox.fr>, ts...@inbox.fr, "Emmanuel CEGO" <ec...@inbox.fr>, "Adel Adman" <aad...@inbox.fr>, ope...@googlegroups.com
Envoyé: Mardi 20 Avril 2010 19:18:12
Objet: [opendcf: 47] Re: [OpenDCF] MCD et SVN
Reply all
Reply to author
Forward
0 new messages