IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Modélisation Discussion :

Avis / conseils sur modélisation


Sujet :

Modélisation

  1. #41
    Membre régulier
    Homme Profil pro
    Automaticien
    Inscrit en
    Décembre 2015
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Automaticien

    Informations forums :
    Inscription : Décembre 2015
    Messages : 84
    Points : 107
    Points
    107
    Par défaut
    Bonsoir fsmrel,

    Encore une fois merci de me consacrer votre temps !

    Citation Envoyé par fsmrel Voir le message
    Tout ce qui suit n’est qu’une proposition de scénario, vous me direz ce que vous en pensez...
    J'adore vos propositions de scénario, ça va toujours dans le bon sens...

    Citation Envoyé par fsmrel Voir le message
    pourquoi pas n’irait-elle pas modifier le contenu de la table ADRESSE FACTURE ?
    La solution était à l'époque de l'empêcher de modifier cette facture et d'historiser toute les adresses de facturation dans la table ADRESSE_FACTURE.
    Cependant si elle peut la modifier tranquillement dans ADRESSE_FACTURE, (sans crainte) puisque les adresses sont gravés (et non reliés) à la table FACTURE...
    C'est parfait !

    Et si on part dans ce modèle, pourquoi garder les dates ? Qu'en pensez vous ?

    Les virer me faciliterai la vie pour la conception, de plus la table ne grossirait et garderait pas inutilement l'ensemble des adresses alors que ma femme se moque de savoir que tel client a habité à un endroit X puis un an après Y puis cinq ans après Z (j'avais fait ça uniquement pour garder l'ultime contrainte qu'une facture éditée ne peut être modifiée (en cas de contrôles, ça ferait tâche...)), ainsi il sera relativement simple de pré-remplir l'adresse du client puisqu'une seule par client serait présente dans la liste d'adresses...

    Et on pourrait ainsi virer les vilaines tables de dates !

    Citation Envoyé par fsmrel Voir le message
    On retrouve les mêmes ingrédients, mais disons que si votre utilisatrice y touche, ça n’a pas de conséquence sur les factures étant entendu qu’elle n’aura pas le moyen de toucher à ces dernières une fois enregistrées.
    Simple, fonctionnel et efficace... Tout ce que j'aime


    Citation Envoyé par fsmrel Voir le message
    J’ai fait figurer la période durant laquelle un client a résidé à une adresse (le recouvrement des périodes est à rendre possible ou non : à vous d’en décider avec le maître d’ouvrage, à savoir Mme Nono...)
    Quand vous parlez de recouvrement, c'est si un client a deux résidences et que celui-ci se paye le luxe de vouloir être un coup facturé à la résidence 1, un coup à la 2 (ça ressemble à un client menant une double vie )... C'est bien ça?

    Je lui demanderai ce weekend ce qu'elle en pense...(je suis actuellement absent de la maison...)

    Connaissant ma femme elle va me dire quelque chose du genre : "Non, ne fait pas trop compliqué une fois de plus !"
    Mais la connaissant très bien, elle serait aussi bien capable d'être étonnée de ne pas pouvoir avoir le choix de facturer à une adresse ou l'autre...
    Je pense donc que je vais laisser le choix à plusieurs adresses "actives" et aussi de pouvoir les supprimer dans ADRESSE_FACTURE (puisqu'une fois écrites en dur dans la facturation, aucun risque de suppression ne pointe le bout de son nez côté factures).

    Citation Envoyé par fsmrel Voir le message
    N.B. Je n’ai pas regardé le sous-univers VILLES, mais bon...
    Ah, vous sentez que mon affaire pue un peu dans l'état actuel ?

    Citation Envoyé par fsmrel Voir le message
    Ainsi, on romprait le lien entre VENTE et TVA, en logeant dans VENTE le taux (en dur) utilisé. Le montant hors taxe et la TVA figureraient systématiquement dans les entités-types concernées, à savoir en plus de VENTE : PRESTATION et PRESTA_SUPPLEMENT (remplaçant l’association entre PRESTATION et SUPPLEMENT).





    En revanche, des entités-types comme SUPPLEMENT ou FORFAIT restent en l’état. Si la valeur du taux de TVA qu’elles référencent change, c’est cette nouvelle valeur qui désormais leur est applicable.
    Effectivement, comme pour les adresses, c'est bénéfique on pourrait imaginer de supprimer la table date pour la TVA, ne garder uniquement que la valeur en cours pour chaque TVA tout en sauvegardant le tout dans la facturation (puisque la TVA des suppléments est écrite en dur dans PRESTA_SUPPLEMENT (table qui au passage aurait été naturellement créé au passage en MLD), la TVA des ventes serait écrite en dur dans VENTE, ainsi la TVA des forfaits de prestation serait écrite en dur dans PRESTATION). J'écris TVA mais il en va de même avec le montant HT qui serait écrit en dur et se mettrait à jour de façon simple et naturelle en modifiant les prix "en cours" pour les nouveaux et ce, sans conserver un historique monstrueux et inutile...


    Une fois de plus, vous êtes d'une efficacité redoutable !

    Merci à vous, je vous souhaite une bonne nuitée !

    A bientôt


    PS :
    Citation Envoyé par fsmrel Voir le message
    Bonsoir Nono
    Envoyé à 5h01, je continue à penser que vous avez un décalage horaire (ou bien vous vous êtes donné beaucoup de mal pour me répondre à un moment difficile)
    Il y a 10 types de personnes dans le monde : ceux qui comptent en binaire et les autres.

  2. #42
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 000
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 000
    Points : 30 897
    Points
    30 897
    Billets dans le blog
    16
    Par défaut Dates de facture, TVA
    Bonsoir Nono,



    Citation Envoyé par Nono
    Et si on part dans ce modèle, pourquoi garder les dates ? Qu'en pensez vous ?

    Les virer me faciliterai la vie pour la conception, de plus la table ne grossirait et garderait pas inutilement l'ensemble des adresses alors que ma femme se moque de savoir que tel client a habité à un endroit X puis un an après Y puis cinq ans après Z (j'avais fait ça uniquement pour garder l'ultime contrainte qu'une facture éditée ne peut être modifiée (en cas de contrôles, ça ferait tâche...)), ainsi il sera relativement simple de pré-remplir l'adresse du client puisqu'une seule par client serait présente dans la liste d'adresses...

    Et on pourrait ainsi virer les vilaines tables de dates !

    Dans votre MCD, il y a une bijection entre les entités-types ADRESSE_FACTURE et DATE_AJOUT_ADRESSE, confirmée par les règles RG113 et RG114 : ces deux entités-types ne devraient ici n’en faire qu’une. Vous aurez par ailleurs observé que dans le diagramme que j’ai fourni dans mon message précédent, l’entité-type DATE_AJOUT_ADRESSE est absente : je l’avais considérée comme inessentielle, elle doit disparaître.



    Citation Envoyé par Nono
    Quand vous parlez de recouvrement, c'est si un client a deux résidences et que celui-ci se paye le luxe de vouloir être un coup facturé à la résidence 1, un coup à la 2 [S](ça ressemble à un client menant une double vie )[S]... C'est bien ça?
    Je pensais simplement au fait qu’un client puisse résider à deux adresses à un instant t, mais sans vraiment penser à la facturation. Maintenant, à Mme l’utilisatrice de choisir l’adresse pour la facture qu’elle va produire, si effectivement un client a plus d’une adresse.



    Citation Envoyé par Nono
    Je pense donc que je vais laisser le choix à plusieurs adresses "actives" et aussi de pouvoir les supprimer dans ADRESSE_FACTURE (puisqu'une fois écrites en dur dans la facturation, aucun risque de suppression ne pointe le bout de son nez côté factures).
    Pas de problème. Si Mme supprime une adresse à tort, elle ne pourra s’en prendre qu’à elle-même...

    De toute façon, si elle veut récupérer une adresse supprimée par « mégarde », vous lui aurez concocté une fonction permettant de recopier une adresse depuis la table FACTURE, ou encore d’aller à la pêche dans les fichiers de sauvegarde...



    Citation Envoyé par Nono
    Ah, vous sentez que mon affaire pue un peu dans l'état actuel ?
    Non. Etant donné que le MCD est urbanisé, je considère a priori le sous-univers VILLES comme ayant une importance bien plus faible que le reste, je n’ai pas mis le nez dedans et sursois donc à son expertise.



    Citation Envoyé par Nono
    Effectivement, comme pour les adresses, c'est bénéfique on pourrait imaginer de supprimer la table date pour la TVA.
    Vous aurez observé que dans mon précédent message, l’entité-type DATE_APPLIC_PRIX est absente du MCD : elle aussi est inessentielle, l’attribut id_date_applic_prix suffit largement.


    Citation Envoyé par Nono
    table qui au passage aurait été naturellement créé au passage en MLD.
    Bien entendu, mais avec une clé primaire à laquelle aurait participé l’attribut id_supplement, alors que cette fois-ci, ce dernier ne participera qu’à une clé étrangère. En fait, sémantiquement parlant, j’ai considéré PRESTA_SUPPLEMENT non pas comme une entité-type associative, mais comme une entité-type faible relativement à PRESTATION, c'est-à-dire une propriété multivaluée de PRESTATION. Et puis on ne sait jamais, si PRESTA_SUPPLEMENT est à mettre un beau jour en relation avec une autre entité-type, si elle n’est qu’association, il faudra commencer par la déguiser en entité-type, puisqu’on ne peut pas associer une association à une autre association (ce qui est idiot, mais c’est...) : c’est en fait l’histoire des lignes de commande auxquelles on accroche des engagements, voyez ici le cas (2) « Cas des associations de un à plusieurs : variante ».


    Sinon, on est manifestement en phase pour la TVA et les prix.


    Une question quand même : votre utilisatrice change au jour J par exemple le prix d’un forfait ou d’un supplément, et puis le lendemain décide de revenir à J-1 : a-t-elle les moyens de le faire ?
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

  3. #43
    Membre régulier
    Homme Profil pro
    Automaticien
    Inscrit en
    Décembre 2015
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Automaticien

    Informations forums :
    Inscription : Décembre 2015
    Messages : 84
    Points : 107
    Points
    107
    Par défaut
    Bonjour fsmrel,


    Citation Envoyé par fsmrel Voir le message
    Dans votre MCD, il y a une bijection entre les entités-types ADRESSE_FACTURE et DATE_AJOUT_ADRESSE, confirmée par les règles RG113 et RG114 : ces deux entités-types ne devraient ici n’en faire qu’une. Vous aurez par ailleurs observé que dans le diagramme que j’ai fourni dans mon message précédent, l’entité-type DATE_AJOUT_ADRESSE est absente : je l’avais considérée comme inessentielle, elle doit disparaître.
    Je crois que l'on ne c'est pas entièrement compris, j'ai du foirer mon explication !

    Supprimer les entités-type DATE est une évidence, mais je parlais de supprimer aussi tout rapport aux dates dans les tables ADRESSE_FACTURE et TVA.

    Ce qui donnerait :
    ADRESSE_FACTURE {id_client, id_adresse_facture, nom_adresse_facture, id_ville}
    Puisque les adresses seraient sauvegardés en dur dans l'entité-type FACTURE, il n'y a pas besoin de dater l'application de l'adresse et de sauvegarder les précédentes... Ainsi ma femme n'aurait qu'une (ou plusieurs si résidence secondaire) adresse(s) par client et modifierais dans le SGBDR directement l'enregistrement correspondant à l'adresse !

    TVA {id_tva, nom_tva, valeur_tva}
    Puisque partout où la tva serait utilisée, elle serait sauvegardée (sauf pour les forfaits et les suppléments où elle serait liée permettant de mettre à jour les prix en fonction de la tva).


    Quel en est votre avis sur cette idée?

    Citation Envoyé par fsmrel Voir le message
    Maintenant, à Mme l’utilisatrice de choisir l’adresse pour la facture qu’elle va produire, si effectivement un client a plus d’une adresse.
    La réponse de madame : "ne le prévois pas, ça n'arrive que rarement"
    Ma réponse : "si ce cas arrive même rarement, ça doit être prévu"


    Citation Envoyé par fsmrel Voir le message
    De toute façon, si elle veut récupérer une adresse supprimée par « mégarde », vous lui aurez concocté une fonction permettant de recopier une adresse depuis la table FACTURE, ou encore d’aller à la pêche dans les fichiers de sauvegarde...
    Je n'y avais pas pensé, c'est une excellente idée, je note ça dans un coin

    Citation Envoyé par fsmrel Voir le message
    Une question quand même : votre utilisatrice change au jour J par exemple le prix d’un forfait ou d’un supplément, et puis le lendemain décide de revenir à J-1 : a-t-elle les moyens de le faire ?
    Désolé si je commence à me projeter dans le SGBDR, ça m'aide à expliquer...

    Si elle modifie directement l'enregistrement en question dans sa table forfait, et revient dessus pour la remodifier il n'y aurait pas de soucis particulier...
    Les prix étant écrits en dur au moment de l'édition de la prestation.
    Les prestations effectuées entre les deux modifications de l'enregistrement de la table FORFAIT sont sauvegardés et donc intouchables...

    Dans la nouvelle révision, pour suivre la philosophie appliquée, les relations liant les entités-types suivantes ont été supprimées :
    LIVRAISON_ARTICLE (1,1) ----- (1,N) TVA
    ARTICLE_DEVIS (1,1) ----- (1,N) TVA


    Voici ci-dessous les fichiers :
    Toilettage.zip

    Ainsi que les règles :

    Totalitée :
    RG001 : Un client prend au moins 0 et au plus plusieurs rdv.
    RG002 : Un rdv est pris par au moins 1 et au plus 1 client.
    RG003 : Un rdv contient au moins 1 et au plus plusieurs animaux.
    RG004 : Un détail des animaux en rdv est présent dans au moins 1 et au plus 1 rdv.
    RG005 : Un client appartiens à au moins 1 et au plus 1 civilité.
    RG006 : Une civilité désigne au moins 0 et au plus plusieurs clients.
    RG007 : Un client possède au moins 0 et au plus plusieurs animaux.
    RG008 : Un animal appartient à au moins 1 et au plus 1 maitre (client).
    RG009 : Un client a pu résider à au moins 0 et au plus plusieurs adresses de facturation.
    RG010 : Une adresse de facturation appartient à au moins 1 et au plus 1 clients.
    RG011 : Un client peut recevoir au moins 0 et au plus plusieurs devis.
    RG012 : Un devis est adressée à au moins 1 et au plus 1 client.
    RG013 : Un client peut recevoir au moins 0 et au plus plusieurs factures.
    RG014 : Une facture est adressée à au moins 1 et au plus 1 client.
    RG015 : Une facture est liée à au moins 0 et au plus plusieurs devis.
    RG016 : Un devis abouti à au moins 0 et au plus 1 facture.
    RG017 : Une facture est réglée en au moins 1 et au plus plusieurs règlements.
    RG018 : Un paiement est en règlement d'au moins 1 et au plus plusieurs factures. (A voir si pas trop compliqué d'un point de vue compta)
    RG019 : Une facture est éditée par au moins 1 et au plus 1 employé.
    RG020 : Un employé peut éditer au moins 0 et au plus plusieurs factures.
    RG021 : Un devis est édité par au moins 1 et au plus 1 employé.
    RG022 : Un employé peut éditer au moins 0 et au plus plusieurs devis.
    RG023 : Un paiement de facture est réalisé via au moins 1 et au plus 1 type de paiement.
    RG024 : Un moyen de paiement est utilisé dans au moins 0 et au plus plusieurs paiement de factures.
    RG025 : Un détail des animaux en rdv contient au moins 1 et au plus 1 animal.
    RG026 : Un animal peut se rendre à au moins 0 et au plus plusieurs rdv.
    RG027 : Une longueur de poil se retrouve dans au moins 0 et au plus plusieurs prestations.
    RG028 : Une prestation décrit au moins 1 et au plus 1 longueur de poil.
    RG029 : Un client prenant rdv pour son animal prévoit au moins 1 et au plus 1 type de forfait.
    RG030 : Un type de forfait peut se retrouver dans au moins 0 et au plus plusieurs rdv d'animaux.
    RG031 : Une race fait partie d'au moins 1 et au plus 1 type d'animal.
    RG032 : Un type d'animal possède au moins 1 et au plus plusieurs races.
    RG033 : Une race définit au moins 1 et au plus 1 taille d'animal.
    RG034 : Une taille d'animal se retrouve dans au moins 0 et au plus plusieurs races.
    RG035 : Un pays est composé d'au moins 1 et au plus plusieurs villes.
    RG036 : Une ville se situe dans au moins 1 et au plus 1 pays.
    RG037 : Un employé peut passer au moins 0 et au plus plusieurs commandes.
    RG038 : Une commande peut être passée par au moins 1 et au plus 1 employé.
    RG039 : Un employé peut réceptionner au moins 0 et au plus plusieurs livraisons.
    RG040 : Une livraison peut être réceptionnée par au moins 1 et au plus 1 employé.
    RG041 : Un employé peut effectuer au moins 0 et au plus plusieurs prestations.
    RG042 : Une prestation peut être réalisée par au moins 1 et au plus 1 employé.
    RG043 : Un paiement de commande est réalisé via au moins 1 et au plus plusieurs type de paiement.
    RG044 : Un moyen de paiement est utilisé dans au moins 0 et au plus plusieurs paiement de commandes.
    RG045 : Une commande est passée chez au moins 1 et au plus 1 fournisseur.
    RG046 : Un fournisseur peut recevoir au moins 0 et au plus plusieurs commandes.
    RG047 : Un animal peut faire l'objet d'au moins 0 et au plus plusieurs prestations.
    RG048 : Une prestation peut être réalisée sur au moins 1 et au plus 1 animal.
    RG049 : Un article apparait dans au moins 0 et au plus plusieurs ligne de vente de factures.
    RG050 : Une ligne de vente dans une facture peut contenir au moins 1 et au plus 1 articles.
    RG051 : Un article apparait dans au moins 0 et au plus plusieurs lignes de devis.
    RG052 : Une ligne dans un devis peut contenir au moins 1 et au plus 1 articles.
    RG053 : Un article peut être demandé au moins 0 et au plus plusieurs fois dans une ligne de commande.
    RG054 : Une ligne de commande peut contenir au moins 1 et au plus 1 articles.
    RG055 : Un article apparait dans au moins 0 et au plus plusieurs ligne de bon de livraison.
    RG056 : Une ligne de bon de livraison peut contenir au moins 1 et au plus 1 articles.
    RG057 : Un article peut appartenir à au moins 1 et au plus 1 catégorie d'articles.
    RG058 : Une catégorie d'articles peut contenir au moins 0 et au plus plusieurs articles.
    RG059 : Une commande contient au moins 1 et au plus plusieurs (articles/lignes) de commande.
    RG060 : Une ligne de commande appartient à au moins 1 et au plus 1 commande.
    RG061 : Une commande peut aboutir à au moins 1 et au plus plusieurs livraisons.
    RG062 : Une livraison peut être à la suite d'au moins 1 et au plus plusieurs commandes.
    RG063 : Un devis peut contenir au moins 0 et au plus plusieurs lignes avec des forfaits de prestation.
    RG064 : Une ligne de devis pour un forfait fait partie d'au moins 1 et au plus 1 devis.
    RG065 : Un devis peut contenir au moins 0 et au plus plusieurs lignes avec des articles.
    RG066 : Une ligne de devis pour un article fait partie d'au moins 1 et au plus 1 devis.
    RG067 : Une facture peut contenir au moins 0 et au plus plusieurs lignes de prestations.
    RG068 : Une prestation peut être au moins 1 et au plus 1 fois facturée.
    RG069 : Une facture peut contenir au moins 0 et au plus plusieurs lignes de vente d'articles.
    RG070 : Une ligne de facture concernant un article peut être au moins 1 et au plus 1 fois affiché sur la facture.
    RG071 : Un article est fourni par au moins 1 et au plus plusieurs fournisseurs.
    RG072 : Un fournisseur peut fournir au moins 0 et au plus plusieurs articles.
    RG073 : Une livraison peut être délivrée par au moins 1 et au plus 1 transporteur.
    RG074 : Un transporteur peut effectuer au moins 0 et au plus plusieurs livraisons.
    RG075 : Une ville contient au moins 0 et au plus plusieurs adresses de clients.
    RG076 : Une adresse de facturation se situe dans au moins 1 et au plus 1 ville.
    RG077 : Une ville contient au moins 0 et au plus plusieurs adresses d'employés.
    RG078 : Une adresse d'employé se situe dans au moins 1 et au plus 1 ville.
    RG079 : Une ville contient au moins 0 et au plus plusieurs adresses de transporteurs.
    RG080 : Une adresse de transporteurs se situe dans au moins 1 et au plus 1 ville.
    RG081 : Une ville contient au moins 0 et au plus plusieurs adresses de fournisseurs.
    RG082 : Une adresse de fournisseurs se situe dans au moins 1 et au plus 1 ville.
    RG083 : Supprimée  
    RG084 : Supprimée  
    RG085 : Supprimée  
    RG086 : Supprimée  
    RG087 : Supprimée  
    RG088 : Supprimée  
    RG089 : Une livraison comporte au moins 1 et au plus plusieurs lignes dans le bon de livraison.
    RG090 : Une ligne dans un bon de livraison se retrouve dans au moins 1 et au plus 1 une livraison.
    RG091 : Une ligne dans un devis concernant un forfait comporte au moins 1 et au plus 1 forfait.
    RG092 : Un forfait se retrouve dans au moins 0 et au plus plusieurs ligne de devis.
    RG093 : Un forfait se retrouve dans au moins 0 et au plus plusieurs prestations.
    RG094 : Une prestation est basé sur au moins 1 et au plus 1 forfait.
    RG095 : Une taille d'animal se retrouve dans au moins 1 et au plus plusieurs forfaits.
    RG096 : Un forfait se compose d'au moins 1 et au plus 1 taille d'animal.
    RG097 : Un type d'animal définit au moins 1 et au plus plusieurs forfaits.
    RG098 : Un forfait dépend d'au moins 1 et au plus 1 type d'animal.
    RG099 : Un forfait appartient à au moins 1 et au plus 1 type de forfait.
    RG100 : Un type de forfait est composé d'au moins 0 et au plus plusieurs forfaits.
    RG101 : Un client possède au moins 0 et au plus plusieurs contacts.
    RG102 : Un contact est lié à au moins 1 et au plus 1 client.
    RG103 : Un animal appartient à au moins 1 et au plus 1 race.
    RG104 : Une race est composée d'au moins 0 et au plus plusieurs animaux.
    RG105 : Une tva s'applique sur au moins 1 et au plus plusieurs forfaits.
    RG106 : Une forfait comporte au moins 1 et au plus 1 tva.
    RG107 : Un forfait est définit par au moins 1 et au plus 1 longueur de poil.
    RG108 : Une longueur de poil définit au moins 1 et au plus plusieurs forfaits.
    RG109 : Un supplément de prestation fait partie d'au moins 1 et au plus 1 prestation.
    RG110 : Une prestation contient au moins 0 et au plus plusieurs suppléments de prestation.
    RG111 : Un supplément de prestation comporte au moins 1 et au plus 1 tva.
    RG112 : Une tva s'applique sur au moins 1 et au plus plusieurs suppléments.
    RG113 : Un supplément de prestation affecte au moins 1 et au plus 1 supplément.
    RG114 : Un supplément est affecté par au moins 0 et au plus plusieurs suppléments de prestation.
    RG115 : Supprimée  
    RG116 : Supprimée  
    RG117 : Supprimée  
    RG118 : Supprimée  
    RG119 : Un employé est désigné dans au moins 1 et au plus 1 niveau d'accès
    RG120 : Un niveau d'accès permet de désigner les droits d'au moins 0 et au plus plusieurs employés.
    RG121 : Un article peut être au moins 0 et au plus plusieurs fois consommé.
    RG122 : Une consommation d'article décrit au moins 1 et au plus 1 article consommé
    
    Achat :
    RG037 : Un employé peut passer au moins 0 et au plus plusieurs commandes.
    RG038 : Une commande peut être passée par au moins 1 et au plus 1 employé.
    RG043 : Un paiement de commande est réalisé via au moins 1 et au plus plusieurs type de paiement.
    RG044 : Un moyen de paiement est utilisé dans au moins 0 et au plus plusieurs paiement de commandes.
    RG045 : Une commande est passée chez au moins 1 et au plus 1 fournisseur.
    RG046 : Un fournisseur peut recevoir au moins 0 et au plus plusieurs commandes.
    RG053 : Un article peut être demandé au moins 0 et au plus plusieurs fois dans une ligne de commande.
    RG054 : Une ligne de commande peut contenir au moins 1 et au plus 1 articles.
    RG059 : Une commande contient au moins 1 et au plus plusieurs (articles/lignes) de commande.
    RG060 : Une ligne de commande appartient à au moins 1 et au plus 1 commande.
    RG071 : Un article est fourni par au moins 1 et au plus plusieurs fournisseurs.
    RG072 : Un fournisseur peut fournir au moins 0 et au plus plusieurs articles.
    RG119 : Un employé est désigné dans au moins 1 et au plus 1 niveau d'accès
    RG120 : Un niveau d'accès permet de désigner les droits d' au moins 0 et au plus plusieurs employés.
    
    Animaux :
    RG007 : Un client possède au moins 0 et au plus plusieurs animaux.
    RG008 : Un animal appartient à au moins 1 et au plus 1 maitre (client).
    RG025 : Un détail des animaux en rdv contient au moins 1 et au plus 1 animal.
    RG026 : Un animal peut se rendre à  au moins 0 et au plus plusieurs rdv.
    RG027 : Une longueur de poil se retrouve dans au moins 0 et au plus plusieurs prestations.
    RG028 : Une prestation décrit au moins 1 et au plus 1 longueur de poil.
    RG031 : Une race fait partie d' au moins 1 et au plus 1 type d'animal.
    RG032 : Un type d'animal possède au moins 1 et au plus plusieurs races.
    RG033 : Une race définit au moins 1 et au plus 1 taille d'animal.
    RG034 : Une taille d'animal se retrouve dans au moins 0 et au plus plusieurs races.
    RG047 : Un animal peut faire l'objet d' au moins 0 et au plus plusieurs prestations.
    RG048 : Une prestation peut être réalisée sur au moins 1 et au plus 1 animal.
    RG103 : Un animal appartient à au moins 1 et au plus 1 race.
    RG104 : Une race est composée d' au moins 0 et au plus plusieurs animaux.
    
    Clients :
    RG001 : Un client prend  au moins 0 et au plus plusieurs rdv.
    RG002 : Un rdv est pris par au moins 1 et au plus 1 client.
    RG005 : Un client appartiens à  au moins 1 et au plus 1 civilité.
    RG006 : Une civilité désigne  au moins 0 et au plus plusieurs clients.
    RG007 : Un client possède au moins 0 et au plus plusieurs animaux.
    RG008 : Un animal appartient à au moins 1 et au plus 1 maitre (client).
    RG009 : Un client a pu résider à au moins 0 et au plus plusieurs adresses de facturation.
    RG010 : Une adresse de facturation appartient à au moins 1 et au plus 1 clients.
    RG011 : Un client peut recevoir au moins 0 et au plus plusieurs devis.
    RG012 : Un devis est adressée à au moins 1 et au plus 1 client.
    RG013 : Un client peut recevoir  au moins 0 et au plus plusieurs factures.
    RG014 : Une facture est adressée à au moins 1 et au plus 1 client.
    RG015 : Une facture est liée à  au moins 0 et au plus plusieurs devis.
    RG016 : Un devis abouti à  au moins 0 et au plus 1 facture.
    RG101 : Un client possède au moins 0 et au plus plusieurs contacts.
    RG102 : Un contact est lié à au moins 1 et au plus 1 client.
    
    Coeur :
    RG007 : Un client possède au moins 0 et au plus plusieurs animaux.
    RG008 : Un animal appartient à au moins 1 et au plus 1 maitre (client).
    RG009 : Un client a pu résider à au moins 0 et au plus plusieurs adresses de facturation.
    RG010 : Une adresse de facturation appartient à au moins 1 et au plus 1 clients.
    RG013 : Un client peut recevoir  au moins 0 et au plus plusieurs factures.
    RG014 : Une facture est adressée à au moins 1 et au plus 1 client.
    RG019 : Une facture est éditée par au moins 1 et au plus 1 employé.
    RG020 : Un employé peut éditer au moins 0 et au plus plusieurs factures.
    RG041 : Un employé peut effectuer au moins 0 et au plus plusieurs prestations.
    RG042 : Une prestation peut être réalisée par au moins 1 et au plus 1 employé.
    RG047 : Un animal peut faire l'objet d' au moins 0 et au plus plusieurs prestations.
    RG048 : Une prestation peut être réalisée sur au moins 1 et au plus 1 animal.
    RG067 : Une facture peut contenir au moins 0 et au plus plusieurs lignes de prestations.
    RG068 : Une prestation peut être au moins 1 et au plus 1 fois facturée.
    RG069 : Une facture peut contenir au moins 0 et au plus plusieurs lignes de vente d'articles.
    RG070 : Une ligne de facture concernant un article peut être au moins 1 et au plus 1 fois affiché sur la facture.
    
    Devis :
    RG011 : Un client peut recevoir au moins 0 et au plus plusieurs devis.
    RG012 : Un devis est adressée à au moins 1 et au plus 1 client.
    RG013 : Un client peut recevoir  au moins 0 et au plus plusieurs factures.
    RG014 : Une facture est adressée à au moins 1 et au plus 1 client.
    RG015 : Une facture est liée à  au moins 0 et au plus plusieurs devis.
    RG016 : Un devis abouti à  au moins 0 et au plus 1 facture.
    RG019 : Une facture est éditée par au moins 1 et au plus 1 employé.
    RG020 : Un employé peut éditer au moins 0 et au plus plusieurs factures.
    RG021 : Un devis est édité par au moins 1 et au plus 1 employé.
    RG022 : Un employé peut éditer au moins 0 et au plus plusieurs devis.
    RG051 : Un article apparait dans au moins 0 et au plus plusieurs lignes de devis.
    RG052 : Une ligne dans un devis peut contenir au moins 1 et au plus 1 articles.
    RG063 : Un devis peut contenir au moins 0 et au plus plusieurs lignes avec des forfaits de prestation.
    RG064 : Une ligne de devis pour un forfait fait partie d' au moins 1 et au plus 1 devis.
    RG065 : Un devis peut contenir au moins 0 et au plus plusieurs lignes avec des articles.
    RG066 : Une ligne de devis pour un article fait partie d' au moins 1 et au plus 1 devis.
    RG091 : Une ligne dans un devis concernant un forfait comporte au moins 1 et au plus 1 forfait.
    RG092 : Un forfait se retrouve dans au moins 0 et au plus plusieurs ligne de devis.
    
    Factures :
    RG011 : Un client peut recevoir au moins 0 et au plus plusieurs devis.
    RG012 : Un devis est adressée à au moins 1 et au plus 1 client.
    RG013 : Un client peut recevoir  au moins 0 et au plus plusieurs factures.
    RG014 : Une facture est adressée à au moins 1 et au plus 1 client.
    RG015 : Une facture est liée à  au moins 0 et au plus plusieurs devis.
    RG016 : Un devis abouti à  au moins 0 et au plus 1 facture.
    RG017 : Une facture est réglée en  au moins 1 et au plus plusieurs règlements.
    RG018 : Un paiement est en règlement d' au moins 1 et au plus plusieurs factures. (A voir si pas trop compliqué d'un point de vue compta)
    RG019 : Une facture est éditée par au moins 1 et au plus 1 employé.
    RG020 : Un employé peut éditer au moins 0 et au plus plusieurs factures.
    RG021 : Un devis est édité par au moins 1 et au plus 1 employé.
    RG022 : Un employé peut éditer au moins 0 et au plus plusieurs devis.
    RG023 : Un paiement de facture est réalisé via au moins 1 et au plus 1 type de paiement.
    RG024 : Un moyen de paiement est utilisé dans au moins 0 et au plus plusieurs paiement de factures.
    RG041 : Un employé peut effectuer au moins 0 et au plus plusieurs prestations.
    RG042 : Une prestation peut être réalisée par au moins 1 et au plus 1 employé.
    RG067 : Une facture peut contenir au moins 0 et au plus plusieurs lignes de prestations.
    RG068 : Une prestation peut être au moins 1 et au plus 1 fois facturée.
    RG069 : Une facture peut contenir au moins 0 et au plus plusieurs lignes de vente d'articles.
    RG070 : Une ligne de facture concernant un article peut être au moins 1 et au plus 1 fois affiché sur la facture.
    
    Forfaits :
    RG091 : Une ligne dans un devis concernant un forfait comporte au moins 1 et au plus 1 forfait.
    RG092 : Un forfait se retrouve dans au moins 0 et au plus plusieurs ligne de devis.
    RG093 : Un forfait se retrouve dans au moins 0 et au plus plusieurs prestations.
    RG094 : Une prestation est basé sur au moins 1 et au plus 1 forfait.
    RG095 : Une taille d'animal se retrouve dans au moins 1 et au plus plusieurs forfaits.
    RG096 : Un forfait se compose d' au moins 1 et au plus 1 taille d'animal.
    RG097 : Un type d'animal définit au moins 1 et au plus plusieurs forfaits.
    RG098 : Un forfait dépend d' au moins 1 et au plus 1 type d'animal.
    RG099 : Un forfait appartient à  au moins 1 et au plus 1 type de forfait.
    RG100 : Un type de forfait est composé d' au moins 0 et au plus plusieurs forfaits.
    RG105 : Une tva s'applique sur  au moins 1 et au plus plusieurs forfaits.
    RG106 : Une forfait comporte au moins 1 et au plus 1 tva.
    RG107 : Un forfait est définit par au moins 1 et au plus 1 longueur de poil.
    RG108 : Une longueur de poil définit au moins 1 et au plus plusieurs forfaits.
    
    Livraisons :
    RG039 : Un employé peut réceptionner au moins 0 et au plus plusieurs livraisons.
    RG040 : Une livraison peut être réceptionnée par au moins 1 et au plus 1 employé.
    RG045 : Une commande est passée chez au moins 1 et au plus 1 fournisseur.
    RG046 : Un fournisseur peut recevoir au moins 0 et au plus plusieurs commandes.
    RG053 : Un article peut être demandé au moins 0 et au plus plusieurs fois dans une ligne de commande.
    RG054 : Une ligne de commande peut contenir au moins 1 et au plus 1 articles.
    RG055 : Un article apparait dans au moins 0 et au plus plusieurs ligne de bon de livraison.
    RG056 : Une ligne de bon de livraison peut contenir au moins 1 et au plus 1 articles.
    RG059 : Une commande contient au moins 1 et au plus plusieurs (articles/lignes) de commande.
    RG060 : Une ligne de commande appartient à au moins 1 et au plus 1 commande.
    RG061 : Une commande peut aboutir à au moins 1 et au plus plusieurs livraisons.
    RG062 : Une livraison peut être à la suite d' au moins 1 et au plus plusieurs commandes.
    RG071 : Un article est fourni par au moins 1 et au plus plusieurs fournisseurs.
    RG072 : Un fournisseur peut fournir au moins 0 et au plus plusieurs articles.
    RG073 : Une livraison peut être délivrée par  au moins 1 et au plus 1 transporteur.
    RG074 : Un transporteur peut effectuer au moins 0 et au plus plusieurs livraisons.
    RG089 : Une livraison comporte au moins 1 et au plus plusieurs lignes dans le bon de livraison.
    RG090 : Une ligne dans un bon de livraison se retrouve dans au moins 1 et au plus 1 une livraison.
    
    RDV :
    RG001 : Un client prend  au moins 0 et au plus plusieurs rdv.
    RG002 : Un rdv est pris par au moins 1 et au plus 1 client.
    RG003 : Un rdv contient  au moins 1 et au plus plusieurs animaux.
    RG004 : Un détail des animaux en rdv est présent dans au moins 1 et au plus 1 rdv.
    RG007 : Un client possède au moins 0 et au plus plusieurs animaux.
    RG008 : Un animal appartient à au moins 1 et au plus 1 maitre (client).
    RG025 : Un détail des animaux en rdv contient au moins 1 et au plus 1 animal.
    RG026 : Un animal peut se rendre à  au moins 0 et au plus plusieurs rdv.
    RG029 : Un client prenant rdv pour son animal prévoit  au moins 1 et au plus 1 type de forfait.
    RG030 : Un type de forfait peut se retrouver dans au moins 0 et au plus plusieurs rdv d'animaux.
    RG097 : Un type d'animal définit au moins 1 et au plus plusieurs forfaits.
    RG098 : Un forfait dépend d' au moins 1 et au plus 1 type d'animal.
    RG099 : Un forfait appartient à  au moins 1 et au plus 1 type de forfait.
    RG100 : Un type de forfait est composé d' au moins 0 et au plus plusieurs forfaits.
    
    Stocks :
    RG049 : Un article apparait dans au moins 0 et au plus plusieurs ligne de vente de factures.
    RG050 : Une ligne de vente dans une facture peut contenir au moins 1 et au plus 1 articles.
    RG055 : Un article apparait dans au moins 0 et au plus plusieurs ligne de bon de livraison.
    RG056 : Une ligne de bon de livraison peut contenir au moins 1 et au plus 1 articles.
    RG057 : Un article peut appartenir à au moins 1 et au plus 1 catégorie d'articles.
    RG058 : Une catégorie d'articles peut contenir au moins 0 et au plus plusieurs articles.
    RG071 : Un article est fourni par au moins 1 et au plus plusieurs fournisseurs.
    RG072 : Un fournisseur peut fournir au moins 0 et au plus plusieurs articles.
    RG121 : Un article peut être  au moins 0 et au plus plusieurs fois consommé.
    RG122 : Une consommation d'article décrit au moins 1 et au plus 1 article consommé
    
    Suppléments :
    RG109 : Un supplément de prestation fait partie d' au moins 1 et au plus 1 prestation.
    RG110 : Une prestation contient au moins 0 et au plus plusieurs suppléments de prestation.
    RG111 : Un supplément de prestation comporte au moins 1 et au plus 1 tva.
    RG112 : Une tva s'applique sur  au moins 1 et au plus plusieurs suppléments.
    RG113 : Un supplément de prestation affecte au moins 1 et au plus 1 supplément.
    RG114 : Un supplément est affecté par au moins 0 et au plus plusieurs suppléments de prestation.
    
    TVA :
    RG067 : Une facture peut contenir au moins 0 et au plus plusieurs lignes de prestations.
    RG068 : Une prestation peut être au moins 1 et au plus 1 fois facturée.
    RG069 : Une facture peut contenir au moins 0 et au plus plusieurs lignes de vente d'articles.
    RG070 : Une ligne de facture concernant un article peut être au moins 1 et au plus 1 fois affiché sur la facture.
    RG093 : Un forfait se retrouve dans au moins 0 et au plus plusieurs prestations.
    RG094 : Une prestation est basé sur au moins 1 et au plus 1 forfait.
    RG105 : Une tva s'applique sur  au moins 1 et au plus plusieurs forfaits.
    RG106 : Une forfait comporte au moins 1 et au plus 1 tva.
    RG109 : Un supplément de prestation fait partie d' au moins 1 et au plus 1 prestation.
    RG110 : Une prestation contient au moins 0 et au plus plusieurs suppléments de prestation.
    RG111 : Un supplément de prestation comporte au moins 1 et au plus 1 tva.
    RG112 : Une tva s'applique sur  au moins 1 et au plus plusieurs suppléments.
    RG113 : Un supplément de prestation affecte au moins 1 et au plus 1 supplément.
    RG114 : Un supplément est affecté par au moins 0 et au plus plusieurs suppléments de prestation.
    
    Villes :
    RG009 : Un client a pu résider à au moins 0 et au plus plusieurs adresses de facturation.
    RG010 : Une adresse de facturation appartient à au moins 1 et au plus 1 clients.
    RG035 : Un pays est composé d' au moins 1 et au plus plusieurs villes.
    RG036 : Une ville se situe dans au moins 1 et au plus 1 pays.
    RG075 : Une ville contient au moins 0 et au plus plusieurs adresses de clients.
    RG076 : Une adresse de facturation se situe dans au moins 1 et au plus 1 ville.
    RG077 : Une ville contient au moins 0 et au plus plusieurs adresses d'employés.
    RG078 : Une adresse d'employé se situe dans au moins 1 et au plus 1 ville.
    RG079 : Une ville contient au moins 0 et au plus plusieurs adresses de transporteurs.
    RG080 : Une adresse de transporteurs se situe dans au moins 1 et au plus 1 ville.
    RG081 : Une ville contient au moins 0 et au plus plusieurs adresses de fournisseurs.
    RG082 : Une adresse de fournisseurs se situe dans au moins 1 et au plus 1 ville.
    

    Je crois que ça commence à plus être trop vilain...

    Dès que j'ai le temps, j'avance sur le dossier de conception et le remet à jour avec la partie IHM prévue !

    Bonne soirée.
    Il y a 10 types de personnes dans le monde : ceux qui comptent en binaire et les autres.

  4. #44
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 000
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 000
    Points : 30 897
    Points
    30 897
    Billets dans le blog
    16
    Par défaut Précisions
    Bonsoir Nono,


    Il y a une précision à faire figurer dans la règle RG047. En l’état, elle est la suivante :

    RG047 : Un animal peut faire l'objet d' au moins 0 et au plus plusieurs prestations.

    Mais cela vaut-il pour une facture donnée ? La règle ne le dit pas, donc doute il y a.

    Actuellement, l’entité-type PRESTATION a deux clés candidates :

    id : {realise_sur_animal.RG047, id_prestation} : dans tous les cas, so far, so good.

    id’ :{realise_sur_animal.RG047, contient_prestation.RG067} : so far, mais peut-être pas so good, si pour une facture et un animal on pouvait avoir plus d’une prestation...

    Je note bien que dans le MCD, du fait de l’existence de l’identifiant alternatif id’, pour une facture donnée, un animal ne peut pas faire l’objet de plus d’une prestation, il n’empêche que la règle doit être en phase. Cf. ma remarque ici.



    Citation Envoyé par Nono
    Ce qui donnerait :
    ADRESSE_FACTURE {id_client, id_adresse_facture, nom_adresse_facture, id_ville}
    D’accord, on évacue la date.


    Citation Envoyé par Nono
    TVA {id_tva, nom_tva, valeur_tva}
    Puisque partout où la tva serait utilisée, elle serait sauvegardée (sauf pour les forfaits et les suppléments où elle serait liée permettant de mettre à jour les prix en fonction de la tva).
    Je suis plus réservé pour évacuer la date. Peut-être n’est-ce qu’une manie, mais de mon côté, j’ai toujours prudemment conservé la trace de l’évolution des taux de TVA, de manière à répondre à des questions « innocentes » de la part des utilisateurs, du genre :

    « Tel id_article fait référence à tel id_tva, qui dit qu’aujourd’hui le taux correspondant est de tant, mais depuis telle date t, ce taux a-t-il changé ? si oui, quel était-il alors ? »

    Les taux étant historisés, on peut vérifier s’il existe une période p dans laquelle s’inscrit t. Si p existe, alors on fournit la valeur du taux pour cette période, sinon on fournit la valeur actuelle du taux.



    Citation Envoyé par Nono
    Si elle modifie directement l'enregistrement en question dans sa table forfait, et revient dessus pour la remodifier il n'y aurait pas de soucis particulier...
    Soit. Toutefois, peut-être aimerait-elle pouvoir afficher le forfait dans l’état où il était précédemment. Version de luxe : une historisation des forfaits permettrait de lui simplifier la vie, façon « »... Mais ceci donnerait lieu à une négociation serrée (portant sur la richesse fonctionnelle...) entre la maîtrise d'ouvrage (qui, en principe, a les moyens) et son fournisseur unique et préféré (qui sait vendre son savoir-faire)...
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

  5. #45
    Membre régulier
    Homme Profil pro
    Automaticien
    Inscrit en
    Décembre 2015
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Automaticien

    Informations forums :
    Inscription : Décembre 2015
    Messages : 84
    Points : 107
    Points
    107
    Par défaut
    Bonjour fsmrel,

    Citation Envoyé par fsmrel Voir le message
    Il y a une précision à faire figurer dans la règle RG047. En l’état, elle est la suivante :

    RG047 : Un animal peut faire l'objet d' au moins 0 et au plus plusieurs prestations.
    Pour différentes factures un animal peut faire l'objet d'au moins 0 et au plus plusieurs prestations.


    C'est mieux dans ce sens?

    Citation Envoyé par fsmrel Voir le message
    Je suis plus réservé pour évacuer la date. Peut-être n’est-ce qu’une manie, mais de mon côté, j’ai toujours prudemment conservé la trace de l’évolution des taux de TVA
    Je comprend la démarche et vous fait entièrement confiance, je vous suis les yeux fermés !

    Citation Envoyé par fsmrel Voir le message
    Soit. Toutefois, peut-être aimerait-elle pouvoir afficher le forfait dans l’état où il était précédemment. Version de luxe : une historisation des forfaits permettrait de lui simplifier la vie, façon « »... Mais ceci donnerait lieu à une négociation serrée (portant sur la richesse fonctionnelle...) entre la maîtrise d'ouvrage (qui, en principe, a les moyens) et son fournisseur unique et préféré (qui sait vendre son savoir-faire)...
    Ok, donc c'est mieux d'historiser aussi pour une meilleure traça !

    Je remet à jour et remet le MCD en ligne (les modifications seront toutefois mineures).

    Bonne soirée, à bientôt.
    Il y a 10 types de personnes dans le monde : ceux qui comptent en binaire et les autres.

  6. #46
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 000
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 000
    Points : 30 897
    Points
    30 897
    Billets dans le blog
    16
    Par défaut Ambiguïté
    Bonsoir Nono,


    Citation Envoyé par Nono
    Pour différentes factures un animal peut faire l'objet d'au moins 0 et au plus plusieurs prestations.
    C'est mieux dans ce sens ?
    Pas trop, car l’ambiguïté demeure...

    Appelons un chat un chat (qu’il fasse ou non l’objet d’une prestation...) Je récapépète depuis le bédut :

    Etant donné l’alternative suivante :

    (a) Pour une facture F1 et un animal A1 donnés, il y a au moins et au plus une prestation ;

    (b) Pour une facture F1 et un animal A1 donnés, il y a au moins une et au plus plusieurs prestations.

    Quelle règle retient-on ? La première ou la seconde ?


    Bon courage pour le MCD nouveau !
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

  7. #47
    Membre régulier
    Homme Profil pro
    Automaticien
    Inscrit en
    Décembre 2015
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Automaticien

    Informations forums :
    Inscription : Décembre 2015
    Messages : 84
    Points : 107
    Points
    107
    Par défaut
    Bonjour fsmrel,

    Je réponds avec un retard considérable, désolé mais j'étais très pris par le boulot !

    Citation Envoyé par fsmrel Voir le message
    (a) Pour une facture F1 et un animal A1 donnés, il y a au moins et au plus une prestation ;
    Je retiens donc la première, puisqu'un animal ne peut subir (oui subir, puisqu'il n'aime pas aller chez le toiletteur...) qu'une prestation par facture à ce jour.
    Cependant si ma femme veut en changer à l'avenir, il ne me resterait qu'à supprimer la clef alternative comme vous l'aviez expliqué dans vos précédents post !

    Voici ci-dessous le MCD, les changements sont vraiment mineurs...
    Toilettage 070516.zip


    Les règles n'ont pas bougé hormis celle-ci :
    RG047 : Pour une facture F1 et un animal A1 donnés, il y a  au moins 1 et au plus 1 prestations.
    
    Je n'ai malheureusement pas beaucoup de temps en se moment à consacrer au projet.

    Voyez vous d'autres coquilles?

    Merci de votre aide,
    Bonne journée.
    Il y a 10 types de personnes dans le monde : ceux qui comptent en binaire et les autres.

  8. #48
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 000
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 000
    Points : 30 897
    Points
    30 897
    Billets dans le blog
    16
    Par défaut
    Bonsoir Nono,


    Citation Envoyé par Nono
    Je n'ai malheureusement pas beaucoup de temps en se moment à consacrer au projet.
    Et de mon côté, j’ai dû m’absenter durant une assez longue période...

    Je regarderai tout ça dès que j’aurai un moment. En attendant, bon courage dans le cadre de votre activité automaticienne...
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

  9. #49
    Membre régulier
    Homme Profil pro
    Automaticien
    Inscrit en
    Décembre 2015
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Automaticien

    Informations forums :
    Inscription : Décembre 2015
    Messages : 84
    Points : 107
    Points
    107
    Par défaut
    Bonjour fsmrel,


    Me revoilà, après une longue période d'absence je suis de nouveau revenu sur ce projet !!

    J'ai fait l'export de DB-Main vers Access pour ajouter les tables, relations, index.
    Maintenant, je commence a préparer un projet d'essais.

    J'ai une petite question qui porte plus sur Access que la modélisation mais je suis sur que vous serez en mesure de répondre à ma question !

    Voilà, quand je prend la table ANIMAL par exemple :
    {id_client, id_animal, ..., id_type_animal, id_race}

    Mes clefs primaires sont bien id_client et id_animal.
    id_client est un Numérique (FK venant de la table CLIENT).
    id_animal est un NumeroAuto.

    Cependant, comme je le pensais à l'ajout d'un animal Access renvoie ça :

    id_client , id_animal
    1 , 1
    1 , 2
    2 , 3
    2 , 4
    4 , 5


    Le NumeroAuto implique l'incrémentation à chaque ajout, c'est logique d'ailleurs mais dans les exemples que vous avez précédemment donnés vous décriviez ça :

    id_client , id_animal
    1 , 1
    1 , 2
    2 , 1
    2 , 2
    4 , 1

    Alors comment dois-je faire? Laisser en NumeroAuto ou juste en Numerique et à l'ajout d'un animal mettre un bout de code pour rechercher la valeur max pour un client donné et incrémenter cette valeur?


    Merci par avance, bon dimanche et à très vite.



    PS: Je voulais vous envoyer un petit MP mais votre boite de réception est pleine...
    Il y a 10 types de personnes dans le monde : ceux qui comptent en binaire et les autres.

Discussions similaires

  1. Réponses: 17
    Dernier message: 21/07/2015, 11h32
  2. Avis, conseils sur "rentabiliweb"
    Par __fabrice dans le forum SSII
    Réponses: 0
    Dernier message: 29/11/2012, 12h22
  3. Avis/Conseil sur DC pour gestion personnel
    Par draghysck dans le forum Diagrammes de Classes
    Réponses: 4
    Dernier message: 03/06/2009, 08h42
  4. Avis-conseil sur conception simple DC / appli gestion fiches
    Par Okaryn dans le forum Diagrammes de Classes
    Réponses: 7
    Dernier message: 14/04/2009, 12h53
  5. [Avis] Conseil sur un élement WEB
    Par Delphy113 dans le forum Webdesign & Ergonomie
    Réponses: 3
    Dernier message: 29/01/2007, 15h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo