Bonjour à tous,
Ceci est probablement assez basique, mais je suis très nouveau dans JSL, alors soyez gentil!
Comment puis-je créer une colonne qui répond aux critères suivants.
Pour chaque commande de réapprovisionnement, il y a un décalage dans la colonne d'inventaire jusqu'à ce que l'inventaire soit positif. Dans cet exemple, il tirerait 2/1/18 parce que le décalage avant cela donne un nombre positif.
Type Semaine Inventaire Décalage
Stock 1/7/18 10
Commande client 2/1/18 -150
Commande client 3/1/18 -250
Ordre de réapprovisionnement 4/1/18 500 2/1/18
Voici un exemple d'utilisation d'une formule pour votre colonne LAG qui produira les résultats souhaités
names Default to Here( 1 );
New Table( "Example",
Add Rows( 4 ),
Set Header Height( 44 ),
New Column( "Type",
Character,
"Nominal",
Set Values(
{"Stock", "Customer Order", "Customer Order", "Replenishment Order"}
),
Set Display Width( 118 )
),
New Column( "Week",
Numeric,
"Continuous",
Format( "m/d/y", 12 ),
Input Format( "m/d/y" ),
Set Values( [3598128000, 3600288000, 3602707200, 3605385600] )
),
New Column( "Inventory",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [10, -150, -250, 500] )
),
New Column( "lag",
Numeric,
"Continuous",
Format( "m/d/y", 12 ),
Input Format( "m/d/y" ),
Formula(
If( Row() == 1, holdval = . );
If( :Inventory < 0 & Is Missing( holdval ) == 1,
holdval = :Week
);
finalval = .;
If( :Inventory > 0,
finalval = holdval;
holdval = .;
);
finalval;
)
)
)