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
37
38
39
40
41
42
43
44
45
| Quintiq file version 2.0
| #parent: #root
| StaticMethod Create (
| String id,
| InventorySupply owner,
| Account_MP account,
| String costdriver,
| Date start,
| Real cost,
| Boolean isfromdb
| ) as AccountCost
| {
| Description: 'Create static method'
| TextBody:
| [*
| // soh yee Dec-19-2013 (created)
| /*
| Based on the account, unit, and cost driver, find or create a PISP account.
| This PISP account will then link to the newly created inventory supply cost.
| */
| //at this point of time, MPSync synchonization would not have any propagation at all, and therefore using the old code will result in null stocking point
| //since we have the attribute value and type index, using this to avoid propagation.
| sp := StockingPoint_MP::FindStockingPointTypeIndex( owner.StockingPointID() );
| pispaccount := PISPAccount::Assign( account,
| owner.Product_MP(),
| sp,
| costdriver );
|
| accountcost := owner.InventorySupplyCost( relnew,
| PISPAccount := pispaccount,
| ID := id );
|
| // Update foreign keys and other attributes
| accountcost.Update( pispaccount.Account_MP(),
| costdriver,
| start,
| // Time unit and length of time is irrelevant InventorySupplyost
| account.DefaultTimeUnit(),
| account.DefaultLengthOfTime(),
| cost,
| isfromdb );
|
| return accountcost;
| *]
| }
|
|