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
| Quintiq file version 2.0
| #parent: #root
| StaticMethod GetPanelAllocationQuantity (
| GlobalOTDSOP globalOTDSOP,
| Strings productIDs,
| Number year,
| Number month
| ) as Real
| {
| TextBody:
| [*
| total := 0.0;
|
| traverse ( productIDs, Elements, pid ) {
| targetPRPISPMPs := selectset( globalOTDSOP, PeggingProduct_MP.PeggingProductInStockingPoint_MP.PeggingResultProductInStockingPoint_MP, tempPRPISPMP,
| tempPRPISPMP.ProductID() = pid and
| tempPRPISPMP.NumberOfPlies() = 0 );
| total := total +
| sum( targetPRPISPMPs, Elements.AllChild, tempAC,
| exists( globalOTDSOP, ModulePanelCorrespondence.Panel, tempP,
| tempP.Module().ModuleProductID() = pid and
| tempP.PanelProductID() = tempAC.ProductID() ) and
| tempAC.StartDate().Year() = year and
| ifexpr( month <> 0, tempAC.StartDate().Month() = month, true ),
| tempAC.FulfillmentQuantity()
| );
| }
|
| return total;
| *]
| }
|
|