大家好,
这可能是非常基本的,但我对JSL很新,所以要温柔!
如何创建符合以下条件的列。
对于每个补货订单,库存列都有滞后,直到库存为正。在这个例子中它将拉2/1/18,因为之前的滞后导致正数。
键入周库存滞后
股票1/7/18 10
客户订单2/1/18 -150
客户订单3/1/18 -250
补货订单4/1/18 500 2/1/18
以下是使用Lag列的公式生成所需结果的示例
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;
)
)
)