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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
| Quintiq file version 2.0
| #parent: #root
| StaticMethod Create (
| String id,
| Product_MP owner,
| StockingPoint_MP stockingpoint,
| Date startdate,
| Real quantity,
| Real price,
| Priority priority,
| SalesSegment_MP salessegment,
| Currency_MP currency,
| UnitOfMeasure_MP unitofmeasure,
| Boolean ismanualpostponed,
| Boolean ismanualcreate,
| Boolean isexcludedfromfulfillmentkpi,
| String customername,
| String customerid,
| String orderid,
| String orderlineid,
| Boolean isfornetting,
| Boolean isfirmed,
| Boolean isfromdb
| ) as CustomerOrder
| {
| Description: 'Create an instance of CustomerOrder'
| TextBody:
| [*
| pisp := owner.AddToStockingPoint( stockingpoint );
|
| co := null( CustomerOrder, owning );
| co := owner.SalesDemand( relnew,
| CustomerOrder,
| //Set the relations so that these relations can be used in the same transaction without propagation
| MacroPlan := owner.MacroPlan(),
| SalesSegment_MP := salessegment,
| Priority := priority,
| Currency_MP := currency,
| ProductInStockingPoint_MP := pisp,
| ID := id,
| ProductID := owner.ID(),
| StockingPointID := guard( stockingpoint.ID(), '' ),
| IsExcludedFromFulfillmentKPIUser := isexcludedfromfulfillmentkpi,
| CustomerID := customerid,
| CustomerName := customername,
| OrderID := orderid,
| OrderLineID := orderlineid,
| IsEligibleForNetting := isfornetting,
| IsFirmed := isfirmed
| );
|
| // Create decision log
| description := Translations::MP_CustomerOrder_Create_Description( co, startdate, startdate );
| co.MacroPlan().CreateDecisionLog( description, ismanualcreate );
|
| co.Update( owner,
| stockingpoint,
| startdate,
| quantity,
| price,
| guard( priority.Name(), '' ),
| guard( salessegment.Name(), ''),
| guard( currency.ID(), '' ),
| guard( unitofmeasure.Name(), '' ),
| isexcludedfromfulfillmentkpi,
| customername,
| customerid,
| orderid,
| orderlineid,
| isfornetting,
| isfirmed,
| isfromdb );
|
| return co;
| *]
| }
|
|