Skip to main content
Announcements
Introducing Qlik Answers: A plug-and-play, Generative AI powered RAG solution. READ ALL ABOUT IT!
cancel
Showing results for 
Search instead for 
Did you mean: 
Julien105
Explorer II
Explorer II

Projection Stock final mensuel et couverture sur 06 mois

Bonjour a tous,

Etant débutant sur le script qlik sens, je vous partage ma conception de script en cours ci-dessous:

je m'explique: 

J'ai 04 tables de faits : StockFI:  via QVD/ Prevision: via QVD  / AChat: via excel /Article: via excel

Dans la table StockFI: j'ai la qtySF actualisé par jour.

dans Prévision: j'ai la qtéP pour le 06 prochain mois.

Et dans AChat: j'ai la qtéEC par date d'arrivé probable.

Et la table Article: va servir le regroupement de la "clearticle" par "DescArt".

J'ai crée un Tablelien: afin de sortir un tableau qui va me donner les qtés par table suivant la "Date clé" que j'ai regroupé en Date de début du mois.

Le résultat actuel me donne ceci en filtrant un "DescArt":  les mesures sont bon jusque là.

DescArtDateclesum(qtysf)sum(qteP)sum(QteEC)
MALT PILSEN01/07/20194 731 4001 502 038       153 000  
MALT PILSEN01/08/201901 652 233    2 346 000  
MALT PILSEN01/09/201901 647 004    3 468 000  
MALT PILSEN01/10/201901 723 256       306 000  
MALT PILSEN01/11/201901 570 142    1 638 000  
MALT PILSEN01/12/201901 744 057    1 125 000  

 

Mon objectif est de pouvoir calculer le stockFinal par Datecle selon la logique:

SF calculé = Sum(Qtysf) + sommecumulative(QteEC) - sommecumulative(qteP) d'où la sommecumulative (qtéP) doit tenir en compte la "qteP" des 24 jour déjà passés du mois en cours. soit la formule: 

Sum({<Datecle={"$(=Addmonths(Min(Datecle),+0))"}>}qteP)/Day(MonthEnd(Date(Today(2),'MMM')))*(-1+Day(Today(2))) = 1 502 038 * 24j/31j et cela me donne = 1 162 868. 

Ci-dessous donc le résultat attendu : (en fichier attaché l'excel du résultat attendu) 

DescArtDateclesum(qtysf)sum(qteP)sum(QteEC)Prev 24jCumul prev restantCumul AchatStock Fi calculéCouverture
en semaine
MALT PILSEN01/07/20194 731 4001 502 038      153 000     1 162 868      339 170           153 000         4 545 230                 11  
MALT PILSEN01/08/201901 652 233   2 346 000   1 991 403      2 499 000         5 238 997                 13  
MALT PILSEN01/09/201901 647 004   3 468 000   3 638 407      5 967 000         7 059 993                 16  
MALT PILSEN01/10/201901 723 256      306 000   5 361 663      6 273 000         5 642 737                 14  
MALT PILSEN01/11/201901 570 142   1 638 000   6 931 805      7 911 000         5 710 595                 13  
MALT PILSEN01/12/201901 744 057   1 125 000   8 675 863      9 036 000         5 091 537                 12  

 

Espérant votre aide et à dispo pour le complément d'infos.

 

SCRIPT

StockFI:
LOAD
COMPANY_CODE as entitésf,
PART_CODE as clearticle,

"SUM(IC_PRODUCT_STATUS.IC_QUANTITY)" as qtysf,
"SUBSTR(IC_PRODUCT_STATUS.WAREHOUSE,1,1)"as Mg1sf,
"CASEWHENSUBSTR(PRODUCT_WAREHOUSE.GL_INV,1,1)IN('A','U','B')THENSUBSTR(PRODUCT_WAREHOUSE.GL_INV,4,6)ELSESUBSTR(PRODUCT_WAREHOUSE.GL_INV,2,6)END" as CompteSF,
AVERAGE_COST,
VALEURSF,
Date(Today(2))as DateSF,
YEAR(Date(Today(2)))as AnnéeSF,
Month(Date(Today(2)))as MoisSF,
MonthStart(Date(Today(2)))as Datecle


FROM [lib://QlikSense Sources (s_tana_00_qlik_dev) (s_tana_00_qlik_dla)/41-SFMP_J-1.qvd]
(qvd);


Prevision:
LOAD

"SUBSTR(STR_S_PREVISIONS_CONSO.WAREHOUSE,1,1)" as MgP,

PERIOD,
MonthStart(Date(Date#("YEAR"&'-'&PERIOD,'YYYY-MM')))as Datecle,
PART_CODE as clearticle,
COMPANY_CODE,
CONSO_QUANTITY as qteP,
"TO_NUMBER(STR_S_PREVISIONS_CONSO.DATE_DE_MAJ)" as YMmaj,
"STR_S_PREVISIONS_CONSO.YEAR*100+STR_S_PREVISIONS_CONSO.PERIOD" as YM_Prev
FROM [lib://QlikSense Sources (s_tana_00_qlik_dev) (s_tana_00_qlik_dla)/41-PREV_MP.qvd]
(qvd);

AChat:
LOAD

SteDA,
"1lmDA",
ArtEC As clearticle,
QteEC,
"Date DAP",
MonthStart(Date("Date DAP")) as Datecle,
"Statut EC",
FOURNISSEUR,
lun1ersem
FROM [lib://Source_Excel (s_tana_00_qlik_dla)/Prev Achat.xlsx]
(ooxml, embedded labels, table is [Achat en cours]);

Article:
LOAD
Clearticle as clearticle,
DescArt,
ClasseArt
FROM [lib://Source_Excel (s_tana_00_qlik_dla)/Prev Achat.xlsx]
(ooxml, embedded labels, table is Article);


TableLien:
Load qteP,clearticle,Datecle Resident Prevision;

Concatenate (TableLien)
Load qtysf,clearticle,Datecle Resident StockFI;
Concatenate (TableLien)
Load QteEC,clearticle,Datecle Resident AChat;

Drop Fields clearticle,Datecle From Prevision;
Drop Fields clearticle,Datecle From StockFI;
Drop Fields clearticle,Datecle From AChat;
Calendrier:
Load Datecle,Month(Datecle)as MoisCal,Year(Datecle)as AnnéeCal Resident TableLien;

 

0 Replies