Le challenge 39 est arrivé. Ce challenge concerne une application de gestion d’inventaire. Votre travail consiste à calculer le profit par article (coût par rapport aux ventes) en utilisant une méthode FIFO (First In First Out).
Cette application possède une table qui stocke les informations d’achats (coût) d’un article et une autre table qui stocke le détail de ses ventes. Vous devez calculer le profit engendré par chaque vente en calculant la différence entre le coût et le prix de vente. Si un article est acheté plus d’une fois, on admettra que le stock le plus anicien sera soldé en premier.
Logique d’achat d’un article
- Le prix d’achat doit être calculé en utilisant la méthode FIFO. Par exemple, pour la seconde vente de l’article « A001″, sur 5 articles vendus, 3 ont été acheté à $ 10.50 pièce et les 2 autres ont été acheté à $ 13.25 pièce. (voir section sample data)
- Une vente apparaitra dans la table des ventes uniquement s’il existe une quantité suffisante en stock à compter de cette date pour couvrir l’ensemble de la vente.
- La vente d’articles pour une date donnée peut utiliser, si nécessaire, les articles achetés à la même date.
- Les colonnes de dates ne prennent pas en compte les heures.
- Pour chaque table il existe une seule entrée par date et par article
Règles importantes à respecter
- La solution doit être composée d’une seule requête qui commence par les instructions « SELECT », « WITH » ou « ;WITH »
- Si vous voulez utiliser une table de référence de valeurs séquentielles, vous pouvez utiliser le script fourni ici. La solution ne doit pas inclure ce script. La table de référence des valeurs séquentielles sera disponible dans la base de données servant à l’évaluation.
Bon amusement !!
David BARBARIN (Mikedavem)
Elève ingénieur CNAM Lyon
MVP SQL Server