J'ai un problème dans la modélisation d'une base de données contenant des commandes et des factures. En fait, c'est plus un problème d'un point de vue commercial, mais il est relatif à la modélisation de la base de données néanmoins.
Modèle de la table des commandes:
Maintenant, j'avais une autre colonne appelée Payment_deadline, qui a bien eu la date limite de paiement. Ce que je pense, c'est que l'info de ma commande de commande doit avoir et quelle info si mes factures devraient-elles avoir la table?
Lequel a une pièce d'identité de l'employé et du client? Lequel a les prix? Lequel a les informations de paiement? Lequel a la date limite des informations? Je suis totalement perdu.
Je comprends que dans le monde des affaires, un ordre signale que le fournisseur des marchandises doit agir et la facture représente que le fournisseur de biens a rempli sa part et que le client doit maintenant payer pour les biens/services. Mais je suis perdu quant à la modélisation dans la base de données. Toute perspicacité est très appréciée.
Votre question est beaucoup trop large pour fournir des suggestions de conception de table spécifiques. Juste ceci ", lequel a une employé", pourrait signifier des dizaines de choses telles que mentionnées dans la réponse de Neil McGuigan: la personne qui a pris pour la première fois l'appel téléphonique de l'enquête client, la personne des ventes qui a répondu, le Assistant de vente qui a rempli l'ordre des ventes, le gestionnaire de production qui a reconnu la réception de la commande client, les travailleurs qui ont produit les articles sur l'ordre de travail, etc.
Mais je vais vous donner un aperçu simplifié qui pourrait fournir une partie de la perspicacité que vous avez demandée.
En utilisant les définitions de Wikipedia, le flux de travail habituel du client-client est présenté dans ce diagramme. Couleurs signifie:
Après consultation d'une personne commerciale (facultatif), le client soumet un commande de commande à un fournisseur, décrivant exactement quel service/produit ils ont décidé d'acheter. S'il est accepté par le fournisseur, un contrat juridiquement contraignant contrat est établi.
Le ordre des ventes est produit par les vendeurs du vendeur, reflétant le contenu du bon de commande, mais en utilisant le format et le lingo qui a du sens pour le personnel interne du fournisseur.
Le personnel interne du vendeur, les responsables liés à la production (artisans seniors, gestionnaires de fabrication, superviseurs d'entrepôt, etc.) créent un ou plusieurs ordre de travail Documents dirigeant leur personnel sur ce qu'il faut faire pour rendre les services/produits souhaité par le client.
Lorsque toute partie ou toute partie de l'article d'achat a été rendue au client, une facture est préparée par le fournisseur et livré au client pour exiger le paiement. La facture doit faire référence au numéro de commande d'achat/ID.
Enfin, le client effectue un paiement avec une sorte de type conseils de versement Référencement du numéro de facture/ID. Cette étape complète la transaction (ignorant les retours, Commandes ou d'autres problèmes).
Le diagramme ci-dessus est pas une table ou diagramme d'entité . Par exemple, vous pouvez bien avoir plusieurs ordres de travail pour un ordre de vente. Vous pouvez avoir plusieurs factures si des livraisons partielles sont apportées au client. Ou, imaginez si le personnel de fabrication ne construit que deux unités de WonderWidget à la fois pour éviter le gaspillage. Nous devons donc attendre qu'un autre client commande un deuxième widget, tout en attendant que nous ne produisons pas encore de commande de travail. Pendant ce temps, nous pouvons commencer à commencer par d'autres éléments sur la commande client et nous produisons des ordres de travail pour ces premiers articles. Dans ce scénario, nous avons une relation plusieurs à plusieurs dans laquelle tout ordre de vente peut avoir plus d'un ordre de travail (le client souhaite plusieurs articles avec certains de ces articles en attendant WonderWidget Production à Commencez) Alors que chaque commande de travail peut avoir plus d'une commande de vente ci-jointe (une paire de commandes de vente de différents clients en cas de double - mervewidget Production).
Le commerce de détail en personne est beaucoup plus simple, avec un flux de travail de trois étapes instantanées, dont seulement deux des documents (ou des entités de base de données).
Un client attrape des trucs de l'étagère du magasin, présente au comptoir de la caisse, un registre comporte les éléments (semblable à un ordre de vente), le paiement est exécuté et un reçu de vente est produit. Le reçu des ventes est fondamentalement la combinaison de la notification du registre (ordre de vente) plus les détails du paiement (numéro de carte de crédit partiel, date-heure, etc.).
Encore une fois, cela est simplifié parce que nous ignorons les retours et ces problèmes.
Encore une fois ce diagramme n'est pas un diagramme de table ni d'entité.
Avec la commande Web ou par téléphone en ligne, le flux de travail est probablement une combinaison des deux ci-dessus. Si le client paie immédiatement, nous n'avons pas besoin de conseils sur la facture et les envois de versions. Si c'est une petite boutique, la commande de vente et l'ordre de travail peuvent être la même entité unique, alors que s'il s'agit d'une entreprise de style Amazon.com avec plusieurs entrepôts, nous aurons des commandes de travail multiples.
Juste pour vous donner une saveur comme une nouvelle conception de table, voici un design grossièrement simplifié. Conception partielle, juste pour la commande de vente. Ce diagramme utilise un simple des crows-pied Notation et Types de données Postgres . Abréviations: pk
signifie clé primaire et fk
signifie clé étrangère .