| 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
 | | Quintiq file version 2.0 |  | #parent: #root |  | StaticMethod Update ( |  |   ProductInStockingPoint_MPs owners, |  |   output owning InventoryValueAndCosts inventoryCosts, |  |   Account_MP account, |  |   String costDriver, |  |   Date start, |  |   String timeUnit, |  |   Number lengthOfTime, |  |   Boolean isBatchEditCost, |  |   Real cost, |  |   Boolean isFromDB |  | ) |  | { |  |   TextBody: |  |   [* |  |     // Batch update |  |     singleEdit := inventoryCosts.Size() = 1; |  |     if( singleEdit ) |  |     { // Only allowed change of owner during single edit, safe to check element(0) |  |       inventoryCosts.First().ChangeOwnerPISP( owners.First() ); |  |     } |  |     traverse( inventoryCosts, Elements, inventoryCost ) |  |     { |  |       // Single edit will update all fields. Cost is dependent on isBatchEditCost boolean input  // Note: TimeUnit & LengthOfTime will always remain unchanged |  |       inventoryCost.Update( ifexpr( singleEdit, account, inventoryCost.Account_MP() ), |  |                             ifexpr( singleEdit, costDriver, inventoryCost.CostDriver() ), |  |                             ifexpr( singleEdit, start, inventoryCost.Start() ), |  |                             inventoryCost.TimeUnit(),  |  |                             inventoryCost.LengthOfTime(), |  |                             ifexpr( isBatchEditCost or singleEdit, cost, inventoryCost.Cost() ), |  |                             isFromDB ); |  |     } |  |   *] |  | } | 
 |