Merge branch 'dev' of http://47.101.211.7:10101/r/TIANMA_JITUAN into dev
| | |
| | | #parent: #root |
| | | EDIBroker GlobalOTDTable_CAR_Export |
| | | { |
| | | MDSDefinition: GlobalOTDTable |
| | | MDSDefinition: GlobalOTDSOP |
| | | TimeZone: 'ACT' |
| | | UseOSTimeZone: false |
| | | EDIModelLink.Source Source13 |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation PeggingProductInSalesDemandBase_PeggingProduct_MP_PeggingProduct_MP_PeggingProductInSalesDemandBase |
| | | { |
| | | #keys: '1[414702.1.290710058]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide PeggingProduct_MP |
| | | { |
| | | #keys: '3[414702.1.290710060][414702.1.290710059][414702.1.290710061]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: PeggingProductInSalesDemandBase |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide PeggingProductInSalesDemandBase |
| | | { |
| | | #keys: '3[414702.1.290710063][414702.1.290710062][414702.1.290710064]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: PeggingProduct_MP |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation PeggingProduct_MP_GlobalOTDSOP_GlobalOTDSOP_PeggingProduct_MP |
| | | { |
| | | #keys: '1[414702.1.290710038]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide GlobalOTDSOP |
| | | { |
| | | #keys: '3[414702.1.290710040][414702.1.290710039][414702.1.290710041]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: PeggingProduct_MP |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide PeggingProduct_MP |
| | | { |
| | | #keys: '3[414702.1.290710043][414702.1.290710042][414702.1.290710044]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: GlobalOTDSOP |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation PeggingResult_AllChild_PeggingResult_AllParent |
| | | { |
| | | #keys: '1[414702.1.294852003]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide AllChild |
| | | { |
| | | #keys: '3[414702.1.294852005][414702.1.294852004][414702.1.294852006]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: PeggingResult |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide AllParent |
| | | { |
| | | #keys: '3[414702.1.294852008][414702.1.294852007][414702.1.294852009]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: PeggingResult |
| | | OwningSide: 'Reference' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation PeggingResult_AllGroupChild_PeggingResult_AllGroupParent |
| | | { |
| | | #keys: '1[414702.1.320753677]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide AllGroupChild |
| | | { |
| | | #keys: '3[414702.1.320753679][414702.1.320753678][414702.1.320753680]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: PeggingResult |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide AllGroupParent |
| | | { |
| | | #keys: '3[414702.1.320753682][414702.1.320753681][414702.1.320753683]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: PeggingResult |
| | | OwningSide: 'Reference' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation PeggingResult_Child_PeggingResult_Parent |
| | | { |
| | | #keys: '1[414702.1.290710113]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide Child |
| | | { |
| | | #keys: '3[414702.1.290710115][414702.1.290710114][414702.1.290710116]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: PeggingResult |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide Parent |
| | | { |
| | | #keys: '3[414702.1.290710118][414702.1.290710117][414702.1.290710119]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: PeggingResult |
| | | OwningSide: 'Reference' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation PeggingResult_PeggingProductInSalesDemandBase_PeggingProductInSalesDemandBase_PeggingResult |
| | | { |
| | | #keys: '1[414702.1.290710098]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide PeggingProductInSalesDemandBase |
| | | { |
| | | #keys: '3[414702.1.290710100][414702.1.290710099][414702.1.290710101]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: PeggingResult |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide PeggingResult |
| | | { |
| | | #keys: '3[414702.1.290710103][414702.1.290710102][414702.1.290710104]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: PeggingProductInSalesDemandBase |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Export ( |
| | | GlobalOTDTable globalOTDTable |
| | | GlobalOTDSOP globalOTDSOP |
| | | ) as BinaryValue |
| | | { |
| | | TextBody: |
| | | [* |
| | | binaryData := globalOTDTable.GlobalOTDTable_CAR_Export().ExecuteToXLS( true ); |
| | | binaryData := globalOTDSOP.GlobalOTDTable_CAR_Export().ExecuteToXLS( true ); |
| | | |
| | | return binaryData.AsBinaryValue(); |
| | | *] |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod CreateData ( |
| | | const GlobalOTDTable globalOTDTable, |
| | | GlobalOTDSOP this |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | traverse ( globalOTDTable, Global_MappingAnnualBudgetData, gmabd ) { |
| | | productCode := gmabd.ProductID(); |
| | | row := CapacityAndSaleBudgeCompareItemRow::CreateIfNotExist( this, gmabd.BusinessType(), gmabd.OrganCode() ); |
| | | CapacityAndSaleBudgeCompareItemRowProduct::CreateIfNotExist( row, productCode ); |
| | | } |
| | | |
| | | columnBusinessType := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "äºä¸é¨" ); |
| | | columnPlaceOfProductionOfArray := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "颿¿åºå°" ); |
| | | traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) { |
| | | cell := columnBusinessType.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := row.BusinessType() ); |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); |
| | | cell := columnPlaceOfProductionOfArray.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := row.PlaceOfProductionOfArray() ); |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod CreatePanelAllocationBudget ( |
| | | GlobalOTDSOP this, |
| | | CapacityAndSaleBudgeFilterMonths months, |
| | | CapacityAndSaleBudgeFilterYear year, |
| | | const GlobalOTDTable globalOTDTable |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | traverse ( this, CapacityAndSaleBudgeCompareItemRow, casbcir ) { |
| | | total := 0.0; |
| | | traverse ( months, Elements, m ) { |
| | | columnName := "颿¿åé
é-" + [String]year.YearNo() + "å¹´-" + [String]m.MonthNo() + "æ-年度é¢ç®"; |
| | | columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, columnName ); |
| | | cellReal := Global_MappingForecast::GetQuantityByMonth( casbcir.GetProductCodes(), globalOTDTable, DateTime::Now().Year(), m.MonthNo() ); |
| | | cell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); |
| | | total := total + cellReal; |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir ); |
| | | } |
| | | columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "颿¿åé
é-" + [String]year.YearNo() + "å¹´-total-年度é¢ç®" ); |
| | | cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]total ); |
| | | columnYear.TotalIdentification( year.YearNo() ); |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod CreatePanelAllocationByScenario ( |
| | | MacroPlans macroPlans, |
| | | GlobalOTDSOP this, |
| | | CapacityAndSaleBudgeFilterMonths months, |
| | | CapacityAndSaleBudgeFilterYear year |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | traverse ( macroPlans, Elements, mp ) { |
| | | traverse ( this, CapacityAndSaleBudgeCompareItemRow, casbcir ) { |
| | | total := 0.0; |
| | | traverse ( months, Elements, m ) { |
| | | columnName := "颿¿åé
é-" + [String]year.YearNo() + "å¹´-" + [String]m.MonthNo() + "æ-" + mp.ScenarioName(); |
| | | columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, columnName ); |
| | | cellReal := Product_MP::GetNewSupplyByMonth( casbcir.GetProductCodes(), mp, year.YearNo(), m.MonthNo() ); |
| | | cell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); |
| | | total := total + cellReal; |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir ); |
| | | } |
| | | columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "颿¿åé
é-" + [String]year.YearNo() + "å¹´-total-" + mp.ScenarioName() ); |
| | | cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]total ); |
| | | columnYear.TotalIdentification( year.YearNo() ); |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir ); |
| | | } |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod CreateSalesVolume ( |
| | | GlobalOTDSOP this, |
| | | CapacityAndSaleBudgeFilterMonths months, |
| | | CapacityAndSaleBudgeFilterYear year, |
| | | const GlobalOTDTable globalOTDTable |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | traverse ( this, CapacityAndSaleBudgeCompareItemRow, casbcir ) { |
| | | total := 0.0; |
| | | traverse ( months, Elements, m ) { |
| | | columnName := "对å¤éå®é¢-" + [String]year.YearNo() + "å¹´-" + [String]m.MonthNo() + "æ-年度é¢ç®"; |
| | | columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, columnName ); |
| | | cellReal := Global_MappingAnnualBudgetData::GetSaleByMonth( casbcir.GetProductCodes(), globalOTDTable, year.YearNo(), m.MonthNo() ); |
| | | cell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); |
| | | total := total + cellReal; |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir ); |
| | | } |
| | | columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "对å¤éå®é¢-" + [String]year.YearNo() + "å¹´-total-年度é¢ç®" ); |
| | | cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]total ); |
| | | columnYear.TotalIdentification( year.YearNo() ); |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod CreateSalesVolumeByScenario ( |
| | | MacroPlans macroPlans, |
| | | GlobalOTDSOP this, |
| | | CapacityAndSaleBudgeFilterMonths months, |
| | | CapacityAndSaleBudgeFilterYear year |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | traverse ( macroPlans, Elements, mp ) { |
| | | traverse ( this, CapacityAndSaleBudgeCompareItemRow, casbcir ) { |
| | | total := 0.0; |
| | | traverse ( months, Elements, m ) { |
| | | columnName := "对å¤éå®é¢-" + [String]year.YearNo() + "å¹´-" + [String]m.MonthNo() + "æ-" + mp.ScenarioName(); |
| | | columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, columnName ); |
| | | cellReal := Forecast::GetFulfilledBalanceByMonth( casbcir.GetProductCodes(), mp, year.YearNo(), m.MonthNo() ); |
| | | cell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); |
| | | total := total + cellReal; |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir ); |
| | | } |
| | | columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "对å¤éå®é¢-" + [String]year.YearNo() + "å¹´-total-" + mp.ScenarioName() ); |
| | | cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]total ); |
| | | columnYear.TotalIdentification( year.YearNo() ); |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir ); |
| | | } |
| | | } |
| | | *] |
| | | } |
| | |
| | | // yypsybs Sep-18-2023 (created) |
| | | result := sum( macroPlan, |
| | | Product_MP.SalesDemand, |
| | | item, |
| | | item.istype( Forecast ) and productNo.Find( item.ProductID() ) > -1 |
| | | and item.StartDate().Year() = yearNo |
| | | and item.StartDate().Month() = monthNo, |
| | | item.FulfilledQuantity() * item.Price() ); |
| | | tempSD, |
| | | productNo.Find( tempSD.ProductID() ) > -1 |
| | | and tempSD.StartDate().Year() = yearNo |
| | | and tempSD.StartDate().Month() = monthNo, |
| | | tempSD.FulfilledQuantity() * tempSD.Price() ); |
| | | return result; |
| | | *] |
| | | } |
| | |
| | | CapacityAndSaleBudgeFilterItems items, |
| | | CapacityAndSaleBudgeFilterYears years, |
| | | CapacityAndSaleBudgeFilterMonths months, |
| | | const GlobalOTDTable otdTable |
| | | const GlobalOTDTable globalOTDTable |
| | | ) |
| | | { |
| | | Description: 'todo : mappingParentæ¹ä¸ºmpSync, randomå äº' |
| | | TextBody: |
| | | [* |
| | | // ====ä¸éæ¶é»è®¤å
¨é==== |
| | | if ( years.Size() = 0 ) { |
| | | years := selectset( this, CapacityAndSaleBudgeFilterYear, tempCASBFY, tempCASBFY.YearNo() = Date::ActualDate().Year() ); |
| | | } |
| | |
| | | this.CapacityAndSaleBudgeCompareItemRow( relflush ); |
| | | this.CapacityAndSaleBudgeCompareItemColumn( relflush ); |
| | | |
| | | // ====æ±æ»ææåºç°ç产å==== |
| | | targetglobal_MappingAnnualBudgetData := selectset( otdTable, Global_MappingAnnualBudgetData, item, true ); |
| | | CapacityAndSaleBudgeCompareItemCell::CreateData( globalOTDTable, this ); |
| | | |
| | | traverse ( targetglobal_MappingAnnualBudgetData, Elements, gmabd ) { |
| | | productCode := gmabd.ProductID(); |
| | | // Global_MappingOperationBOM::CreateTestData( otdTable, "äºä¸é¨" + [String](productCode.Length() mod 3), "颿¿åºå°" + [String](productCode.Length() mod 4), productCode ); |
| | | // boms := selectset( otdTable, Global_MappingOperationBOM, bom, bom.ProductCode() = productCode ); |
| | | // if( boms.Size() > 0 ) { |
| | | // bom := boms.First(); |
| | | // businessType := bom.BusinessType(); |
| | | // placeOfProductionOfArray := bom.OrganCode(); |
| | | // ç¸å颿¿åºå°åäºä¸é¨çæ¾ä¸è¡ |
| | | row := CapacityAndSaleBudgeCompareItemRow::CreateIfNotExist( this, gmabd.BusinessType(), gmabd.OrganCode() ); |
| | | // è®°å½æ¯è¡å
å«åªäºproduct |
| | | CapacityAndSaleBudgeCompareItemRowProduct::CreateIfNotExist( row, productCode ); |
| | | // } else { |
| | | // debuginfo( "no boms for product : " + productCode ); |
| | | // } |
| | | } |
| | | |
| | | // ====ä»å·¦åå³çæå头ä¸å
容==== |
| | | // äºä¸é¨ï¼é¢æ¿åºå° |
| | | columnBusinessType := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "äºä¸é¨" ); |
| | | columnPlaceOfProductionOfArray := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "颿¿åºå°" ); |
| | | traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) { |
| | | cell := columnBusinessType.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := row.BusinessType() ); |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); |
| | | cell := columnPlaceOfProductionOfArray.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := row.PlaceOfProductionOfArray() ); |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); |
| | | } |
| | | |
| | | // 颿¿åé
é - 年度é¢ç® (sheets) |
| | | // æ ¼å¼ï¼ 颿¿åé
é - å¹´ - æï¼1-12 & totalï¼ - 年度é¢ç®/scenarioName |
| | | if ( CapacityAndSaleBudgeFilterItem::Contains( items, "颿¿åé
é" ) ) { |
| | | traverse ( years, Elements, year ) { |
| | | // å岿°æ® |
| | | // traverse ( months, Elements, month ) { |
| | | // columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "颿¿åé
é-" + [String]year.YearNo() + "å¹´-" + [String]month.MonthNo() + "æ-年度é¢ç®" ); |
| | | // traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) { |
| | | // cellReal := Global_MappingForecast::GetQuantityByMonth( row.GetProductCodes(), otdTable, DateTime::Now().Year(), month.MonthNo() ); |
| | | // cell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); |
| | | // cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); |
| | | // } |
| | | // } |
| | | // columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "颿¿åé
é-" + [String]year.YearNo() + "å¹´-total-年度é¢ç®" ); |
| | | // traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) { |
| | | // cellReal := Global_MappingForecast::GetQuantityByYear( row.GetProductCodes(), otdTable, year.YearNo() ); |
| | | // cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); |
| | | // cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); |
| | | // } |
| | | |
| | | traverse ( this, CapacityAndSaleBudgeCompareItemRow, casbcir ) { |
| | | total := 0.0; |
| | | traverse ( months, Elements, m ) { |
| | | columnName := "颿¿åé
é-" + [String]year.YearNo() + "å¹´-" + [String]m.MonthNo() + "æ-年度é¢ç®"; |
| | | columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, columnName ); |
| | | cellReal := Global_MappingForecast::GetQuantityByMonth( casbcir.GetProductCodes(), otdTable, DateTime::Now().Year(), m.MonthNo() ); |
| | | cell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); |
| | | total := total + cellReal; |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir ); |
| | | } |
| | | columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "颿¿åé
é-" + [String]year.YearNo() + "å¹´-total-年度é¢ç®" ); |
| | | cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]total ); |
| | | columnYear.TotalIdentification( year.YearNo() ); |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir ); |
| | | } |
| | | |
| | | // S&OPæ°æ® |
| | | // traverse ( macroPlans, Elements, macroPlan ) { |
| | | // traverse ( months, Elements, month ) { |
| | | // columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, |
| | | // "颿¿åé
é-" + [String]year.YearNo() + "å¹´-" + [String]month.MonthNo() + "æ-" + macroPlan.ScenarioName() ); |
| | | // traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) { |
| | | // cellReal := Product_MP::GetNewSupplyByMonth( row.GetProductCodes(), macroPlan, year.YearNo(), month.MonthNo() ); |
| | | // cell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); |
| | | // cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); |
| | | // } |
| | | // } |
| | | // columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, |
| | | // "颿¿åé
é-" + [String]year.YearNo() + "å¹´-total-" + macroPlan.ScenarioName() ); |
| | | // traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) { |
| | | // cellReal := Product_MP::GetNewSupplyByYear( row.GetProductCodes(), macroPlan, year.YearNo() ); |
| | | // cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); |
| | | // cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); |
| | | // } |
| | | // } |
| | | traverse ( macroPlans, Elements, mp ) { |
| | | traverse ( this, CapacityAndSaleBudgeCompareItemRow, casbcir ) { |
| | | total := 0.0; |
| | | traverse ( months, Elements, m ) { |
| | | columnName := "颿¿åé
é-" + [String]year.YearNo() + "å¹´-" + [String]m.MonthNo() + "æ-" + mp.ScenarioName(); |
| | | columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, columnName ); |
| | | cellReal := Product_MP::GetNewSupplyByMonth( casbcir.GetProductCodes(), mp, year.YearNo(), m.MonthNo() ); |
| | | cell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); |
| | | total := total + cellReal; |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir ); |
| | | } |
| | | columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "颿¿åé
é-" + [String]year.YearNo() + "å¹´-total-" + mp.ScenarioName() ); |
| | | cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]total ); |
| | | columnYear.TotalIdentification( year.YearNo() ); |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir ); |
| | | } |
| | | } |
| | | CapacityAndSaleBudgeCompareItemCell::CreatePanelAllocationBudget( this, months, year, globalOTDTable ); |
| | | CapacityAndSaleBudgeCompareItemCell::CreatePanelAllocationByScenario( macroPlans, this, months, year ); |
| | | } |
| | | } |
| | | |
| | | // 年度éå®é¢ |
| | | if ( CapacityAndSaleBudgeFilterItem::Contains( items, "éå®é¢" ) ) { |
| | | traverse ( years, Elements, year ) { |
| | | // å岿°æ® |
| | | // traverse ( months, Elements, month ) { |
| | | // columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "对å¤éå®é¢-" + [String]year.YearNo() + "å¹´-" + [String]month.MonthNo() + "æ-年度é¢ç®" ); |
| | | // traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) { |
| | | // cellReal := Global_MappingAnnualBudgetData::GetSaleByMonth( row.GetProductCodes(), otdTable, year.YearNo(), month.MonthNo() ); |
| | | // cell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); |
| | | // cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); |
| | | // } |
| | | // } |
| | | // columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "对å¤éå®é¢-" + [String]year.YearNo() + "å¹´-年度é¢ç®" ); |
| | | // traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) { |
| | | // cellReal := Global_MappingAnnualBudgetData::GetSaleByYear( row.GetProductCodes(), otdTable, year.YearNo() ); |
| | | // cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); |
| | | // cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); |
| | | // } |
| | | traverse ( this, CapacityAndSaleBudgeCompareItemRow, casbcir ) { |
| | | total := 0.0; |
| | | traverse ( months, Elements, m ) { |
| | | columnName := "对å¤éå®é¢-" + [String]year.YearNo() + "å¹´-" + [String]m.MonthNo() + "æ-年度é¢ç®"; |
| | | columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, columnName ); |
| | | cellReal := Global_MappingAnnualBudgetData::GetSaleByMonth( casbcir.GetProductCodes(), otdTable, year.YearNo(), m.MonthNo() ); |
| | | cell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); |
| | | total := total + cellReal; |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir ); |
| | | } |
| | | columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "对å¤éå®é¢-" + [String]year.YearNo() + "å¹´-total-年度é¢ç®" ); |
| | | cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]total ); |
| | | columnYear.TotalIdentification( year.YearNo() ); |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir ); |
| | | } |
| | | |
| | | // S&OPæ°æ® |
| | | // traverse ( macroPlans, Elements, macroPlan ) { |
| | | // traverse ( months, Elements, month ) { |
| | | // columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "对å¤éå®é¢-" + [String]year.YearNo() + "å¹´-" + [String]month.MonthNo() + "æ-" + macroPlan.ScenarioName() ); |
| | | // traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) { |
| | | // cellReal := Forecast::GetFulfilledBalanceByMonth( row.GetProductCodes(), macroPlan, year.YearNo(), month.MonthNo() ); |
| | | // cell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); |
| | | // cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); |
| | | // } |
| | | // } |
| | | // columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "对å¤éå®é¢-" + [String]year.YearNo() + "å¹´-total-" + macroPlan.ScenarioName() ); |
| | | // traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) { |
| | | // // QID 23 |
| | | // cellReal := Forecast::GetFulfilledBalanceByYear( row.GetProductCodes(), macroPlan, year.YearNo() ); |
| | | // cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); |
| | | // cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); |
| | | // } |
| | | // } |
| | | traverse ( macroPlans, Elements, mp ) { |
| | | traverse ( this, CapacityAndSaleBudgeCompareItemRow, casbcir ) { |
| | | total := 0.0; |
| | | traverse ( months, Elements, m ) { |
| | | columnName := "对å¤éå®é¢-" + [String]year.YearNo() + "å¹´-" + [String]m.MonthNo() + "æ-" + mp.ScenarioName(); |
| | | columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, columnName ); |
| | | cellReal := Forecast::GetFulfilledBalanceByMonth( casbcir.GetProductCodes(), mp, year.YearNo(), m.MonthNo() ); |
| | | cell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); |
| | | total := total + cellReal; |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir ); |
| | | } |
| | | columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "对å¤éå®é¢-" + [String]year.YearNo() + "å¹´-total-" + mp.ScenarioName() ); |
| | | cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]total ); |
| | | columnYear.TotalIdentification( year.YearNo() ); |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir ); |
| | | } |
| | | } |
| | | CapacityAndSaleBudgeCompareItemCell::CreateSalesVolume( this, months, year, globalOTDTable ); |
| | | CapacityAndSaleBudgeCompareItemCell::CreateSalesVolumeByScenario( macroPlans, this, months, year ); |
| | | } |
| | | } |
| | | |
| | | // å¤§å¼ çå©é¢ |
| | | traverse ( years, Elements, year ) { |
| | | // å岿°æ® |
| | | columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "å¤§å¼ çå©é¢-" + [String]year.YearNo() + "å¹´-年度é¢ç®" ); |
| | | traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) { |
| | | cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 0 ) ); |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); |
| | | } |
| | | // S&OPæ°æ® |
| | | traverse( macroPlans, Elements, macroPlan ) { |
| | | columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "å¤§å¼ çå©é¢-" + [String]year.YearNo() + "å¹´-" + macroPlan.ScenarioName() ); |
| | | traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) { |
| | | cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 0 ) ); |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); |
| | | } |
| | | } |
| | | } |
| | | // 产åçå©é¢ |
| | | traverse ( years, Elements, year ) { |
| | | // å岿°æ® |
| | | columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "产åçå©é¢-" + [String]year.YearNo() + "å¹´-年度é¢ç®" ); |
| | | traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) { |
| | | cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 0 ) ); |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); |
| | | } |
| | | // S&OPæ°æ® |
| | | traverse ( macroPlans, Elements, macroPlan ) { |
| | | columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "产åçå©é¢-" + [String]year.YearNo() + "å¹´-" + macroPlan.ScenarioName() ); |
| | | traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) { |
| | | // todo |
| | | cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 0 ) ); |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); |
| | | } |
| | | } |
| | | } |
| | | //traverse ( years, Elements, year ) { |
| | | // // å岿°æ® |
| | | // columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "å¤§å¼ çå©é¢-" + [String]year.YearNo() + "å¹´-年度é¢ç®" ); |
| | | // traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) { |
| | | // cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 0 ) ); |
| | | // cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); |
| | | // } |
| | | // // S&OPæ°æ® |
| | | // traverse( macroPlans, Elements, macroPlan ) { |
| | | // columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "å¤§å¼ çå©é¢-" + [String]year.YearNo() + "å¹´-" + macroPlan.ScenarioName() ); |
| | | // traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) { |
| | | // cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 0 ) ); |
| | | // cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); |
| | | // } |
| | | // } |
| | | //} |
| | | //// 产åçå©é¢ |
| | | //traverse ( years, Elements, year ) { |
| | | // // å岿°æ® |
| | | // columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "产åçå©é¢-" + [String]year.YearNo() + "å¹´-年度é¢ç®" ); |
| | | // traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) { |
| | | // cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 0 ) ); |
| | | // cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); |
| | | // } |
| | | // // S&OPæ°æ® |
| | | // traverse ( macroPlans, Elements, macroPlan ) { |
| | | // columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "产åçå©é¢-" + [String]year.YearNo() + "å¹´-" + macroPlan.ScenarioName() ); |
| | | // traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) { |
| | | // // todo |
| | | // cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 0 ) ); |
| | | // cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); |
| | | // } |
| | | // } |
| | | //} |
| | | |
| | | // 设置rowNoåcolumnNo |
| | | rowNo := 1; |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Quantity |
| | | { |
| | | #keys: '3[414702.1.294748144][414702.1.294748143][414702.1.294748145]' |
| | | ValueType: Real |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute SalesDemandBaseID |
| | | { |
| | | #keys: '3[414702.1.294144484][414702.1.294144483][414702.1.294144485]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute StartDate |
| | | { |
| | | #keys: '3[414702.1.294179414][414702.1.294179413][414702.1.294179415]' |
| | | ValueType: Date |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute StockingPointID |
| | | { |
| | | #keys: '3[414702.1.294179270][414702.1.294179269][414702.1.294179271]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type PeggingProductInSalesDemandBase |
| | | { |
| | | #keys: '5[414702.1.290710055][414702.1.290710053][0.0.0][414702.1.290710054][414702.1.290710056]' |
| | | BaseType: Object |
| | | StructuredName: 'PeggingProductInSalesDemandBases' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute ProductID |
| | | { |
| | | #keys: '3[414702.1.290710074][414702.1.290710073][414702.1.290710075]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Create ( |
| | | GlobalOTDSOP globalOTDSOP, |
| | | Product_MPs product_MPs |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | globalOTDSOP.PeggingProduct_MP( relflush ); |
| | | |
| | | product_MPs := selectset( product_MPs, Elements, tempPMP, tempPMP.IsLeaf() ); |
| | | |
| | | traverse ( product_MPs, Elements, pmp ) { |
| | | targetPeggingProduct_MP := globalOTDSOP.PeggingProduct_MP( relnew, ProductID := pmp.ID() ); |
| | | traverse ( pmp, SalesDemand, sd ) { |
| | | targetPeggingProduct_MP.PeggingProductInSalesDemandBase( relnew, |
| | | StockingPointID := sd.StockingPointID(), |
| | | SalesDemandBaseID := sd.ID(), |
| | | Quantity := sd.Quantity(), |
| | | StartDate := sd.StartDate() ); |
| | | } |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type PeggingProduct_MP |
| | | { |
| | | #keys: '5[414702.1.290710035][414702.1.290710033][0.0.0][414702.1.290710034][414702.1.290710036]' |
| | | BaseType: Object |
| | | StructuredName: 'PeggingProduct_MPs' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute ActualFulfillmentQuantity |
| | | { |
| | | #keys: '3[414702.1.314092328][414702.1.314092327][414702.1.314092329]' |
| | | Description: 'å®é
交ä»çæ°é' |
| | | ValueType: Real |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute FulfillmentQuantity |
| | | { |
| | | #keys: '3[414702.1.294201083][414702.1.294201082][414702.1.294201084]' |
| | | Description: '订åæéè¦çæ°é' |
| | | ValueType: Real |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute NumberOfPlies |
| | | { |
| | | #keys: '3[414702.1.294145595][414702.1.294145594][414702.1.294145596]' |
| | | ValueType: Number |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute ProductID |
| | | { |
| | | #keys: '3[414702.1.294201096][414702.1.294201095][414702.1.294201097]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute StartDate |
| | | { |
| | | #keys: '3[414702.1.294201063][414702.1.294201062][414702.1.294201064]' |
| | | ValueType: Date |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute StockingPointID |
| | | { |
| | | #keys: '3[414702.1.294201106][414702.1.294201105][414702.1.294201107]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute SupplyQuantity |
| | | { |
| | | #keys: '3[414702.1.294201073][414702.1.294201072][414702.1.294201074]' |
| | | ValueType: Real |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute SupplyType |
| | | { |
| | | #keys: '3[414702.1.294201053][414702.1.294201052][414702.1.294201054]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute UnitOfMeasurementName |
| | | { |
| | | #keys: '3[414702.1.294852022][414702.1.294852021][414702.1.294852023]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Create ( |
| | | PeggingProductInSalesDemandBase peggingProductInSalesDemandBase, |
| | | String productID, |
| | | String stockingPointID, |
| | | Date startDate, |
| | | Real supplyQuantity, |
| | | Real actualFulfillmentQuantity, |
| | | Real fulfillmentQuantity, |
| | | String supplyType, |
| | | Number numberOfPlies, |
| | | String unitOfMeasurementName |
| | | ) as PeggingResult |
| | | { |
| | | TextBody: |
| | | [* |
| | | peggingResult := peggingProductInSalesDemandBase.PeggingResult( relnew, |
| | | ProductID := productID, |
| | | StockingPointID := stockingPointID, |
| | | StartDate := startDate, |
| | | SupplyQuantity := supplyQuantity, |
| | | ActualFulfillmentQuantity := actualFulfillmentQuantity, |
| | | FulfillmentQuantity := fulfillmentQuantity, |
| | | SupplyType := supplyType, |
| | | NumberOfPlies := numberOfPlies, |
| | | UnitOfMeasurementName := unitOfMeasurementName |
| | | ); |
| | | return peggingResult; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod CreateAllChildRelation ( |
| | | PeggingProductInSalesDemandBase ppisdb |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | targetPeggingResults := selectset( ppisdb, PeggingResult, tempPR, tempPR.NumberOfPlies() = 0 ); |
| | | |
| | | traverse ( targetPeggingResults, Elements, pr ) { |
| | | parentPeggingResult := pr; |
| | | childPeggingResult := pr; |
| | | PeggingResult::SetAllChildRelation( ppisdb, parentPeggingResult, childPeggingResult ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod CreateAllGroupChildRelation ( |
| | | PeggingProductInSalesDemandBase ppisdb |
| | | ) |
| | | { |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod CreateData ( |
| | | PeggingProductInSalesDemandBases peggingProductInSalesDemandBases, |
| | | const MacroPlan macroPlan |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | traverse ( peggingProductInSalesDemandBases, Elements, ppisdb ) { |
| | | ppisdb.PeggingResult( relflush ); |
| | | targetSalesDemand := select( macroPlan, SalesDemand, tempSD, tempSD.ID() = ppisdb.SalesDemandBaseID() ); |
| | | traverse ( targetSalesDemand, SalesDemandInPeriod.Fulfillment, f ) { |
| | | smp := f.Supply_MP(); |
| | | fulfillmentQuantity := f.Quantity(); |
| | | PeggingResult::GeneratePeggingResult( ppisdb, |
| | | 0, |
| | | smp, |
| | | fulfillmentQuantity, |
| | | fulfillmentQuantity, |
| | | null( PeggingResult ) ); |
| | | } |
| | | |
| | | PeggingResult::CreateAllChildRelation( ppisdb ); |
| | | PeggingResult::CreateAllGroupChildRelation( ppisdb ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GenerateInventorySupply ( |
| | | PeggingProductInSalesDemandBase peggingProductInSalesDemandBase, |
| | | Number numberOfPlies, |
| | | const InventorySupply is, |
| | | Real actualFulfillmentQuantity, |
| | | Real fulfillmentQuantity, |
| | | PeggingResult parentPeggingResult |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | //info( "ä¾åºç±»åï¼InventorySupplyï¼ ", "ä¾åºæ¶é´ï¼", is.Date().Format( "Y-M2-D2" ), " ä¾åºéï¼", is.Quantity(), |
| | | // " å®é
ç¨éï¼", fulfillmentQuantity, " ", is.ProductInStockingPoint_MP().Name() ); |
| | | pisp := is.ProductInStockingPointInPeriodPlanningLeaf().ProductInStockingPoint_MP(); |
| | | childPeggingResult := PeggingResult::Create( peggingProductInSalesDemandBase, |
| | | pisp.ProductID(), |
| | | pisp.StockingPointID(), |
| | | is.Date(), |
| | | is.Quantity(), |
| | | actualFulfillmentQuantity, |
| | | fulfillmentQuantity, |
| | | "åºåä¾åº", |
| | | numberOfPlies, |
| | | pisp.UnitOfMeasureName() |
| | | ); |
| | | |
| | | PeggingResult::SetParentChildRelationship( parentPeggingResult, childPeggingResult ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GenerateNewSupply ( |
| | | PeggingProductInSalesDemandBase peggingProductInSalesDemandBase, |
| | | Number numberOfPlies, |
| | | const NewSupply ns, |
| | | Real actualFulfillmentQuantity, |
| | | Real fulfillmentQuantity, |
| | | PeggingResult parentPeggingResult |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | //info( "ä¾åºç±»åï¼NewSupplyï¼", " ä¾åºéï¼", ns.Quantity(), " 满足ï¼", fulfillmentQuantity ); |
| | | |
| | | pisp := ns.ProductInStockingPointInPeriodPlanningLeaf().ProductInStockingPoint_MP(); |
| | | |
| | | childPeggingResult := PeggingResult::Create( peggingProductInSalesDemandBase, |
| | | pisp.ProductID(), |
| | | pisp.StockingPointID(), |
| | | ns.Start().Date(), |
| | | ns.Quantity(), |
| | | actualFulfillmentQuantity, |
| | | fulfillmentQuantity, |
| | | "", |
| | | numberOfPlies, |
| | | pisp.UnitOfMeasureName() ); |
| | | PeggingResult::SetParentChildRelationship( parentPeggingResult, childPeggingResult ); |
| | | |
| | | ontype ( ns.PeriodTask_MP() ) { |
| | | PeriodTaskOperation as pto : { |
| | | childPeggingResult.SupplyType( "产线ä¾åº" ); |
| | | // info( "æä½å¨æä»»å¡ ", "ä¾åºæ¶é´ï¼", ns.Start().Format( "Y-M2-D2" ), " 卿任å¡KEYï¼", pto.Key(), " ", |
| | | // ns.ProductInStockingPointInPeriodPlanningLeaf().ProductInStockingPoint_MP().Name() ); |
| | | traverse ( pto, DependentDemand, dd, dd.Quantity() > 0 ) { |
| | | traverse ( dd, Fulfillment, f ) { |
| | | actualFulfillmentQuantity := f.Quantity(); |
| | | smp1 := f.Supply_MP(); |
| | | numberOfPlies++; |
| | | fulfillmentQuantity := ( dd.Quantity() / ns.Quantity() ) * fulfillmentQuantity; |
| | | // info( "--------------------------------------------------------------" ); |
| | | PeggingResult::GeneratePeggingResult( peggingProductInSalesDemandBase, numberOfPlies, smp1, actualFulfillmentQuantity, fulfillmentQuantity, childPeggingResult ); |
| | | numberOfPlies--; |
| | | } |
| | | } |
| | | } |
| | | |
| | | PeriodTaskLaneLeg as ptll : { |
| | | childPeggingResult.SupplyType( "车éä¾åº" ); |
| | | targetDependentDemand := select( ptll, DependentDemand, dd, |
| | | dd.ProcessInput().ProductInStockingPoint_MP().ProductID() = ns.ProductInStockingPointInPeriodPlanningLeaf().ProductInStockingPoint_MP().ProductID() and |
| | | dd.Quantity() = ns.Quantity() ); |
| | | // info( "车éå¨æä»»å¡ ", "ä¾åºæ¶é´ï¼", ns.Start().Format( "Y-M2-D2" ), " 卿任å¡KEYï¼", ptll.Key(), " ", |
| | | // ns.ProductInStockingPointInPeriodPlanningLeaf().ProductInStockingPoint_MP().Name() ); |
| | | traverse ( targetDependentDemand, Fulfillment, f ) { |
| | | actualFulfillmentQuantity := f.Quantity(); |
| | | smp1 := f.Supply_MP(); |
| | | numberOfPlies++; |
| | | // info( "--------------------------------------------------------------" ); |
| | | PeggingResult::GeneratePeggingResult( peggingProductInSalesDemandBase, numberOfPlies, smp1, actualFulfillmentQuantity, fulfillmentQuantity, childPeggingResult ); |
| | | numberOfPlies--; |
| | | } |
| | | } |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GeneratePeggingResult ( |
| | | PeggingProductInSalesDemandBase peggingProductInSalesDemandBase, |
| | | Number numberOfPlies, |
| | | const Supply_MP smp, |
| | | Real actualFulfillmentQuantity, |
| | | Real fulfillmentQuantity, |
| | | PeggingResult parentPeggingResult |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | //info( "屿°ï¼", numberOfPlies ); |
| | | ontype ( smp ) { |
| | | NewSupply as ns : { |
| | | PeggingResult::GenerateNewSupply( peggingProductInSalesDemandBase, numberOfPlies, ns, actualFulfillmentQuantity, fulfillmentQuantity, parentPeggingResult ); |
| | | } |
| | | |
| | | InventorySupply as is : { |
| | | PeggingResult::GenerateInventorySupply( peggingProductInSalesDemandBase, numberOfPlies, is, actualFulfillmentQuantity, fulfillmentQuantity, parentPeggingResult ); |
| | | } |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod SetAllChildRelation ( |
| | | PeggingProductInSalesDemandBase peggingProductInSalesDemandBase, |
| | | PeggingResult parentPeggingResult, |
| | | PeggingResult childPeggingResult |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | if ( childPeggingResult.Child( relsize ) = 0 ) { |
| | | childPeggingResult.AllParent( relset, parentPeggingResult ); |
| | | } |
| | | |
| | | traverse ( childPeggingResult, Child, pr ) { |
| | | pr.AllParent( relset, parentPeggingResult ); |
| | | PeggingResult::SetAllChildRelation( peggingProductInSalesDemandBase, parentPeggingResult, pr ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod SetParentChildRelationship ( |
| | | PeggingResult parentPeggingResult, |
| | | PeggingResult childPeggingResult |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | if ( not isnull( parentPeggingResult ) and not isnull( childPeggingResult ) ) { |
| | | childPeggingResult.Parent( relset, parentPeggingResult ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type PeggingResult |
| | | { |
| | | #keys: '5[414702.1.290710095][414702.1.290710093][0.0.0][414702.1.290710094][414702.1.290710096]' |
| | | BaseType: Object |
| | | StructuredName: 'PeggingResults' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type PeggingResultGroup |
| | | { |
| | | #keys: '5[414702.1.320753704][414702.1.320753702][0.0.0][414702.1.320753703][414702.1.320753705]' |
| | | BaseType: Object |
| | | StructuredName: 'PeggingResultGroups' |
| | | } |
| | |
| | | Component ComponentMenu666 { #keys: '[414702.0.265704260]' BaseType: 'ComponentMenu' Properties: [ ComponentType: 'FormBrokerExecuteLog' Text: '' ] } |
| | | Component menuSeparator822 { #keys: '[414702.0.340555024]' BaseType: 'Menu' Properties: [ Separator: true ] } |
| | | Component ComponentMenu783 { #keys: '[414702.0.340555035]' BaseType: 'ComponentMenu' Properties: [ ComponentType: 'FormTestButtonCollection' Text: '' ] } |
| | | Component menuSeparator432 { #keys: '[414702.1.299084028]' BaseType: 'Menu' Properties: [ Separator: true ] } |
| | | Component ComponentMenu420 { #keys: '[414702.1.299224194]' BaseType: 'ComponentMenu' Properties: [ ComponentType: 'FormPeggingResult' Text: '' ] } |
| | | ] |
| | | Properties: |
| | | [ |
| | |
| | | c: ComponentMenu666 |
| | | c: menuSeparator822 |
| | | c: ComponentMenu783 |
| | | c: menuSeparator432 |
| | | c: ComponentMenu420 |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component ColumnTitles552 |
| | | { |
| | | #keys: '[414702.1.299084155]' |
| | | BaseType: 'ColumnTitles' |
| | | Children: |
| | | [ |
| | | Component popupColumnTitles881 |
| | | { |
| | | #keys: '[414702.1.299084158]' |
| | | BaseType: 'popupColumnTitles' |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | ContextMenu: 'popupColumnTitles881' |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component ListPeggingProductInSalesDemandBase |
| | | { |
| | | #keys: '[414702.1.299084152]' |
| | | BaseType: 'List' |
| | | Children: |
| | | [ |
| | | #child: ColumnTitles552 |
| | | Component popupList809 |
| | | { |
| | | #keys: '[414702.1.299084184]' |
| | | BaseType: 'popupList' |
| | | Children: |
| | | [ |
| | | Component PopupParent |
| | | { |
| | | #keys: '[514.0.129466]' |
| | | BaseType: 'PopupParent' |
| | | IsDerived: true |
| | | Children: |
| | | [ |
| | | Component menuSeparator { #keys: '[414702.1.299084264]' BaseType: 'Menu' Properties: [ Separator: true ] } |
| | | Component MenuGeneratePeggingResult { #keys: '[414702.1.299084327]' BaseType: 'Menu' Properties: [ Image: 'BEER_GLASS' Text: 'GeneratePeggingResult' ] } |
| | | ] |
| | | Properties: |
| | | [ |
| | | ModeledStringList ChildOrdering |
| | | { |
| | | c: MenuActions |
| | | c: MenuFilter |
| | | c: menuListQuintiqSetQuantor |
| | | c: menuSeparator |
| | | c: MenuGeneratePeggingResult |
| | | } |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | PosX: 35 |
| | | PosY: 60 |
| | | ] |
| | | } |
| | | Component GUIDataExtractor968 |
| | | { |
| | | #keys: '[414702.1.299084216]' |
| | | BaseType: 'GUIDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataSet: 'GlobalOTDSOP' |
| | | DataType: 'GlobalOTDSOP' |
| | | PosX: 5 |
| | | PosY: 30 |
| | | Transformation: 'PeggingProduct_MP.PeggingProductInSalesDemandBase' |
| | | ] |
| | | } |
| | | Component GUIDataSetLevel641 |
| | | { |
| | | #keys: '[414702.1.299084219]' |
| | | BaseType: 'GUIDataSetLevel' |
| | | Properties: |
| | | [ |
| | | DataExtractor: 'GUIDataExtractor968' |
| | | PosX: 35 |
| | | PosY: 30 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | AutoDrag: true |
| | | BackgroundColor: 'Window' |
| | | Border: true |
| | | ContextMenu: 'popupList809' |
| | | FullRowSelect: true |
| | | ModeledStringList ChildOrdering |
| | | { |
| | | c: ColumnTitles552 |
| | | c: popupList809 |
| | | c: GUIDataExtractor968 |
| | | c: GUIDataSetLevel641 |
| | | } |
| | | ] |
| | | ResponseDefinitions: |
| | | [ |
| | | DelegatedResponseDefinition OnClick id:Responsedef_ListPeggingProductInSalesDemandBase_Menu_OnClick |
| | | { |
| | | #keys: '[414702.1.299084225]' |
| | | Initiator: 'Menu' |
| | | IsInherited: false |
| | | ResponseType: 'OnClick' |
| | | Arguments: |
| | | [ |
| | | ResponseDefinitionArgument selection |
| | | { |
| | | #keys: '[621.0.8331282]' |
| | | Binding: 'this.Selection()' |
| | | } |
| | | ] |
| | | } |
| | | DelegatedResponseDefinition OnClick id:Responsedef_ListPeggingProductInSalesDemandBase_GUIButtonBase_OnClick |
| | | { |
| | | #keys: '[414702.1.299084226]' |
| | | Initiator: 'GUIButtonBase' |
| | | IsInherited: false |
| | | ResponseType: 'OnClick' |
| | | Arguments: |
| | | [ |
| | | ResponseDefinitionArgument selection |
| | | { |
| | | #keys: '[621.0.8331327]' |
| | | Binding: 'this.Selection()' |
| | | } |
| | | ] |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ListPeggingProductInSalesDemandBase |
| | | Response OnClick ( |
| | | structured[PeggingProductInSalesDemandBase] selection |
| | | ) id:Response_ListPeggingProductInSalesDemandBase_MenuGeneratePeggingResult_OnClick |
| | | { |
| | | #keys: '[414702.1.299224579]' |
| | | Body: |
| | | [* |
| | | PeggingResult::CreateData( selection, MacroPlan ); |
| | | *] |
| | | CanBindMultiple: false |
| | | DefinitionID => /ListPeggingProductInSalesDemandBase/Responsedef_ListPeggingProductInSalesDemandBase_Menu_OnClick |
| | | Initiator: 'MenuGeneratePeggingResult' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: MacroPlanner |
| | | OrphanComponent FormPeggingResult |
| | | { |
| | | #keys: '[414702.1.299084054]' |
| | | BaseType: 'Form' |
| | | GBLayout |
| | | { |
| | | Type: 'internal[GBLayoutDefinition]' |
| | | Columns: |
| | | [ |
| | | GBFlow.Column { grow: 128 id: 199 parent: 0 } |
| | | ] |
| | | Elements: |
| | | [ |
| | | GBElement |
| | | { |
| | | Component => ListPeggingProductInSalesDemandBase |
| | | Position { startcolumn: 199 startrow: 785 endcolumn: 199 endrow: 785 } |
| | | } |
| | | ] |
| | | Gaps: [ left: 0 right: 0 top: 0 bottom: 0 inner: 5 ] |
| | | Rows: |
| | | [ |
| | | GBFlow.Row { grow: 128 id: 785 parent: 0 } |
| | | ] |
| | | } |
| | | Children: |
| | | [ |
| | | #child: ListPeggingProductInSalesDemandBase |
| | | ] |
| | | Properties: |
| | | [ |
| | | Height: 270 |
| | | Image: 'FISH_BOWL' |
| | | IncludeInView: true |
| | | Title: 'PeggingResult' |
| | | Width: 494 |
| | | ] |
| | | } |
| | |
| | | Title: '颿¿ææ_é墿ä½' |
| | | ] |
| | | } |
| | | Component mn224 |
| | | Component mn222 |
| | | { |
| | | #keys: '[414702.1.5593849]' |
| | | BaseType: 'WebMenu' |
| | |
| | | Title: 'æ°æ®åå' |
| | | ] |
| | | } |
| | | Component mn666 |
| | | { |
| | | #keys: '[414702.1.293023106]' |
| | | BaseType: 'WebMenu' |
| | | Properties: |
| | | [ |
| | | Separator: true |
| | | Taborder: 7 |
| | | ] |
| | | } |
| | | Component mnPeggingAnalyse |
| | | { |
| | | #keys: '[414702.1.293023171]' |
| | | BaseType: 'WebMenu' |
| | | Properties: |
| | | [ |
| | | Description: 'Peggingåæ' |
| | | Image: 'COCKTAIL' |
| | | Taborder: 8 |
| | | Title: 'Peggingåæ' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: cmTestAttempt/mnPeggingAnalyse |
| | | Response OnClick () id:Response_TIANMA_JITUAN_cmTestAttempt_mnPeggingAnalyse_OnClick |
| | | { |
| | | #keys: '[414702.1.294401302]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebMenu_OnClick' |
| | | GroupServerCalls: true |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | ApplicationScope.ViewManager().ResetUserViewById( "Peggingåæ", true ); |
| | | *] |
| | | } |
| | | } |
| | |
| | | #keys: '[414702.0.391791234]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | Precondition: |
| | | [* |
| | | return not isnull( GlobalOTDSOP ); |
| | | *] |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | Application.Download( "产è½åé
ç»æ.xlsx", CapacityAllocationResults::Export( GlobalOTDTable ).AsBinaryData() ); |
| | | Application.Download( "产è½åé
ç»æ.xlsx", CapacityAllocationResults::Export( GlobalOTDSOP ).AsBinaryData() ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component ListPeggingAllResult |
| | | { |
| | | #keys: '[414702.1.306657922]' |
| | | BaseType: 'WebList' |
| | | Children: |
| | | [ |
| | | Component DataExtractorPeggingAllResult |
| | | { |
| | | #keys: '[414702.1.306657923]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'PeggingResult' |
| | | ExtractionMode: 'Selected' |
| | | Source: 'FormPeggingResult.ListPeggingResult' |
| | | Taborder: 0 |
| | | Transformation: 'AllChild' |
| | | ] |
| | | } |
| | | #child: listActionBarPagePeggingAllResult |
| | | Component DataSetLevelPeggingAllResult |
| | | { |
| | | #keys: '[414702.1.306657928]' |
| | | BaseType: 'WebDataSetLevel' |
| | | Children: |
| | | [ |
| | | #child: listContextMenuPeggingAllResult |
| | | ] |
| | | Properties: |
| | | [ |
| | | Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"PeggingProductInSalesDemandBase.SalesDemandBaseID","title":"订åID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"PeggingProductInSalesDemandBase.SalesDemandBaseID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductID","title":"产åID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StockingPointID","title":"åºåç¹ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StockingPointID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StartDate","title":"å¼å§æ¶é´","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StartDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SupplyQuantity","title":"ä¾åºæ°é","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SupplyQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"FulfillmentQuantity","title":"å®é
éè¦æ°é","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"FulfillmentQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SupplyType","title":"ä¾åºç±»å","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SupplyType"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"UnitOfMeasurementName","title":"åä½","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"UnitOfMeasurementName"}}]' |
| | | ContextMenu: 'listContextMenuPeggingAllResult' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | ResponseDefinitions: |
| | | [ |
| | | DelegatedResponseDefinition OnClick id:Responsedef_ListPeggingAllResult_WebMenu_OnClick |
| | | { |
| | | #keys: '[414702.1.305581888]' |
| | | Initiator: 'WebMenu' |
| | | IsInherited: false |
| | | ResponseType: 'OnClick' |
| | | Arguments: |
| | | [ |
| | | ResponseDefinitionArgument selection |
| | | { |
| | | #keys: '[639.0.20605876]' |
| | | Binding: 'this.Selection()' |
| | | } |
| | | ] |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listActionBarPagePeggingAllResult |
| | | { |
| | | #keys: '[414702.1.306657925]' |
| | | BaseType: 'listActionBarPage' |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listContextMenuPeggingAllResult |
| | | { |
| | | #keys: '[414702.1.306657930]' |
| | | BaseType: 'listContextMenu' |
| | | Children: |
| | | [ |
| | | Component MenuSelectAll |
| | | { |
| | | #keys: '[414702.1.305511008]' |
| | | BaseType: 'WebMenu' |
| | | Properties: |
| | | [ |
| | | Image: 'DOCUMENT_SELECTION' |
| | | Shortcut: 'Ctrl+A' |
| | | Taborder: 3 |
| | | Title: 'å
¨é' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ListPeggingAllResult |
| | | Response OnClick () id:Response_ListPeggingAllResult_MenuSelectAll_OnClick |
| | | { |
| | | #keys: '[414702.1.306792785]' |
| | | CanBindMultiple: false |
| | | DefinitionID => /ListPeggingAllResult/Responsedef_ListPeggingAllResult_WebMenu_OnClick |
| | | Initiator: 'MenuSelectAll' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | this.SelectAll(); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: MacroPlannerWebApp |
| | | OrphanComponent FormPeggingAllResult |
| | | { |
| | | #keys: '[414702.1.305404879]' |
| | | BaseType: 'WebForm' |
| | | Children: |
| | | [ |
| | | #child: ListPeggingAllResult |
| | | ] |
| | | Properties: |
| | | [ |
| | | Image: 'DIAMOND' |
| | | Title: 'Peggingææåç»æ' |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component ListPeggingProductInSalesDemandBase |
| | | { |
| | | #keys: '[414702.1.294477745]' |
| | | BaseType: 'WebList' |
| | | Children: |
| | | [ |
| | | Component DataExtractorPeggingProductInSalesDemandBase |
| | | { |
| | | #keys: '[414702.1.294477746]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'PeggingProduct_MP' |
| | | ExtractionMode: 'Selected' |
| | | Source: 'FormPeggingProduct_MP.ListPeggingProduct_MP' |
| | | Taborder: 0 |
| | | Transformation: 'PeggingProductInSalesDemandBase' |
| | | ] |
| | | } |
| | | #child: listActionBarPagePeggingProductInSalesDemandBase |
| | | Component DataSetLevelPeggingProductInSalesDemandBase |
| | | { |
| | | #keys: '[414702.1.294477751]' |
| | | BaseType: 'WebDataSetLevel' |
| | | Children: |
| | | [ |
| | | #child: listContextMenuPeggingProductInSalesDemandBase |
| | | ] |
| | | Properties: |
| | | [ |
| | | Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SalesDemandBaseID","title":"订åID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SalesDemandBaseID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StockingPointID","title":"åºåç¹ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StockingPointID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Quantity","title":"æ°é","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Quantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StartDate","title":"å¼å§æ¶é´","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StartDate"}}]' |
| | | ContextMenu: 'listContextMenuPeggingProductInSalesDemandBase' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | ResponseDefinitions: |
| | | [ |
| | | DelegatedResponseDefinition OnClick id:Responsedef_ListPeggingProductInSalesDemandBase_WebMenu_OnClick |
| | | { |
| | | #keys: '[414702.1.298881590]' |
| | | Initiator: 'WebMenu' |
| | | IsInherited: false |
| | | ResponseType: 'OnClick' |
| | | Arguments: |
| | | [ |
| | | ResponseDefinitionArgument selection |
| | | { |
| | | #keys: '[619.0.10848847]' |
| | | Binding: 'this.Selection()' |
| | | } |
| | | ] |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listActionBarPagePeggingProductInSalesDemandBase |
| | | { |
| | | #keys: '[414702.1.294477748]' |
| | | BaseType: 'listActionBarPage' |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listContextMenuPeggingProductInSalesDemandBase |
| | | { |
| | | #keys: '[414702.1.294477753]' |
| | | BaseType: 'listContextMenu' |
| | | Children: |
| | | [ |
| | | Component mGeneratePeggingResult |
| | | { |
| | | #keys: '[414702.1.298700850]' |
| | | BaseType: 'WebMenu' |
| | | Properties: |
| | | [ |
| | | Image: 'PUMPKIN_HALLOWEEN' |
| | | Taborder: 3 |
| | | Title: 'çæPeggingç»æ' |
| | | ] |
| | | } |
| | | Component MenuSelectionAll |
| | | { |
| | | #keys: '[414702.1.300701803]' |
| | | BaseType: 'WebMenu' |
| | | Properties: |
| | | [ |
| | | Image: 'SELECTION' |
| | | Shortcut: 'Ctrl+A' |
| | | Taborder: 4 |
| | | Title: 'å
¨é' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ListPeggingProductInSalesDemandBase |
| | | Response OnClick () id:Response_ListPeggingProductInSalesDemandBase_MenuSelectionAll_OnClick |
| | | { |
| | | #keys: '[414702.1.300762760]' |
| | | CanBindMultiple: false |
| | | DefinitionID => /ListPeggingProductInSalesDemandBase/Responsedef_ListPeggingProductInSalesDemandBase_WebMenu_OnClick |
| | | Initiator: 'MenuSelectionAll' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | this.SelectAll(); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ListPeggingProductInSalesDemandBase |
| | | Response OnClick ( |
| | | structured[PeggingProductInSalesDemandBase] selection |
| | | ) id:Response_ListPeggingProductInSalesDemandBase_mGeneratePeggingResult_OnClick |
| | | { |
| | | #keys: '[414702.1.298700997]' |
| | | CanBindMultiple: false |
| | | DefinitionID => /ListPeggingProductInSalesDemandBase/Responsedef_ListPeggingProductInSalesDemandBase_WebMenu_OnClick |
| | | Initiator: 'mGeneratePeggingResult' |
| | | Precondition: |
| | | [* |
| | | return not isnull( MacroPlan ); |
| | | *] |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | PeggingResult::CreateData( selection, MacroPlan ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: MacroPlannerWebApp |
| | | OrphanComponent FormPeggingProductInSalesDemandBase |
| | | { |
| | | #keys: '[414702.1.291680100]' |
| | | BaseType: 'WebForm' |
| | | Children: |
| | | [ |
| | | #child: ListPeggingProductInSalesDemandBase |
| | | ] |
| | | Properties: |
| | | [ |
| | | Image: 'BANANA' |
| | | Title: 'Pegging产åç订å' |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component ListPeggingProduct_MP |
| | | { |
| | | #keys: '[414702.1.291408736]' |
| | | BaseType: 'WebList' |
| | | Children: |
| | | [ |
| | | Component DataExtractorPeggingProduct_MP |
| | | { |
| | | #keys: '[414702.1.291408737]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'GlobalOTDSOP' |
| | | Source: 'GlobalOTDSOP' |
| | | Taborder: 0 |
| | | Transformation: 'PeggingProduct_MP' |
| | | ] |
| | | } |
| | | #child: listActionBarPagePeggingProduct_MP |
| | | Component DataSetLevelPeggingProduct_MP |
| | | { |
| | | #keys: '[414702.1.291408742]' |
| | | BaseType: 'WebDataSetLevel' |
| | | Children: |
| | | [ |
| | | #child: listContextMenuPeggingProduct_MP |
| | | ] |
| | | Properties: |
| | | [ |
| | | Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductID","title":"产åID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StockingPointID","title":"åºåç¹ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StockingPointID"}}]' |
| | | ContextMenu: 'listContextMenuPeggingProduct_MP' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | ResponseDefinitions: |
| | | [ |
| | | DelegatedResponseDefinition OnClick id:Responsedef_ListPeggingProduct_MP_WebMenu_OnClick |
| | | { |
| | | #keys: '[414702.1.309521164]' |
| | | Initiator: 'WebMenu' |
| | | IsInherited: false |
| | | ResponseType: 'OnClick' |
| | | Arguments: |
| | | [ |
| | | ResponseDefinitionArgument selection |
| | | { |
| | | #keys: '[645.0.18569723]' |
| | | Binding: 'this.Selection()' |
| | | } |
| | | ] |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listActionBarPagePeggingProduct_MP |
| | | { |
| | | #keys: '[414702.1.291408739]' |
| | | BaseType: 'listActionBarPage' |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listContextMenuPeggingProduct_MP |
| | | { |
| | | #keys: '[414702.1.291408744]' |
| | | BaseType: 'listContextMenu' |
| | | Children: |
| | | [ |
| | | Component MenuSelectionAll |
| | | { |
| | | #keys: '[414702.1.308101396]' |
| | | BaseType: 'WebMenu' |
| | | Properties: |
| | | [ |
| | | Image: 'SELECTION' |
| | | Shortcut: 'Ctrl+A' |
| | | Taborder: 3 |
| | | Title: 'å
¨é' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component pButton |
| | | { |
| | | #keys: '[414702.1.288412503]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component bCreate |
| | | { |
| | | #keys: '[414702.1.288443069]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Image: 'BOMB' |
| | | Label: 'å建Pegging产å' |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | Component bRunPeggingAlgorithm |
| | | { |
| | | #keys: '[414702.1.302382530]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Image: 'TREE' |
| | | Label: 'è¿è¡Peggingç®æ³' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | FixedSize: true |
| | | Orientation: 'horizontal' |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ListPeggingProduct_MP |
| | | Response OnClick () id:Response_ListPeggingProduct_MP_MenuSelectionAll_OnClick |
| | | { |
| | | #keys: '[414702.1.309596514]' |
| | | CanBindMultiple: false |
| | | DefinitionID => /ListPeggingProduct_MP/Responsedef_ListPeggingProduct_MP_WebMenu_OnClick |
| | | Initiator: 'MenuSelectionAll' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | this.SelectAll(); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: pButton/bCreate |
| | | Response OnClick () id:Response_pButton_bCreate_OnClick |
| | | { |
| | | #keys: '[414702.1.288443717]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | Precondition: |
| | | [* |
| | | return not isnull( GlobalOTDSOP ) and not isnull( MacroPlan ); |
| | | *] |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | form := construct( FormNavigationPanel ); |
| | | form.ShowDockLeft(); |
| | | |
| | | PeggingProduct_MP::Create( GlobalOTDSOP, DataHolderCheckedProduct.Data() ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: pButton/bRunPeggingAlgorithm |
| | | Response OnClick () id:Response_pButton_bRunPeggingAlgorithm_OnClick |
| | | { |
| | | #keys: '[414702.1.304801095]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | Precondition: |
| | | [* |
| | | return not isnull( MacroPlan ); |
| | | *] |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | MacroPlan.RunPeggingAlgorithm(); |
| | | |
| | | WebMessageBox::Success( "è¿è¡æåï¼", true ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: MacroPlannerWebApp |
| | | OrphanComponent FormPeggingProduct_MP |
| | | { |
| | | #keys: '[414702.1.290901529]' |
| | | BaseType: 'WebForm' |
| | | Children: |
| | | [ |
| | | #child: ListPeggingProduct_MP |
| | | #child: pButton |
| | | ] |
| | | Properties: |
| | | [ |
| | | Image: 'ORANGE' |
| | | Title: 'Pegging产ååæ' |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component ListPeggingResult |
| | | { |
| | | #keys: '[414702.1.296178342]' |
| | | BaseType: 'WebList' |
| | | Children: |
| | | [ |
| | | Component DataExtractorPeggingResult |
| | | { |
| | | #keys: '[414702.1.296178343]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'PeggingProductInSalesDemandBase' |
| | | ExtractionMode: 'Selected' |
| | | FixedFilter: 'object.NumberOfPlies() = 0' |
| | | Source: 'FormPeggingProductInSalesDemandBase.ListPeggingProductInSalesDemandBase' |
| | | Taborder: 0 |
| | | Transformation: 'PeggingResult' |
| | | ] |
| | | } |
| | | #child: listActionBarPagePeggingResult |
| | | Component DataSetLevelPeggingResult |
| | | { |
| | | #keys: '[414702.1.296178348]' |
| | | BaseType: 'WebDataSetLevel' |
| | | Children: |
| | | [ |
| | | #child: listContextMenuPeggingResult |
| | | ] |
| | | Properties: |
| | | [ |
| | | Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"PeggingProductInSalesDemandBase.SalesDemandBaseID","title":"订åID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"PeggingProductInSalesDemandBase.SalesDemandBaseID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductID","title":"产åID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StockingPointID","title":"åºåç¹ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StockingPointID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StartDate","title":"å¼å§æ¶é´","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StartDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SupplyQuantity","title":"ä¾åºæ°é","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SupplyQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ActualFulfillmentQuantity","title":"å®é
éè¦æ°é","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ActualFulfillmentQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"FulfillmentQuantity","title":"订åéè¦æ°é","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"FulfillmentQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SupplyType","title":"ä¾åºç±»å","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SupplyType"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"UnitOfMeasurementName","title":"åä½","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"UnitOfMeasurementName"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"NumberOfPlies","title":"屿°","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"NumberOfPlies"}}]' |
| | | ContextMenu: 'listContextMenuPeggingResult' |
| | | RelationFromParent: 'Child' |
| | | RelationRepeating: 'Child' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | ResponseDefinitions: |
| | | [ |
| | | DelegatedResponseDefinition OnClick id:Responsedef_ListPeggingResult_WebMenu_OnClick |
| | | { |
| | | #keys: '[414702.1.302148620]' |
| | | Initiator: 'WebMenu' |
| | | IsInherited: false |
| | | ResponseType: 'OnClick' |
| | | Arguments: |
| | | [ |
| | | ResponseDefinitionArgument selection |
| | | { |
| | | #keys: '[627.0.29218476]' |
| | | Binding: 'this.Selection()' |
| | | } |
| | | ] |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listActionBarPagePeggingResult |
| | | { |
| | | #keys: '[414702.1.296178345]' |
| | | BaseType: 'listActionBarPage' |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listContextMenuPeggingResult |
| | | { |
| | | #keys: '[414702.1.296178350]' |
| | | BaseType: 'listContextMenu' |
| | | Children: |
| | | [ |
| | | Component MenuSelectionAll |
| | | { |
| | | #keys: '[414702.1.302117859]' |
| | | BaseType: 'WebMenu' |
| | | Properties: |
| | | [ |
| | | Image: 'SELECTION' |
| | | Shortcut: 'Ctrl+A' |
| | | Taborder: 3 |
| | | Title: 'å
¨é' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ListPeggingResult |
| | | Response OnClick () id:Response_ListPeggingResult_MenuSelectionAll_OnClick |
| | | { |
| | | #keys: '[414702.1.302148638]' |
| | | CanBindMultiple: false |
| | | DefinitionID => /ListPeggingResult/Responsedef_ListPeggingResult_WebMenu_OnClick |
| | | Initiator: 'MenuSelectionAll' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | this.SelectAll(); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: MacroPlannerWebApp |
| | | OrphanComponent FormPeggingResult |
| | | { |
| | | #keys: '[414702.1.295031324]' |
| | | BaseType: 'WebForm' |
| | | Children: |
| | | [ |
| | | #child: ListPeggingResult |
| | | ] |
| | | Properties: |
| | | [ |
| | | Image: 'CUP' |
| | | Title: 'Peggingç»æ' |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | { |
| | | viewcontents |
| | | { |
| | | forms |
| | | { |
| | | form_FormPeggingProduct_MP |
| | | { |
| | | title: 'QTIANMA_JITUAN::FormPeggingProduct_MP' |
| | | shown: true |
| | | componentID: 'QTIANMA_JITUAN::FormPeggingProduct_MP' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 1 |
| | | rowSpan: 7 |
| | | columnPosition: 1 |
| | | columnSpan: 3 |
| | | } |
| | | components |
| | | { |
| | | FormPeggingProduct_MP_pButton |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormPeggingProduct_MP_ListPeggingProduct_MP |
| | | { |
| | | } |
| | | FormPeggingProduct_MP_DataSetLevelPeggingProduct_MP |
| | | { |
| | | groupDepth: -1 |
| | | column_ProductID |
| | | { |
| | | columnId: 'ProductID' |
| | | dataPath: 'ProductID' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormPeggingProductInSalesDemandBase_1 |
| | | { |
| | | title: 'QTIANMA_JITUAN::FormPeggingProductInSalesDemandBase' |
| | | shown: true |
| | | componentID: 'QTIANMA_JITUAN::FormPeggingProductInSalesDemandBase' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 8 |
| | | rowSpan: 6 |
| | | columnPosition: 1 |
| | | columnSpan: 3 |
| | | } |
| | | components |
| | | { |
| | | FormPeggingProductInSalesDemandBase_ListPeggingProductInSalesDemandBase |
| | | { |
| | | } |
| | | FormPeggingProductInSalesDemandBase_DataSetLevelPeggingProductInSalesDemandBase |
| | | { |
| | | groupDepth: -1 |
| | | sort: 'StartDate' |
| | | column_SalesDemandBaseID |
| | | { |
| | | columnId: 'SalesDemandBaseID' |
| | | dataPath: 'SalesDemandBaseID' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: 'count' |
| | | width: 61 |
| | | } |
| | | column_StockingPointID |
| | | { |
| | | columnId: 'StockingPointID' |
| | | dataPath: 'StockingPointID' |
| | | dataType: 'string' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 95 |
| | | } |
| | | column_Quantity |
| | | { |
| | | columnId: 'Quantity' |
| | | dataPath: 'Quantity' |
| | | dataType: 'real' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 51 |
| | | } |
| | | column_StartDate |
| | | { |
| | | columnId: 'StartDate' |
| | | dataPath: 'StartDate' |
| | | dataType: 'date' |
| | | index: 3 |
| | | subtotals: '' |
| | | width: 76 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormPeggingResult |
| | | { |
| | | title: 'QTIANMA_JITUAN::FormPeggingResult' |
| | | shown: true |
| | | componentID: 'QTIANMA_JITUAN::FormPeggingResult' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 1 |
| | | rowSpan: 13 |
| | | columnPosition: 4 |
| | | columnSpan: 9 |
| | | } |
| | | components |
| | | { |
| | | FormPeggingResult_ListPeggingResult |
| | | { |
| | | } |
| | | FormPeggingResult_DataSetLevelPeggingResult |
| | | { |
| | | groupDepth: -1 |
| | | sort: 'ProductID' |
| | | column_PeggingProductInSalesDemandBase_SalesDemandBaseID |
| | | { |
| | | columnId: 'PeggingProductInSalesDemandBase.SalesDemandBaseID' |
| | | dataPath: 'PeggingProductInSalesDemandBase.SalesDemandBaseID' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: 'count' |
| | | width: 122 |
| | | } |
| | | column_ProductID |
| | | { |
| | | columnId: 'ProductID' |
| | | dataPath: 'ProductID' |
| | | dataType: 'string' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 164 |
| | | } |
| | | column_StockingPointID |
| | | { |
| | | columnId: 'StockingPointID' |
| | | dataPath: 'StockingPointID' |
| | | dataType: 'string' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 92 |
| | | } |
| | | column_StartDate |
| | | { |
| | | columnId: 'StartDate' |
| | | dataPath: 'StartDate' |
| | | dataType: 'date' |
| | | index: 3 |
| | | subtotals: '' |
| | | width: 82 |
| | | } |
| | | column_SupplyQuantity |
| | | { |
| | | columnId: 'SupplyQuantity' |
| | | dataPath: 'SupplyQuantity' |
| | | dataType: 'real' |
| | | index: 4 |
| | | subtotals: '' |
| | | width: 86 |
| | | } |
| | | column_ActualFulfillmentQuantity |
| | | { |
| | | columnId: 'ActualFulfillmentQuantity' |
| | | dataPath: 'ActualFulfillmentQuantity' |
| | | dataType: 'real' |
| | | index: 5 |
| | | subtotals: '' |
| | | width: 97 |
| | | } |
| | | column_FulfillmentQuantity |
| | | { |
| | | columnId: 'FulfillmentQuantity' |
| | | dataPath: 'FulfillmentQuantity' |
| | | dataType: 'real' |
| | | index: 6 |
| | | subtotals: '' |
| | | width: 108 |
| | | } |
| | | column_SupplyType |
| | | { |
| | | columnId: 'SupplyType' |
| | | dataPath: 'SupplyType' |
| | | dataType: 'string' |
| | | index: 7 |
| | | subtotals: '' |
| | | width: 78 |
| | | } |
| | | column_UnitOfMeasurementName |
| | | { |
| | | columnId: 'UnitOfMeasurementName' |
| | | dataPath: 'UnitOfMeasurementName' |
| | | dataType: 'string' |
| | | index: 8 |
| | | subtotals: '' |
| | | width: 50 |
| | | } |
| | | column_NumberOfPlies |
| | | { |
| | | columnId: 'NumberOfPlies' |
| | | dataPath: 'NumberOfPlies' |
| | | dataType: 'number' |
| | | index: 9 |
| | | subtotals: '' |
| | | width: 56 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormPeggingAllResult |
| | | { |
| | | title: 'QTIANMA_JITUAN::FormPeggingAllResult' |
| | | shown: true |
| | | componentID: 'QTIANMA_JITUAN::FormPeggingAllResult' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 14 |
| | | rowSpan: 12 |
| | | columnPosition: 1 |
| | | columnSpan: 12 |
| | | } |
| | | components |
| | | { |
| | | FormPeggingAllResult_ListPeggingAllResult |
| | | { |
| | | } |
| | | FormPeggingAllResult_DataSetLevelPeggingAllResult |
| | | { |
| | | groupDepth: 2 |
| | | sort: 'ProductID,StockingPointID,StartDate,DESC:PeggingProductInSalesDemandBase.SalesDemandBaseID' |
| | | column_PeggingProductInSalesDemandBase_SalesDemandBaseID |
| | | { |
| | | columnId: 'PeggingProductInSalesDemandBase.SalesDemandBaseID' |
| | | dataPath: 'PeggingProductInSalesDemandBase.SalesDemandBaseID' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: 'count' |
| | | width: 150 |
| | | } |
| | | column_ProductID |
| | | { |
| | | columnId: 'ProductID' |
| | | dataPath: 'ProductID' |
| | | dataType: 'string' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_StockingPointID |
| | | { |
| | | columnId: 'StockingPointID' |
| | | dataPath: 'StockingPointID' |
| | | dataType: 'string' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_StartDate |
| | | { |
| | | columnId: 'StartDate' |
| | | dataPath: 'StartDate' |
| | | dataType: 'date' |
| | | index: 3 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_SupplyQuantity |
| | | { |
| | | columnId: 'SupplyQuantity' |
| | | dataPath: 'SupplyQuantity' |
| | | dataType: 'real' |
| | | index: 4 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_FulfillmentQuantity |
| | | { |
| | | columnId: 'FulfillmentQuantity' |
| | | dataPath: 'FulfillmentQuantity' |
| | | dataType: 'real' |
| | | index: 5 |
| | | subtotals: 'sum' |
| | | width: 150 |
| | | } |
| | | column_SupplyType |
| | | { |
| | | columnId: 'SupplyType' |
| | | dataPath: 'SupplyType' |
| | | dataType: 'string' |
| | | index: 6 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_UnitOfMeasurementName |
| | | { |
| | | columnId: 'UnitOfMeasurementName' |
| | | dataPath: 'UnitOfMeasurementName' |
| | | dataType: 'string' |
| | | index: 7 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | userconfigurableinformation |
| | | { |
| | | } |
| | | page: '' |
| | | group: '' |
| | | index: 0 |
| | | image: 'VIEW' |
| | | description: '' |
| | | } |
| | | formatversion: 2 |
| | | id: 'Peggingåæ' |
| | | name: 'åæPegging' |
| | | isglobal: false |
| | | isroot: true |
| | | } |