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
| Quintiq file version 2.0
| #parent: #root
| Method CreateUpdatePISPSpecification (
| Product_MP product,
| StockingPoint_MP stockingPoint,
| Boolean isNegativeInventoryAllowed
| )
| {
| Description: 'Create or update pisp specications and set negative inventory allow/disallow.'
| TextBody:
| [*
| isExcluded := false;
| hasUnitOfMeasure := false;
| isSafetyStockKept := false;
| isExcludeShelfLife := false;
| isExcludedFromBalancing := false;
| productUoM := product.UnitOfMeasureName();
| inputLotSize := 0.0;
|
| // Cannot use create update because type index
| pispSpec := product.FindProductInStockingPoint( stockingPoint.ID() ).PISPSpecification();
| if( isnull( pispSpec ) )
| {
| PISPSpecification::Create( product,
| stockingPoint,
| hasUnitOfMeasure,
| productUoM,
| isNegativeInventoryAllowed,
| isExcluded,
| isExcludedFromBalancing,
| isSafetyStockKept,
| inputLotSize,
| isExcludeShelfLife,
| false ) /*is from db*/
| }
| else
| {
| pispSpec.Update( hasUnitOfMeasure,
| productUoM,
| isNegativeInventoryAllowed,
| isExcluded,
| isExcludedFromBalancing,
| isSafetyStockKept,
| inputLotSize,
| isExcludeShelfLife,
| false ) /* is from db */
|
| }
| *]
| InterfaceProperties { Accessibility: 'Module' }
| }
|
|