Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bonjour à tous,
Je rencontre un certain nombre de difficultés dans la construction d'une application :
Je travaille sur une base de données assez simple remontant les informations suivantes :
part_no : référence tenue en stock.
bin.qty : quantité en stock de la référence dans une localisation spécifique
bin : localisation de stock
y2 : consommation de l'année Y-2
y1 : consommation de l'année Y-1
future_usage : besoin à venir
cost : coût unitaire
tot_cost : valeur de stock
L'idée est catégoriser chaque référence en fonction des consommation passé mais également de valoriser chaque catégorie en tenant compte des besoins futurs.
Pour faciliter cela j'ai pu créer plusieurs variables dans le script (avec déjà l'aide de la communauté)
[Variation Conso] qui correspond à la variation entre y2 et y1
Stockqty qui correspond à la quantité totale en stock (sans tenir compte des localisations donc)
stockleft qui correspond à la quantité totale en stock à laquelle je retire les besoins futurs (sachant que si cette quantité est négative, alors la variable est égale à zéro).
Au final tout ceci se retrouve dans mon application sous cette forme :
Première difficulté : je cherche dans un premier temps à isoler et valoriser les références pour lesquelles y1 = 0 AND future_usage = 0. il s'agit de ma première catégorie (en l’occurrence dans mon exemple la référence C. Jusque là tout va bien. A noter que je valorise la somme des quantités en stock dans chaque localisation à laquelle je retire les futurs besoins pour multiplier le tout par le coût unitaire.
Ensuite pour déterminer ma second catégorie, je dois isoler les références remplissant deux critères :
La consommation à chuté de plus de 50 % soit [Variation Conso] < - 0.5
La référence ne doit pas être déjà défini à travers la première catégorie
Là cela se corse, :
En théorie seul les références A, C et E ont une chute de conso de plus de 50 %
C étant déjà référencé dans la première catégorie, seul A et E sont éligibles.
Il y a 14 unités de E en stock au total contre des besoins futurs de 17. la quantité dispo est donc de - 3 ramené ainsi à zéro.
In fine seul la référence A doit être catégorisée dans cette catégorie pour une valeur de stock de 4€ mais impossible de remonter tout ça correctement dans un tableau qui ressemblerait donc à cela :
Si quelqu'un à une idée, j'attache le qvw et la base de données excel.
Merci de votre aide
Guillaume
Bonjour Guillaume,
j'ai testé avec une condition sur la dimension part_no :
= IF( [Variation Conso] < - 0.5 AND (y1 + [future_usage] ) <> 0 ,
IF( Num (stockleft) * Num (cost) > 0 , part_no ) )
Appliques cette dimension dans le tableau Database et cela semble fonctionne.
Bon courage.
Bonjour Guillaume,
Au final c'est A ou E qui doit rester dans la catégorie ?
"Il n'y a pas de besoin à venir soit "future_usage = 0" et pour A on a 4, non ?
Cordialement,
Xavier.
Désolé coquille dans le texte, pour être catégorisé dans la seconde catégorie, la référence doit simplement avoir une chute de conso de plus de 50 % ET ne pas être inclus dans la première catégorie.
La variable future_usage n'intervient qu'au niveau du calcul du stock dispo. je modifie le premier post.
Donc au final, c'est bien A qui doit être dans cette catégorie 2
Ce que tu peux faire c'est imbriquer les if() :
if(condition1, catégorie1,
if(condition2, catégorie2,
if(condition3, catégorie3,
catégorieParDéfaut)))
Comme ça tu es sûr que les catégories seront attribuées dans l'ordre.
Bonjour Guillaume,
j'ai testé avec une condition sur la dimension part_no :
= IF( [Variation Conso] < - 0.5 AND (y1 + [future_usage] ) <> 0 ,
IF( Num (stockleft) * Num (cost) > 0 , part_no ) )
Appliques cette dimension dans le tableau Database et cela semble fonctionne.
Bon courage.
Merci messieurs