Bonjour Chris,
Tout d'abord, merci pour ta réponse (j’espérais secrètement que tu passes par mon fil pour me répondre
)
J'ai bien réfléchie sur tes suggestions, et voici mon nouveau schéma:
Regarde la pièce jointe 311728
- J'ai renommé les tables, c'est plus claire maintenant.
- Diviser la table "Element" en deux: une pour les ventes T_LignesVentes et l'autre pour les commandes fournisseurs T_LignesAchats
- Quelques modifications sur la table: T_ventes:
- Prix: on voit le prix total des articles (lignes de ventes). Je conseille aussi de garder le prix de vente dans la ligne détail donc dans T_LignesVentes. Si on garde aussi le prix d'achat dans T_LignesAchats on peut calculer sa marge brute plus facilement
- Réduction: on peut faire une réduction sur le prix total de la vente.
- Prix de vente = Prix - réduction
- Date_commande = la date à laquelle le client à valider son achats
- Date_réalisation = date à laquelle la finalisation de la vente est prévue (ex: si l'article n'est pas en stock, la date à laquelle on prévoit de le recevoir et donc de le livrer au client pour finaliser la vente).
- Finalisation (oui/non): lorsque la vente est entièrement payée, et que tous les articles sont livrés.
- Ajouter une table T_paiement, pour avoir un suivi des paiement: Si un client paye en plusieurs fois une vente, ou donne un acompte, ça me permet de suivre ça de plus près.
Concernant la table LignesVentes, voici ma logique:
T_LignesAchats - T_LignesVentes(qui ont le statut effectué) = Stock
(selon champ Finalisation ou statut(?) de la table T_LignesVentes, stock réel ou théorique : il faut faire attention aux champ qui permettent de faire ce calcul article par article sans ambiguïté.
Lors d'une vente, si le stock
réel d'un article est > 0 ; alors l'article est en stock, la Ligne de vente peut alors être réalisée, et le statut de la ligne de vente devient :"effectué"
Si stock = ou < 0; nous sommes en rupture pour cette article. La vente peut se faire, mais la ligne de vente ne sera pas effectué, mais "à commandé". (on rempliera aussi le champs: "prévu le", pour garder en tête la date de livraison client).
C'est un peu plus compliqué car il peut y avoir des commandes fournisseurs en cours.
Il faut donc tenir compte du stock réel et du stock théorique pour savoir si on attend le produit ou s'il faut en commander
Lorsque nous aurons fait la commande au fournisseur, le statut de la commande sera alors: "commandé".
Puis lorsque nous aurons reçus l'article, et nous l'aurons livré au client, le statut sera "effectué"
Qu'en penses-tu?
Fonctionnellement, mon but est de pouvoir:
* connaitre quels articles sont à commander, et en cours de commande.
* une fois commandés (changement de statut), ils disparaissent de ma liste d'articles "à commander".
* une fois reçu et livré au client (changement de statut), ils sont décomptés dans le niveau des stocks. Et la vente peut être clôturée.
* avoir une trace pour tous les clients: de chaque ventes, paiements, commandes.
* avoir une trace de toutes les ventes non clôturées.
* avoir un rapport régulier hebdo/mensuel du CA et des ventes
* avoir accès à mon niveau des stocks en temps réel
Selon vous, est-ce que le schéma de ma BD permet tout cela?
Si oui, je vais devoir passer à l'étape d'après: les formulaires ou requêtes?
Pourriez-vous me guider ou me renseigner vers des tutos (y en a des milliers sur le net, je ne sais pas vers lesquels me tourner).
Merci d'avance.
sarah