Merge branch 'dev' into dev_yy
已重命名5个文件
已复制1个文件
已修改62个文件
已添加139个文件
已删除16个文件
| | |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: MPSync |
| | | OwningSide: 'Owned' |
| | | InterfaceProperties { Accessibility: 'Module' } |
| | | } |
| | | RelationSide.RightSide MPSync |
| | | { |
| | |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: ImportExcel |
| | | OwningSide: 'Reference' |
| | | InterfaceProperties { Accessibility: 'Module' } |
| | | } |
| | | } |
| | |
| | | |
| | | if( not isnull( planningup ) ) |
| | | { |
| | | value := planningup.BaseAvailableCapacity().HoursAsReal() * planningup.MaximumLoadPercentage() / 100; |
| | | value := planningup.BaseAvailableCapacity().HoursAsReal() * planningup.MaximumLoadPercentage() / 100 |
| | | * this.PlanningSystemRatio(); // Tianma fix 20230926 |
| | | } |
| | | } |
| | | else |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method HasAllRequiredFilesForImport (output Strings missingFiles_o, Boolean needUserUploadAllFiles) as Boolean |
| | | Method HasAllRequiredFilesForImport ( |
| | | output Strings missingFiles_o, |
| | | Boolean needUserUploadAllFiles |
| | | ) remote as Boolean |
| | | { |
| | | TextBody: |
| | | [* |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method HasAllRequiredFilesForImport (output Strings missingFiles_o) as Boolean |
| | | Method HasAllRequiredFilesForImport ( |
| | | output Strings missingFiles_o |
| | | ) remote as Boolean |
| | | { |
| | | TextBody: |
| | | [* |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method CanImport (output Strings missingFiles_o) as Boolean |
| | | Method CanImport ( |
| | | output Strings missingFiles_o |
| | | ) remote as Boolean |
| | | { |
| | | Description: 'Checks if necessary files are sufficent before starting import.' |
| | | TextBody: |
| | |
| | | system=false |
| | | version.component=2022.3.0.0 |
| | | version.fileformat=2 |
| | | version.quintiq=6.3.3.0 NightlyBuild 247983, build 247983 |
| | | version.quintiq=6.3.3.0 , build 248673 |
| | |
| | | EDIMLColumn OrderDate { Attribute: OrderDate ValueType: Date } |
| | | EDIMLColumn OrderID { Attribute: OrderID ValueType: String } |
| | | EDIMLColumn OrderLineID { Attribute: OrderLineID ValueType: String } |
| | | EDIMLColumn OrderTime { Attribute: OrderTime ValueType: Date } |
| | | EDIMLColumn OrderType { Attribute: OrderType ValueType: String } |
| | | EDIMLColumn Price { Attribute: Price ValueType: Real } |
| | | EDIMLColumn PriorityName { Attribute: PriorityName ValueType: String } |
| | | EDIMLColumn ProductGrade { Attribute: ProductGrade ValueType: String } |
| | | EDIMLColumn ProductID { Attribute: ProductID ValueType: String } |
| | | EDIMLColumn Quantity { Attribute: Quantity ValueType: Real } |
| | | EDIMLColumn SalesSegmentName { Attribute: SalesSegmentName ValueType: String } |
| | | EDIMLColumn SegmentPriority { Attribute: SegmentPriority ValueType: String } |
| | | EDIMLColumn SheetProfitability { Attribute: SheetProfitability ValueType: String } |
| | | EDIMLColumn StockingPointID { Attribute: StockingPointID ValueType: String } |
| | | EDIMLColumn UnitOfMeasureName { Attribute: UnitOfMeasureName ValueType: String } |
| | | } |
| | |
| | | EDIODBCLinkColumn ORDERTIME |
| | | { |
| | | OthersMayUpdateColumn: true |
| | | ValueType: String |
| | | ValueType: DateTime |
| | | } |
| | | EDIODBCLinkColumn ORDERTYPE |
| | | { |
| | |
| | | } |
| | | EDIColumnMatch { InputColumn: ORDERID OutputColumn: OrderID } |
| | | EDIColumnMatch { InputColumn: ORDERLINEID OutputColumn: OrderLineID } |
| | | EDIColumnMatch { InputColumn: ORDERTIME OutputColumn: OrderType } |
| | | EDIColumnMatch |
| | | { |
| | | InputColumn: ORDERTIME |
| | | OutputColumn: OrderTime |
| | | Converter |
| | | { |
| | | XMLDefinition: |
| | | [* |
| | | <?xml version="1.0" encoding="UTF-16"?> |
| | | <DateTimeToDate xmlns="http://www.quintiq.com/GEB/DateTimeToDate" Key="@1"> |
| | | <IsStandard>true</IsStandard> |
| | | <IsISO>false</IsISO> |
| | | <IsCustom>false</IsCustom> |
| | | <ConversionType>0</ConversionType> |
| | | </DateTimeToDate> |
| | | *] |
| | | } |
| | | } |
| | | EDIColumnMatch { InputColumn: ORDERTYPE OutputColumn: OrderType } |
| | | EDIColumnMatch { InputColumn: PRICE OutputColumn: Price } |
| | | EDIColumnMatch { InputColumn: PRIORITYNAME OutputColumn: PriorityName } |
| | | EDIColumnMatch { InputColumn: PRODUCTGRADE OutputColumn: ProductGrade } |
| | | EDIColumnMatch { InputColumn: PRODUCTID OutputColumn: ProductID } |
| | | EDIColumnMatch { InputColumn: QUANTITY OutputColumn: Quantity } |
| | | EDIColumnMatch { InputColumn: SALESEGMENTNAME OutputColumn: SalesSegmentName } |
| | | EDIColumnMatch { InputColumn: SEGMENTPRIORITY OutputColumn: SegmentPriority } |
| | | EDIColumnMatch { InputColumn: SHEETPROFITABILITY OutputColumn: SheetProfitability } |
| | | EDIColumnMatch { InputColumn: STOCKINGPOINTID OutputColumn: StockingPointID } |
| | | EDIColumnMatch { InputColumn: UNITOFMEASURENAME OutputColumn: UnitOfMeasureName } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | EDIBroker GlobalOTDTable_CustomerGrade |
| | | { |
| | | MDSDefinition: GlobalOTDTable |
| | | TimeZone: 'ACT' |
| | | UseOSTimeZone: false |
| | | EDIModelLink.Destination Destination16 |
| | | { |
| | | EDIMLTable Global_MappingCustomerGrade |
| | | { |
| | | PrimaryKeyColumns: BusinessType |
| | | PrimaryKeyColumns: Customer |
| | | PrimaryKeyColumns: CustomerGrade |
| | | TargetType: Global_MappingCustomerGrade |
| | | TypeIndex: Global_MappingCustomerGradeTypeIndex |
| | | EDIMLColumn BusinessType { Attribute: BusinessType ValueType: String } |
| | | EDIMLColumn Customer { Attribute: Customer ValueType: String } |
| | | EDIMLColumn CustomerGrade { Attribute: CustomerGrade ValueType: String } |
| | | } |
| | | } |
| | | EDIODBCLink.Source Source15 |
| | | { |
| | | DataIntegrityStrategy: 'Disabled' |
| | | SettingsEngineLink: 'domainmodel.ediremotedatasourcedefinition.remotestorage.oracle' |
| | | EDIODBCLinkTable MID_CUSTOMERGRADE |
| | | { |
| | | OthersMayCreateTable: true |
| | | OthersMayDeleteRow: true |
| | | OthersMayDropTable: true |
| | | OthersMayFlushTable: true |
| | | OthersMayInsertRow: true |
| | | Parameters: '/owner="OTD"' |
| | | PrimaryKeyColumns: CUSTOMER |
| | | RecordModificationHintStrategy: 'None' |
| | | EDIODBCLinkColumn BUSINESSTYPE |
| | | { |
| | | OthersMayUpdateColumn: true |
| | | ValueType: String |
| | | } |
| | | EDIODBCLinkColumn CUSTOMER |
| | | { |
| | | OthersMayUpdateColumn: true |
| | | ValueType: String |
| | | } |
| | | EDIODBCLinkColumn CUSTOMERGRADE |
| | | { |
| | | OthersMayUpdateColumn: true |
| | | ValueType: String |
| | | } |
| | | } |
| | | } |
| | | EDITransformation.Transformation Transformation15 |
| | | { |
| | | EDITableTransformation |
| | | { |
| | | InputTable: MID_CUSTOMERGRADE |
| | | OutputTable: Global_MappingCustomerGrade |
| | | EDIColumnMatch { InputColumn: BUSINESSTYPE OutputColumn: BusinessType } |
| | | EDIColumnMatch { InputColumn: CUSTOMER OutputColumn: Customer } |
| | | EDIColumnMatch { InputColumn: CUSTOMERGRADE OutputColumn: CustomerGrade } |
| | | } |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | EDIBroker GlobalOTDTable_DOI_DSI |
| | | { |
| | | MDSDefinition: GlobalOTDTable |
| | | TimeZone: 'ACT' |
| | | UseOSTimeZone: false |
| | | EDIModelLink.Destination Destination15 |
| | | { |
| | | EDIMLTable Global_MappingDOI_DSI |
| | | { |
| | | PrimaryKeyColumns: OrganCode |
| | | PrimaryKeyColumns: ProductID |
| | | TargetType: Global_MappingDOI_DSI |
| | | TypeIndex: Global_MappingDOI_DSITypeIndex |
| | | EDIMLColumn DOI { Attribute: DOI ValueType: String } |
| | | EDIMLColumn DSI { Attribute: DSI ValueType: String } |
| | | EDIMLColumn OrganCode { Attribute: OrganCode ValueType: String } |
| | | EDIMLColumn ProductID { Attribute: ProductID ValueType: String } |
| | | } |
| | | } |
| | | EDIODBCLink.Source Source14 |
| | | { |
| | | DataIntegrityStrategy: 'Disabled' |
| | | SettingsEngineLink: 'domainmodel.ediremotedatasourcedefinition.remotestorage.oracle' |
| | | EDIODBCLinkTable MID_DOI_DSI |
| | | { |
| | | OthersMayCreateTable: true |
| | | OthersMayDeleteRow: true |
| | | OthersMayDropTable: true |
| | | OthersMayFlushTable: true |
| | | OthersMayInsertRow: true |
| | | Parameters: '/owner="OTD"' |
| | | PrimaryKeyColumns: ORGANCODE |
| | | PrimaryKeyColumns: PRODUCTID |
| | | RecordModificationHintStrategy: 'None' |
| | | EDIODBCLinkColumn DOI |
| | | { |
| | | OthersMayUpdateColumn: true |
| | | ValueType: String |
| | | } |
| | | EDIODBCLinkColumn DSI |
| | | { |
| | | OthersMayUpdateColumn: true |
| | | ValueType: String |
| | | } |
| | | EDIODBCLinkColumn ORGANCODE |
| | | { |
| | | OthersMayUpdateColumn: true |
| | | ValueType: String |
| | | } |
| | | EDIODBCLinkColumn PRODUCTID |
| | | { |
| | | OthersMayUpdateColumn: true |
| | | ValueType: String |
| | | } |
| | | } |
| | | } |
| | | EDITransformation.Transformation Transformation14 |
| | | { |
| | | EDITableTransformation |
| | | { |
| | | InputTable: MID_DOI_DSI |
| | | OutputTable: Global_MappingDOI_DSI |
| | | EDIColumnMatch { InputColumn: DOI OutputColumn: DOI } |
| | | EDIColumnMatch { InputColumn: DSI OutputColumn: DSI } |
| | | EDIColumnMatch { InputColumn: ORGANCODE OutputColumn: OrganCode } |
| | | EDIColumnMatch { InputColumn: PRODUCTID OutputColumn: ProductID } |
| | | } |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #root |
| | | KnowledgeBase Knowledge_MP #extension |
| | | { |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation CapacityAndSaleBudgeChartElement_GlobalOTDTable_GlobalOTDTable_CapacityAndSaleBudgeChartElement |
| | | { |
| | | #keys: '1[414384.0.921264786]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide GlobalOTDTable |
| | | { |
| | | #keys: '3[414384.0.921264788][414384.0.921264787][414384.0.921264789]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: CapacityAndSaleBudgeChartElement |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide CapacityAndSaleBudgeChartElement |
| | | { |
| | | #keys: '3[414384.0.921264791][414384.0.921264790][414384.0.921264792]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: GlobalOTDTable |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation CapacityAndSaleBudgeChartRow_GlobalOTDTable_GlobalOTDTable_CapacityAndSaleBudgeChartRow |
| | | { |
| | | #keys: '1[414384.0.921264769]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide GlobalOTDTable |
| | | { |
| | | #keys: '3[414384.0.921264771][414384.0.921264770][414384.0.921264772]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: CapacityAndSaleBudgeChartRow |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide CapacityAndSaleBudgeChartRow |
| | | { |
| | | #keys: '3[414384.0.921264774][414384.0.921264773][414384.0.921264775]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: GlobalOTDTable |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation CapacityAndSaleBudgeCompareItemColumn_GlobalOTDTable_GlobalOTDTable_CapacityAndSaleBudgeCompareItemColumn |
| | | { |
| | | #keys: '1[414384.0.921264730]' |
| | | ProceduralSequenceRelationStrategy |
| | | { |
| | | #keys: '13[0.0.0][414384.0.921264749][414384.0.921264743][414384.0.921264750][414384.0.921264744][414384.0.921264751][414384.0.921264745][414384.0.921264752][414384.0.921264746][414384.0.921264753][414384.0.921264747][414384.0.921264754][414384.0.921264748]' |
| | | } |
| | | RelationSide.LeftSide GlobalOTDTable |
| | | { |
| | | #keys: '3[414384.0.921264732][414384.0.921264731][414384.0.921264733]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: CapacityAndSaleBudgeCompareItemColumn |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide CapacityAndSaleBudgeCompareItemColumn |
| | | { |
| | | #keys: '3[414384.0.921264735][414384.0.921264734][414384.0.921264736]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: GlobalOTDTable |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation CapacityAndSaleBudgeCompareItemRow_GlobalOTDTable_GlobalOTDTable_CapacityAndSaleBudgeCompareItemRow |
| | | { |
| | | #keys: '1[414384.0.921264713]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide GlobalOTDTable |
| | | { |
| | | #keys: '3[414384.0.921264715][414384.0.921264714][414384.0.921264716]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: CapacityAndSaleBudgeCompareItemRow |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide CapacityAndSaleBudgeCompareItemRow |
| | | { |
| | | #keys: '3[414384.0.921264718][414384.0.921264717][414384.0.921264719]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: GlobalOTDTable |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation CapacityAndSaleBudgeFilterBusinessType_GlobalOTDTable_GlobalOTDTable_CapacityAndSaleBudgeFilterBusinessType |
| | | { |
| | | #keys: '1[414384.0.921264696]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide GlobalOTDTable |
| | | { |
| | | #keys: '3[414384.0.921264698][414384.0.921264697][414384.0.921264699]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: CapacityAndSaleBudgeFilterBusinessType |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide CapacityAndSaleBudgeFilterBusinessType |
| | | { |
| | | #keys: '3[414384.0.921264701][414384.0.921264700][414384.0.921264702]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: GlobalOTDTable |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation CapacityAndSaleBudgeFilterItem_GlobalOTDTable_GlobalOTDTable_CapacityAndSaleBudgeFilterItem |
| | | { |
| | | #keys: '1[414384.0.921264679]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide GlobalOTDTable |
| | | { |
| | | #keys: '3[414384.0.921264681][414384.0.921264680][414384.0.921264682]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: CapacityAndSaleBudgeFilterItem |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide CapacityAndSaleBudgeFilterItem |
| | | { |
| | | #keys: '3[414384.0.921264684][414384.0.921264683][414384.0.921264685]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: GlobalOTDTable |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation CapacityAndSaleBudgeFilterMonth_GlobalOTDTable_GlobalOTDTable_CapacityAndSaleBudgeFilterMonth |
| | | { |
| | | #keys: '1[414384.0.921264662]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide GlobalOTDTable |
| | | { |
| | | #keys: '3[414384.0.921264664][414384.0.921264663][414384.0.921264665]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: CapacityAndSaleBudgeFilterMonth |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide CapacityAndSaleBudgeFilterMonth |
| | | { |
| | | #keys: '3[414384.0.921264667][414384.0.921264666][414384.0.921264668]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: GlobalOTDTable |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation CapacityAndSaleBudgeFilterPlaceOfProductionOfArray_GlobalOTDTable_GlobalOTDTable_CapacityAndSaleBudgeFilterPlaceOfProductionOfArray |
| | | { |
| | | #keys: '1[414384.0.921264645]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide GlobalOTDTable |
| | | { |
| | | #keys: '3[414384.0.921264647][414384.0.921264646][414384.0.921264648]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: CapacityAndSaleBudgeFilterPlaceOfProductionOfArray |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide CapacityAndSaleBudgeFilterPlaceOfProductionOfArray |
| | | { |
| | | #keys: '3[414384.0.921264650][414384.0.921264649][414384.0.921264651]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: GlobalOTDTable |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation CapacityAndSaleBudgeFilterYear_GlobalOTDTable_GlobalOTDTable_CapacityAndSaleBudgeFilterYear |
| | | { |
| | | #keys: '1[414384.0.921264628]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide GlobalOTDTable |
| | | { |
| | | #keys: '3[414384.0.921264630][414384.0.921264629][414384.0.921264631]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: CapacityAndSaleBudgeFilterYear |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide CapacityAndSaleBudgeFilterYear |
| | | { |
| | | #keys: '3[414384.0.921264633][414384.0.921264632][414384.0.921264634]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: GlobalOTDTable |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation GlobalOTDTable_Global_ShowCell_Global_ShowCell_GlobalOTDTable |
| | | { |
| | | #keys: '1[414702.0.483720679]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide Global_ShowCell |
| | | { |
| | | #keys: '3[414702.0.483720681][414702.0.483720680][414702.0.483720682]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: GlobalOTDTable |
| | | OwningSide: 'Owned' |
| | | } |
| | | RelationSide.RightSide GlobalOTDTable |
| | | { |
| | | #keys: '3[414702.0.483720684][414702.0.483720683][414702.0.483720685]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: Global_ShowCell |
| | | OwningSide: 'Reference' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation GlobalOTDTable_Global_ShowColumn_Global_ShowColumn_GlobalOTDTable |
| | | { |
| | | #keys: '1[414702.0.483720692]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide Global_ShowColumn |
| | | { |
| | | #keys: '3[414702.0.483720694][414702.0.483720693][414702.0.483720695]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: GlobalOTDTable |
| | | OwningSide: 'Owned' |
| | | } |
| | | RelationSide.RightSide GlobalOTDTable |
| | | { |
| | | #keys: '3[414702.0.483720697][414702.0.483720696][414702.0.483720698]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: Global_ShowColumn |
| | | OwningSide: 'Reference' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation GlobalOTDTable_Global_ShowRow_Global_ShowRow_GlobalOTDTable |
| | | { |
| | | #keys: '1[414702.0.483720663]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide Global_ShowRow |
| | | { |
| | | #keys: '3[414702.0.483720665][414702.0.483720664][414702.0.483720666]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: GlobalOTDTable |
| | | OwningSide: 'Owned' |
| | | } |
| | | RelationSide.RightSide GlobalOTDTable |
| | | { |
| | | #keys: '3[414702.0.483720668][414702.0.483720667][414702.0.483720669]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: Global_ShowRow |
| | | OwningSide: 'Reference' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation Global_MappingCustomerGrade_GlobalOTDTable_GlobalOTDTable_Global_MappingCustomerGrade |
| | | { |
| | | #keys: '1[414702.0.445485678]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide GlobalOTDTable |
| | | { |
| | | #keys: '3[414702.0.445485680][414702.0.445485679][414702.0.445485681]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: Global_MappingCustomerGrade |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide Global_MappingCustomerGrade |
| | | { |
| | | #keys: '3[414702.0.445485683][414702.0.445485682][414702.0.445485684]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: GlobalOTDTable |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation Global_MappingDOI_DSI_GlobalOTDTable_GlobalOTDTable_Global_MappingDOI_DSI |
| | | { |
| | | #keys: '1[414702.0.445364657]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide GlobalOTDTable |
| | | { |
| | | #keys: '3[414702.0.445364659][414702.0.445364658][414702.0.445364660]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: Global_MappingDOI_DSI |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide Global_MappingDOI_DSI |
| | | { |
| | | #keys: '3[414702.0.445364662][414702.0.445364661][414702.0.445364663]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: GlobalOTDTable |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation Global_ShowColumn_Global_ShowCell_Global_ShowCell_Global_ShowColumn |
| | | { |
| | | #keys: '1[414702.0.483720723]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide Global_ShowCell |
| | | { |
| | | #keys: '3[414702.0.483720725][414702.0.483720724][414702.0.483720726]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: Global_ShowColumn |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide Global_ShowColumn |
| | | { |
| | | #keys: '3[414702.0.483720728][414702.0.483720727][414702.0.483720729]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: Global_ShowCell |
| | | OwningSide: 'Reference' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation Global_ShowRow_Global_ShowCell_Global_ShowCell_Global_ShowRow |
| | | { |
| | | #keys: '1[414702.0.483720707]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide Global_ShowCell |
| | | { |
| | | #keys: '3[414702.0.483720709][414702.0.483720708][414702.0.483720710]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: Global_ShowRow |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide Global_ShowRow |
| | | { |
| | | #keys: '3[414702.0.483720712][414702.0.483720711][414702.0.483720713]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: Global_ShowCell |
| | | OwningSide: 'Reference' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation YuxTest_MPSync_MPSync_YuxTest |
| | | { |
| | | #keys: '1[414384.0.915854641]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide MPSync |
| | | { |
| | | #keys: '3[414384.0.915854643][414384.0.915854642][414384.0.915854644]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: YuxTest |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide YuxTest |
| | | { |
| | | #keys: '3[414384.0.915854646][414384.0.915854645][414384.0.915854647]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: MPSync |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
| | |
| | | TextBody: |
| | | [* |
| | | // NBoTk Sep-7-2023 (created) |
| | | |
| | | // è·åbusinessType éå |
| | | result := ""; |
| | | businessTypeList := construct( structured[String]); |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod TestData ( |
| | | ScenarioManager scenarioManager |
| | | GlobalOTDTable parent |
| | | ) |
| | | { |
| | | Description: 'çææµè¯æ°æ®' |
| | |
| | | |
| | | info( "çæå¹´åº¦äº§éé¢ç®æ¥è¡¨æµè¯æ°æ®" ) |
| | | |
| | | scenarioManager.CapacityAndSaleBudgeChartElement( relflush ); |
| | | parent.CapacityAndSaleBudgeChartElement( relflush ); |
| | | |
| | | for( sc := 0; sc < 4; sc := sc + 1 ) { |
| | | scenarioName := "SC" + [String]sc; |
| | |
| | | businessTypeString := "BT" + [String]i; |
| | | for( j := 1; j <= 12; j := j + 1 ) { |
| | | monthString := "MONTH" + ifexpr( j < 10, "0" + [String]j, [String]j ); |
| | | scenarioManager.CapacityAndSaleBudgeChartElement( relnew, |
| | | parent.CapacityAndSaleBudgeChartElement( relnew, |
| | | BusinessTypeOrPlaceOfProductionOfArray := businessTypeString, |
| | | TimeStringAndScenarioName := monthString + " - " + scenarioName, |
| | | Quantity := Real::Random( 20.0, 30.0 ) ); |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod CreateIfNotExist ( |
| | | ScenarioManager scenarioManager, |
| | | GlobalOTDTable parent, |
| | | String businessType, |
| | | String placeOfProductionOfArray |
| | | ) as CapacityAndSaleBudgeChartRow |
| | |
| | | TextBody: |
| | | [* |
| | | // yypsybs Sep-18-2023 (created) |
| | | value := select( scenarioManager, CapacityAndSaleBudgeChartRow, row, row.BusinessType() = businessType and row.PlaceOfProductionOfArray() = placeOfProductionOfArray ); |
| | | value := select( parent, CapacityAndSaleBudgeChartRow, row, row.BusinessType() = businessType and row.PlaceOfProductionOfArray() = placeOfProductionOfArray ); |
| | | if( isnull( value ) ) { |
| | | value := scenarioManager.CapacityAndSaleBudgeChartRow( relnew, BusinessType := businessType, PlaceOfProductionOfArray := placeOfProductionOfArray ); |
| | | value := parent.CapacityAndSaleBudgeChartRow( relnew, BusinessType := businessType, PlaceOfProductionOfArray := placeOfProductionOfArray ); |
| | | } |
| | | return value; |
| | | *] |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod CreateIfNotExist ( |
| | | ScenarioManager manager, |
| | | GlobalOTDTable parent, |
| | | String columnName |
| | | ) as CapacityAndSaleBudgeCompareItemColumn |
| | | { |
| | | TextBody: |
| | | [* |
| | | // yypsybs Sep-18-2023 (created) |
| | | value := select( manager, CapacityAndSaleBudgeCompareItemColumn, item, item.ColumnName() = columnName ); |
| | | value := select( parent, CapacityAndSaleBudgeCompareItemColumn, item, item.ColumnName() = columnName ); |
| | | if( isnull( value ) ) { |
| | | value := manager.CapacityAndSaleBudgeCompareItemColumn( relnew, ColumnName := columnName ); |
| | | value := parent.CapacityAndSaleBudgeCompareItemColumn( relnew, ColumnName := columnName ); |
| | | } |
| | | return value; |
| | | *] |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod CreateIfNotExist ( |
| | | ScenarioManager scenarioManager, |
| | | GlobalOTDTable parent, |
| | | String businessType, |
| | | String placeOfProductionOfArray |
| | | ) as CapacityAndSaleBudgeCompareItemRow |
| | |
| | | TextBody: |
| | | [* |
| | | // yypsybs Sep-18-2023 (created) |
| | | value := select( scenarioManager, CapacityAndSaleBudgeCompareItemRow, row, row.BusinessType() = businessType and row.PlaceOfProductionOfArray() = placeOfProductionOfArray ); |
| | | value := select( parent, CapacityAndSaleBudgeCompareItemRow, row, row.BusinessType() = businessType and row.PlaceOfProductionOfArray() = placeOfProductionOfArray ); |
| | | if( isnull( value ) ) { |
| | | value := scenarioManager.CapacityAndSaleBudgeCompareItemRow( relnew, BusinessType := businessType, PlaceOfProductionOfArray := placeOfProductionOfArray ); |
| | | value := parent.CapacityAndSaleBudgeCompareItemRow( relnew, BusinessType := businessType, PlaceOfProductionOfArray := placeOfProductionOfArray ); |
| | | } |
| | | return value; |
| | | *] |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod CreateIfNotExist ( |
| | | MPSync parent, |
| | | GlobalOTDTable parent, |
| | | String value |
| | | ) |
| | | { |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod CreateIfNotExist ( |
| | | ScenarioManager parent, |
| | | GlobalOTDTable parent, |
| | | String itemName |
| | | ) |
| | | { |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Initial ( |
| | | ScenarioManager parent |
| | | GlobalOTDTable parent |
| | | ) |
| | | { |
| | | Description: 'åå§å对æ¯é¡¹' |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Initial ( |
| | | ScenarioManager parent |
| | | GlobalOTDTable parent |
| | | ) |
| | | { |
| | | Description: 'åå§å年份' |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod CreateIfNotExist ( |
| | | MPSync parent, |
| | | GlobalOTDTable parent, |
| | | String value |
| | | ) |
| | | { |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Initial ( |
| | | ScenarioManager parent |
| | | GlobalOTDTable parent |
| | | ) |
| | | { |
| | | Description: 'åå§å年份' |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute CustomerOrderID |
| | | { |
| | | #keys: '3[414382.0.554303146][414382.0.554303145][414382.0.554303147]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute ForecastID |
| | | { |
| | | #keys: '3[414382.0.554303156][414382.0.554303155][414382.0.554303157]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod CreateData ( |
| | | MacroPlan macroPlan |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | traverse ( macroPlan, SalesDemand.astype( CustomerOrder ), co, true ) { |
| | | macroPlan.CustomerAndForecastOrder( relnew, |
| | | OrderID := co.OrderID(), |
| | | ProductID := co.ProductID(), |
| | | BusinessType := co.BusinessType(), |
| | | Customer := co.CustomerName(), |
| | | CustomerID := co.CustomerID(), |
| | | Quantity := co.Quantity(), |
| | | UnitOfMeasureName := co.UnitOfMeasureName(), |
| | | DemandDate := co.StartDate() |
| | | ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod RefreshData ( |
| | | MacroPlan owner, |
| | | GlobalOTDTable globalOTDTable |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // NBoTk Sep-26-2023 (created) |
| | | |
| | | // è·åå·²ç»åå¨ customerOrderID åforecastID |
| | | customerOrderIDs := selectvalues( owner,CustomerAndForecastOrder,c, |
| | | c.CustomerOrderID() <> '', |
| | | c.CustomerID() |
| | | ); |
| | | |
| | | forecastIDs := selectvalues( owner,CustomerAndForecastOrder,c, |
| | | c.ForecastID() <> '', |
| | | c.ForecastID() |
| | | ); |
| | | |
| | | |
| | | // 仿°æ®æ¹ Global_MappingCustomerOrder Global_MappingForecast ä¸è·åæ°çè®¢åæ°æ® |
| | | |
| | | traverse( globalOTDTable,Global_MappingCustomOrder,cus) |
| | | { |
| | | if ( customerOrderIDs.Find( cus.ID() ) = -1 ) { |
| | | owner.CustomerAndForecastOrder( relnew, |
| | | OrderID := cus.OrderID(), |
| | | ProductID := cus.ProductID(), |
| | | BusinessType := cus.BusinessType(), |
| | | Customer := cus.Customer(), |
| | | CustomerID := cus.CustomerID(), |
| | | Quantity := cus.Quantity(), |
| | | UnitOfMeasureName := cus.UnitOfMeasureName(), |
| | | DemandDate := cus.OrderDate() |
| | | |
| | | ); |
| | | } |
| | | } |
| | | |
| | | traverse( globalOTDTable,Global_MappingForecast,forecast) |
| | | { |
| | | if(forecastIDs.Find( forecast.ID() ) = -1 ) { |
| | | owner.CustomerAndForecastOrder( relnew, |
| | | ProductID := forecast.ProductID(), |
| | | BusinessType := forecast.BusinessType(), |
| | | Quantity := forecast.Quantity(), |
| | | UnitOfMeasureName := forecast.UnitOfMeasureName(), |
| | | DemandDate := forecast.EndDate() |
| | | ); |
| | | } |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute BusinessType |
| | | { |
| | | #keys: '3[414382.0.554303217][414382.0.554303216][414382.0.554303218]' |
| | | Description: 'äºä¸é¨' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute CustomerPolicy |
| | | { |
| | | #keys: '3[414382.0.554014841][414382.0.554014840][414382.0.554014842]' |
| | | Description: '客æ·çç¥' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute IsAvailable |
| | | { |
| | | #keys: '3[414382.0.554303237][414382.0.554303236][414382.0.554303238]' |
| | | Description: 'è®¢åæ¯å¦åä¸è®¡å' |
| | | ValueType: Boolean |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute OrderTime |
| | | { |
| | | #keys: '3[414382.0.554303277][414382.0.554303276][414382.0.554303278]' |
| | | Description: '订åä¸åæ¶é´' |
| | | ValueType: Date |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute OrderType |
| | | { |
| | | #keys: '3[414382.0.554303227][414382.0.554303226][414382.0.554303228]' |
| | | Description: '订åç±»å' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute ProductGrade |
| | | { |
| | | #keys: '3[414382.0.554303247][414382.0.554303246][414382.0.554303248]' |
| | | Description: '产åç级' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute SegmentPriority |
| | | { |
| | | #keys: '3[414382.0.554303257][414382.0.554303256][414382.0.554303258]' |
| | | Description: 'ç»åå¸åºä¼å
级' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute SheetProfitability |
| | | { |
| | | #keys: '3[414382.0.554303267][414382.0.554303266][414382.0.554303268]' |
| | | Description: 'å¤§å¼ ç婿°´å¹³' |
| | | ValueType: String |
| | | } |
| | |
| | | salesSegmentName := salesSegmentNameList.Concatenate( ",") |
| | | |
| | | schemeDate := Date::Today(); |
| | | |
| | | filllingCapacityOrderScheme := owner.FilllingCapacityOrderScheme(relnew,SchemeName := schemeName,SchemeDate := schemeDate,BusinessType := businessType,Customer := customer,CustomerID := customerID, |
| | | owner.FilllingCapacityOrderScheme(relnew,SchemeName := schemeName,SchemeDate := schemeDate,BusinessType := businessType,Customer := customer,CustomerID := customerID, |
| | | SalesSegmentName := salesSegmentName); |
| | | |
| | | |
ÎļþÃû´Ó _Main/BL/Type_ScenarioManager/Method_CapacityAndSaleBudgeChart#95.qbl ÐÞ¸Ä |
| | |
| | | // 颿¿åºå°;äºä¸é¨ |
| | | info( byBusinessTypeOrByOrgCode ); |
| | | traverse( businessTypes, Elements, businessType ) { |
| | | info( "businessType : " + businessType.BusinessType() ); |
| | | debuginfo( "businessType : " + businessType.BusinessType() ); |
| | | } |
| | | traverse( placeOfProductionOfArrays, Elements, placeOfProductionOfArray ) { |
| | | info( "placeOfProductionOfArray : " + placeOfProductionOfArray.PlaceOfProductionOfArray() ); |
| | | debuginfo( "placeOfProductionOfArray : " + placeOfProductionOfArray.PlaceOfProductionOfArray() ); |
| | | } |
| | | traverse( macroPlans, Elements, macroPlan ) { |
| | | info( "macroPlan : " + macroPlan.ScenarioName() ); |
| | | debuginfo( "macroPlan : " + macroPlan.ScenarioName() ); |
| | | } |
| | | // 年份ä¸éæ¶å
¨é |
| | | if( years.Size() = 0 ) { |
| | | years := selectsortedset( this, CapacityAndSaleBudgeFilterYear, item, true, item.YearNo() ); |
| | | } |
| | | traverse( years, Elements, year ) { |
| | | info( "yearNo : " + [String]year.YearNo() ); |
| | | debuginfo( "yearNo : " + [String]year.YearNo() ); |
| | | } |
| | | // æä»½ä¸éæ¶å
¨é |
| | | if( months.Size() = 0 ) { |
| | | months := selectsortedset( this, CapacityAndSaleBudgeFilterMonth, item, true, item.MonthNo() ); |
| | | } |
| | | traverse( months, Elements, month ) { |
| | | info( "monthNo : " + [String]month.MonthNo() ); |
| | | debuginfo( "monthNo : " + [String]month.MonthNo() ); |
| | | } |
| | | |
| | | // ====æ¸
çæ§æ°æ®==== |
| | |
| | | businessTypeList := selectuniquevalues( historyData, Elements, item, item.BusinessType() ); |
| | | // çæå¾è¡¨å
ç´ |
| | | traverse( years, Elements, year ) { |
| | | info( "process year start : " + [String]year.YearNo() ); |
| | | debuginfo( "process year start : " + [String]year.YearNo() ); |
| | | if( byBusinessTypeOrByOrgCode = "颿¿åºå°" and groupBy = "å¹´" ) { |
| | | // ç®æ |
| | | traverse( placeOfProductionOfArrayList, Elements, placeOfProductionOfArray ) { |
| | |
| | | } |
| | | if ( byBusinessTypeOrByOrgCode = "äºä¸é¨" and groupBy = "å£åº¦" ) { |
| | | for( seasonNo := 1; seasonNo <= 4; seasonNo := seasonNo + 1 ) { |
| | | info( "process season start : " + [String]seasonNo ); |
| | | debuginfo( "process season start : " + [String]seasonNo ); |
| | | traverse( businessTypeList, Elements, businessType ) { |
| | | productCodeList := CapacityAndSaleBudgeChartRow::GetProductCodesByBusinessType( rows, businessType ); |
| | | this.CapacityAndSaleBudgeChartElement( relnew, |
| | |
| | | } |
| | | if ( byBusinessTypeOrByOrgCode = "äºä¸é¨" and groupBy = "æ" ) { |
| | | traverse( months, Elements, month ) { |
| | | info( "process month start : " + [String]month.MonthNo() ); |
| | | debuginfo( "process month start : " + [String]month.MonthNo() ); |
| | | monthNoString := ifexpr( month.MonthNo() <= 9, "0" + [String]month.MonthNo(), [String]month.MonthNo() ); |
| | | traverse( businessTypeList, Elements, businessType ) { |
| | | productCodeList := CapacityAndSaleBudgeChartRow::GetProductCodesByBusinessType( rows, businessType ); |
| | |
| | | ); |
| | | } |
| | | } |
| | | info( "process month end : " + [String]month.MonthNo() ); |
| | | debuginfo( "process month end : " + [String]month.MonthNo() ); |
| | | } |
| | | } |
| | | info( "process year end : " + [String]year.YearNo() ) |
| | | debuginfo( "process year end : " + [String]year.YearNo() ) |
| | | } |
| | | //info( "CapacityAndSaleBudgeChartElement : " + [String]selectset( this, CapacityAndSaleBudgeChartElement, item, true ).Size() ); |
| | | //traverse( this, CapacityAndSaleBudgeChartRow, row ) { |
ÎļþÃû´Ó _Main/BL/Type_ScenarioManager/Method_CapacityAndSaleBudgeCompare.qbl ÐÞ¸Ä |
| | |
| | | months := selectsortedset( this, CapacityAndSaleBudgeFilterMonth, item, item.MonthNo() ); |
| | | } |
| | | traverse( macroPlans, Elements, item ) { |
| | | info( "scenario : " + item.ScenarioName() ); |
| | | debuginfo( "scenario : " + item.ScenarioName() ); |
| | | } |
| | | traverse( items, Elements, item ) { |
| | | info( "item : " + item.ItemName() ); |
| | | debuginfo( "item : " + item.ItemName() ); |
| | | } |
| | | traverse( years, Elements, item ) { |
| | | info( "year : " + [String]item.YearNo() ); |
| | | debuginfo( "year : " + [String]item.YearNo() ); |
| | | } |
| | | traverse( months, Elements, item ) { |
| | | info( "month : " + [String]item.MonthNo() ); |
| | | debuginfo( "month : " + [String]item.MonthNo() ); |
| | | } |
| | | // ====æ¸
çæ§æ°æ®==== |
| | | this.CapacityAndSaleBudgeCompareItemRow( relflush ); |
| | | this.CapacityAndSaleBudgeCompareItemColumn( relflush ); |
| | | // ====æ±æ»ææåºç°ç产å==== |
| | | historyData := selectset( mpSync, MappingCapacityAndSaleBudge, item, true ); |
| | | info( "historyData : " + [String]historyData.Size() ) |
| | | debuginfo( "historyData : " + [String]historyData.Size() ) |
| | | traverse( historyData, Elements, one ) { |
| | | productCode := one.ProductCode(); |
| | | MappingBOM::CreateTestData( mappingParent, "äºä¸é¨" + [String](productCode.Length() mod 3), [String](productCode.Length() mod 4), productCode ); |
| | |
| | | // è®°å½æ¯è¡å
å«åªäºproduct |
| | | CapacityAndSaleBudgeCompareItemRowProduct::CreateIfNotExist( row, productCode ); |
| | | } else { |
| | | info( "no boms for product : " + productCode ); |
| | | debuginfo( "no boms for product : " + productCode ); |
| | | } |
| | | } |
| | | info( "CapacityAndSaleBudgeCompareItemRow : " + [String]selectset( this, CapacityAndSaleBudgeCompareItemRow, item, true ).Size() ); |
| | | debuginfo( "CapacityAndSaleBudgeCompareItemRow : " + [String]selectset( this, CapacityAndSaleBudgeCompareItemRow, item, true ).Size() ); |
| | | // ====ä»å·¦åå³çæå头ä¸å
容==== |
| | | // äºä¸é¨ï¼ç»ç» |
| | | info( "dealing businessType and placeOfProductionOfArray" ) |
| | | debuginfo( "dealing businessType and placeOfProductionOfArray" ) |
| | | columnBusinessType := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "äºä¸é¨" ); |
| | | columnPlaceOfProductionOfArray := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "颿¿åºå°" ); |
| | | traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) { |
| | |
| | | info( "dealing 颿¿åé
é" ) |
| | | if( CapacityAndSaleBudgeFilterItem::Contains( items, "颿¿åé
é" ) ) { |
| | | traverse( years, Elements, year ) { |
| | | info( "颿¿åé
é" + [String]year.YearNo() + "å¹´" ); |
| | | debuginfo( "颿¿åé
é" + [String]year.YearNo() + "å¹´" ); |
| | | // å岿°æ® |
| | | info( "颿¿åé
é" + [String]year.YearNo() + "å¹´å岿°æ®" ); |
| | | debuginfo( "颿¿åé
é" + [String]year.YearNo() + "å¹´å岿°æ®" ); |
| | | traverse( months, Elements, month ) { |
| | | columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "颿¿åé
é-" + [String]year.YearNo() + "å¹´-" + [String]month.MonthNo() + "æ-年度é¢ç®" ); |
| | | traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) { |
| | |
| | | cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); |
| | | } |
| | | info( "颿¿åé
é" + [String]year.YearNo() + "å¹´S&OPæ°æ®" ); |
| | | debuginfo( "颿¿åé
é" + [String]year.YearNo() + "å¹´S&OPæ°æ®" ); |
| | | // S&OPæ°æ® |
| | | traverse( macroPlans, Elements, macroPlan ) { |
| | | traverse( months, Elements, month ) { |
| | |
| | | } |
| | | } |
| | | // 年度éå®é¢ |
| | | info( "dealing éå®é¢" ) |
| | | debuginfo( "dealing éå®é¢" ) |
| | | if( CapacityAndSaleBudgeFilterItem::Contains( items, "éå®é¢" ) ) { |
| | | traverse( years, Elements, year ) { |
| | | info( "éå®é¢" + [String]year.YearNo() + "å¹´" ); |
| | | debuginfo( "éå®é¢" + [String]year.YearNo() + "å¹´" ); |
| | | // å岿°æ® |
| | | info( "éå®é¢" + [String]year.YearNo() + "å¹´å岿°æ®" ); |
| | | debuginfo( "éå®é¢" + [String]year.YearNo() + "å¹´å岿°æ®" ); |
| | | traverse( months, Elements, month ) { |
| | | columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "对å¤éå®é¢-" + [String]year.YearNo() + "å¹´-" + [String]month.MonthNo() + "æ-年度é¢ç®" ); |
| | | traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) { |
| | |
| | | cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]cellReal ); |
| | | cell.CapacityAndSaleBudgeCompareItemRow( relset, row ); |
| | | } |
| | | info( "éå®é¢" + [String]year.YearNo() + "å¹´å岿°æ®S&OPæ°æ®" ); |
| | | debuginfo( "éå®é¢" + [String]year.YearNo() + "å¹´å岿°æ®S&OPæ°æ®" ); |
| | | // S&OPæ°æ® |
| | | traverse( macroPlans, Elements, macroPlan ) { |
| | | traverse( months, Elements, month ) { |
| | |
| | | } |
| | | } |
| | | // å¤§å¼ çå©é¢ |
| | | info( "dealing å¤§å¼ çå©é¢" ) |
| | | debuginfo( "dealing å¤§å¼ çå©é¢" ) |
| | | traverse( years, Elements, year ) { |
| | | // å岿°æ® |
| | | columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "å¤§å¼ çå©é¢-" + [String]year.YearNo() + "å¹´-年度é¢ç®" ); |
| | |
| | | } |
| | | } |
| | | // 产åçå©é¢ |
| | | info( "dealing 产åçå©é¢" ) |
| | | debuginfo( "dealing 产åçå©é¢" ) |
| | | traverse( years, Elements, year ) { |
| | | // å岿°æ® |
| | | columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "产åçå©é¢-" + [String]year.YearNo() + "å¹´-年度é¢ç®" ); |
| | |
| | | } |
| | | |
| | | // 设置rowNoåcolumnNo |
| | | info( "set rowNo and columnNo" ); |
| | | debuginfo( "set rowNo and columnNo" ); |
| | | rowNo := 1; |
| | | rowSorted := selectsortedset( this, CapacityAndSaleBudgeCompareItemRow, item, item.PlaceOfProductionOfArray() + "_" + item.BusinessType() ); |
| | | traverse( rowSorted, Elements, item ) { |
| | |
| | | item.ColumnNo( columnNo ); |
| | | columnNo := columnNo + 1; |
| | | } |
| | | info( "done" ); |
| | | debuginfo( "done" ); |
| | | *] |
| | | } |
ÎļþÃû´Ó _Main/BL/Type_ScenarioManager/Method_CapacityAndSaleBudgeCompareExport.qbl ÐÞ¸Ä |
| | |
| | | // å¤çcolumn <column><name>ç©æç¼ç </name><type>String</type></column> |
| | | columnXml := "" |
| | | traverse( this, CapacityAndSaleBudgeCompareItemColumn, column ) { |
| | | info( "columnName : " + column.ColumnName() ); |
| | | debuginfo( "columnName : " + column.ColumnName() ); |
| | | columnXml := columnXml + "<column><name>" + column.ColumnName() + "</name><type>String</type></column>"; |
| | | } |
| | | text := text + columnXml + "</table>" |
| | |
| | | tableElement:= xmlDOMDocument.GetElementByTagName( "table", 0 ); |
| | | rows := selectsortedset( this, CapacityAndSaleBudgeCompareItemRow, row, row.PlaceOfProductionOfArray() + "_" + row.BusinessType() ); |
| | | traverse ( rows, Elements, row ) { |
| | | info( "rowNo : " + [String]row.RowNo() ); |
| | | debuginfo( "rowNo : " + [String]row.RowNo() ); |
| | | traverse( row, CapacityAndSaleBudgeCompareItemCell, cell ) { |
| | | ScenarioManager::GeneratesTheSpecifiedXMLColumn( xmlDOMDocument, tableElement, cell.CellContent(), cell.CapacityAndSaleBudgeCompareItemColumn().ColumnName() ); |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method OnAsyncExecuteFailure_GlobalOTDTable_CustomerGrade ( |
| | | Number errorNo, |
| | | String errorMessage |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | this.Global_BrokerExecuteLog( relnew, |
| | | BrokerName := "GlobalOTDTable_CustomerGrade", |
| | | ElementTotal := 0, |
| | | ErrorMessage := errorMessage, |
| | | IsSuccess := false, |
| | | Name := "客æ·ççº§æ°æ®", |
| | | ErrorNo := errorNo, |
| | | ErrorDateTime := DateTime::ActualTime().Format( "Y-M-D H2:m:s" ) |
| | | ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method OnAsyncExecuteFailure_GlobalOTDTable_DOI_DSI ( |
| | | Number errorNo, |
| | | String errorMessage |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | this.Global_BrokerExecuteLog( relnew, |
| | | BrokerName := "GlobalOTDTable_DOI_DSI", |
| | | ElementTotal := 0, |
| | | ErrorMessage := errorMessage, |
| | | IsSuccess := false, |
| | | Name := "DOI_DSIæ°æ®", |
| | | ErrorNo := errorNo, |
| | | ErrorDateTime := DateTime::ActualTime().Format( "Y-M-D H2:m:s" ) |
| | | ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method OnAsyncExecute_GlobalOTDTable_CustomerGrade |
| | | { |
| | | TextBody: |
| | | [* |
| | | this.Global_BrokerExecuteLog( relnew, |
| | | BrokerName := "GlobalOTDTable_CustomerGrade", |
| | | ElementTotal := this.Global_MappingCustomerGrade( relsize ), |
| | | ErrorMessage := "", |
| | | IsSuccess := true, |
| | | Name := "客æ·ççº§æ°æ®", |
| | | SuccessDateTime := DateTime::ActualTime().Format( "Y-M-D H2:m:s" ), |
| | | ErrorNo := 0 |
| | | ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method OnAsyncExecute_GlobalOTDTable_DOI_DSI |
| | | { |
| | | TextBody: |
| | | [* |
| | | this.Global_BrokerExecuteLog( relnew, |
| | | BrokerName := "GlobalOTDTable_DOI_DSI", |
| | | ElementTotal := this.Global_MappingDOI_DSI( relsize ), |
| | | ErrorMessage := "", |
| | | IsSuccess := true, |
| | | Name := "DOI_DSIæ°æ®", |
| | | SuccessDateTime := DateTime::ActualTime().Format( "Y-M-D H2:m:s" ), |
| | | ErrorNo := 0 |
| | | ); |
| | | *] |
| | | } |
| | |
| | | traverse( this, Global_MappingProduct_MP, product, |
| | | product.ProductMajorType() = "æå" ) |
| | | { |
| | | uniquebomids := construct( Strings ); |
| | | product.IsLinkedWithFinishedGood( false ); |
| | | product.SetIsLinkedWithFinishedGoodAttributes_Recursive( 0, // depth |
| | | 100, // maxdepth |
| | | productspool, |
| | | operationspool, |
| | | operationbomspool ); |
| | | |
| | | operationbomspool, |
| | | uniquebomids ); |
| | | uniquebomids := uniquebomids.Unique(); |
| | | product.BOMCount( uniquebomids.Size() ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method SynchronizationAllMappingBrokerAndAPIByOption ( |
| | | Boolean isCustomOrder, |
| | | Boolean isForeacst |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | if ( isCustomOrder ) { |
| | | this.Global_MappingCustomOrder( relflush ); |
| | | this.GlobalOTDTable_CustomOrder().AsyncExecute(); |
| | | } |
| | | |
| | | if ( isForeacst ) { |
| | | this.Global_MappingForecast( relflush ); |
| | | this.GlobalOTDTable_Forecast().AsyncExecute(); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method SynchronizeDataToMacroPlan ( |
| | | MacroPlan macroPlan, |
| | | Strings businessTypes, |
| | | Boolean isCustomOrder, |
| | | Boolean isForecast |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | if ( isCustomOrder ) { |
| | | macroPlan.MappingCustomerOrderData( businessTypes, this ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method Test |
| | | { |
| | | TextBody: |
| | | [* |
| | | // KKO2 Sep-27-2023 (created) |
| | | *] |
| | | } |
| | |
| | | globalOTDTable.Global_MappingOperationCost( relflush ); |
| | | globalOTDTable.Global_MappingForecast( relflush ); |
| | | globalOTDTable.Global_MappingCustomOrder( relflush ); |
| | | globalOTDTable.Global_MappingDOI_DSI( relflush ); |
| | | globalOTDTable.Global_MappingCustomerGrade( relflush ); |
| | | |
| | | globalOTDTable.GlobalOTDTable_UnitOfMeasure_MP().AsyncExecute(); |
| | | globalOTDTable.GlobalOTDTable_SalesSegment_MP().AsyncExecute(); |
| | |
| | | globalOTDTable.GlobalOTDTable_OperationCost().AsyncExecute(); |
| | | globalOTDTable.GlobalOTDTable_Forecast().AsyncExecute(); |
| | | globalOTDTable.GlobalOTDTable_CustomOrder().AsyncExecute(); |
| | | globalOTDTable.GlobalOTDTable_DOI_DSI().AsyncExecute(); |
| | | globalOTDTable.GlobalOTDTable_CustomerGrade().AsyncExecute(); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute OrderTime |
| | | { |
| | | #keys: '3[414702.0.462647536][414702.0.462647535][414702.0.462647537]' |
| | | ValueType: Date |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute OrderType |
| | | { |
| | | #keys: '3[414702.0.462647526][414702.0.462647525][414702.0.462647527]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute ProductGrade |
| | | { |
| | | #keys: '3[414702.0.462647546][414702.0.462647545][414702.0.462647547]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute SegmentPriority |
| | | { |
| | | #keys: '3[414702.0.462647556][414702.0.462647555][414702.0.462647557]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute SheetProfitability |
| | | { |
| | | #keys: '3[414702.0.462647566][414702.0.462647565][414702.0.462647567]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute BusinessType |
| | | { |
| | | #keys: '3[414702.0.445738362][414702.0.445738361][414702.0.445738363]' |
| | | Description: 'äºä¸é¨' |
| | | IsReadOnly: true |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Customer |
| | | { |
| | | #keys: '3[414702.0.445738352][414702.0.445738351][414702.0.445738353]' |
| | | Description: '客æ·åç§°' |
| | | IsReadOnly: true |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute CustomerGrade |
| | | { |
| | | #keys: '3[414702.0.445738372][414702.0.445738371][414702.0.445738373]' |
| | | Description: '客æ·ç级' |
| | | IsReadOnly: true |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | TypeIndex Global_MappingCustomerGradeTypeIndex |
| | | { |
| | | Attributes: |
| | | [ |
| | | TypeIndexAttribute |
| | | { |
| | | ModelElement: BusinessType |
| | | } |
| | | TypeIndexAttribute |
| | | { |
| | | ModelElement: Customer |
| | | } |
| | | TypeIndexAttribute |
| | | { |
| | | ModelElement: CustomerGrade |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type Global_MappingCustomerGrade |
| | | { |
| | | #keys: '5[414702.0.445485672][414702.0.445485670][0.0.0][414702.0.445485671][414702.0.445485673]' |
| | | BaseType: Object |
| | | StructuredName: 'Global_MappingCustomerGrades' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute DOI |
| | | { |
| | | #keys: '3[414702.0.445364709][414702.0.445364708][414702.0.445364710]' |
| | | Description: 'åºåå¨è½¬å¤©æ°' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute DSI |
| | | { |
| | | #keys: '3[414702.0.445364719][414702.0.445364718][414702.0.445364720]' |
| | | Description: 'åºåå¯å®å¤©æ°' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute OrganCode |
| | | { |
| | | #keys: '3[414702.0.445364699][414702.0.445364698][414702.0.445364700]' |
| | | Description: 'ç»ç»ç¼ç ' |
| | | IsReadOnly: true |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute ProductID |
| | | { |
| | | #keys: '3[414702.0.445364677][414702.0.445364676][414702.0.445364678]' |
| | | Description: 'ç©æç¼ç ' |
| | | IsReadOnly: true |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | TypeIndex Global_MappingDOI_DSITypeIndex |
| | | { |
| | | Attributes: |
| | | [ |
| | | TypeIndexAttribute |
| | | { |
| | | ModelElement: ProductID |
| | | } |
| | | TypeIndexAttribute |
| | | { |
| | | ModelElement: OrganCode |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type Global_MappingDOI_DSI |
| | | { |
| | | #keys: '5[414702.0.445364654][414702.0.445364652][0.0.0][414702.0.445364653][414702.0.445364655]' |
| | | BaseType: Object |
| | | StructuredName: 'Global_MappingDOI_DSIs' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute BOMCount |
| | | { |
| | | #keys: '3[157968.0.1161166085][157968.0.1161166084][157968.0.1161166086]' |
| | | Description: 'Number of unique BOM used to produce this finished good.' |
| | | ValueType: Number |
| | | } |
| | |
| | | Number maxdepth, |
| | | Global_MappingProduct_MPs productspool, |
| | | Global_MappingOperations operationspool, |
| | | Global_MappingOperationBOMs operationbomspool |
| | | Global_MappingOperationBOMs operationbomspool, |
| | | output Strings uniquebomids_o |
| | | ) |
| | | { |
| | | Description: 'Method to traverse the supply chain recursively to determine if there are any products that are not used to produce finished goods.' |
| | |
| | | [* |
| | | if( not this.IsLinkedWithFinishedGood() ) |
| | | { |
| | | if( this.ProductMajorType() <> "æå" ) |
| | | { |
| | | uniquebomids_o.Add( this.ID() ); |
| | | } |
| | | |
| | | depth := depth + 1; |
| | | this.IsLinkedWithFinishedGood( true ); |
| | | |
| | |
| | | maxdepth, |
| | | productspool, |
| | | operationspool, |
| | | operationbomspool ); |
| | | operationbomspool, |
| | | uniquebomids_o ); |
| | | } |
| | | |
| | | if( operationbom.AlternativeMaterialCode() <> "" |
| | |
| | | maxdepth, |
| | | productspool, |
| | | operationspool, |
| | | operationbomspool ); |
| | | operationbomspool, |
| | | uniquebomids_o ); |
| | | } |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Value |
| | | { |
| | | #keys: '3[414702.0.483720762][414702.0.483720761][414702.0.483720763]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod ShowData ( |
| | | GlobalOTDTable globalOTDTable, |
| | | Global_BrokerExecuteLog global_BrokerExecuteLog |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | if ( global_BrokerExecuteLog.BrokerName() = "GlobalOTDTable_CustomOrder" ) { |
| | | businessTypeColumn := globalOTDTable.Global_ShowColumn( relnew, ColumnIndex := 0, ColumnName := "äºä¸é¨" ); |
| | | currencyIDColumn := globalOTDTable.Global_ShowColumn( relnew, ColumnIndex := 1, ColumnName := "è´§å¸" ); |
| | | customerColumn := globalOTDTable.Global_ShowColumn( relnew, ColumnIndex := 2, ColumnName := "客æ·åç§°" ); |
| | | customerIDColumn := globalOTDTable.Global_ShowColumn( relnew, ColumnIndex := 3, ColumnName := "客æ·ID" ); |
| | | idColumn := globalOTDTable.Global_ShowColumn( relnew, ColumnIndex := 4, ColumnName := "å¯ä¸æ è¯" ); |
| | | orderDateColumn := globalOTDTable.Global_ShowColumn( relnew, ColumnIndex := 5, ColumnName := "è®¢åæ¥æ" ); |
| | | orderIDColumn := globalOTDTable.Global_ShowColumn( relnew, ColumnIndex := 6, ColumnName := "订åå·" ); |
| | | orderLineIDColumn := globalOTDTable.Global_ShowColumn( relnew, ColumnIndex := 7, ColumnName := "订åè¡å·" ); |
| | | priceColumn := globalOTDTable.Global_ShowColumn( relnew, ColumnIndex := 8, ColumnName := "åä»·" ); |
| | | priorityNameColumn := globalOTDTable.Global_ShowColumn( relnew, ColumnIndex := 9, ColumnName := "ä¼å
级åç§°" ); |
| | | productIDColumn := globalOTDTable.Global_ShowColumn( relnew, ColumnIndex := 10, ColumnName := "产åç¼ç " ); |
| | | stockingPointIDColumn := globalOTDTable.Global_ShowColumn( relnew, ColumnIndex := 11, ColumnName := "åºåç¹ç¼ç " ); |
| | | salesegmentNameColumn :=globalOTDTable.Global_ShowColumn( relnew, ColumnIndex := 12, ColumnName := "éå®é¨é¨åç§°" ); |
| | | quantityColumn := globalOTDTable.Global_ShowColumn( relnew, ColumnIndex := 13, ColumnName := "æ°é" ); |
| | | unitofmeasureNameColumn := globalOTDTable.Global_ShowColumn( relnew, ColumnIndex := 14, ColumnName := "åä½" ); |
| | | orderTypeColumn := globalOTDTable.Global_ShowColumn( relnew, ColumnIndex := 15, ColumnName := "订åç±»å" ); |
| | | isAvailableColumn := globalOTDTable.Global_ShowColumn( relnew, ColumnIndex := 16, ColumnName := "æ¯å¦å¯ç¨" ); |
| | | productGradeColumn := globalOTDTable.Global_ShowColumn( relnew, ColumnIndex := 17, ColumnName := "产åç级" ); |
| | | segmentPriorityColumn := globalOTDTable.Global_ShowColumn( relnew, ColumnIndex := 18, ColumnName := "ç»åå¸åºä¼å
级" ); |
| | | sheetProfitabilityColumn := globalOTDTable.Global_ShowColumn( relnew, ColumnIndex := 19, ColumnName := "å¤§å¼ çå©" ); |
| | | orderTimeColumn := globalOTDTable.Global_ShowColumn( relnew, ColumnIndex := 20, ColumnName := "订åä¸åæ¶é´" ); |
| | | i := 1; |
| | | traverse ( globalOTDTable, Global_MappingCustomOrder, gmco ) { |
| | | gloabal_ShowRow := globalOTDTable.Global_ShowRow( relnew, RowNr := i ); |
| | | |
| | | businessTypeCell := globalOTDTable.Global_ShowCell( relnew, Value := gmco.BusinessType() ); |
| | | businessTypeCell.Global_ShowColumn( relset, businessTypeColumn ); |
| | | businessTypeCell.Global_ShowRow( relset, gloabal_ShowRow ); |
| | | |
| | | currencyIDCell := globalOTDTable.Global_ShowCell( relnew, Value := gmco.CurrencyID() ); |
| | | currencyIDCell.Global_ShowColumn( relset, currencyIDColumn ); |
| | | currencyIDCell.Global_ShowRow( relset, gloabal_ShowRow ); |
| | | |
| | | customerCell := globalOTDTable.Global_ShowCell( relnew, Value := gmco.Customer() ); |
| | | customerCell.Global_ShowColumn( relset, customerColumn ); |
| | | customerCell.Global_ShowRow( relset, gloabal_ShowRow ); |
| | | |
| | | customerIDCell := globalOTDTable.Global_ShowCell( relnew, Value := gmco.CustomerID() ); |
| | | customerIDCell.Global_ShowColumn( relset, customerIDColumn ); |
| | | customerIDCell.Global_ShowRow( relset, gloabal_ShowRow ); |
| | | |
| | | idCell := globalOTDTable.Global_ShowCell( relnew, Value := gmco.ID() ); |
| | | idCell.Global_ShowColumn( relset, idColumn ); |
| | | idCell.Global_ShowRow( relset, gloabal_ShowRow ); |
| | | |
| | | orderDateCell := globalOTDTable.Global_ShowCell( relnew, Value := guard( gmco.OrderDate().Format( "Y-M2-D2" ), "æ¶é´æ ¼å¼é误" ) ); |
| | | orderDateCell.Global_ShowColumn( relset, orderDateColumn ); |
| | | orderDateCell.Global_ShowRow( relset, gloabal_ShowRow ); |
| | | |
| | | orderIDCell := globalOTDTable.Global_ShowCell( relnew, Value := gmco.OrderID() ); |
| | | orderIDCell.Global_ShowColumn( relset, orderIDColumn ); |
| | | orderIDCell.Global_ShowRow( relset, gloabal_ShowRow ); |
| | | |
| | | orderLineIDCell := globalOTDTable.Global_ShowCell( relnew, Value := gmco.OrderLineID() ); |
| | | orderLineIDCell.Global_ShowColumn( relset, orderLineIDColumn ); |
| | | orderLineIDCell.Global_ShowRow( relset, gloabal_ShowRow ); |
| | | |
| | | priceCell := globalOTDTable.Global_ShowCell( relnew, Value := [String]gmco.Price() ); |
| | | priceCell.Global_ShowColumn( relset, priceColumn ); |
| | | priceCell.Global_ShowRow( relset, gloabal_ShowRow ); |
| | | |
| | | priorityNameCell := globalOTDTable.Global_ShowCell( relnew, Value := gmco.PriorityName() ); |
| | | priorityNameCell.Global_ShowColumn( relset, priorityNameColumn ); |
| | | priorityNameCell.Global_ShowRow( relset, gloabal_ShowRow ); |
| | | |
| | | productIDCell := globalOTDTable.Global_ShowCell( relnew, Value := gmco.ProductID() ); |
| | | productIDCell.Global_ShowColumn( relset, productIDColumn ); |
| | | productIDCell.Global_ShowRow( relset, gloabal_ShowRow ); |
| | | |
| | | stockingPointIDCell := globalOTDTable.Global_ShowCell( relnew, Value := gmco.StockingPointID() ); |
| | | stockingPointIDCell.Global_ShowColumn( relset, stockingPointIDColumn ); |
| | | stockingPointIDCell.Global_ShowRow( relset, gloabal_ShowRow ); |
| | | |
| | | salesegmentNameCell := globalOTDTable.Global_ShowCell( relnew, Value := gmco.SalesSegmentName() ); |
| | | salesegmentNameCell.Global_ShowColumn( relset, salesegmentNameColumn ); |
| | | salesegmentNameCell.Global_ShowRow( relset, gloabal_ShowRow ); |
| | | |
| | | quantityCell := globalOTDTable.Global_ShowCell( relnew, Value := [String]gmco.Quantity() ); |
| | | quantityCell.Global_ShowColumn( relset, quantityColumn ); |
| | | quantityCell.Global_ShowRow( relset, gloabal_ShowRow ); |
| | | |
| | | unitofmeasureNameCell := globalOTDTable.Global_ShowCell( relnew, Value := gmco.UnitOfMeasureName() ); |
| | | unitofmeasureNameCell.Global_ShowColumn( relset, unitofmeasureNameColumn ); |
| | | unitofmeasureNameCell.Global_ShowRow( relset, gloabal_ShowRow ); |
| | | |
| | | orderTypeCell := globalOTDTable.Global_ShowCell( relnew, Value := gmco.OrderType() ); |
| | | orderTypeCell.Global_ShowColumn( relset, orderTypeColumn ); |
| | | orderTypeCell.Global_ShowRow( relset, gloabal_ShowRow ); |
| | | |
| | | isAvailableCell := globalOTDTable.Global_ShowCell( relnew, Value := [String]gmco.IsAvailable() ); |
| | | isAvailableCell.Global_ShowColumn( relset, isAvailableColumn ); |
| | | isAvailableCell.Global_ShowRow( relset, gloabal_ShowRow ); |
| | | |
| | | productGradeCell := globalOTDTable.Global_ShowCell( relnew, Value := gmco.ProductGrade() ); |
| | | productGradeCell.Global_ShowColumn( relset, productGradeColumn ); |
| | | productGradeCell.Global_ShowRow( relset, gloabal_ShowRow ); |
| | | |
| | | segmentPriorityCell := globalOTDTable.Global_ShowCell( relnew, Value := gmco.SegmentPriority() ); |
| | | segmentPriorityCell.Global_ShowColumn( relset, segmentPriorityColumn ); |
| | | segmentPriorityCell.Global_ShowRow( relset, gloabal_ShowRow ); |
| | | |
| | | sheetProfitabilityCell := globalOTDTable.Global_ShowCell( relnew, Value := gmco.SheetProfitability() ); |
| | | sheetProfitabilityCell.Global_ShowColumn( relset, sheetProfitabilityColumn ); |
| | | sheetProfitabilityCell.Global_ShowRow( relset, gloabal_ShowRow ); |
| | | |
| | | orderTimeCell := globalOTDTable.Global_ShowCell( relnew, Value := guard( gmco.OrderTime().Format( "Y-M2-D2" ), "æ¶é´æ ¼å¼é误" ) ); |
| | | orderTimeCell.Global_ShowColumn( relset, orderTimeColumn ); |
| | | orderTimeCell.Global_ShowRow( relset, gloabal_ShowRow ); |
| | | |
| | | i++; |
| | | } |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type Global_ShowCell |
| | | { |
| | | #keys: '5[414702.0.483720658][414702.0.483720656][0.0.0][414702.0.483720657][414702.0.483720659]' |
| | | BaseType: Object |
| | | StructuredName: 'Global_ShowCells' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute ColumnIndex |
| | | { |
| | | #keys: '3[414702.0.487974706][414702.0.487974705][414702.0.487974707]' |
| | | ValueType: Number |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute ColumnName |
| | | { |
| | | #keys: '3[414702.0.483720752][414702.0.483720751][414702.0.483720753]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type Global_ShowColumn |
| | | { |
| | | #keys: '5[414702.0.483720653][414702.0.483720651][0.0.0][414702.0.483720652][414702.0.483720654]' |
| | | BaseType: Object |
| | | StructuredName: 'Global_ShowColumns' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute RowNr |
| | | { |
| | | #keys: '3[414702.0.483720742][414702.0.483720741][414702.0.483720743]' |
| | | ValueType: Number |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type Global_ShowRow |
| | | { |
| | | #keys: '5[414702.0.483720648][414702.0.483720646][0.0.0][414702.0.483720647][414702.0.483720649]' |
| | | BaseType: Object |
| | | StructuredName: 'Global_ShowRows' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | MethodOverride Execute #extension |
| | | { |
| | | TextBody: |
| | | [* |
| | | opt := DatasetFindOptions::Construct( this.MacroPlanDatasetName() ); |
| | | mp := MDSMacroPlan::Find( opt ); |
| | | |
| | | opt := DatasetFindOptions::Construct(); |
| | | scenarioManager := MDSScenarioManager::Find( opt ); |
| | | |
| | | // Only get data source which has all required files uploaded |
| | | dummyMissingFiles := construct( Strings ); |
| | | needUserUploadAllFiles := true; |
| | | validUploadedFiles := selectset( this, LibSOPImpExp_DataSourceChildren, ds, |
| | | ds.HasAllRequiredFilesForImport( dummyMissingFiles, needUserUploadAllFiles ) ); |
| | | |
| | | traverse( validUploadedFiles, Elements, file ) |
| | | { |
| | | this.LibSOPImpExp_UserInput( relnew, Value := file.Name() ); |
| | | } |
| | | |
| | | binaryValues := selectvalues( validUploadedFiles, Elements.LibSOPImpExp_DataSourceFile.LibSOPImpExp_ImportUploadedFile, file, true, file.DataAsBinary() ); |
| | | brokerNames := selectvalues( validUploadedFiles, Elements.LibSOPImpExp_DataSourceFile, file, true, file.BrokerName() ); |
| | | userinputvalues := selectuniquevalues( this, LibSOPImpExp_UserInput, userinput, |
| | | true, |
| | | userinput.Value() ); |
| | | mpsync := this.MPSync(); |
| | | |
| | | // Reactive way to import |
| | | o := this |
| | | ->SetStatusInProgress() |
| | | ->|mp->ImportExcels_Tianma( userinputvalues, binaryValues.Copy(), brokerNames ) |
| | | ->|scenarioManager->ImportExcels_Tianma( userinputvalues, binaryValues.Copy(), brokerNames ) |
| | | ->|mpsync->ImportExcels_Tianma( userinputvalues, binaryValues.Copy(), brokerNames ) |
| | | ->|this->SetStatusDone() |
| | | ->|mp->SetLastImportTime() |
| | | ->Exception(); |
| | | |
| | | this->OnException(o); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | TypeSpecialization ImportExcel #extension |
| | | { |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod IsDataSourceIncluded_Tianma ( |
| | | Strings userinputvalues, |
| | | String datasource_i |
| | | ) remote as Boolean |
| | | { |
| | | Description: 'If data source selected by user to export' |
| | | TextBody: 'return exists( userinputvalues, Elements, input, input = datasource_i );' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | TypeSpecialization LibSOPImpExp_ExportExcel #extension |
| | | { |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method ImportExcels_Tianma ( |
| | | Strings userinputvalues, |
| | | BinaryValues mpBinaryValues_i, |
| | | Strings mpBrokers_i |
| | | ) |
| | | { |
| | | Description: 'Import from Excel, used by web app.' |
| | | TextBody: |
| | | [* |
| | | // @userInput_i - Array of data group that user imports |
| | | // @mpBinaryValues_i - Array of uploaded Excels in binary value. Binary at position x matches @mpBrokers_i at same position |
| | | // @mpBrokers_i - Array of uploaded Excels' broker name |
| | | |
| | | is3DDrive := false; |
| | | |
| | | // Check if each data group has files uploaded by user for import |
| | | this.Import( LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MPSync_ObjectGroup_ImportProfiles() ), |
| | | mpBinaryValues_i, mpBrokers_i, is3DDrive, construct( FileItems), construct( Strings ) ); |
| | | *] |
| | | } |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method RefreshCapacityAndSaleBudgeFilter |
| | | Method RefreshCapacityAndSaleBudgeFilter ( |
| | | GlobalOTDTable globalOtdTable |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | |
| | | businessTypes := selectuniquevalues( this, MappingCapacityAndSaleBudge, item, item.BusinessType() ); |
| | | info( [String]businessTypes.Size() ); |
| | | traverse( businessTypes, Elements, businessType ) { |
| | | CapacityAndSaleBudgeFilterBusinessType::CreateIfNotExist( this, businessType ); |
| | | CapacityAndSaleBudgeFilterBusinessType::CreateIfNotExist( globalOtdTable, businessType ); |
| | | } |
| | | placeOfProductionOfArrays := selectuniquevalues( this, MappingCapacityAndSaleBudge, item, item.PlaceOfProductionOfArray() ); |
| | | info( [String]placeOfProductionOfArrays.Size() ); |
| | | traverse( placeOfProductionOfArrays, Elements, placeOfProductionOfArray ) { |
| | | CapacityAndSaleBudgeFilterPlaceOfProductionOfArray::CreateIfNotExist( this, placeOfProductionOfArray ); |
| | | CapacityAndSaleBudgeFilterPlaceOfProductionOfArray::CreateIfNotExist( globalOtdTable, placeOfProductionOfArray ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method RefreshCapacityAndSaleBudgeFilter ( |
| | | Boolean deleteBeforeCreate, |
| | | GlobalOTDTable globalOtdTable |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | if( deleteBeforeCreate ) { |
| | | globalOtdTable.CapacityAndSaleBudgeFilterBusinessType( relflush ); |
| | | globalOtdTable.CapacityAndSaleBudgeFilterPlaceOfProductionOfArray( relflush ); |
| | | } |
| | | this.RefreshCapacityAndSaleBudgeFilter( globalOtdTable ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method ImportExcels_Tianma ( |
| | | Strings userinputvalues, |
| | | BinaryValues mpBinaryValues_i, |
| | | Strings mpBrokers_i |
| | | ) |
| | | { |
| | | Description: 'Import from Excel, used by web app.' |
| | | TextBody: |
| | | [* |
| | | // @userinputvalues - Array of data group that user imports |
| | | // @mpBinaryValues_i - Array of uploaded Excels in binary value. Binary at position x matches @mpBrokers_i at same position |
| | | // @mpBrokers_i - Array of uploaded Excels' broker name |
| | | |
| | | is3DDrive := false; |
| | | |
| | | // Check if each data group has files uploaded by user for import |
| | | this.Synchronize( LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MPSync_ObjectGroup_SupplyChainParameters() ), |
| | | LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MPSync_ObjectGroup_GlobalParameters() ), |
| | | LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MPSync_ObjectGroup_Periods() ), |
| | | LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MP_Functionality_InventorySpecifications() ), |
| | | LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MP_Functionality_InventorySupplies() ), |
| | | LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MPSync_ObjectGroup_Products() ), |
| | | LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MPSync_ObjectGroup_Forecasts() ), |
| | | LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MPSync_ObjectGroup_ServiceLevels() ), |
| | | LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MPSync_ObjectGroup_Campaigns() ), |
| | | LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MPSync_ObjectGroup_Entities() ), |
| | | LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MPSync_ObjectGroup_Costs() ), |
| | | LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MPSync_ObjectGroup_Lanes() ), |
| | | LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MPSync_ObjectGroup_Routings() ), |
| | | LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MPSync_ObjectGroup_Capacities() ), |
| | | LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MP_Functionality_SupplySpecifications() ), |
| | | LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MPSync_ObjectGroup_Recipes() ), |
| | | LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MP_Designer_Actuals() ), |
| | | LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MP_GlobalParameters_KPIFeedbackName() ), |
| | | LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MPSync_ObjectGroup_OptimizerPuzzles() ), |
| | | LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MPSync_ObjectGroup_PostponementSpecAndFulfillmentRestriction() ), |
| | | LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MPSync_ObjectGroup_CustomerOrder() ), |
| | | false, /* isImportBinary */ |
| | | mpBinaryValues_i, |
| | | mpBrokers_i, |
| | | is3DDrive, |
| | | construct( FileItems ), /* 3ddrive, ignore */ |
| | | construct( Strings ) /* 3ddrive, ignore */ ); |
| | | *] |
| | | } |
| | |
| | | } |
| | | // if( not isnull( Product_MP::FindById( this, item.ProductID() ) ) ){ |
| | | // info( item.ProductID().AsQUILL() ); |
| | | CustomerOrder::CreateOrUpdate( this, item.CurrencyID(), item.Customer(), item.CustomerID(), item.ID(), |
| | | item.OrderDate(), item.OrderID(), item.OrderLineID(), item.Price(), |
| | | priorityName, item.ProductID(), |
| | | item.StockingPointID(), |
| | | item.SalesSegmentName(), |
| | | item.Quantity(), item.UnitOfMeasureName(), item.OrderType(), item.IsAvailable()); |
| | | customOrder := CustomerOrder::CreateOrUpdate( this, item.CurrencyID(), item.Customer(), item.CustomerID(), item.ID(), |
| | | item.OrderDate(), item.OrderID(), item.OrderLineID(), item.Price(), |
| | | priorityName, item.ProductID(), |
| | | item.StockingPointID(), |
| | | item.SalesSegmentName(), |
| | | item.Quantity(), item.UnitOfMeasureName(), item.OrderType(), item.IsAvailable()); |
| | | customOrder.BusinessType( item.BusinessType() ); |
| | | customOrder.OrderType( item.OrderType() ); |
| | | customOrder.OrderTime( item.OrderTime() ); |
| | | customOrder.ProductGrade( item.ProductGrade() ); |
| | | customOrder.SegmentPriority( item.SegmentPriority() ); |
| | | customOrder.SheetProfitability( item.SheetProfitability() ); |
| | | // }else{ |
| | | // info( "invaild product: " + item.ProductID().AsQUILL() ); |
| | | // } |
| | |
| | | TextBody: |
| | | [* |
| | | // yypsybs Aug-21-2023 (created) |
| | | |
| | | keyProductList := construct( Strings ); |
| | | if( isKeyProduct ) { |
| | | keyProductList := selectuniquevalues( globalOTDTable, Global_MappingProduct_MP, item, item.ProductMajorType()="æå" or item.ProductMajorType()="åæå", item.ID() ); |
| | |
| | | // ========åç»å¤çè¾å
¥======== |
| | | |
| | | } |
| | | |
| | | if( not isnull( stockingPoint)){ |
| | | if( isKeyProduct){ |
| | | keyRows := selectset( routingRows,Elements,routingrow,keyProductList.Find( routingrow.ComponentCode())>=0); |
| | |
| | | this.MappingOperationBOMDataSupplyPurchase( bom.OrganCode(), bom.ComponentCode(), bom.ComponentType()); |
| | | } |
| | | } |
| | | |
| | | |
| | | // |
| | | //keyProductList := construct( Strings ); |
| | | //if( isKeyProduct ) { |
| | | // keyProductList := selectuniquevalues( globalOTDTable, Global_MappingProduct_MP, item, item.ProductMajorType()="æå" or item.ProductMajorType()="åæå", item.ID() ); |
| | | //} |
| | | //bomList := selectsortedset( globalOTDTable, Global_MappingOperationBOM, item, |
| | | // ifexpr( isnull( businessTypes ) or businessTypes.Size() = 0, |
| | | // true, |
| | | //// businessTypes.Difference( businessTypes.Difference( item.BusinessType().Tokenize( ", " ) ) ).Size() > 0 ) |
| | | // businessTypes.Find( item.BusinessType() ) >= 0 ) |
| | | //// and ifexpr( isKeyProduct, |
| | | //// keyProductList.Size() > 0 and keyProductList.Find( item.ComponentCode() ) >= 0, |
| | | //// true ) |
| | | // , |
| | | // item.OrganCode() + "_" + item.ProductCode() + "_" + item.ProcessSection() ); |
| | | //// æroutingåroutingStepåç» |
| | | //routingIds := selectuniquevalues( bomList, Elements, item, true, item.OrganCode() + "_" + item.ProductCode() ); |
| | | //traverse( routingIds, Elements, routingId ) { |
| | | // routingRows := selectset( bomList, Elements, item, true, routingId = item.OrganCode() + "_" + item.ProductCode() ); |
| | | // if( routingRows.Size() > 0 ) { |
| | | // firstRow := routingRows.Element( 0 ); |
| | | //// stockingPointId := firstRow.OrganCode() + "_" + firstRow.ProductType() + "_Stock"; |
| | | //// inputStockingPointId := firstRow.OrganCode() + "_" + firstRow.ComponentType() + "_Stock"; |
| | | // stockingPointId := firstRow.OrganCode() + "_Stock"; |
| | | // |
| | | // // ========æ£æ¥======== |
| | | // product := Product_MP::FindProductTypeIndex( firstRow.ProductCode() ); |
| | | // if( not isnull( product ) ) { |
| | | //// error( "product : " + firstRow.ProductCode() + " not found" ); |
| | | // stockingPoint := StockingPoint_MP::FindStockingPointTypeIndex( stockingPointId ); |
| | | // |
| | | //// info( stockingPointId.AsQUILL() ); |
| | | // // if( isnull( stockingPoint ) ) { |
| | | // // error( "stockingPoint : " + stockingPointId + " not found" ); |
| | | // // } |
| | | // routing := Routing::FindRoutingTypeIndex( routingId ); |
| | | // if( not isnull( routing ) ) { |
| | | //// error( "routing : " + routingId + " not found" ); |
| | | // // ========å¤çè¾åº======== |
| | | // if( not isnull( stockingPoint ) ) { |
| | | //// info( 1 ); |
| | | // operationsInLastSteps := Operation::FindFinalOperationsByRoutingId( this, routingId ); |
| | | // traverse( operationsInLastSteps, Elements, operationsInLastStep ) { |
| | | // operationsInLastStep.CreateOperationBOM( product, stockingPoint, false, true ); |
| | | // operationsInLastStep.GetOperationBOM( product.ID(), stockingPoint.ID(), false ).Quantity( 1 ); |
| | | // } |
| | | // // ========åç»å¤çè¾å
¥======== |
| | | // |
| | | // } |
| | | // if( not isnull( stockingPoint)){ |
| | | // if( isKeyProduct){ |
| | | // keyRows := selectset( routingRows,Elements,routingrow,keyProductList.Find( routingrow.ComponentCode())>=0); |
| | | // this.MappingOperationBOMDataRouting( routing,globalOTDTable,keyRows); |
| | | // }else{ |
| | | // this.MappingOperationBOMDataRouting( routing,globalOTDTable,routingRows); |
| | | // } |
| | | // |
| | | // } |
| | | // } |
| | | // } |
| | | // } |
| | | //} |
| | | //if( createPurchaseSupplyMaterial ) { |
| | | // toCreateBomList := selectuniquevalues( bomList, Elements, item, |
| | | // item.ComponentType() = "P", item.OrganCode() + item.ComponentCode()); |
| | | // traverse( toCreateBomList, Elements, key ) { |
| | | // boms := selectset( bomList, Elements, item, item.ComponentType() = "P" and item.OrganCode() + item.ComponentCode() = key ); |
| | | // bom := boms.First(); |
| | | // this.MappingOperationBOMDataSupplyPurchase( bom.OrganCode(), bom.ComponentCode(), bom.ComponentType()); |
| | | // } |
| | | //} |
| | | *] |
| | | } |
| | |
| | | } |
| | | //--------------------------------------------------------------------------------------------- |
| | | xmlTemplate := xmlTemplate + "</table>"; |
| | | info( xmlTemplate ); |
| | | //info( xmlTemplate ); |
| | | tableHandle := TableHandle::ImportXML( BinaryValue::Construct( xmlTemplate ) ); |
| | | XLS::SaveTable( tableHandle, OS::TempPath() + "MappingCapacityAndSaleBudge.xlsx" ); |
| | | file := OSFile::Construct(); |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute ReflectionAttribute |
| | | { |
| | | #keys: '3[414382.0.554303396][414382.0.554303395][414382.0.554303397]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute ReflectionType |
| | | { |
| | | #keys: '3[414382.0.554014806][414382.0.554014805][414382.0.554014807]' |
| | | ValueType: String |
| | | } |
| | |
| | | isBusinessType := true; |
| | | } |
| | | |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 5, |
| | | if( priorityFactor.Name() = "å¤§å¼ ç婿°´å¹³" ) |
| | | { |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 5, |
| | | IsRange := false,GradingName := "大ç",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 3, |
| | | IsRange := false,GradingName := "å°ç",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 0, |
| | | IsRange := false,GradingName := "æå¹³",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := -3, |
| | | IsRange := false,GradingName := "å°äº",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := -5, |
| | | IsRange := false,GradingName := "大äº",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 3, |
| | | IsRange := false,GradingName := "å°ç",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 0, |
| | | IsRange := false,GradingName := "æå¹³",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := -3, |
| | | IsRange := false,GradingName := "å°äº",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := -5, |
| | | IsRange := false,GradingName := "大äº",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | } |
| | | |
| | | if( priorityFactor.Name() = "客æ·çç¥" ) |
| | | { |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 5, |
| | | IsRange := false,GradingName := "81%â¤Xâ¤100%",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 4, |
| | | IsRange := false,GradingName := "61%â¤Xâ¤80%",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 3, |
| | | IsRange := false,GradingName := "41%â¤Xâ¤60%",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 2, |
| | | IsRange := false,GradingName := "21%â¤Xâ¤40%",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 1, |
| | | IsRange := false,GradingName := "1%â¤Xâ¤20%",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | } |
| | | |
| | | if( priorityFactor.Name() = "ç»åå¸åºç级" ) |
| | | { |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 5, |
| | | IsRange := false,GradingName := "æç¥",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 3, |
| | | IsRange := false,GradingName := "éç¹",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 1, |
| | | IsRange := false,GradingName := "æ½å",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | } |
| | | |
| | | if( priorityFactor.Name() = "订åä¸åæ¶é´" ) |
| | | { |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 5, |
| | | IsRange := false,GradingName := "120",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 4, |
| | | IsRange := false,GradingName := "90",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 3, |
| | | IsRange := false,GradingName := "60",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 2, |
| | | IsRange := false,GradingName := "30",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 1, |
| | | IsRange := false,GradingName := "0",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | } |
| | | |
| | | if( priorityFactor.Name() = "éæ±ç±»å" ) |
| | | { |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 5, |
| | | IsRange := false,GradingName := "æé¢æµ",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 3, |
| | | IsRange := false,GradingName := "æ 颿µ",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 1, |
| | | IsRange := false,GradingName := "çº¯é¢æµ",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | } |
| | | |
| | | if( priorityFactor.Name() = "客æ·ç级" ) |
| | | { |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 5, |
| | | IsRange := false,GradingName := "æç¥",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 3, |
| | | IsRange := false,GradingName := "éç¹",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 1, |
| | | IsRange := false,GradingName := "æ½å",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | } |
| | | |
| | | if( priorityFactor.Name() = "DOI" or priorityFactor.Name() = "DSI") |
| | | { |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 5, |
| | | IsRange := false,GradingName := "<7",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 3, |
| | | IsRange := false,GradingName := "<15",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 1, |
| | | IsRange := false,GradingName := "<30",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | priorityFactor.PriorityFactorDetails(relnew,BusinessType := priorityFactor.BusinessType(), IsBusinessType := isBusinessType,GradeTarget := 1, |
| | | IsRange := false,GradingName := ">30",RangeMin := 0.0,RangeMax := 0.0,PriorityFactorName := priorityFactor.Name()); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute CustomerOrderID |
| | | { |
| | | #keys: '3[414382.0.554015006][414382.0.554015005][414382.0.554015007]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod CalculateBracketScore ( |
| | | String calcStr, |
| | | CustomerOrder customerOrder, |
| | | String businessType, |
| | | MacroPlan macroPlan, |
| | | GlobalOTDTable globalOTDTable |
| | | ) as Real |
| | | { |
| | | Description: '计ç®å
¬å¼ä¸æ¬å·å
çæ°æ®' |
| | | TextBody: |
| | | [* |
| | | // NBoTk Sep-26-2023 (created) |
| | | |
| | | |
| | | return PriorityResult::CalculateScore( calcStr,customerOrder,businessType,macroPlan,0.0,globalOTDTable); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod CalculateScore ( |
| | | String formula, |
| | | CustomerOrder customerOrder, |
| | | String businessType, |
| | | MacroPlan macroPlan, |
| | | Real lastScore, |
| | | GlobalOTDTable globalOTDTable |
| | | ) as Real |
| | | { |
| | | TextBody: |
| | | [* |
| | | // NBoTk Sep-26-2023 (created) |
| | | |
| | | score := 0.0; |
| | | remindFormula := formula; |
| | | |
| | | // éåä¼å
级å åé
ç½® |
| | | |
| | | if( not remindFormula = '' ) |
| | | { |
| | | // ä»èµ·å§ä½ç½®å¼å§å¹é
|
| | | if(remindFormula.StartsWith( "+" )) |
| | | { |
| | | remindFormula := remindFormula.SubString( 1,remindFormula.Length()-1); |
| | | score := PriorityResult::GetDetailsValue( customerOrder,remindFormula,macroPlan,globalOTDTable); |
| | | score := lastScore + score; |
| | | |
| | | // æªåæå·²ç»è®¡ç®çä¼å
级å å éå½è®¡ç® |
| | | remindFormula := PriorityResult::GetRemindFormula( remindFormula,macroPlan); |
| | | PriorityResult::CalculateScore( remindFormula,customerOrder,businessType,macroPlan,score,globalOTDTable); |
| | | } |
| | | else if( remindFormula.StartsWith( "-" )) |
| | | { |
| | | remindFormula := remindFormula.SubString( 1,remindFormula.Length()-1); |
| | | score := PriorityResult::GetDetailsValue( customerOrder,remindFormula,macroPlan,globalOTDTable); |
| | | score := lastScore - score; |
| | | |
| | | // æªåæå·²ç»è®¡ç®çä¼å
级å å éå½è®¡ç® |
| | | remindFormula := PriorityResult::GetRemindFormula( remindFormula,macroPlan); |
| | | PriorityResult::CalculateScore( remindFormula,customerOrder,businessType,macroPlan,score,globalOTDTable); |
| | | } |
| | | else if( remindFormula.StartsWith( "*" ) ) |
| | | { |
| | | remindFormula := remindFormula.SubString( 1,remindFormula.Length()-1); |
| | | score := PriorityResult::GetDetailsValue( customerOrder,remindFormula,macroPlan,globalOTDTable); |
| | | score := lastScore * score; |
| | | |
| | | // æªåæå·²ç»è®¡ç®çä¼å
级å å éå½è®¡ç® |
| | | remindFormula := PriorityResult::GetRemindFormula( remindFormula,macroPlan); |
| | | PriorityResult::CalculateScore( remindFormula,customerOrder,businessType,macroPlan,score,globalOTDTable); |
| | | } |
| | | else if( remindFormula.StartsWith( "/" ) ) |
| | | { |
| | | remindFormula := remindFormula.SubString( 1,remindFormula.Length()-1); |
| | | score := PriorityResult::GetDetailsValue( customerOrder,remindFormula,macroPlan,globalOTDTable); |
| | | score := lastScore / score; |
| | | |
| | | // æªåæå·²ç»è®¡ç®çä¼å
级å å éå½è®¡ç® |
| | | remindFormula := PriorityResult::GetRemindFormula( remindFormula,macroPlan); |
| | | PriorityResult::CalculateScore( remindFormula,customerOrder,businessType,macroPlan,score,globalOTDTable); |
| | | } |
| | | else if( remindFormula.StartsWith( "(" ) ) |
| | | { |
| | | // æ¾å°ç¬¬ä¸ä¸ªç»æç ) |
| | | // è®¡ç®æ¬å·ä¸çå
容 |
| | | rightBracket := remindFormula.FindString( ")",0); |
| | | calcStr := remindFormula.SubString( 1,rightBracket); |
| | | PriorityResult::CalculateBracketScore(calcStr,customerOrder,businessType,macroPlan,globalOTDTable); |
| | | |
| | | // æªå ) åçå符继ç»è¿è¡è®¡ç® |
| | | remindFormula := remindFormula.SubString( rightBracket,remindFormula.Length()); |
| | | } |
| | | else |
| | | { |
| | | // 䏿¯ç¬¦å· ç´æ¥è·å计ç®åçæ°å¼ |
| | | score := PriorityResult::GetDetailsValue( customerOrder,remindFormula,macroPlan,globalOTDTable); |
| | | // æªåæå·²ç»è®¡ç®çä¼å
级å å éå½è®¡ç® |
| | | remindFormula := PriorityResult::GetRemindFormula( remindFormula,macroPlan); |
| | | PriorityResult::CalculateScore( remindFormula,customerOrder,businessType,macroPlan,score,globalOTDTable); |
| | | } |
| | | } |
| | | |
| | | // 没æå¹é
å
¬å¼è®¡ç®å®æ |
| | | return lastScore; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GetDetailsValue ( |
| | | CustomerOrder customerOrder, |
| | | String formula, |
| | | MacroPlan macroPlan, |
| | | GlobalOTDTable globalOTDTable |
| | | ) as Real |
| | | { |
| | | TextBody: |
| | | [* |
| | | // NBoTk Sep-26-2023 (created) |
| | | // å½å计ç®ä¼å
级å åç»å 妿è·åä¸å°å
¨é¨å
é»è®¤ä¸º1 |
| | | |
| | | value := 0.0; |
| | | |
| | | priorityFactor := null( PriorityFactor); |
| | | traverse( macroPlan,PriorityFactor,p) |
| | | { |
| | | if( formula.StartsWith( p.Name()) ) |
| | | { |
| | | priorityFactor := p; |
| | | } |
| | | } |
| | | |
| | | if(isnull( priorityFactor) ) |
| | | { |
| | | value := 1.0; |
| | | } |
| | | else |
| | | { |
| | | if( "客æ·çç¥" = priorityFactor.Name()) |
| | | { |
| | | obj := selectobject( priorityFactor,PriorityFactorDetails,p , p.PriorityFactorName() = "客æ·çç¥" and p.GradingName() = customerOrder.CustomerPolicy()); |
| | | gradeTarget := 1.0; |
| | | if( not isnull( obj ) ) |
| | | { |
| | | gradeTarget := obj.GradeTarget(); |
| | | } |
| | | value := priorityFactor.Coefficient() * gradeTarget; |
| | | } |
| | | |
| | | if( "å¤§å¼ ç婿°´å¹³" = priorityFactor.Name()) |
| | | { |
| | | obj := selectobject( priorityFactor,PriorityFactorDetails,p , p.PriorityFactorName() = "å¤§å¼ ç婿°´å¹³" and p.GradingName() = customerOrder.SheetProfitability()); |
| | | gradeTarget := 1.0; |
| | | if( not isnull( obj ) ) |
| | | { |
| | | gradeTarget := obj.GradeTarget(); |
| | | } |
| | | value := priorityFactor.Coefficient() * gradeTarget; |
| | | } |
| | | |
| | | if( "DOI" = priorityFactor.Name()) |
| | | { |
| | | // DOIæ°æ® |
| | | obj := selectobject( globalOTDTable,Global_MappingDOI_DSI,doi,doi.ProductID() = customerOrder.ProductID()) |
| | | doi := 1.0; |
| | | if( not isnull( obj ) ) |
| | | { |
| | | doi := [Real]obj.DOI(); |
| | | } |
| | | value := priorityFactor.Coefficient() * doi; |
| | | } |
| | | |
| | | if( "DSI" = priorityFactor.Name()) |
| | | { |
| | | // DOIæ°æ® |
| | | obj := selectobject( globalOTDTable,Global_MappingDOI_DSI,doi,doi.ProductID() = customerOrder.ProductID()) |
| | | dsi := 1.0; |
| | | if( not isnull( obj ) ) |
| | | { |
| | | dsi := [Real]obj.DSI(); |
| | | } |
| | | value := priorityFactor.Coefficient() * dsi; |
| | | } |
| | | |
| | | if( "ç»åå¸åºç级" = priorityFactor.Name()) |
| | | { |
| | | obj := selectobject( priorityFactor,PriorityFactorDetails,p , p.PriorityFactorName() = "ç»åå¸åºç级" and p.GradingName() = customerOrder.SegmentPriority()); |
| | | gradeTarget := 1.0; |
| | | if( not isnull( obj ) ) |
| | | { |
| | | gradeTarget := obj.GradeTarget(); |
| | | } |
| | | value := priorityFactor.Coefficient() * gradeTarget; |
| | | } |
| | | |
| | | if( "éæ±ç±»å" = priorityFactor.Name()) |
| | | { |
| | | // æé¢æµ æ 颿µ çº¯é¢æµ |
| | | obj := selectobject( priorityFactor,PriorityFactorDetails,p,p.GradingName() = customerOrder.OrderType()); |
| | | gradeTarget := 1.0; |
| | | if( not isnull( obj ) ) |
| | | { |
| | | gradeTarget := obj.GradeTarget(); |
| | | } |
| | | value := priorityFactor.Coefficient() * gradeTarget; |
| | | } |
| | | |
| | | if( "客æ·ç级" = priorityFactor.Name()) |
| | | { |
| | | // éè¿æ°æ®æ¹è®¡ç®å®¢æ·ç级 |
| | | obj := selectobject( globalOTDTable,Global_MappingCustomerGrade,doi,doi.BusinessType() = customerOrder.BusinessType() and doi.Customer() = customerOrder.CustomerName()) |
| | | customerGrade := 1.0; |
| | | if( not isnull( obj ) ) |
| | | { |
| | | customerGrade := [Real]obj.CustomerGrade(); |
| | | } |
| | | value := priorityFactor.Coefficient() * customerGrade; |
| | | } |
| | | |
| | | if( "订åä¸åæ¶é´" = priorityFactor.Name()) |
| | | { |
| | | // ä¸åæ¶é´ |
| | | orderTime := customerOrder.OrderTime(); |
| | | days := orderTime.TotalInDays() - customerOrder.EndDate().TotalInDays(); |
| | | obj := selectobject( priorityFactor,PriorityFactorDetails,p , p.PriorityFactorName() = "订åä¸åæ¶é´" and days >= [Number]p.GradingName()); |
| | | value := priorityFactor.Coefficient() * obj.GradeTarget(); |
| | | } |
| | | } |
| | | return value; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GetRemindFormula ( |
| | | String formula, |
| | | MacroPlan macroPlan |
| | | ) as String |
| | | { |
| | | TextBody: |
| | | [* |
| | | // NBoTk Sep-26-2023 (created) |
| | | |
| | | str := ""; |
| | | |
| | | traverse( macroPlan,PriorityFactor,p) |
| | | { |
| | | if( formula.StartsWith( p.Name()) ) |
| | | { |
| | | // 夿å©ä½å符é¿åº¦ |
| | | if( p.Name().Length() = formula.Length() ) |
| | | { |
| | | str := "" |
| | | } |
| | | else |
| | | { |
| | | str := formula.SubString( p.Name().Length(),formula.Length() - p.Name().Length()); |
| | | } |
| | | } |
| | | } |
| | | |
| | | info( "remindStr = " + str ); |
| | | return str; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod CalculatePriorityResult ( |
| | | String priorityPolicyName, |
| | | MacroPlan macroPlan, |
| | | GlobalOTDTable globalOTDTable |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // NBoTk Sep-26-2023 (created) |
| | | |
| | | // 计ç®å®¢æ·è®¢åçä¼å
级å¾å åå¡«æéæ°æ® çææ°çPriorityæç»æ°æ® |
| | | |
| | | traverse( macroPlan,SalesDemand.astype( CustomerOrder ),e) |
| | | { |
| | | // äºä¸é¨ä¿¡æ¯ |
| | | businessType := e.BusinessType(); |
| | | //businessType := "ææºäºä¸é¨"; |
| | | |
| | | // è·å对åºäºä¸é¨è®¡ç®å
¬å¼ |
| | | priorityPolicys := selectobject( macroPlan,PriorityPolicy,p,p.BusinessType() = businessType and p.Name() = priorityPolicyName); |
| | | formula := priorityPolicys.Formula(); |
| | | |
| | | // éå½å¤ç计ç®å
¬å¼ è·åå½å订åçå¾å |
| | | value := PriorityResult::CalculateScore( formula,e,businessType,macroPlan,0.0,globalOTDTable); |
| | | |
| | | // çæä¼å
级å åè·åç»æ |
| | | priorityResult := macroPlan.PriorityResult(relnew,CustomerOrderID := e.ID(),BusinessType := businessType,Customer := e.CustomerName(),CustomerID := e.CustomerID(), |
| | | DemandDate := e.EndDate(),ProductID := e.ProductID(),Quantity := e.Quantity(),SalesSegmentName := e.SalesSegmentName(), |
| | | StockingPointID := e.StockingPointID(),UnitOfMeasureName := e.UnitOfMeasureName() |
| | | ); |
| | | |
| | | // 夿æ¯éå¢ è¿æ¯äºä¸é¨ |
| | | if( businessType.FindString( "éå¢",0 ) <> -1) |
| | | { |
| | | priorityResult.PriorityResultGroupDetail( relnew,BusinessType := businessType,Customer := e.CustomerName(),CustomerID := e.CustomerID(), |
| | | DemandDate := e.EndDate(),PriorityPolicyName := priorityPolicyName,PriorityResultScore := value, |
| | | Quantity := e.Quantity(),SalesSegmentName := e.SalesSegmentName(),StockingPointID := e.StockingPointID(), |
| | | UnitOfMeasureName := e.UnitOfMeasureName(),PriorityTotalScore := value |
| | | ); |
| | | } |
| | | else |
| | | { |
| | | priorityResult.PriorityResultBusinessTypeDetail( relnew,BusinessType := businessType,Customer := e.CustomerName(),CustomerID := e.CustomerID(), |
| | | DemandDate := e.EndDate(),PriorityPolicyName := priorityPolicyName,PriorityResultScore := value, |
| | | Quantity := e.Quantity(),SalesSegmentName := e.SalesSegmentName(),StockingPointID := e.StockingPointID(), |
| | | UnitOfMeasureName := e.UnitOfMeasureName(),PriorityTotalScore := value |
| | | ); |
| | | } |
| | | } |
| | | |
| | | // ä¼å
级å åå¤çå®æå æåºåå¡«æ°æ® |
| | | resultList := selectsortedset( macroPlan,PriorityResult,result, |
| | | true, |
| | | result.PriorityResultScore() |
| | | ) |
| | | |
| | | priorityValue := 1; |
| | | traverse( resultList,Elements,e) |
| | | { |
| | | obj := selectobject( macroPlan,SalesDemand.astype( CustomerOrder ),order, |
| | | order.ID() = e.CustomerOrderID() |
| | | ); |
| | | |
| | | // è®¢åæ°æ®ä¸ä¸ºç©ºååå¤ç |
| | | if( not isnull( obj ) ) |
| | | { |
| | | obj.PriorityName([String]priorityValue); |
| | | |
| | | // å建ä¼å
çº§æ°æ® éè¦å
æ¸
é¤ä¸ä¸æ¬¡ç计ç®ç»æ |
| | | // 夿å½åcustomerOrderæ¯å¦åå¨ |
| | | oldPriority := selectobject( macroPlan,Priority,p,p.Name() = obj.OrderID()); |
| | | if(not isnull( oldPriority ) ) |
| | | { |
| | | macroPlan.Priority(reldelete, oldPriority); |
| | | } |
| | | macroPlan.Priority(relnew,Weight := priorityValue,Name := obj.OrderID()); |
| | | priorityValue := priorityValue + 1; |
| | | } |
| | | |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | FunctionOverride CalcStockLevelInDays #extension |
| | | { |
| | | TextBody: |
| | | [* |
| | | totalDays := 0.0; |
| | | |
| | | if( not this.Period_MP().MacroPlan().IsMetaOptimizerRunning() ) |
| | | { |
| | | balanceInv := this.InventoryLevelEnd(); |
| | | |
| | | if( balanceInv > 0 ) |
| | | { |
| | | // Calculate stock level in days |
| | | futureperiods := selectsortedset( this, ProductInStockingPoint_MP.ProductInStockingPointInPeriodPlanning.astype( ProductInStockingPointInPeriodPlanningLeaf ), p, |
| | | p.Start() >= this.End(), p.Start() ); |
| | | product := this.ProductInStockingPoint_MP().Product_MP(); |
| | | shelflife := this.ShelfLife(); |
| | | hasshelflife := product.HasShelfLife() and not isnull( shelflife ); |
| | | agevector := RealVector::Construct(); |
| | | quantityvector := RealVector::Construct(); |
| | | |
| | | // Modified logic to consider shelf-life for stock level in days |
| | | if( hasshelflife ) |
| | | { |
| | | // Get the age and quantity vector of remaining product stock at the end of period |
| | | agevector := RealVector::Construct( shelflife.ShelfLifeEndAgeVectorAsBinaryValue() ); |
| | | quantityvector := RealVector::Construct( shelflife.ShelfLifeEndQuantityVectorAsBinaryValue() ); |
| | | } |
| | | |
| | | /* |
| | | Track if consecutive future periods has 0 demand (although we have balance supply, but if remaining future periods has 0 demand not consider as coverable). |
| | | Accumulate the coverable days and only add to total days if manage to find a subsequent period with demand. |
| | | */ |
| | | traverse( futureperiods, Elements, pispip, |
| | | // Terminate calculation once remaining supply is 0 |
| | | balanceInv > 0 ) |
| | | { |
| | | if( balanceInv > 0 ) |
| | | { |
| | | demandQty := pispip.DependentDemandAndSalesDemandQuantity(); |
| | | |
| | | // Include expired quantity as demand to determine stock level in days |
| | | if( hasshelflife ) |
| | | { |
| | | isexpiredinperiodvector := BooleanVector::Construct(); |
| | | |
| | | traverse( agevector.AsValues(), Elements, age ) |
| | | { |
| | | isexpiredinperiod := not product.GetIsUsableInTargetPeriod( [Real] age, pispip.Start(), pispip.Period_MP() ); |
| | | isexpiredinperiodvector.Append( isexpiredinperiod ); |
| | | agevector.Add( pispip.Period_MP().GetDurationInDaysForShelfLife(), false ); |
| | | } |
| | | |
| | | // Sum of all elements in the quantity vector that corresponds to element = true in the boolean vector |
| | | expiredinventoryqty := quantityvector.GetSelection( isexpiredinperiodvector ).Sum(); |
| | | demandQty := demandQty + expiredinventoryqty; // Reduce inventory as expired |
| | | } |
| | | |
| | | if( balanceInv > demandQty ) // Remaining supply can cover demand in period |
| | | { |
| | | totalDays := totalDays + pispip.Period_MP().DurationInDays(); |
| | | balanceInv := balanceInv - demandQty; |
| | | } |
| | | else // Remaining supply partially cover the demand in period |
| | | { |
| | | // Main calc logic |
| | | totalDays := totalDays + ( balanceInv / demandQty * pispip.Period_MP().DurationInDays() ); |
| | | balanceInv := 0.0; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | this.StockLevelInDays( totalDays ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | TypeSpecialization ProductInStockingPointInPeriodPlanningLeaf #extension |
| | | { |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method ImportExcels_Tianma ( |
| | | Strings userinputvalues, |
| | | BinaryValues mpBinaryValues_i, |
| | | Strings mpBrokers_i |
| | | ) |
| | | { |
| | | Description: 'Import from Excel, used by web app.' |
| | | TextBody: |
| | | [* |
| | | // @userinputvalues - Array of data group that user imports |
| | | // @mpBinaryValues_i - Array of uploaded Excels in binary value. Binary at position x matches @mpBrokers_i at same position |
| | | // @mpBrokers_i - Array of uploaded Excels' broker name |
| | | |
| | | is3DDrive := false; |
| | | |
| | | // Check if each data group has files uploaded by user for import |
| | | this.Import( LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MPSync_ObjectGroup_Strategies() ), |
| | | LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MPSync_ObjectGroup_Accounts() ), |
| | | LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MPSync_ObjectGroup_Bookmarks() ), |
| | | LibSOPImpExp_ExportExcel::IsDataSourceIncluded_Tianma( userinputvalues, Translations::MPSync_ObjectGroup_KPISetting() ), |
| | | mpBinaryValues_i.Copy(), |
| | | mpBrokers_i, |
| | | is3DDrive, |
| | | construct( FileItems ), /* 3ddrive, ignore */ |
| | | construct( Strings ) /* 3ddrive, ignore */ ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute TestBoolean |
| | | { |
| | | #keys: '3[414384.0.915854691][414384.0.915854690][414384.0.915854692]' |
| | | ValueType: Boolean |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute TestDate |
| | | { |
| | | #keys: '3[414384.0.915854704][414384.0.915854703][414384.0.915854705]' |
| | | ValueType: Date |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute TestDateTime |
| | | { |
| | | #keys: '3[414384.0.915854714][414384.0.915854713][414384.0.915854715]' |
| | | ValueType: DateTime |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute TestNumber |
| | | { |
| | | #keys: '3[414384.0.915854681][414384.0.915854680][414384.0.915854682]' |
| | | ValueType: Number |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute TestReal |
| | | { |
| | | #keys: '3[414384.0.915854668][414384.0.915854667][414384.0.915854669]' |
| | | ValueType: Real |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute TestString |
| | | { |
| | | #keys: '3[414384.0.915854658][414384.0.915854657][414384.0.915854659]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Export ( |
| | | YuxTests toExportList |
| | | ) as String |
| | | { |
| | | TextBody: |
| | | [* |
| | | // generate by generate_export_method.py |
| | | xmlTemplate := '<?xml version="1.0" encoding="UTF-16"?> |
| | | <table> |
| | | <name>YuxTest</name> |
| | | '; |
| | | convDateToString := DateToString::StandardConverter(); |
| | | convDateToString.SetCustomConversion(); |
| | | convDateToString.CustomFormatString( 'yyyy-MM-dd' ); |
| | | convDateTimeToString := DateTimeToString::StandardConverter(); |
| | | convDateTimeToString.SetCustomConversion(); |
| | | convDateTimeToString.CustomFormatString( 'yyyy-MM-dd HH:mm:ss' ); |
| | | info( "export start" ); |
| | | //--------------------------------------------------------------------------------------------- |
| | | columnStr := "<column><name>æµè¯æ°å</name><type>String</type>"; |
| | | traverse( toExportList, Elements, toExportItem ) { |
| | | testNumber := toExportItem.TestNumber(); |
| | | cellStr := '<cell value="' + [String]testNumber + '"/>'; |
| | | columnStr := columnStr + cellStr; |
| | | } |
| | | columnStr := columnStr + "</column>"; |
| | | xmlTemplate := xmlTemplate + columnStr; |
| | | //--------------------------------------------------------------------------------------------- |
| | | columnStr := "<column><name>æµè¯å°æ°</name><type>String</type>"; |
| | | traverse( toExportList, Elements, toExportItem ) { |
| | | testReal := toExportItem.TestReal(); |
| | | cellStr := '<cell value="' + [String]testReal + '"/>'; |
| | | columnStr := columnStr + cellStr; |
| | | } |
| | | columnStr := columnStr + "</column>"; |
| | | xmlTemplate := xmlTemplate + columnStr; |
| | | //--------------------------------------------------------------------------------------------- |
| | | columnStr := "<column><name>æµè¯å符串</name><type>String</type>"; |
| | | traverse( toExportList, Elements, toExportItem ) { |
| | | testString := toExportItem.TestString(); |
| | | cellStr := '<cell value="' + testString + '"/>'; |
| | | columnStr := columnStr + cellStr; |
| | | } |
| | | columnStr := columnStr + "</column>"; |
| | | xmlTemplate := xmlTemplate + columnStr; |
| | | //--------------------------------------------------------------------------------------------- |
| | | columnStr := "<column><name>æµè¯å¸å°</name><type>String</type>"; |
| | | traverse( toExportList, Elements, toExportItem ) { |
| | | testBoolean := toExportItem.TestBoolean(); |
| | | cellStr := '<cell value="' + [String]testBoolean + '"/>'; |
| | | columnStr := columnStr + cellStr; |
| | | } |
| | | columnStr := columnStr + "</column>"; |
| | | xmlTemplate := xmlTemplate + columnStr; |
| | | //--------------------------------------------------------------------------------------------- |
| | | columnStr := "<column><name>æµè¯æ¥æ</name><type>String</type>"; |
| | | traverse( toExportList, Elements, toExportItem ) { |
| | | testDate := toExportItem.TestDate(); |
| | | cellStr := '<cell value="' + ifexpr( testDate = Date::MinDate(), "", convDateToString.Convert( testDate )) + '"/>'; |
| | | columnStr := columnStr + cellStr; |
| | | } |
| | | columnStr := columnStr + "</column>"; |
| | | xmlTemplate := xmlTemplate + columnStr; |
| | | //--------------------------------------------------------------------------------------------- |
| | | columnStr := "<column><name>æµè¯æ¥ææ¶é´</name><type>String</type>"; |
| | | traverse( toExportList, Elements, toExportItem ) { |
| | | testDateTime := toExportItem.TestDateTime(); |
| | | cellStr := '<cell value="' + ifexpr( testDateTime = DateTime::MinDateTime(), "", convDateTimeToString.Convert( testDateTime )) + '"/>'; |
| | | columnStr := columnStr + cellStr; |
| | | } |
| | | columnStr := columnStr + "</column>"; |
| | | xmlTemplate := xmlTemplate + columnStr; |
| | | //--------------------------------------------------------------------------------------------- |
| | | xmlTemplate := xmlTemplate + "</table>"; |
| | | tableHandle := TableHandle::ImportXML( BinaryValue::Construct( xmlTemplate ) ); |
| | | XLS::SaveTable( tableHandle, OS::TempPath() + "YuxTest.xlsx" ); |
| | | file := OSFile::Construct(); |
| | | file.Open( OS::TempPath() + "YuxTest.xlsx", "Read", true ); |
| | | data := file.ReadBinary() |
| | | info( "export end" ); |
| | | return data.AsBase64EncodedString(); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod ExportTest ( |
| | | MPSync parent |
| | | ) as String |
| | | { |
| | | TextBody: |
| | | [* |
| | | // yypsybs Sep-25-2023 (created) |
| | | list := selectset( parent, YuxTest, item, true ); |
| | | if( list.Size() = 0 ) { |
| | | for( i := 0; i < 100; i := i + 1 ) { |
| | | parent.YuxTest( relnew, |
| | | TestBoolean := ifexpr( Number::Random( 0, 1 ) = 1, true, false ), |
| | | TestDate := ifexpr( Number::Random( 0, 1 ) = 1, Date::MinDate(), Date::ActualDate() ), |
| | | TestDateTime := ifexpr( Number::Random( 0, 1 ) = 1,DateTime::MinDateTime(), DateTime::ActualTime() ), |
| | | TestNumber := Number::Random( 100, 200 ), |
| | | TestReal := Real::Random( 10.0, 20.0 ), |
| | | TestString := [String]Number::Random( 1000, 2000 ) |
| | | ); |
| | | } |
| | | } |
| | | list := selectset( parent, YuxTest, item, true ); |
| | | return YuxTest::Export( list ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type YuxTest |
| | | { |
| | | #keys: '5[414384.0.915854638][414384.0.915854636][0.0.0][414384.0.915854637][414384.0.915854639]' |
| | | BaseType: Object |
| | | StructuredName: 'YuxTests' |
| | | } |
| | |
| | | [ |
| | | Component MenuSpecial #extension |
| | | { |
| | | Children: |
| | | [ |
| | | Component MenuGlobalOTDTableTest { #keys: '[157968.0.1170224128]' BaseType: 'Menu' Properties: [ Image: 'DUDE2' Text: 'GlobalOTDTable Test' ] } |
| | | ] |
| | | Properties: |
| | | [ |
| | | ModeledStringList ChildOrdering |
| | |
| | | c: MenuTest |
| | | c: MenuScenarioManagerTest |
| | | c: MenuMPDomainHandlerTest |
| | | c: MenuGlobalOTDTableTest |
| | | c: MenuRemoveHistory |
| | | c: Menu46 |
| | | c: MenuRefresh |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: mbMainMenu/MenuGlobalOTDTableTest |
| | | Response OnClick () id:Response_TIANMA_JITUAN_mbMainMenu_MenuGlobalOTDTableTest_OnClick |
| | | { |
| | | #keys: '[157968.0.1170224134]' |
| | | Body: |
| | | [* |
| | | // Run GlobalOTDTable test method |
| | | GlobalOTDTable.Test(); |
| | | *] |
| | | DefinitionID: 'Responsedef_Menu_OnClick' |
| | | } |
| | |
| | | Taborder: 3 |
| | | ] |
| | | } |
| | | Component ButtonPriority |
| | | { |
| | | #keys: '[414382.0.587601840]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Image: 'QUEUE' |
| | | Label: 'ä¼å
级å å' |
| | | Taborder: 4 |
| | | ] |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component abgInterfaceTest |
| | | { |
| | | #keys: '[414702.0.457001887]' |
| | | BaseType: 'WebActionBarGroup' |
| | | Children: |
| | | [ |
| | | Component btnInterfaceTest |
| | | { |
| | | #keys: '[414702.0.459575623]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Image: 'BEAR' |
| | | Label: 'æ¥å£æµè¯' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 5 |
| | | ] |
| | | } |
| | |
| | | Children: |
| | | [ |
| | | #child: abgTest |
| | | #child: abgInterfaceTest |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ActionBarGroupSalesViews/ButtonPriority |
| | | Response OnClick () id:Response_TIANMA_JITUAN_ActionBarGroupSalesViews_ButtonPriority_OnClick |
| | | { |
| | | #keys: '[414382.0.587601951]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | ApplicationScope.ViewManager().ResetUserViewById( "PriorityTest",true); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: abgInterfaceTest/btnInterfaceTest |
| | | Response OnClick () id:Response_TIANMA_JITUAN_abgInterfaceTest_btnInterfaceTest_OnClick |
| | | { |
| | | #keys: '[414702.0.459575742]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | GroupServerCalls: true |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | ApplicationScope.ViewManager().ResetUserViewById( "æ¥å£æµè¯", true ); |
| | | *] |
| | | } |
| | | } |
| | |
| | | businessType := DataHolderBusinessType.Data().BusinessTypeName(); |
| | | DataHolderBusinessType.Data().Commit(); |
| | | |
| | | // PriorityFactor |
| | | |
| | | PriorityFactor::InitData( MacroPlan,businessType); |
| | | |
| | | this.Close(); |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component pnlActions |
| | | { |
| | | #keys: '[414382.0.563131222]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component btnOk |
| | | { |
| | | #keys: '[414382.0.563131226]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Label: 'OK' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | Component btnCancel |
| | | { |
| | | #keys: '[414382.0.563131228]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Label: 'Cancel' |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Alignment: 'trailing' |
| | | Border: true |
| | | ExcludeFromActiveComponent: true |
| | | FixedSize: true |
| | | Orientation: 'horizontal' |
| | | Padding: 'true' |
| | | Style: 'footer' |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component pnlContent |
| | | { |
| | | #keys: '[414382.0.563131220]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component PriorityPolicyStringList |
| | | { |
| | | #keys: '[414382.0.563131262]' |
| | | BaseType: 'WebDropDownStringList' |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | Component DataHolderChoosePriorityPolicy |
| | | { |
| | | #keys: '[414382.0.563131279]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'structured[PriorityPolicy]*' |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Padding: 'true' |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method CalculatePriorityResult ( |
| | | String name |
| | | ) id:Method_DialogChoosePriorityPolicy_CalculatePriorityResult |
| | | { |
| | | #keys: '[414382.0.577602130]' |
| | | Body: |
| | | [* |
| | | PriorityResult::CalculatePriorityResult(name,MacroPlan,GlobalOTDTable); |
| | | this.Close(); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method OpenChoose () id:Method_DialogChoosePriorityPolicy_OpenChoose |
| | | { |
| | | #keys: '[414382.0.563950563]' |
| | | Body: |
| | | [* |
| | | ApplicationMacroPlanner.ShowFormModal( this ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: pnlActions/btnCancel |
| | | Response OnClick () id:Response_pnlActions_btnCancel_OnClick |
| | | { |
| | | #keys: '[414382.0.563131232]' |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | GroupServerCalls: true |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | Form.Close(); |
| | | *] |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: pnlActions/btnOk |
| | | Response OnClick () id:Response_pnlActions_btnOk_OnClick |
| | | { |
| | | #keys: '[414382.0.563131231]' |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | name := PriorityPolicyStringList.Text(); |
| | | dlg := construct( DialogChoosePriorityPolicy ); |
| | | dlg.CalculatePriorityResult(name); |
| | | dlg.Close(); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: pnlContent/DataHolderChoosePriorityPolicy |
| | | Response OnCreated () id:Response_pnlContent_DataHolderChoosePriorityPolicy_OnCreated |
| | | { |
| | | #keys: '[414382.0.563131469]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebComponent_OnCreated' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | dataList := selectuniquevalues( MacroPlan,PriorityPolicy,p,p.Name()); |
| | | strings := dataList.Concatenate( ";"); |
| | | PriorityPolicyStringList.Strings(strings); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: pnlContent/DataHolderChoosePriorityPolicy |
| | | Response OnDataChanged () id:Response_pnlContent_DataHolderChoosePriorityPolicy_OnDataChanged |
| | | { |
| | | #keys: '[414382.0.563131545]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebComponent_OnDataChanged' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | dataList := selectuniquevalues( MacroPlan,PriorityPolicy,p,p.Name()); |
| | | strings := dataList.Concatenate( ";"); |
| | | PriorityPolicyStringList.Strings(strings); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: MacroPlannerWebApp |
| | | OrphanComponent DialogChoosePriorityPolicy |
| | | { |
| | | #keys: '[414382.0.563131218]' |
| | | BaseType: 'WebForm' |
| | | Children: |
| | | [ |
| | | #child: pnlContent |
| | | #child: pnlActions |
| | | ] |
| | | Properties: |
| | | [ |
| | | Alignment: 'trailing' |
| | | EnterButton: 'btnOk' |
| | | EscapeButton: 'btnCancel' |
| | | ExcludeFromActiveComponent: true |
| | | Padding: 'false' |
| | | Title: 'éæ©ä¼å
级çç¥' |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component pnlActions |
| | | { |
| | | #keys: '[414382.0.579140304]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component btnApply |
| | | { |
| | | #keys: '[414382.0.579140306]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Label: 'Apply' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | Component btnOk |
| | | { |
| | | #keys: '[414382.0.579140308]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Label: 'OK' |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | Component btnCancel |
| | | { |
| | | #keys: '[414382.0.579140310]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Label: 'Cancel' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Alignment: 'trailing' |
| | | Border: true |
| | | ExcludeFromActiveComponent: true |
| | | FixedSize: true |
| | | Orientation: 'horizontal' |
| | | Padding: 'true' |
| | | Style: 'footer' |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component pnlContent |
| | | { |
| | | #keys: '[414382.0.579140302]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component EditBusinessType |
| | | { |
| | | #keys: '[414382.0.581576821]' |
| | | BaseType: 'WebEditField' |
| | | Properties: |
| | | [ |
| | | DataBinding: 'DataHolderSelectCustomerOrder.Data.BusinessType' |
| | | Label: 'äºä¸é¨' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | Component EditCustomerPolicy |
| | | { |
| | | #keys: '[414382.0.581576840]' |
| | | BaseType: 'WebEditField' |
| | | Properties: |
| | | [ |
| | | DataBinding: 'DataHolderSelectCustomerOrder.Data.CustomerPolicy' |
| | | Label: '客æ·çç¥' |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | Component EditOrderType |
| | | { |
| | | #keys: '[414382.0.581576842]' |
| | | BaseType: 'WebEditField' |
| | | Properties: |
| | | [ |
| | | DataBinding: 'DataHolderSelectCustomerOrder.Data.OrderType' |
| | | Label: '订åç±»å' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | Component EditProductGrade |
| | | { |
| | | #keys: '[414382.0.581576844]' |
| | | BaseType: 'WebEditField' |
| | | Properties: |
| | | [ |
| | | DataBinding: 'DataHolderSelectCustomerOrder.Data.ProductGrade' |
| | | Label: '产åç级' |
| | | Taborder: 4 |
| | | ] |
| | | } |
| | | Component EditSegmentPriority |
| | | { |
| | | #keys: '[414382.0.581576846]' |
| | | BaseType: 'WebEditField' |
| | | Properties: |
| | | [ |
| | | DataBinding: 'DataHolderSelectCustomerOrder.Data.SegmentPriority' |
| | | Label: 'ç»åå¸åºä¼å
级' |
| | | Taborder: 5 |
| | | ] |
| | | } |
| | | Component EditOrderTime |
| | | { |
| | | #keys: '[414382.0.581576988]' |
| | | BaseType: 'WebDateSelector' |
| | | Properties: |
| | | [ |
| | | DataBinding: 'DataHolderSelectCustomerOrder.Data.OrderTime' |
| | | Label: '订åä¸åæ¶é´' |
| | | Taborder: 3 |
| | | ] |
| | | } |
| | | Component EditSheetProfitability |
| | | { |
| | | #keys: '[414382.0.581577181]' |
| | | BaseType: 'WebEditField' |
| | | Properties: |
| | | [ |
| | | DataBinding: 'DataHolderSelectCustomerOrder.Data.SheetProfitability' |
| | | Label: 'å¤§å¼ ç婿°´å¹³' |
| | | Taborder: 6 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Padding: 'true' |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method ClickBynOk () id:Method_DialogEditCustomerOrderPriority_ClickBynOk |
| | | { |
| | | #keys: '[414382.0.581577357]' |
| | | Body: |
| | | [* |
| | | // Disabled button to prevent the possibility of multiple firing |
| | | |
| | | btnOk.Enabled(false,''); |
| | | |
| | | // OnOk |
| | | this.ApplyChanges(); |
| | | DataHolderSelectCustomerOrder.Data().Commit(); |
| | | this.Close(); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method EditCustomerOrderPriority ( |
| | | CustomerOrder selection |
| | | ) id:Method_DialogEditCustomerOrderPriority_EditCustomerOrderPriority |
| | | { |
| | | #keys: '[414382.0.581575991]' |
| | | Body: |
| | | [* |
| | | // Edits assumption |
| | | data := shadow( selection ); |
| | | |
| | | DataHolderSelectCustomerOrder.Data( &data ); |
| | | |
| | | ApplicationMacroPlanner.ShowFormModal( this ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: pnlActions/btnApply |
| | | Response OnClick () id:Response_pnlActions_btnApply_OnClick |
| | | { |
| | | #keys: '[414382.0.579140312]' |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | GroupServerCalls: true |
| | | Precondition: |
| | | [* |
| | | return Form.HasChanges(); |
| | | *] |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | Form.ApplyChanges(); |
| | | *] |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: pnlActions/btnCancel |
| | | Response OnClick () id:Response_pnlActions_btnCancel_OnClick |
| | | { |
| | | #keys: '[414382.0.579140314]' |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | GroupServerCalls: true |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | Form.Close(); |
| | | *] |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: pnlActions/btnOk |
| | | Response OnClick () id:Response_pnlActions_btnOk_OnClick |
| | | { |
| | | #keys: '[414382.0.579140313]' |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | Form.ClickBynOk(); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: MacroPlannerWebApp |
| | | OrphanComponent DialogEditCustomerOrderPriority |
| | | { |
| | | #keys: '[414382.0.579140300]' |
| | | BaseType: 'WebForm' |
| | | Children: |
| | | [ |
| | | #child: pnlContent |
| | | #child: pnlActions |
| | | Component DataHolderSelectCustomerOrder |
| | | { |
| | | #keys: '[414382.0.581575244]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'shadow[CustomerOrder]*' |
| | | Properties: |
| | | [ |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Alignment: 'trailing' |
| | | EnterButton: 'btnOk' |
| | | EscapeButton: 'btnCancel' |
| | | ExcludeFromActiveComponent: true |
| | | Padding: 'false' |
| | | Title: 'ä¿®æ¹è®¢åä¼å
级å åä¿¡æ¯' |
| | | ] |
| | | } |
| | |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | Taborder: 2 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ButtonExportTest |
| | | Response OnClick () id:Response_FormCapacityAndSaleBudge_ButtonExportTest_OnClick |
| | | { |
| | | #keys: '[414384.0.914711825]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | Precondition: |
| | | [* |
| | | return not isnull( MPSync ); |
| | | *] |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | base64 := YuxTest::ExportTest( MPSync ); |
| | | Application.Download( "result.xlsx", base64 ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
| | |
| | | [* |
| | | MPSync::TestData( MPSync, MacroPlan ); |
| | | GlobalOTDTable.InitTestData(); |
| | | MPSync.RefreshCapacityAndSaleBudgeFilter(); |
| | | MPSync.RefreshCapacityAndSaleBudgeFilter( GlobalOTDTable ); |
| | | *] |
| | | } |
| | | } |
| | |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | Component ButtonExportTest |
| | | { |
| | | #keys: '[414384.0.914711826]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Image: 'EXPORT1' |
| | | Label: 'å¯¼åºæµè¯' |
| | | Taborder: 1 |
| | | Visible: false |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'ScenarioManager' |
| | | Source: 'ScenarioManager' |
| | | DataType: 'GlobalOTDTable' |
| | | Source: 'GlobalOTDTable' |
| | | Taborder: 0 |
| | | Transformation: 'CapacityAndSaleBudgeChartElement' |
| | | ] |
| | |
| | | { |
| | | Body: |
| | | [* |
| | | CapacityAndSaleBudgeChartElement::TestData( ScenarioManager ); |
| | | CapacityAndSaleBudgeChartElement::TestData( GlobalOTDTable ); |
| | | |
| | | ScenarioManager.CapacityAndSaleBudgeChart( DataHolderMacroPlansForScenarioComparison.Data(), |
| | | DropDownSaleOrCapacity.Text(), |
| | | DropDownTimeGroup.Text(), |
| | | DropDownByBusinessTypeOrByOrgCode.Text(), |
| | | DataHolderCapacityAndSaleBudgeFilterBusinessType.Data(), |
| | | DataHolderCapacityAndSaleBudgeFilterPlaceOfProductionOfArray.Data(), |
| | | DataHolderCapacityAndSaleBudgeFilterYear.Data(), |
| | | DataHolderCapacityAndSaleBudgeFilterMonth.Data(), |
| | | MPSync, |
| | | GlobalOTDTable, |
| | | MacroPlan ); |
| | | GlobalOTDTable.CapacityAndSaleBudgeChart( DataHolderMacroPlansForScenarioComparison.Data(), |
| | | DropDownSaleOrCapacity.Text(), |
| | | DropDownTimeGroup.Text(), |
| | | DropDownByBusinessTypeOrByOrgCode.Text(), |
| | | DataHolderCapacityAndSaleBudgeFilterBusinessType.Data(), |
| | | DataHolderCapacityAndSaleBudgeFilterPlaceOfProductionOfArray.Data(), |
| | | DataHolderCapacityAndSaleBudgeFilterYear.Data(), |
| | | DataHolderCapacityAndSaleBudgeFilterMonth.Data(), |
| | | MPSync, |
| | | GlobalOTDTable, |
| | | MacroPlan ); |
| | | *] |
| | | } |
| | | } |
| | |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'ScenarioManager' |
| | | Source: 'ScenarioManager' |
| | | DataType: 'GlobalOTDTable' |
| | | Source: 'GlobalOTDTable' |
| | | Taborder: 0 |
| | | Transformation: 'CapacityAndSaleBudgeCompareItemColumn.CapacityAndSaleBudgeCompareItemCell' |
| | | ] |
| | |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'ScenarioManager' |
| | | Source: 'ScenarioManager' |
| | | DataType: 'GlobalOTDTable' |
| | | Source: 'GlobalOTDTable' |
| | | Taborder: 0 |
| | | Transformation: 'CapacityAndSaleBudgeCompareItemRow' |
| | | ] |
| | |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'ScenarioManager' |
| | | Source: 'ScenarioManager' |
| | | DataType: 'GlobalOTDTable' |
| | | Source: 'GlobalOTDTable' |
| | | Taborder: 0 |
| | | Transformation: 'CapacityAndSaleBudgeCompareItemColumn' |
| | | ] |
| | |
| | | info( DataHolderCapacityAndSaleBudgeFilterItem.Data().Size() ); |
| | | info( DataHolderCapacityAndSaleBudgeFilterYear.Data().Size() ); |
| | | info( DataHolderCapacityAndSaleBudgeFilterMonth.Data().Size() ); |
| | | ScenarioManager.CapacityAndSaleBudgeCompare( DataHolderMacroPlansForScenarioComparison.Data(), |
| | | DataHolderCapacityAndSaleBudgeFilterItem.Data(), |
| | | DataHolderCapacityAndSaleBudgeFilterYear.Data(), |
| | | DataHolderCapacityAndSaleBudgeFilterMonth.Data(), |
| | | MPSync, |
| | | GlobalOTDTable, |
| | | MacroPlan ); |
| | | GlobalOTDTable.CapacityAndSaleBudgeCompare( DataHolderMacroPlansForScenarioComparison.Data(), |
| | | DataHolderCapacityAndSaleBudgeFilterItem.Data(), |
| | | DataHolderCapacityAndSaleBudgeFilterYear.Data(), |
| | | DataHolderCapacityAndSaleBudgeFilterMonth.Data(), |
| | | MPSync, |
| | | GlobalOTDTable, |
| | | MacroPlan ); |
| | | *] |
| | | } |
| | | } |
| | |
| | | { |
| | | Body: |
| | | [* |
| | | tableBinaryData := ScenarioManager.CapacityAndSaleBudgeCompareExport().AsBinaryData(); |
| | | tableBinaryData := GlobalOTDTable.CapacityAndSaleBudgeCompareExport().AsBinaryData(); |
| | | Application.Download( "年度产éé¢ç®å¯¹æ¯.xlsx", tableBinaryData ); |
| | | *] |
| | | GroupServerCalls: false |
| | |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'MPSync' |
| | | Source: 'MPSync' |
| | | DataType: 'GlobalOTDTable' |
| | | Source: 'GlobalOTDTable' |
| | | Taborder: 0 |
| | | Transformation: 'CapacityAndSaleBudgeFilterBusinessType' |
| | | ] |
| | |
| | | { |
| | | Body: |
| | | [* |
| | | MPSync.RefreshCapacityAndSaleBudgeFilter(); |
| | | MPSync.RefreshCapacityAndSaleBudgeFilter( GlobalOTDTable ); |
| | | *] |
| | | } |
| | | } |
| | |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'ScenarioManager' |
| | | Source: 'ScenarioManager' |
| | | DataType: 'GlobalOTDTable' |
| | | Source: 'GlobalOTDTable' |
| | | Taborder: 0 |
| | | Transformation: 'CapacityAndSaleBudgeFilterItem' |
| | | ] |
| | |
| | | { |
| | | Body: |
| | | [* |
| | | CapacityAndSaleBudgeFilterItem::Initial( ScenarioManager ); |
| | | CapacityAndSaleBudgeFilterItem::Initial( GlobalOTDTable ); |
| | | *] |
| | | } |
| | | } |
| | |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'ScenarioManager' |
| | | Source: 'ScenarioManager' |
| | | DataType: 'GlobalOTDTable' |
| | | Source: 'GlobalOTDTable' |
| | | Taborder: 0 |
| | | Transformation: 'CapacityAndSaleBudgeFilterMonth' |
| | | ] |
| | |
| | | { |
| | | Body: |
| | | [* |
| | | CapacityAndSaleBudgeFilterMonth::Initial( ScenarioManager ); |
| | | CapacityAndSaleBudgeFilterMonth::Initial( GlobalOTDTable ); |
| | | *] |
| | | } |
| | | } |
| | |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'MPSync' |
| | | Source: 'MPSync' |
| | | DataType: 'GlobalOTDTable' |
| | | Source: 'GlobalOTDTable' |
| | | Taborder: 0 |
| | | Transformation: 'CapacityAndSaleBudgeFilterPlaceOfProductionOfArray' |
| | | ] |
| | |
| | | { |
| | | Body: |
| | | [* |
| | | MPSync.RefreshCapacityAndSaleBudgeFilter(); |
| | | MPSync.RefreshCapacityAndSaleBudgeFilter( GlobalOTDTable ); |
| | | *] |
| | | } |
| | | } |
| | |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'ScenarioManager' |
| | | Source: 'ScenarioManager' |
| | | DataType: 'GlobalOTDTable' |
| | | Source: 'GlobalOTDTable' |
| | | Taborder: 0 |
| | | Transformation: 'CapacityAndSaleBudgeFilterYear' |
| | | ] |
| | |
| | | { |
| | | Body: |
| | | [* |
| | | CapacityAndSaleBudgeFilterYear::Initial( ScenarioManager ); |
| | | CapacityAndSaleBudgeFilterYear::Initial( GlobalOTDTable ); |
| | | *] |
| | | } |
| | | } |
| | |
| | | [ |
| | | Component DataSetLevelSalesDemands #extension |
| | | { |
| | | Children: |
| | | [ |
| | | #child: listContextMenuSD |
| | | ] |
| | | Properties: |
| | | [ |
| | | Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeAllConstraint","columnid":"All constraints","title":"All constraints","subtotals":"","tooltip":"","width":1,"display":"shown"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StockingPoint_MP.ID","title":"Stocking point","subtotals":"","tooltip":"","width":-1,"display":"shown","attribute":"StockingPoint_MP.ID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SalesSegment_MP.Name","title":"Sales segment","subtotals":"","tooltip":"","width":-1,"display":"shown","attribute":"SalesSegment_MP.Name"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"CustomerName","title":"Customer name","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"CustomerName"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"CustomerID","title":"Customer ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"CustomerID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"OrderID","title":"Order ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"OrderID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"OrderLineID","title":"Order line ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"OrderLineID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StartDate","title":"Order date","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StartDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Product_MP.ID","title":"Product","subtotals":"","tooltip":"","width":-1,"display":"shown","attribute":"Product_MP.ID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"UnitOfMeasure_MP.Name","title":"UoM","subtotals":"","tooltip":"","width":-1,"display":"shown","attribute":"UnitOfMeasure_MP.Name"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Quantity","title":"Quantity","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Quantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"FulfilledQuantity","title":"Fulfilled","subtotals":"","tooltip":"","width":-1,"display":"shown","attribute":"FulfilledQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeChart","columnid":"Fulfillment","title":"Fulfillment","subtotals":"","tooltip":"","width":-1,"display":"shown","type":"stackbar","relative":true,"attributes":[{"name":"Unfulfilled demand","color":"rgb(232,123,0)","expression":{"classtype":"WebApiDefinitionAttributeExpression","columnid":"Unfulfilled demand","title":"Unfulfilled demand","subtotals":"","tooltip":"","width":-1,"display":"shown","expressionbody":"maxvalue( object.Quantity() - object.FulfilledQuantity(), 0.0).Round( 2)"}},{"name":"Fulfilled demand","color":"rgb(87,184,71)","expression":{"classtype":"WebApiDefinitionAttributeExpression","columnid":"Fulfilled demand","title":"Fulfilled demand","subtotals":"","tooltip":"","width":-1,"display":"shown","expressionbody":"object.FulfilledQuantity().Round( 2)"}}]}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"IsFirmed","title":"Is firmed","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"IsFirmed"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"IsEligibleForNetting","title":"Is eligible for netting","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"IsEligibleForNetting"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Price","title":"Price","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Price"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"PriceUoM","title":"PriceUoM","subtotals":"","tooltip":"","width":-1,"display":"shown","attribute":"PriceUoM"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"OrderTag","title":"è®¢åæ ç¾","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"OrderTag"}}]' |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listContextMenuSD #extension |
| | | { |
| | | Children: |
| | | [ |
| | | Component MenuPriorityResult |
| | | { |
| | | #keys: '[414382.0.562012014]' |
| | | BaseType: 'WebMenu' |
| | | Properties: |
| | | [ |
| | | Taborder: 10 |
| | | Title: 'äºä¸é¨ä¼å
级计ç®' |
| | | ] |
| | | } |
| | | Component MenuEditCustomerOrderPriority |
| | | { |
| | | #keys: '[414382.0.581575364]' |
| | | BaseType: 'WebMenu' |
| | | Properties: |
| | | [ |
| | | Taborder: 11 |
| | | Title: 'ä¿®æ¹å®¢æ·è®¢åä¼å
级å åä¿¡æ¯' |
| | | ] |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ListSalesDemands |
| | | Response OnClick ( |
| | | SalesDemandBase selection |
| | | ) id:Response_ListSalesDemands_MenuEditCustomerOrderPriority_OnClick |
| | | { |
| | | #keys: '[414382.0.581575400]' |
| | | CanBindMultiple: false |
| | | DefinitionID => //FormSalesDemands/ListSalesDemands/Responsedef_ListSalesDemands_WebMenu_OnClick |
| | | Initiator: 'MenuEditCustomerOrderPriority' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | dlg := construct( DialogEditCustomerOrderPriority ); |
| | | data := selection.astype( CustomerOrder ); |
| | | dlg.EditCustomerOrderPriority( data); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ListSalesDemands |
| | | Response OnClick () id:Response_ListSalesDemands_MenuPriorityResult_OnClick |
| | | { |
| | | #keys: '[414382.0.563130924]' |
| | | CanBindMultiple: false |
| | | DefinitionID => //FormSalesDemands/ListSalesDemands/Responsedef_ListSalesDemands_WebMenu_OnClick |
| | | Initiator: 'MenuPriorityResult' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | |
| | | dlg := construct( DialogChoosePriorityPolicy ); |
| | | dlg.OpenChoose(); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
| | |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | Taborder: 1 |
| | | ] |
| | | ResponseDefinitions: |
| | | [ |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelButton |
| | | { |
| | | #keys: '[414702.0.454190771]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component ButtonTransform |
| | | { |
| | | #keys: '[414702.0.454190800]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Image: 'BARRIER_CLOSED' |
| | | Label: '转æ¢' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | FixedSize: true |
| | | Orientation: 'horizontal' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | |
| | | BaseType: 'WebMenu' |
| | | Properties: |
| | | [ |
| | | Image: 'ADD2' |
| | | Image: 'JERRYCAN' |
| | | Taborder: 3 |
| | | Title: 'Filling' |
| | | Title: '填产' |
| | | ] |
| | | } |
| | | Component MenuTest |
| | | Component MenuRefresh |
| | | { |
| | | #keys: '[414382.0.415603149]' |
| | | BaseType: 'WebMenu' |
| | | Properties: |
| | | [ |
| | | Image: 'ADD2' |
| | | Image: 'EDITOR_HAS_DECLARATIVE_DEFINITION' |
| | | Taborder: 4 |
| | | Title: 'Test' |
| | | Title: 'å建æµè¯æ°æ®' |
| | | ] |
| | | } |
| | | Component MenuDelete |
| | | { |
| | | #keys: '[414702.0.472081906]' |
| | | BaseType: 'WebMenu' |
| | | Properties: |
| | | [ |
| | | Image: 'DELETE' |
| | | Taborder: 5 |
| | | Title: 'å é¤' |
| | | ] |
| | | } |
| | | Component MenuSelectAll |
| | | { |
| | | #keys: '[414702.0.472012591]' |
| | | BaseType: 'WebMenu' |
| | | Properties: |
| | | [ |
| | | Image: 'DOCUMENT_SELECTION' |
| | | Shortcut: 'Ctrl+A' |
| | | Taborder: 6 |
| | | Title: 'å
¨é' |
| | | ] |
| | | } |
| | | ] |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ListCustomerAndFillingCapacityOrder |
| | | Response OnClick ( |
| | | CustomerAndForecastOrder selection |
| | | ) id:Response_ListCustomerAndFillingCapacityOrder_MenuDelete_OnClick |
| | | { |
| | | #keys: '[414702.0.472032713]' |
| | | DefinitionID => /ListCustomerAndFillingCapacityOrder/Responsedef_ListCustomerAndFillingCapacityOrder_WebMenu_OnClick |
| | | Initiator: 'MenuDelete' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | selection.Delete(); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Response_ListCustomerAndFillingCapacityOrder_MenuTest_OnClick.def ÐÞ¸Ä |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ListCustomerAndFillingCapacityOrder |
| | | Response OnClick () id:Response_ListCustomerAndFillingCapacityOrder_MenuTest_OnClick |
| | | Response OnClick () id:Response_ListCustomerAndFillingCapacityOrder_MenuRefresh_OnClick |
| | | { |
| | | #keys: '[414382.0.415724061]' |
| | | CanBindMultiple: false |
| | | DefinitionID => /ListCustomerAndFillingCapacityOrder/Responsedef_ListCustomerAndFillingCapacityOrder_WebMenu_OnClick |
| | | GroupServerCalls: true |
| | | Initiator: 'MenuTest' |
| | | Initiator: 'MenuRefresh' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | CustomerAndForecastOrder::CreateTestData( MacroPlan); |
| | | CustomerAndForecastOrder::RefreshData( MacroPlan,GlobalOTDTable); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
copy from _Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Response_ListCustomerAndFillingCapacityOrder_MenuTest_OnClick.def
copy to _Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Response_ListCustomerAndFillingCapacityOrder_MenuSelectAll_OnClick.def
Îļþ´Ó _Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Response_ListCustomerAndFillingCapacityOrder_MenuTest_OnClick.def ¸´ÖÆ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ListCustomerAndFillingCapacityOrder |
| | | Response OnClick () id:Response_ListCustomerAndFillingCapacityOrder_MenuTest_OnClick |
| | | Response OnClick () id:Response_ListCustomerAndFillingCapacityOrder_MenuSelectAll_OnClick |
| | | { |
| | | #keys: '[414382.0.415724061]' |
| | | #keys: '[414702.0.474548365]' |
| | | CanBindMultiple: false |
| | | DefinitionID => /ListCustomerAndFillingCapacityOrder/Responsedef_ListCustomerAndFillingCapacityOrder_WebMenu_OnClick |
| | | GroupServerCalls: true |
| | | Initiator: 'MenuTest' |
| | | Initiator: 'MenuSelectAll' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | CustomerAndForecastOrder::CreateTestData( MacroPlan); |
| | | this.SelectAll(); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelButton/ButtonTransform |
| | | Response OnClick () id:Response_PanelButton_ButtonTransform_OnClick |
| | | { |
| | | #keys: '[414702.0.454181189]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | Precondition: |
| | | [* |
| | | return not isnull( MacroPlan ); |
| | | *] |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | CustomerAndForecastOrder::CreateData( MacroPlan ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
| | |
| | | Children: |
| | | [ |
| | | #child: ListCustomerAndFillingCapacityOrder |
| | | #child: PanelButton |
| | | ] |
| | | Properties: |
| | | [ |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component ListInterfaceTest |
| | | { |
| | | #keys: '[414702.0.459846558]' |
| | | BaseType: 'WebList' |
| | | Children: |
| | | [ |
| | | Component DataExtractorInterfaceTest |
| | | { |
| | | #keys: '[414702.0.459846559]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'GlobalOTDTable' |
| | | Source: 'GlobalOTDTable' |
| | | Taborder: 0 |
| | | Transformation: 'Global_BrokerExecuteLog' |
| | | ] |
| | | } |
| | | #child: listActionBarPageInterfaceTest |
| | | Component DataSetLevelInterfaceTest |
| | | { |
| | | #keys: '[414702.0.459846564]' |
| | | BaseType: 'WebDataSetLevel' |
| | | Children: |
| | | [ |
| | | #child: listContextMenuInterfaceTest |
| | | ] |
| | | Properties: |
| | | [ |
| | | Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"BrokerName","title":"BrokerName","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"BrokerName"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ElementTotal","title":"ElementTotal","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ElementTotal"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ErrorDateTime","title":"ErrorDateTime","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ErrorDateTime"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ErrorMessage","title":"ErrorMessage","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ErrorMessage"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ErrorNo","title":"ErrorNo","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ErrorNo"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"IsSuccess","title":"IsSuccess","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"IsSuccess"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Name","title":"Name","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Name"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SuccessDateTime","title":"SuccessDateTime","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SuccessDateTime"}}]' |
| | | ContextMenu: 'listContextMenuInterfaceTest' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | ResponseDefinitions: |
| | | [ |
| | | DelegatedResponseDefinition OnClick id:Responsedef_ListInterfaceTest_WebMenu_OnClick |
| | | { |
| | | #keys: '[414702.0.488307130]' |
| | | Initiator: 'WebMenu' |
| | | IsInherited: false |
| | | ResponseType: 'OnClick' |
| | | Arguments: |
| | | [ |
| | | ResponseDefinitionArgument selection |
| | | { |
| | | #keys: '[1041.0.20211517]' |
| | | Binding: 'this.Selection()' |
| | | } |
| | | ] |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelInterfaceOptions |
| | | { |
| | | #keys: '[414702.0.459752107]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component CheckboxCustomOrder |
| | | { |
| | | #keys: '[414702.0.459786494]' |
| | | BaseType: 'WebCheckbox' |
| | | Properties: |
| | | [ |
| | | Label: 'CustomOrder' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | Component CheckboxForecast |
| | | { |
| | | #keys: '[414702.0.459501981]' |
| | | BaseType: 'WebCheckbox' |
| | | Properties: |
| | | [ |
| | | Label: 'Forecast' |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | Component DropDownListBusinessType |
| | | { |
| | | #keys: '[414702.0.465923773]' |
| | | BaseType: 'WebDropDownList' |
| | | Databinding: 'BusinessType' |
| | | Children: |
| | | [ |
| | | Component DataExtractorInterfaceOptions |
| | | { |
| | | #keys: '[414702.0.465923775]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'GlobalOTDTable' |
| | | Source: 'GlobalOTDTable' |
| | | Taborder: 0 |
| | | Transformation: 'BusinessType' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | DisplayField: 'BusinessTypeName' |
| | | Label: 'äºä¸é¨' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | FixedSize: true |
| | | Orientation: 'horizontal' |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelInterfaceTest |
| | | { |
| | | #keys: '[414702.0.459815967]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component ButtonPullInterfaceDataToIntermediateTable |
| | | { |
| | | #keys: '[414702.0.457042579]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Image: 'WINE' |
| | | Label: 'æåæ¥å£æ°æ®å°ä¸é´è¡¨' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | Component ButtonSynchronizeDataToMacroPlan |
| | | { |
| | | #keys: '[414702.0.461471389]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Image: 'COFFEE_MACHINE' |
| | | Label: 'åæ¥æ°æ®å°MacroPlan' |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | FixedSize: true |
| | | Orientation: 'horizontal' |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelInterfaceTest981 |
| | | { |
| | | #keys: '[414702.0.459917264]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | #child: ListInterfaceTest |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 2 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listActionBarPageInterfaceTest |
| | | { |
| | | #keys: '[414702.0.459846561]' |
| | | BaseType: 'listActionBarPage' |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listContextMenuInterfaceTest |
| | | { |
| | | #keys: '[414702.0.459846566]' |
| | | BaseType: 'listContextMenu' |
| | | Children: |
| | | [ |
| | | Component MenuCreateShowData |
| | | { |
| | | #keys: '[414702.0.488246034]' |
| | | BaseType: 'WebMenu' |
| | | Properties: |
| | | [ |
| | | Image: 'VIEW' |
| | | Taborder: 3 |
| | | Title: 'æ¾ç¤ºæ°æ®' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ListInterfaceTest |
| | | Response OnClick ( |
| | | Global_BrokerExecuteLog selection |
| | | ) id:Response_ListInterfaceTest_MenuCreateShowData_OnClick |
| | | { |
| | | #keys: '[414702.0.488307153]' |
| | | CanBindMultiple: false |
| | | DefinitionID => /ListInterfaceTest/Responsedef_ListInterfaceTest_WebMenu_OnClick |
| | | Initiator: 'MenuCreateShowData' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | GlobalOTDTable.Global_ShowRow( relflush ); |
| | | GlobalOTDTable.Global_ShowColumn( relflush ); |
| | | GlobalOTDTable.Global_ShowCell( relflush ); |
| | | |
| | | Global_ShowCell::ShowData( GlobalOTDTable, selection ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelInterfaceTest/ButtonPullInterfaceDataToIntermediateTable |
| | | Response OnClick () id:Response_PanelInterfaceTest_ButtonPullInterfaceDataToIntermediateTable_OnClick |
| | | { |
| | | #keys: '[414702.0.459947783]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | Precondition: |
| | | [* |
| | | return not isnull( GlobalOTDTable ); |
| | | *] |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | GlobalOTDTable.SynchronizationAllMappingBrokerAndAPIByOption( CheckboxCustomOrder.Checked(), |
| | | CheckboxForecast.Checked() ); |
| | | |
| | | WebMessageBox::Success( "æåæåï¼", true ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelInterfaceTest/ButtonSynchronizeDataToMacroPlan |
| | | Response OnClick () id:Response_PanelInterfaceTest_ButtonSynchronizeDataToMacroPlan_OnClick |
| | | { |
| | | #keys: '[414702.0.465857875]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | Precondition: |
| | | [* |
| | | return not isnull( GlobalOTDTable ) and not isnull( MacroPlan ); |
| | | *] |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | businessTypes := construct( Strings ); |
| | | businessTypes.Add( DropDownListBusinessType.Data().BusinessTypeName() ); |
| | | GlobalOTDTable.SynchronizeDataToMacroPlan( MacroPlan, |
| | | businessTypes, |
| | | CheckboxCustomOrder.Checked(), |
| | | CheckboxForecast.Checked() |
| | | ); |
| | | |
| | | WebMessageBox::Success( "忥æåï¼", true ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: MacroPlannerWebApp |
| | | OrphanComponent FormInterfaceTest |
| | | { |
| | | #keys: '[414702.0.459670964]' |
| | | BaseType: 'WebForm' |
| | | Children: |
| | | [ |
| | | #child: PanelInterfaceOptions |
| | | #child: PanelInterfaceTest |
| | | #child: PanelInterfaceTest981 |
| | | ] |
| | | Properties: |
| | | [ |
| | | Image: 'BACON' |
| | | Title: 'æ¥å£æµè¯' |
| | | ] |
| | | } |
| | |
| | | { |
| | | Body: |
| | | [* |
| | | businessTypeList := selectset( GlobalOTDTable,BusinessType,b,true); |
| | | this.Data(&businessTypeList); |
| | | //businessTypeList := selectset( GlobalOTDTable,BusinessType,b,true); |
| | | //this.Data(&businessTypeList); |
| | | |
| | | list := this.Data(); |
| | | strings := selectuniquevalues( list,Elements,e,e.BusinessTypeName()).Concatenate( ";" ); |
| | | DropDownStringListBusinessType.Strings(strings); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | |
| | | { |
| | | Body: |
| | | [* |
| | | businessTypeList := selectset( GlobalOTDTable,BusinessType,b,true); |
| | | this.Data(&businessTypeList); |
| | | strings := BusinessType::GetBusinessNameStr( GlobalOTDTable ); |
| | | //businessTypeList := selectset( GlobalOTDTable,BusinessType,b,true); |
| | | //this.Data(&businessTypeList); |
| | | //strings := BusinessType::GetBusinessNameStr( GlobalOTDTable ); |
| | | //DropDownStringListBusinessType.Strings(strings); |
| | | list := this.Data(); |
| | | strings := selectuniquevalues( list,Elements,e,e.BusinessTypeName()).Concatenate( ";" ); |
| | | DropDownStringListBusinessType.Strings(strings); |
| | | *] |
| | | GroupServerCalls: false |
| | |
| | | { |
| | | Body: |
| | | [* |
| | | strings := BusinessType::GetBusinessNameStr( GlobalOTDTable ); |
| | | this.Strings(strings); |
| | | //strings := BusinessType::GetBusinessNameStr( GlobalOTDTable ); |
| | | //this.Strings(strings); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | |
| | | #keys: '[414382.0.539205233]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'structured[BusinessType]*' |
| | | Children: |
| | | [ |
| | | Component DataExtractorPriorityFactorBusinessType |
| | | { |
| | | #keys: '[414382.0.584060499]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'GlobalOTDTable' |
| | | Source: 'GlobalOTDTable' |
| | | Taborder: 0 |
| | | Transformation: 'BusinessType' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 4 |
| | |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Label: '*' |
| | | Label: '-' |
| | | Taborder: 3 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: DataHolderPriorityPolicyBusinessType |
| | | Response OnCreated () id:Response_FormPriorityPolicy_DataHolderPriorityPolicyBusinessType_OnCreated |
| | | { |
| | | #keys: '[414382.0.585796031]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebComponent_OnCreated' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | list := this.Data(); |
| | | strings := selectuniquevalues( list,Elements,e,e.BusinessTypeName()).Concatenate( ";" ); |
| | | PriorityPolicyBusinessType.Strings(strings); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: DataHolderPriorityPolicyBusinessType |
| | | Response OnDataChanged () id:Response_FormPriorityPolicy_DataHolderPriorityPolicyBusinessType_OnDataChanged |
| | | { |
| | | #keys: '[414382.0.585796110]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebComponent_OnDataChanged' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | list := this.Data(); |
| | | strings := selectuniquevalues( list,Elements,e,e.BusinessTypeName()).Concatenate( ";" ); |
| | | PriorityPolicyBusinessType.Strings(strings); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: DataHolderPriorityPolicyFactor |
| | | Response OnCreated () id:Response_FormPriorityPolicy_DataHolderPriorityPolicyFactor_OnCreated |
| | | { |
| | | #keys: '[414382.0.586001511]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebComponent_OnCreated' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | list := this.Data(); |
| | | strings := selectuniquevalues( list,Elements,e,e.Name()).Concatenate( ";" ); |
| | | DropDownStringList.Strings(strings); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: DataHolderPriorityPolicyFactor |
| | | Response OnDataChanged () id:Response_FormPriorityPolicy_DataHolderPriorityPolicyFactor_OnDataChanged |
| | | { |
| | | #keys: '[414382.0.585931640]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebComponent_OnDataChanged' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | list := this.Data(); |
| | | strings := selectuniquevalues( list,Elements,e,e.Name()).Concatenate( ";" ); |
| | | DropDownStringList.Strings(strings); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
| | |
| | | { |
| | | Body: |
| | | [* |
| | | strs := PriorityFactor::GetNameList( MacroPlan,DropDownStringList.Text()); |
| | | this.Strings(strs); |
| | | //strs := PriorityFactor::GetNameList( MacroPlan,DropDownStringList.Text()); |
| | | //this.Strings(strs); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | |
| | | { |
| | | Body: |
| | | [* |
| | | list := PriorityPolicy::GetDataByBusinessType( MacroPlan, PriorityPolicyBusinessType.Text()); |
| | | DataHolderPriorityPolicy.Data(&list); |
| | | //list := PriorityPolicy::GetDataByBusinessType( MacroPlan, PriorityPolicyBusinessType.Text()); |
| | | //DataHolderPriorityPolicy.Data(&list); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | |
| | | Taborder: 4 |
| | | ] |
| | | } |
| | | Component DataHolderPriorityPolicyBusinessType |
| | | { |
| | | #keys: '[414382.0.585736261]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'structured[BusinessType]*' |
| | | Children: |
| | | [ |
| | | Component DataExtractorPriorityPolicyBusinessType |
| | | { |
| | | #keys: '[414382.0.585207663]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'GlobalOTDTable' |
| | | Source: 'GlobalOTDTable' |
| | | Taborder: 0 |
| | | Transformation: 'BusinessType' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 5 |
| | | ] |
| | | } |
| | | Component DataHolderPriorityPolicyFactor |
| | | { |
| | | #keys: '[414382.0.585208237]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'structured[PriorityFactor]*' |
| | | Children: |
| | | [ |
| | | Component DataExtractorPriorityPolicyFactor |
| | | { |
| | | #keys: '[414382.0.585705356]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'MacroPlan' |
| | | Source: 'MacroPlan' |
| | | Taborder: 0 |
| | | Transformation: 'PriorityFactor' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 6 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component MatrixEditorShowInterfaceData |
| | | { |
| | | #keys: '[414702.0.491402111]' |
| | | BaseType: 'WebMatrixEditor' |
| | | Children: |
| | | [ |
| | | Component MatrixEditorCellShowInterfaceData |
| | | { |
| | | #keys: '[414702.0.491402112]' |
| | | BaseType: 'WebMatrixEditorCell' |
| | | Children: |
| | | [ |
| | | Component DataExtractorShowInterfaceData |
| | | { |
| | | #keys: '[414702.0.491402113]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'GlobalOTDTable' |
| | | Source: 'GlobalOTDTable' |
| | | Taborder: 0 |
| | | Transformation: 'Global_ShowCell' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Attributes: 'Value' |
| | | Column: 'Global_ShowColumn' |
| | | Row: 'Global_ShowRow' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | Component MatrixEditorRowsShowInterfaceData |
| | | { |
| | | #keys: '[414702.0.491402116]' |
| | | BaseType: 'WebMatrixEditorHeaderLevel' |
| | | Children: |
| | | [ |
| | | Component DataExtractor703 |
| | | { |
| | | #keys: '[414702.0.491402117]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'GlobalOTDTable' |
| | | Source: 'GlobalOTDTable' |
| | | Taborder: 0 |
| | | Transformation: 'Global_ShowRow' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Legend: 'RowNr' |
| | | SortCriteria: 'RowNr' |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | Component MatrixEditorColumnsShowInterfaceData |
| | | { |
| | | #keys: '[414702.0.491402120]' |
| | | BaseType: 'WebMatrixEditorHeaderLevel' |
| | | Children: |
| | | [ |
| | | Component DataExtractor253 |
| | | { |
| | | #keys: '[414702.0.491402121]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'GlobalOTDTable' |
| | | Source: 'GlobalOTDTable' |
| | | Taborder: 0 |
| | | Transformation: 'Global_ShowColumn' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Legend: 'ColumnName' |
| | | SortCriteria: 'ColumnIndex' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | #child: matrixEditorActionBarPageShowInterfaceData |
| | | #child: matrixeditorContextMenuShowInterfaceData |
| | | ] |
| | | Properties: |
| | | [ |
| | | Columns: 'MatrixEditorColumnsShowInterfaceData' |
| | | ContextMenu: 'matrixeditorContextMenuShowInterfaceData' |
| | | Rows: 'MatrixEditorRowsShowInterfaceData' |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component matrixEditorActionBarPageShowInterfaceData |
| | | { |
| | | #keys: '[414702.0.491402124]' |
| | | BaseType: 'matrixEditorActionBarPage' |
| | | Properties: |
| | | [ |
| | | Taborder: 3 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component matrixeditorContextMenuShowInterfaceData |
| | | { |
| | | #keys: '[414702.0.491402127]' |
| | | BaseType: 'matrixeditorContextMenu' |
| | | Properties: |
| | | [ |
| | | Taborder: 4 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: MacroPlannerWebApp |
| | | OrphanComponent FormShowInterfaceData |
| | | { |
| | | #keys: '[414702.0.484442828]' |
| | | BaseType: 'WebForm' |
| | | Children: |
| | | [ |
| | | #child: MatrixEditorShowInterfaceData |
| | | ] |
| | | Properties: |
| | | [ |
| | | Image: 'PROJECTOR' |
| | | Title: 'æ¥å£æ°æ®æ¾ç¤º' |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | { |
| | | viewcontents |
| | | { |
| | | forms |
| | | { |
| | | form_FormBusinessType |
| | | { |
| | | title: 'QTIANMA_JITUAN::FormBusinessType' |
| | | shown: true |
| | | componentID: 'QTIANMA_JITUAN::FormBusinessType' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 1 |
| | | rowSpan: 11 |
| | | columnPosition: 9 |
| | | columnSpan: 4 |
| | | } |
| | | components |
| | | { |
| | | FormBusinessType_ListBusinessType |
| | | { |
| | | } |
| | | FormBusinessType_DataSetLevelBusinessType |
| | | { |
| | | groupDepth: -1 |
| | | column_BusinessTypeName |
| | | { |
| | | columnId: 'BusinessTypeName' |
| | | dataPath: 'BusinessTypeName' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormPriorityResult |
| | | { |
| | | title: 'QTIANMA_JITUAN::FormPriorityResult' |
| | | shown: true |
| | | componentID: 'QTIANMA_JITUAN::FormPriorityResult' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 13 |
| | | rowSpan: 11 |
| | | columnPosition: 1 |
| | | columnSpan: 4 |
| | | } |
| | | components |
| | | { |
| | | FormPriorityResult_PanelPriorityResult |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormPriorityResult_ListPriorityResult |
| | | { |
| | | } |
| | | FormPriorityResult_DataSetLevelPriorityResult |
| | | { |
| | | groupDepth: -1 |
| | | column_SalesSegmentName |
| | | { |
| | | columnId: 'SalesSegmentName' |
| | | dataPath: 'SalesSegmentName' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: '' |
| | | 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_Customer |
| | | { |
| | | columnId: 'Customer' |
| | | dataPath: 'Customer' |
| | | dataType: 'string' |
| | | index: 3 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_BusinessType |
| | | { |
| | | columnId: 'BusinessType' |
| | | dataPath: 'BusinessType' |
| | | dataType: 'string' |
| | | index: 4 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_Quantity |
| | | { |
| | | columnId: 'Quantity' |
| | | dataPath: 'Quantity' |
| | | dataType: 'real' |
| | | index: 5 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_UnitOfMeasureName |
| | | { |
| | | columnId: 'UnitOfMeasureName' |
| | | dataPath: 'UnitOfMeasureName' |
| | | dataType: 'string' |
| | | index: 6 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_DemandDate |
| | | { |
| | | columnId: 'DemandDate' |
| | | dataPath: 'DemandDate' |
| | | dataType: 'date' |
| | | index: 7 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_PriorityResultScore |
| | | { |
| | | columnId: 'PriorityResultScore' |
| | | dataPath: 'PriorityResultScore' |
| | | dataType: 'real' |
| | | index: 8 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | } |
| | | FormPriorityResult_PanelPriorityResultDetails |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormPriorityResult_ListPriorityResultBusinessTypeDetails |
| | | { |
| | | } |
| | | FormPriorityResult_DataSetLevelPriorityResultDetails |
| | | { |
| | | groupDepth: -1 |
| | | column_SalesSegmentName |
| | | { |
| | | columnId: 'SalesSegmentName' |
| | | dataPath: 'SalesSegmentName' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_StockingPointID |
| | | { |
| | | columnId: 'StockingPointID' |
| | | dataPath: 'StockingPointID' |
| | | dataType: 'string' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_Customer |
| | | { |
| | | columnId: 'Customer' |
| | | dataPath: 'Customer' |
| | | dataType: 'string' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_BusinessType |
| | | { |
| | | columnId: 'BusinessType' |
| | | dataPath: 'BusinessType' |
| | | dataType: 'string' |
| | | index: 3 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_Quantity |
| | | { |
| | | columnId: 'Quantity' |
| | | dataPath: 'Quantity' |
| | | dataType: 'real' |
| | | index: 4 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_UnitOfMeasureName |
| | | { |
| | | columnId: 'UnitOfMeasureName' |
| | | dataPath: 'UnitOfMeasureName' |
| | | dataType: 'string' |
| | | index: 5 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_DemandDate |
| | | { |
| | | columnId: 'DemandDate' |
| | | dataPath: 'DemandDate' |
| | | dataType: 'date' |
| | | index: 6 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_PriorityResultScore |
| | | { |
| | | columnId: 'PriorityResultScore' |
| | | dataPath: 'PriorityResultScore' |
| | | dataType: 'real' |
| | | index: 7 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_PriorityPolicyName |
| | | { |
| | | columnId: 'PriorityPolicyName' |
| | | dataPath: 'PriorityPolicyName' |
| | | dataType: 'string' |
| | | index: 8 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_PriorityFactorName |
| | | { |
| | | columnId: 'PriorityFactorName' |
| | | dataPath: 'PriorityFactorName' |
| | | dataType: 'string' |
| | | index: 9 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_PriorityFactorGradingName |
| | | { |
| | | columnId: 'PriorityFactorGradingName' |
| | | dataPath: 'PriorityFactorGradingName' |
| | | dataType: 'string' |
| | | index: 10 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_PriorityTotalScore |
| | | { |
| | | columnId: 'PriorityTotalScore' |
| | | dataPath: 'PriorityTotalScore' |
| | | dataType: 'real' |
| | | index: 11 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | } |
| | | FormPriorityResult_ListPriorityResultGroupDetails |
| | | { |
| | | } |
| | | FormPriorityResult_DataSetLevelPriorityResultDetails872 |
| | | { |
| | | groupDepth: -1 |
| | | column_SalesSegmentName |
| | | { |
| | | columnId: 'SalesSegmentName' |
| | | dataPath: 'SalesSegmentName' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_StockingPointID |
| | | { |
| | | columnId: 'StockingPointID' |
| | | dataPath: 'StockingPointID' |
| | | dataType: 'string' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_Customer |
| | | { |
| | | columnId: 'Customer' |
| | | dataPath: 'Customer' |
| | | dataType: 'string' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_BusinessType |
| | | { |
| | | columnId: 'BusinessType' |
| | | dataPath: 'BusinessType' |
| | | dataType: 'string' |
| | | index: 3 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_Quantity |
| | | { |
| | | columnId: 'Quantity' |
| | | dataPath: 'Quantity' |
| | | dataType: 'real' |
| | | index: 4 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_UnitOfMeasureName |
| | | { |
| | | columnId: 'UnitOfMeasureName' |
| | | dataPath: 'UnitOfMeasureName' |
| | | dataType: 'string' |
| | | index: 5 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_DemandDate |
| | | { |
| | | columnId: 'DemandDate' |
| | | dataPath: 'DemandDate' |
| | | dataType: 'date' |
| | | index: 6 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_PriorityResultScore |
| | | { |
| | | columnId: 'PriorityResultScore' |
| | | dataPath: 'PriorityResultScore' |
| | | dataType: 'real' |
| | | index: 7 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_PriorityPolicyName |
| | | { |
| | | columnId: 'PriorityPolicyName' |
| | | dataPath: 'PriorityPolicyName' |
| | | dataType: 'string' |
| | | index: 8 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_PriorityFactorName |
| | | { |
| | | columnId: 'PriorityFactorName' |
| | | dataPath: 'PriorityFactorName' |
| | | dataType: 'string' |
| | | index: 9 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_PriorityFactorGradingName |
| | | { |
| | | columnId: 'PriorityFactorGradingName' |
| | | dataPath: 'PriorityFactorGradingName' |
| | | dataType: 'string' |
| | | index: 10 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_PriorityTotalScore |
| | | { |
| | | columnId: 'PriorityTotalScore' |
| | | dataPath: 'PriorityTotalScore' |
| | | dataType: 'real' |
| | | index: 11 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormPriorityFactor |
| | | { |
| | | title: 'QTIANMA_JITUAN::FormPriorityFactor' |
| | | shown: true |
| | | componentID: 'QTIANMA_JITUAN::FormPriorityFactor' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 1 |
| | | rowSpan: 12 |
| | | columnPosition: 1 |
| | | columnSpan: 4 |
| | | } |
| | | components |
| | | { |
| | | FormPriorityFactor_ListPriorityFactor |
| | | { |
| | | } |
| | | FormPriorityFactor_DataSetLevelPriorityFactor |
| | | { |
| | | groupDepth: -1 |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_Coefficient |
| | | { |
| | | columnId: 'Coefficient' |
| | | dataPath: 'Coefficient' |
| | | dataType: 'real' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 496 |
| | | } |
| | | column_Desc |
| | | { |
| | | columnId: 'Desc' |
| | | dataPath: 'Desc' |
| | | dataType: 'string' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormPriorityFactorGrading |
| | | { |
| | | title: 'QTIANMA_JITUAN::FormPriorityFactorGrading' |
| | | shown: true |
| | | componentID: 'QTIANMA_JITUAN::FormPriorityFactorGrading' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 1 |
| | | rowSpan: 11 |
| | | columnPosition: 5 |
| | | columnSpan: 4 |
| | | } |
| | | components |
| | | { |
| | | FormPriorityFactorGrading_ListPriorityFactorGrading |
| | | { |
| | | } |
| | | FormPriorityFactorGrading_DataSetLevelPriorityFactorGrading |
| | | { |
| | | groupDepth: -1 |
| | | column_GradingName |
| | | { |
| | | columnId: 'GradingName' |
| | | dataPath: 'GradingName' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_GradeValueStr |
| | | { |
| | | columnId: 'GradeValueStr' |
| | | dataPath: 'GradeValueStr' |
| | | dataType: 'string' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_GradeDesc |
| | | { |
| | | columnId: 'GradeDesc' |
| | | dataPath: 'GradeDesc' |
| | | dataType: 'string' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormPriorityPolicy |
| | | { |
| | | title: 'QTIANMA_JITUAN::FormPriorityPolicy' |
| | | shown: true |
| | | componentID: 'QTIANMA_JITUAN::FormPriorityPolicy' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 12 |
| | | rowSpan: 14 |
| | | columnPosition: 5 |
| | | columnSpan: 7 |
| | | } |
| | | components |
| | | { |
| | | FormPriorityPolicy_ListPriorityPolicy |
| | | { |
| | | } |
| | | FormPriorityPolicy_DataSetLevelPriorityPolicy |
| | | { |
| | | groupDepth: -1 |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_Formula |
| | | { |
| | | columnId: 'Formula' |
| | | dataPath: 'Formula' |
| | | dataType: 'string' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 433 |
| | | } |
| | | column_CalculateValue |
| | | { |
| | | columnId: 'CalculateValue' |
| | | dataPath: 'CalculateValue' |
| | | dataType: 'string' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 644 |
| | | } |
| | | column_Desc |
| | | { |
| | | columnId: 'Desc' |
| | | dataPath: 'Desc' |
| | | dataType: 'string' |
| | | index: 3 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | } |
| | | FormPriorityPolicy_PanelPriorityPolicyOperation |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormPriorityPolicy_PanelPriorityPolicyOperationButton |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormPriorityPolicy_PanelPriorityPolicyCoefficient |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | } |
| | | } |
| | | form_FormOptimizerPuzzles |
| | | { |
| | | title: 'Optimizer Puzzles' |
| | | shown: false |
| | | componentID: 'FormOptimizerPuzzles' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 0 |
| | | } |
| | | components |
| | | { |
| | | FormOptimizerPuzzles_ListOptimizerPuzzles |
| | | { |
| | | } |
| | | FormOptimizerPuzzles_DataSetLevelOptimizerPuzzles |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 109 |
| | | } |
| | | column_Description |
| | | { |
| | | columnId: 'Description' |
| | | dataPath: 'Description' |
| | | dataType: 'string' |
| | | title: 'æè¿°' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 207 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormKPI |
| | | { |
| | | title: 'KPI Dashboard' |
| | | shown: false |
| | | componentID: 'FormKPI' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 1 |
| | | } |
| | | components |
| | | { |
| | | FormKPI_PanelKPI |
| | | { |
| | | sizeRatio: 1 |
| | | activeChild: 'PanelKPIDashboard' |
| | | } |
| | | FormKPI_PanelKPIDashboard |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_PanelKPISelection |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_ListKPISelection |
| | | { |
| | | QuillViewData |
| | | { |
| | | Food_KPISetting: 'Cost of sales;Fulfillment;Fulfillment target;Inventory holding cost;Labor cost;Margin;Safety stock;Sales;Sourcing cost;Total CO2 emission;Transportation cost;Volume' |
| | | } |
| | | } |
| | | FormKPI_DataSetLevelKPISelection |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 200 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormOptimizerPuzzles_1 |
| | | { |
| | | title: 'Optimizer Puzzles' |
| | | shown: false |
| | | componentID: 'FormOptimizerPuzzles' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 2 |
| | | } |
| | | components |
| | | { |
| | | FormOptimizerPuzzles_ListOptimizerPuzzles |
| | | { |
| | | } |
| | | FormOptimizerPuzzles_DataSetLevelOptimizerPuzzles |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 109 |
| | | } |
| | | column_Description |
| | | { |
| | | columnId: 'Description' |
| | | dataPath: 'Description' |
| | | dataType: 'string' |
| | | title: 'æè¿°' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 207 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormKPI_1 |
| | | { |
| | | title: 'KPI Dashboard' |
| | | shown: false |
| | | componentID: 'FormKPI' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 3 |
| | | } |
| | | components |
| | | { |
| | | FormKPI_PanelKPI |
| | | { |
| | | sizeRatio: 1 |
| | | activeChild: 'PanelKPIDashboard' |
| | | } |
| | | FormKPI_PanelKPIDashboard |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_PanelKPISelection |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_ListKPISelection |
| | | { |
| | | QuillViewData |
| | | { |
| | | Food_KPISetting: 'Cost of sales;Fulfillment;Fulfillment target;Inventory holding cost;Labor cost;Margin;Safety stock;Sales;Sourcing cost;Total CO2 emission;Transportation cost;Volume' |
| | | } |
| | | } |
| | | FormKPI_DataSetLevelKPISelection |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 200 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormOptimizerPuzzles_2 |
| | | { |
| | | title: 'Optimizer Puzzles' |
| | | shown: false |
| | | componentID: 'FormOptimizerPuzzles' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 4 |
| | | } |
| | | components |
| | | { |
| | | FormOptimizerPuzzles_ListOptimizerPuzzles |
| | | { |
| | | } |
| | | FormOptimizerPuzzles_DataSetLevelOptimizerPuzzles |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 109 |
| | | } |
| | | column_Description |
| | | { |
| | | columnId: 'Description' |
| | | dataPath: 'Description' |
| | | dataType: 'string' |
| | | title: 'æè¿°' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 207 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormKPI_2 |
| | | { |
| | | title: 'KPI Dashboard' |
| | | shown: false |
| | | componentID: 'FormKPI' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 5 |
| | | } |
| | | components |
| | | { |
| | | FormKPI_PanelKPI |
| | | { |
| | | sizeRatio: 1 |
| | | activeChild: 'PanelKPIDashboard' |
| | | } |
| | | FormKPI_PanelKPIDashboard |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_PanelKPISelection |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_ListKPISelection |
| | | { |
| | | QuillViewData |
| | | { |
| | | Food_KPISetting: 'Cost of sales;Fulfillment;Fulfillment target;Inventory holding cost;Labor cost;Margin;Safety stock;Sales;Sourcing cost;Total CO2 emission;Transportation cost;Volume' |
| | | } |
| | | } |
| | | FormKPI_DataSetLevelKPISelection |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 200 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormOptimizerPuzzles_3 |
| | | { |
| | | title: 'Optimizer Puzzles' |
| | | shown: false |
| | | componentID: 'FormOptimizerPuzzles' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 6 |
| | | } |
| | | components |
| | | { |
| | | FormOptimizerPuzzles_ListOptimizerPuzzles |
| | | { |
| | | } |
| | | FormOptimizerPuzzles_DataSetLevelOptimizerPuzzles |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 109 |
| | | } |
| | | column_Description |
| | | { |
| | | columnId: 'Description' |
| | | dataPath: 'Description' |
| | | dataType: 'string' |
| | | title: 'æè¿°' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 207 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormKPI_3 |
| | | { |
| | | title: 'KPI Dashboard' |
| | | shown: false |
| | | componentID: 'FormKPI' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 7 |
| | | } |
| | | components |
| | | { |
| | | FormKPI_PanelKPI |
| | | { |
| | | sizeRatio: 1 |
| | | activeChild: 'PanelKPIDashboard' |
| | | } |
| | | FormKPI_PanelKPIDashboard |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_PanelKPISelection |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_ListKPISelection |
| | | { |
| | | QuillViewData |
| | | { |
| | | Food_KPISetting: 'Cost of sales;Fulfillment;Fulfillment target;Inventory holding cost;Labor cost;Margin;Safety stock;Sales;Sourcing cost;Total CO2 emission;Transportation cost;Volume' |
| | | } |
| | | } |
| | | FormKPI_DataSetLevelKPISelection |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 200 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormOptimizerPuzzles_4 |
| | | { |
| | | title: 'Optimizer Puzzles' |
| | | shown: false |
| | | componentID: 'FormOptimizerPuzzles' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 8 |
| | | } |
| | | components |
| | | { |
| | | FormOptimizerPuzzles_ListOptimizerPuzzles |
| | | { |
| | | } |
| | | FormOptimizerPuzzles_DataSetLevelOptimizerPuzzles |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 109 |
| | | } |
| | | column_Description |
| | | { |
| | | columnId: 'Description' |
| | | dataPath: 'Description' |
| | | dataType: 'string' |
| | | title: 'æè¿°' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 207 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormKPI_4 |
| | | { |
| | | title: 'KPI Dashboard' |
| | | shown: false |
| | | componentID: 'FormKPI' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 9 |
| | | } |
| | | components |
| | | { |
| | | FormKPI_PanelKPI |
| | | { |
| | | sizeRatio: 1 |
| | | activeChild: 'PanelKPIDashboard' |
| | | } |
| | | FormKPI_PanelKPIDashboard |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_PanelKPISelection |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_ListKPISelection |
| | | { |
| | | QuillViewData |
| | | { |
| | | Food_KPISetting: 'Cost of sales;Fulfillment;Fulfillment target;Inventory holding cost;Labor cost;Margin;Safety stock;Sales;Sourcing cost;Total CO2 emission;Transportation cost;Volume' |
| | | } |
| | | } |
| | | FormKPI_DataSetLevelKPISelection |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 200 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormOptimizerPuzzles_5 |
| | | { |
| | | title: 'Optimizer Puzzles' |
| | | shown: false |
| | | componentID: 'FormOptimizerPuzzles' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 10 |
| | | } |
| | | components |
| | | { |
| | | FormOptimizerPuzzles_ListOptimizerPuzzles |
| | | { |
| | | } |
| | | FormOptimizerPuzzles_DataSetLevelOptimizerPuzzles |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 109 |
| | | } |
| | | column_Description |
| | | { |
| | | columnId: 'Description' |
| | | dataPath: 'Description' |
| | | dataType: 'string' |
| | | title: 'æè¿°' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 207 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormKPI_5 |
| | | { |
| | | title: 'KPI Dashboard' |
| | | shown: false |
| | | componentID: 'FormKPI' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 11 |
| | | } |
| | | components |
| | | { |
| | | FormKPI_PanelKPI |
| | | { |
| | | sizeRatio: 1 |
| | | activeChild: 'PanelKPIDashboard' |
| | | } |
| | | FormKPI_PanelKPIDashboard |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_PanelKPISelection |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_ListKPISelection |
| | | { |
| | | QuillViewData |
| | | { |
| | | Food_KPISetting: 'Cost of sales;Fulfillment;Fulfillment target;Inventory holding cost;Labor cost;Margin;Safety stock;Sales;Sourcing cost;Total CO2 emission;Transportation cost;Volume' |
| | | } |
| | | } |
| | | FormKPI_DataSetLevelKPISelection |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 200 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormOptimizerPuzzles_6 |
| | | { |
| | | title: 'Optimizer Puzzles' |
| | | shown: false |
| | | componentID: 'FormOptimizerPuzzles' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 12 |
| | | } |
| | | components |
| | | { |
| | | FormOptimizerPuzzles_ListOptimizerPuzzles |
| | | { |
| | | } |
| | | FormOptimizerPuzzles_DataSetLevelOptimizerPuzzles |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 109 |
| | | } |
| | | column_Description |
| | | { |
| | | columnId: 'Description' |
| | | dataPath: 'Description' |
| | | dataType: 'string' |
| | | title: 'æè¿°' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 207 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormKPI_6 |
| | | { |
| | | title: 'KPI Dashboard' |
| | | shown: false |
| | | componentID: 'FormKPI' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 13 |
| | | } |
| | | components |
| | | { |
| | | FormKPI_PanelKPI |
| | | { |
| | | sizeRatio: 1 |
| | | activeChild: 'PanelKPIDashboard' |
| | | } |
| | | FormKPI_PanelKPIDashboard |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_PanelKPISelection |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_ListKPISelection |
| | | { |
| | | QuillViewData |
| | | { |
| | | Food_KPISetting: 'Cost of sales;Fulfillment;Fulfillment target;Inventory holding cost;Labor cost;Margin;Safety stock;Sales;Sourcing cost;Total CO2 emission;Transportation cost;Volume' |
| | | } |
| | | } |
| | | FormKPI_DataSetLevelKPISelection |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 200 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormOptimizerPuzzles_7 |
| | | { |
| | | title: 'Optimizer Puzzles' |
| | | shown: false |
| | | componentID: 'FormOptimizerPuzzles' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 14 |
| | | } |
| | | components |
| | | { |
| | | FormOptimizerPuzzles_ListOptimizerPuzzles |
| | | { |
| | | } |
| | | FormOptimizerPuzzles_DataSetLevelOptimizerPuzzles |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 109 |
| | | } |
| | | column_Description |
| | | { |
| | | columnId: 'Description' |
| | | dataPath: 'Description' |
| | | dataType: 'string' |
| | | title: 'æè¿°' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 207 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormKPI_7 |
| | | { |
| | | title: 'KPI Dashboard' |
| | | shown: false |
| | | componentID: 'FormKPI' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 15 |
| | | } |
| | | components |
| | | { |
| | | FormKPI_PanelKPI |
| | | { |
| | | sizeRatio: 1 |
| | | activeChild: 'PanelKPIDashboard' |
| | | } |
| | | FormKPI_PanelKPIDashboard |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_PanelKPISelection |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_ListKPISelection |
| | | { |
| | | QuillViewData |
| | | { |
| | | Food_KPISetting: 'Cost of sales;Fulfillment;Fulfillment target;Inventory holding cost;Labor cost;Margin;Safety stock;Sales;Sourcing cost;Total CO2 emission;Transportation cost;Volume' |
| | | } |
| | | } |
| | | FormKPI_DataSetLevelKPISelection |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 200 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormSanityCheck |
| | | { |
| | | title: 'Sanity Check' |
| | | shown: false |
| | | componentID: 'FormSanityCheck' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 16 |
| | | } |
| | | components |
| | | { |
| | | FormSanityCheck_PanelSanityCheckToolbar |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormSanityCheck_PanelSanityCheckContent |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormSanityCheck_PanelSanityCheckGroup |
| | | { |
| | | sizeRatio: 4 |
| | | } |
| | | FormSanityCheck_ListSanityCheckGroup |
| | | { |
| | | } |
| | | FormSanityCheck_DataSetLevelSanityCheckGroup |
| | | { |
| | | groupDepth: -1 |
| | | sort: 'DESC:IsShown,DESC:SanityCheckHighestCategory,DESC:_Expr3' |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Show |
| | | { |
| | | columnId: 'Show' |
| | | dataPath: 'Show' |
| | | dataType: 'string' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Category |
| | | { |
| | | columnId: 'Category' |
| | | dataPath: 'Category' |
| | | dataType: 'string' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Group |
| | | { |
| | | columnId: 'Group' |
| | | dataPath: 'Group' |
| | | dataType: 'string' |
| | | index: 3 |
| | | subtotals: '' |
| | | width: 270 |
| | | } |
| | | column__Expr3 |
| | | { |
| | | columnId: '_Expr3' |
| | | dataPath: '_Expr3' |
| | | dataType: 'number' |
| | | index: 4 |
| | | subtotals: '' |
| | | width: 95 |
| | | } |
| | | } |
| | | FormSanityCheck_PanelSanityCheckMessage |
| | | { |
| | | sizeRatio: 5 |
| | | } |
| | | FormSanityCheck_ListSanityCheckMessage |
| | | { |
| | | } |
| | | FormSanityCheck_DataSetLevelSanityCheckMessage |
| | | { |
| | | groupDepth: -1 |
| | | sort: 'DESC:IsShown,SanityCheckGroup.Type,SanityCheckGroup.Group,Description' |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Show |
| | | { |
| | | columnId: 'Show' |
| | | dataPath: 'Show' |
| | | dataType: 'string' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Category |
| | | { |
| | | columnId: 'Category' |
| | | dataPath: 'Category' |
| | | dataType: 'string' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Messages |
| | | { |
| | | columnId: 'Messages' |
| | | dataPath: 'Messages' |
| | | dataType: 'string' |
| | | index: 3 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Description |
| | | { |
| | | columnId: 'Description' |
| | | dataPath: 'Description' |
| | | dataType: 'string' |
| | | index: 4 |
| | | subtotals: '' |
| | | width: 585 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormOptimizerPuzzles_8 |
| | | { |
| | | title: 'Optimizer Puzzles' |
| | | shown: false |
| | | componentID: 'FormOptimizerPuzzles' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 17 |
| | | } |
| | | components |
| | | { |
| | | FormOptimizerPuzzles_ListOptimizerPuzzles |
| | | { |
| | | } |
| | | FormOptimizerPuzzles_DataSetLevelOptimizerPuzzles |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 109 |
| | | } |
| | | column_Description |
| | | { |
| | | columnId: 'Description' |
| | | dataPath: 'Description' |
| | | dataType: 'string' |
| | | title: 'æè¿°' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 207 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormKPI_8 |
| | | { |
| | | title: 'KPI Dashboard' |
| | | shown: false |
| | | componentID: 'FormKPI' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 18 |
| | | } |
| | | components |
| | | { |
| | | FormKPI_PanelKPI |
| | | { |
| | | sizeRatio: 1 |
| | | activeChild: 'PanelKPIDashboard' |
| | | } |
| | | FormKPI_PanelKPIDashboard |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_PanelKPISelection |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_ListKPISelection |
| | | { |
| | | QuillViewData |
| | | { |
| | | Food_KPISetting: 'Cost of sales;Fulfillment;Fulfillment target;Inventory holding cost;Labor cost;Margin;Safety stock;Sales;Sourcing cost;Total CO2 emission;Transportation cost;Volume' |
| | | } |
| | | } |
| | | FormKPI_DataSetLevelKPISelection |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 200 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormOptimizerPuzzles_9 |
| | | { |
| | | title: 'Optimizer Puzzles' |
| | | shown: false |
| | | componentID: 'FormOptimizerPuzzles' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 19 |
| | | } |
| | | components |
| | | { |
| | | FormOptimizerPuzzles_ListOptimizerPuzzles |
| | | { |
| | | } |
| | | FormOptimizerPuzzles_DataSetLevelOptimizerPuzzles |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 109 |
| | | } |
| | | column_Description |
| | | { |
| | | columnId: 'Description' |
| | | dataPath: 'Description' |
| | | dataType: 'string' |
| | | title: 'æè¿°' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 207 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormKPI_9 |
| | | { |
| | | title: 'KPI Dashboard' |
| | | shown: false |
| | | componentID: 'FormKPI' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 20 |
| | | } |
| | | components |
| | | { |
| | | FormKPI_PanelKPI |
| | | { |
| | | sizeRatio: 1 |
| | | activeChild: 'PanelKPIDashboard' |
| | | } |
| | | FormKPI_PanelKPIDashboard |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_PanelKPISelection |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_ListKPISelection |
| | | { |
| | | QuillViewData |
| | | { |
| | | Food_KPISetting: 'Cost of sales;Fulfillment;Fulfillment target;Inventory holding cost;Labor cost;Margin;Safety stock;Sales;Sourcing cost;Total CO2 emission;Transportation cost;Volume' |
| | | } |
| | | } |
| | | FormKPI_DataSetLevelKPISelection |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 200 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormOptimizerPuzzles_10 |
| | | { |
| | | title: 'Optimizer Puzzles' |
| | | shown: false |
| | | componentID: 'FormOptimizerPuzzles' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 21 |
| | | } |
| | | components |
| | | { |
| | | FormOptimizerPuzzles_ListOptimizerPuzzles |
| | | { |
| | | } |
| | | FormOptimizerPuzzles_DataSetLevelOptimizerPuzzles |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 109 |
| | | } |
| | | column_Description |
| | | { |
| | | columnId: 'Description' |
| | | dataPath: 'Description' |
| | | dataType: 'string' |
| | | title: 'æè¿°' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 207 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormKPI_10 |
| | | { |
| | | title: 'KPI Dashboard' |
| | | shown: false |
| | | componentID: 'FormKPI' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 22 |
| | | } |
| | | components |
| | | { |
| | | FormKPI_PanelKPI |
| | | { |
| | | sizeRatio: 1 |
| | | activeChild: 'PanelKPIDashboard' |
| | | } |
| | | FormKPI_PanelKPIDashboard |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_PanelKPISelection |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_ListKPISelection |
| | | { |
| | | QuillViewData |
| | | { |
| | | Food_KPISetting: 'Cost of sales;Fulfillment;Fulfillment target;Inventory holding cost;Labor cost;Margin;Safety stock;Sales;Sourcing cost;Total CO2 emission;Transportation cost;Volume' |
| | | } |
| | | } |
| | | FormKPI_DataSetLevelKPISelection |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 200 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormOptimizerPuzzles_11 |
| | | { |
| | | title: 'Optimizer Puzzles' |
| | | shown: false |
| | | componentID: 'FormOptimizerPuzzles' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 23 |
| | | } |
| | | components |
| | | { |
| | | FormOptimizerPuzzles_ListOptimizerPuzzles |
| | | { |
| | | } |
| | | FormOptimizerPuzzles_DataSetLevelOptimizerPuzzles |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 109 |
| | | } |
| | | column_Description |
| | | { |
| | | columnId: 'Description' |
| | | dataPath: 'Description' |
| | | dataType: 'string' |
| | | title: 'æè¿°' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 207 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormKPI_11 |
| | | { |
| | | title: 'KPI Dashboard' |
| | | shown: false |
| | | componentID: 'FormKPI' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 24 |
| | | } |
| | | components |
| | | { |
| | | FormKPI_PanelKPI |
| | | { |
| | | sizeRatio: 1 |
| | | activeChild: 'PanelKPIDashboard' |
| | | } |
| | | FormKPI_PanelKPIDashboard |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_PanelKPISelection |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_ListKPISelection |
| | | { |
| | | QuillViewData |
| | | { |
| | | Food_KPISetting: 'Cost of sales;Fulfillment;Fulfillment target;Inventory holding cost;Labor cost;Margin;Safety stock;Sales;Sourcing cost;Total CO2 emission;Transportation cost;Volume' |
| | | } |
| | | } |
| | | FormKPI_DataSetLevelKPISelection |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 200 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormOptimizerPuzzles_12 |
| | | { |
| | | title: 'Optimizer Puzzles' |
| | | shown: false |
| | | componentID: 'FormOptimizerPuzzles' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 25 |
| | | } |
| | | components |
| | | { |
| | | FormOptimizerPuzzles_ListOptimizerPuzzles |
| | | { |
| | | } |
| | | FormOptimizerPuzzles_DataSetLevelOptimizerPuzzles |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 109 |
| | | } |
| | | column_Description |
| | | { |
| | | columnId: 'Description' |
| | | dataPath: 'Description' |
| | | dataType: 'string' |
| | | title: 'æè¿°' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 207 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormKPI_12 |
| | | { |
| | | title: 'KPI Dashboard' |
| | | shown: false |
| | | componentID: 'FormKPI' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 26 |
| | | } |
| | | components |
| | | { |
| | | FormKPI_PanelKPI |
| | | { |
| | | sizeRatio: 1 |
| | | activeChild: 'PanelKPIDashboard' |
| | | } |
| | | FormKPI_PanelKPIDashboard |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_PanelKPISelection |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_ListKPISelection |
| | | { |
| | | QuillViewData |
| | | { |
| | | Food_KPISetting: 'Cost of sales;Fulfillment;Fulfillment target;Inventory holding cost;Labor cost;Margin;Safety stock;Sales;Sourcing cost;Total CO2 emission;Transportation cost;Volume' |
| | | } |
| | | } |
| | | FormKPI_DataSetLevelKPISelection |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 200 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormOptimizerPuzzles_13 |
| | | { |
| | | title: 'Optimizer Puzzles' |
| | | shown: false |
| | | componentID: 'FormOptimizerPuzzles' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 27 |
| | | } |
| | | components |
| | | { |
| | | FormOptimizerPuzzles_ListOptimizerPuzzles |
| | | { |
| | | } |
| | | FormOptimizerPuzzles_DataSetLevelOptimizerPuzzles |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 109 |
| | | } |
| | | column_Description |
| | | { |
| | | columnId: 'Description' |
| | | dataPath: 'Description' |
| | | dataType: 'string' |
| | | title: 'æè¿°' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 207 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormKPI_13 |
| | | { |
| | | title: 'KPI Dashboard' |
| | | shown: false |
| | | componentID: 'FormKPI' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 28 |
| | | } |
| | | components |
| | | { |
| | | FormKPI_PanelKPI |
| | | { |
| | | sizeRatio: 1 |
| | | activeChild: 'PanelKPIDashboard' |
| | | } |
| | | FormKPI_PanelKPIDashboard |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_PanelKPISelection |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_ListKPISelection |
| | | { |
| | | QuillViewData |
| | | { |
| | | Food_KPISetting: 'Cost of sales;Fulfillment;Fulfillment target;Inventory holding cost;Labor cost;Margin;Safety stock;Sales;Sourcing cost;Total CO2 emission;Transportation cost;Volume' |
| | | } |
| | | } |
| | | FormKPI_DataSetLevelKPISelection |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 200 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormOptimizerPuzzles_14 |
| | | { |
| | | title: 'Optimizer Puzzles' |
| | | shown: false |
| | | componentID: 'FormOptimizerPuzzles' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 29 |
| | | } |
| | | components |
| | | { |
| | | FormOptimizerPuzzles_ListOptimizerPuzzles |
| | | { |
| | | } |
| | | FormOptimizerPuzzles_DataSetLevelOptimizerPuzzles |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 109 |
| | | } |
| | | column_Description |
| | | { |
| | | columnId: 'Description' |
| | | dataPath: 'Description' |
| | | dataType: 'string' |
| | | title: 'æè¿°' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 207 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormKPI_14 |
| | | { |
| | | title: 'KPI Dashboard' |
| | | shown: false |
| | | componentID: 'FormKPI' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 30 |
| | | } |
| | | components |
| | | { |
| | | FormKPI_PanelKPI |
| | | { |
| | | sizeRatio: 1 |
| | | activeChild: 'PanelKPIDashboard' |
| | | } |
| | | FormKPI_PanelKPIDashboard |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_PanelKPISelection |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_ListKPISelection |
| | | { |
| | | QuillViewData |
| | | { |
| | | Food_KPISetting: 'Cost of sales;Fulfillment;Fulfillment target;Inventory holding cost;Labor cost;Margin;Safety stock;Sales;Sourcing cost;Total CO2 emission;Transportation cost;Volume' |
| | | } |
| | | } |
| | | FormKPI_DataSetLevelKPISelection |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 200 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormOptimizerPuzzles_15 |
| | | { |
| | | title: 'Optimizer Puzzles' |
| | | shown: false |
| | | componentID: 'FormOptimizerPuzzles' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 31 |
| | | } |
| | | components |
| | | { |
| | | FormOptimizerPuzzles_ListOptimizerPuzzles |
| | | { |
| | | } |
| | | FormOptimizerPuzzles_DataSetLevelOptimizerPuzzles |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 109 |
| | | } |
| | | column_Description |
| | | { |
| | | columnId: 'Description' |
| | | dataPath: 'Description' |
| | | dataType: 'string' |
| | | title: 'æè¿°' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 207 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormKPI_15 |
| | | { |
| | | title: 'KPI Dashboard' |
| | | shown: false |
| | | componentID: 'FormKPI' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 32 |
| | | } |
| | | components |
| | | { |
| | | FormKPI_PanelKPI |
| | | { |
| | | sizeRatio: 1 |
| | | activeChild: 'PanelKPIDashboard' |
| | | } |
| | | FormKPI_PanelKPIDashboard |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_PanelKPISelection |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_ListKPISelection |
| | | { |
| | | QuillViewData |
| | | { |
| | | Food_KPISetting: 'Cost of sales;Fulfillment;Fulfillment target;Inventory holding cost;Labor cost;Margin;Safety stock;Sales;Sourcing cost;Total CO2 emission;Transportation cost;Volume' |
| | | } |
| | | } |
| | | FormKPI_DataSetLevelKPISelection |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 200 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormSanityCheck_1 |
| | | { |
| | | title: 'Sanity Check' |
| | | shown: false |
| | | componentID: 'FormSanityCheck' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 33 |
| | | } |
| | | components |
| | | { |
| | | FormSanityCheck_PanelSanityCheckToolbar |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormSanityCheck_PanelSanityCheckContent |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormSanityCheck_PanelSanityCheckGroup |
| | | { |
| | | sizeRatio: 4 |
| | | } |
| | | FormSanityCheck_ListSanityCheckGroup |
| | | { |
| | | } |
| | | FormSanityCheck_DataSetLevelSanityCheckGroup |
| | | { |
| | | groupDepth: -1 |
| | | sort: 'DESC:IsShown,DESC:SanityCheckHighestCategory,DESC:_Expr3' |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Show |
| | | { |
| | | columnId: 'Show' |
| | | dataPath: 'Show' |
| | | dataType: 'string' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Category |
| | | { |
| | | columnId: 'Category' |
| | | dataPath: 'Category' |
| | | dataType: 'string' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Group |
| | | { |
| | | columnId: 'Group' |
| | | dataPath: 'Group' |
| | | dataType: 'string' |
| | | index: 3 |
| | | subtotals: '' |
| | | width: 270 |
| | | } |
| | | column__Expr3 |
| | | { |
| | | columnId: '_Expr3' |
| | | dataPath: '_Expr3' |
| | | dataType: 'number' |
| | | index: 4 |
| | | subtotals: '' |
| | | width: 95 |
| | | } |
| | | } |
| | | FormSanityCheck_PanelSanityCheckMessage |
| | | { |
| | | sizeRatio: 5 |
| | | } |
| | | FormSanityCheck_ListSanityCheckMessage |
| | | { |
| | | } |
| | | FormSanityCheck_DataSetLevelSanityCheckMessage |
| | | { |
| | | groupDepth: -1 |
| | | sort: 'DESC:IsShown,SanityCheckGroup.Type,SanityCheckGroup.Group,Description' |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Show |
| | | { |
| | | columnId: 'Show' |
| | | dataPath: 'Show' |
| | | dataType: 'string' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Category |
| | | { |
| | | columnId: 'Category' |
| | | dataPath: 'Category' |
| | | dataType: 'string' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Messages |
| | | { |
| | | columnId: 'Messages' |
| | | dataPath: 'Messages' |
| | | dataType: 'string' |
| | | index: 3 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Description |
| | | { |
| | | columnId: 'Description' |
| | | dataPath: 'Description' |
| | | dataType: 'string' |
| | | index: 4 |
| | | subtotals: '' |
| | | width: 585 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormKPI_16 |
| | | { |
| | | title: 'KPI Dashboard' |
| | | shown: false |
| | | componentID: 'FormKPI' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 34 |
| | | } |
| | | components |
| | | { |
| | | FormKPI_PanelKPI |
| | | { |
| | | sizeRatio: 1 |
| | | activeChild: 'PanelKPIDashboard' |
| | | } |
| | | FormKPI_PanelKPIDashboard |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_PanelKPISelection |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_ListKPISelection |
| | | { |
| | | QuillViewData |
| | | { |
| | | Metals_KPISetting: 'Fulfillment;Fulfillment target;On time fulfillment;On time in full;Sales' |
| | | Food_KPISetting: 'Fulfillment;Fulfillment target;On time fulfillment;On time in full;Sales' |
| | | Empty_KPISetting: 'Fulfillment;Fulfillment target;On time fulfillment;On time in full;Sales' |
| | | } |
| | | } |
| | | FormKPI_DataSetLevelKPISelection |
| | | { |
| | | groupDepth: -1 |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 200 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormKPI_17 |
| | | { |
| | | title: 'KPI Dashboard' |
| | | shown: false |
| | | componentID: 'FormKPI' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 35 |
| | | } |
| | | components |
| | | { |
| | | FormKPI_PanelKPI |
| | | { |
| | | sizeRatio: 1 |
| | | activeChild: 'PanelKPIDashboard' |
| | | } |
| | | FormKPI_PanelKPIDashboard |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_PanelKPISelection |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormKPI_ListKPISelection |
| | | { |
| | | QuillViewData |
| | | { |
| | | Metals_KPISetting: 'Fulfillment;Fulfillment target;On time fulfillment;On time in full;Sales' |
| | | Food_KPISetting: 'Fulfillment;Fulfillment target;On time fulfillment;On time in full;Sales' |
| | | Empty_KPISetting: 'Fulfillment;Fulfillment target;On time fulfillment;On time in full;Sales' |
| | | } |
| | | } |
| | | FormKPI_DataSetLevelKPISelection |
| | | { |
| | | groupDepth: -1 |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 200 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormPriorities |
| | | { |
| | | title: 'Priorities' |
| | | shown: true |
| | | componentID: 'FormPriorities' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 36 |
| | | } |
| | | components |
| | | { |
| | | FormPriorities_ListPriority |
| | | { |
| | | } |
| | | FormPriorities_DataSetLevelPriority |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_ImgHasSalesDemand |
| | | { |
| | | columnId: 'ImgHasSalesDemand' |
| | | dataPath: 'ImgHasSalesDemand' |
| | | dataType: 'string' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 30 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 95 |
| | | } |
| | | column_Weight |
| | | { |
| | | columnId: 'Weight' |
| | | dataPath: 'Weight' |
| | | dataType: 'real' |
| | | index: 3 |
| | | subtotals: '' |
| | | width: 95 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | userconfigurableinformation |
| | | { |
| | | } |
| | | page: '' |
| | | group: '' |
| | | index: 15 |
| | | image: '' |
| | | description: '' |
| | | } |
| | | formatversion: 2 |
| | | id: 'PriorityTest' |
| | | name: 'PriorityTest' |
| | | isglobal: false |
| | | isroot: true |
| | | } |
| | |
| | | } |
| | | } |
| | | } |
| | | form_FormCustomerAndForecastOrder |
| | | { |
| | | title: 'QTIANMA_JITUAN::FormCustomerAndForecastOrder' |
| | | shown: true |
| | | componentID: 'QTIANMA_JITUAN::FormCustomerAndForecastOrder' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 16 |
| | | rowSpan: 16 |
| | | columnPosition: 1 |
| | | columnSpan: 4 |
| | | } |
| | | components |
| | | { |
| | | FormCustomerAndForecastOrder_PanelButton |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormCustomerAndForecastOrder_ListCustomerAndFillingCapacityOrder |
| | | { |
| | | } |
| | | FormCustomerAndForecastOrder_DataSetLevelCustomerAndFillingCapacityOrder |
| | | { |
| | | groupDepth: -1 |
| | | column_VerNo |
| | | { |
| | | columnId: 'VerNo' |
| | | dataPath: 'VerNo' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_OrderID |
| | | { |
| | | columnId: 'OrderID' |
| | | dataPath: 'OrderID' |
| | | dataType: 'string' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_ProductID |
| | | { |
| | | columnId: 'ProductID' |
| | | dataPath: 'ProductID' |
| | | dataType: 'string' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_BusinessType |
| | | { |
| | | columnId: 'BusinessType' |
| | | dataPath: 'BusinessType' |
| | | dataType: 'string' |
| | | index: 3 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_Customer |
| | | { |
| | | columnId: 'Customer' |
| | | dataPath: 'Customer' |
| | | dataType: 'string' |
| | | index: 4 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_ServiceType |
| | | { |
| | | columnId: 'ServiceType' |
| | | dataPath: 'ServiceType' |
| | | dataType: 'string' |
| | | index: 5 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_Quantity |
| | | { |
| | | columnId: 'Quantity' |
| | | dataPath: 'Quantity' |
| | | dataType: 'real' |
| | | index: 6 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_UnitOfMeasureName |
| | | { |
| | | columnId: 'UnitOfMeasureName' |
| | | dataPath: 'UnitOfMeasureName' |
| | | dataType: 'string' |
| | | index: 7 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_PanelBigSheetQuantity |
| | | { |
| | | columnId: 'PanelBigSheetQuantity' |
| | | dataPath: 'PanelBigSheetQuantity' |
| | | dataType: 'real' |
| | | index: 8 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_SalesAmount |
| | | { |
| | | columnId: 'SalesAmount' |
| | | dataPath: 'SalesAmount' |
| | | dataType: 'number' |
| | | index: 9 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_ForecastDemandDate |
| | | { |
| | | columnId: 'ForecastDemandDate' |
| | | dataPath: 'ForecastDemandDate' |
| | | dataType: 'date' |
| | | index: 10 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_DemandDate |
| | | { |
| | | columnId: 'DemandDate' |
| | | dataPath: 'DemandDate' |
| | | dataType: 'date' |
| | | index: 11 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormFillingCapacityOrder |
| | | { |
| | | title: 'QTIANMA_JITUAN::FormFillingCapacityOrder' |
| | | shown: true |
| | | componentID: 'QTIANMA_JITUAN::FormFillingCapacityOrder' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 16 |
| | | rowSpan: 16 |
| | | columnPosition: 5 |
| | | columnSpan: 8 |
| | | } |
| | | components |
| | | { |
| | | FormFillingCapacityOrder_ListFillingCapacityOrder |
| | | { |
| | | } |
| | | FormFillingCapacityOrder_DataSetLevelFillingCapacityOrder |
| | | { |
| | | groupDepth: -1 |
| | | column_VerNo |
| | | { |
| | | columnId: 'VerNo' |
| | | dataPath: 'VerNo' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_ProductID |
| | | { |
| | | columnId: 'ProductID' |
| | | dataPath: 'ProductID' |
| | | dataType: 'string' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_BusinessType |
| | | { |
| | | columnId: 'BusinessType' |
| | | dataPath: 'BusinessType' |
| | | dataType: 'string' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_SalesSegmentName |
| | | { |
| | | columnId: 'SalesSegmentName' |
| | | dataPath: 'SalesSegmentName' |
| | | dataType: 'string' |
| | | index: 3 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_StockingPointID |
| | | { |
| | | columnId: 'StockingPointID' |
| | | dataPath: 'StockingPointID' |
| | | dataType: 'string' |
| | | index: 4 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_Customer |
| | | { |
| | | columnId: 'Customer' |
| | | dataPath: 'Customer' |
| | | dataType: 'string' |
| | | index: 5 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_Quantity |
| | | { |
| | | columnId: 'Quantity' |
| | | dataPath: 'Quantity' |
| | | dataType: 'real' |
| | | index: 6 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_UnitOfMeasureName |
| | | { |
| | | columnId: 'UnitOfMeasureName' |
| | | dataPath: 'UnitOfMeasureName' |
| | | dataType: 'string' |
| | | index: 7 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_PanelBigSheetQuantity |
| | | { |
| | | columnId: 'PanelBigSheetQuantity' |
| | | dataPath: 'PanelBigSheetQuantity' |
| | | dataType: 'real' |
| | | index: 8 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_SalesAmount |
| | | { |
| | | columnId: 'SalesAmount' |
| | | dataPath: 'SalesAmount' |
| | | dataType: 'number' |
| | | index: 9 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_ForecastDemandDate |
| | | { |
| | | columnId: 'ForecastDemandDate' |
| | | dataPath: 'ForecastDemandDate' |
| | | dataType: 'date' |
| | | index: 10 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_DemandDate |
| | | { |
| | | columnId: 'DemandDate' |
| | | dataPath: 'DemandDate' |
| | | dataType: 'date' |
| | | index: 11 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_OrderType |
| | | { |
| | | columnId: 'OrderType' |
| | | dataPath: 'OrderType' |
| | | dataType: 'string' |
| | | index: 12 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormPriorityPolicy |
| | | { |
| | | title: 'QTIANMA_JITUAN::FormPriorityPolicy' |
| | | shown: true |
| | | componentID: 'QTIANMA_JITUAN::FormPriorityPolicy' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 32 |
| | | rowSpan: 13 |
| | | columnPosition: 5 |
| | | columnSpan: 8 |
| | | } |
| | | components |
| | | { |
| | | FormPriorityPolicy_ListPriorityPolicy |
| | | { |
| | | } |
| | | FormPriorityPolicy_DataSetLevelPriorityPolicy |
| | | { |
| | | groupDepth: -1 |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_Formula |
| | | { |
| | | columnId: 'Formula' |
| | | dataPath: 'Formula' |
| | | dataType: 'string' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_CalculateValue |
| | | { |
| | | columnId: 'CalculateValue' |
| | | dataPath: 'CalculateValue' |
| | | dataType: 'string' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_Desc |
| | | { |
| | | columnId: 'Desc' |
| | | dataPath: 'Desc' |
| | | dataType: 'string' |
| | | index: 3 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | } |
| | | FormPriorityPolicy_PanelPriorityPolicyOperation |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormPriorityPolicy_PanelPriorityPolicyOperationButton |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormPriorityPolicy_PanelPriorityPolicyCoefficient |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | } |
| | | } |
| | | form_FormPriorityResult |
| | | { |
| | | title: 'QTIANMA_JITUAN::FormPriorityResult' |
| | | shown: true |
| | | componentID: 'QTIANMA_JITUAN::FormPriorityResult' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 45 |
| | | rowSpan: 17 |
| | | columnPosition: 1 |
| | | columnSpan: 12 |
| | | } |
| | | components |
| | | { |
| | | FormPriorityResult_PanelPriorityResult |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormPriorityResult_ListPriorityResult |
| | | { |
| | | } |
| | | FormPriorityResult_DataSetLevelPriorityResult |
| | | { |
| | | groupDepth: -1 |
| | | column_SalesSegmentName |
| | | { |
| | | columnId: 'SalesSegmentName' |
| | | dataPath: 'SalesSegmentName' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: '' |
| | | 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_Customer |
| | | { |
| | | columnId: 'Customer' |
| | | dataPath: 'Customer' |
| | | dataType: 'string' |
| | | index: 3 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_BusinessType |
| | | { |
| | | columnId: 'BusinessType' |
| | | dataPath: 'BusinessType' |
| | | dataType: 'string' |
| | | index: 4 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_Quantity |
| | | { |
| | | columnId: 'Quantity' |
| | | dataPath: 'Quantity' |
| | | dataType: 'real' |
| | | index: 5 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_UnitOfMeasureName |
| | | { |
| | | columnId: 'UnitOfMeasureName' |
| | | dataPath: 'UnitOfMeasureName' |
| | | dataType: 'string' |
| | | index: 6 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_DemandDate |
| | | { |
| | | columnId: 'DemandDate' |
| | | dataPath: 'DemandDate' |
| | | dataType: 'date' |
| | | index: 7 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_PriorityResultScore |
| | | { |
| | | columnId: 'PriorityResultScore' |
| | | dataPath: 'PriorityResultScore' |
| | | dataType: 'real' |
| | | index: 8 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | } |
| | | FormPriorityResult_PanelPriorityResultDetails |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormPriorityResult_ListPriorityResultBusinessTypeDetails |
| | | { |
| | | } |
| | | FormPriorityResult_DataSetLevelPriorityResultDetails |
| | | { |
| | | groupDepth: -1 |
| | | column_SalesSegmentName |
| | | { |
| | | columnId: 'SalesSegmentName' |
| | | dataPath: 'SalesSegmentName' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_StockingPointID |
| | | { |
| | | columnId: 'StockingPointID' |
| | | dataPath: 'StockingPointID' |
| | | dataType: 'string' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_Customer |
| | | { |
| | | columnId: 'Customer' |
| | | dataPath: 'Customer' |
| | | dataType: 'string' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_BusinessType |
| | | { |
| | | columnId: 'BusinessType' |
| | | dataPath: 'BusinessType' |
| | | dataType: 'string' |
| | | index: 3 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_Quantity |
| | | { |
| | | columnId: 'Quantity' |
| | | dataPath: 'Quantity' |
| | | dataType: 'real' |
| | | index: 4 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_UnitOfMeasureName |
| | | { |
| | | columnId: 'UnitOfMeasureName' |
| | | dataPath: 'UnitOfMeasureName' |
| | | dataType: 'string' |
| | | index: 5 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_DemandDate |
| | | { |
| | | columnId: 'DemandDate' |
| | | dataPath: 'DemandDate' |
| | | dataType: 'date' |
| | | index: 6 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_PriorityResultScore |
| | | { |
| | | columnId: 'PriorityResultScore' |
| | | dataPath: 'PriorityResultScore' |
| | | dataType: 'real' |
| | | index: 7 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_PriorityPolicyName |
| | | { |
| | | columnId: 'PriorityPolicyName' |
| | | dataPath: 'PriorityPolicyName' |
| | | dataType: 'string' |
| | | index: 8 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_PriorityFactorName |
| | | { |
| | | columnId: 'PriorityFactorName' |
| | | dataPath: 'PriorityFactorName' |
| | | dataType: 'string' |
| | | index: 9 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_PriorityFactorGradingName |
| | | { |
| | | columnId: 'PriorityFactorGradingName' |
| | | dataPath: 'PriorityFactorGradingName' |
| | | dataType: 'string' |
| | | index: 10 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_PriorityTotalScore |
| | | { |
| | | columnId: 'PriorityTotalScore' |
| | | dataPath: 'PriorityTotalScore' |
| | | dataType: 'real' |
| | | index: 11 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | } |
| | | FormPriorityResult_ListPriorityResultGroupDetails |
| | | { |
| | | } |
| | | FormPriorityResult_DataSetLevelPriorityResultDetails872 |
| | | { |
| | | groupDepth: -1 |
| | | column_SalesSegmentName |
| | | { |
| | | columnId: 'SalesSegmentName' |
| | | dataPath: 'SalesSegmentName' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_StockingPointID |
| | | { |
| | | columnId: 'StockingPointID' |
| | | dataPath: 'StockingPointID' |
| | | dataType: 'string' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_Customer |
| | | { |
| | | columnId: 'Customer' |
| | | dataPath: 'Customer' |
| | | dataType: 'string' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_BusinessType |
| | | { |
| | | columnId: 'BusinessType' |
| | | dataPath: 'BusinessType' |
| | | dataType: 'string' |
| | | index: 3 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_Quantity |
| | | { |
| | | columnId: 'Quantity' |
| | | dataPath: 'Quantity' |
| | | dataType: 'real' |
| | | index: 4 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_UnitOfMeasureName |
| | | { |
| | | columnId: 'UnitOfMeasureName' |
| | | dataPath: 'UnitOfMeasureName' |
| | | dataType: 'string' |
| | | index: 5 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_DemandDate |
| | | { |
| | | columnId: 'DemandDate' |
| | | dataPath: 'DemandDate' |
| | | dataType: 'date' |
| | | index: 6 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_PriorityResultScore |
| | | { |
| | | columnId: 'PriorityResultScore' |
| | | dataPath: 'PriorityResultScore' |
| | | dataType: 'real' |
| | | index: 7 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_PriorityPolicyName |
| | | { |
| | | columnId: 'PriorityPolicyName' |
| | | dataPath: 'PriorityPolicyName' |
| | | dataType: 'string' |
| | | index: 8 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_PriorityFactorName |
| | | { |
| | | columnId: 'PriorityFactorName' |
| | | dataPath: 'PriorityFactorName' |
| | | dataType: 'string' |
| | | index: 9 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_PriorityFactorGradingName |
| | | { |
| | | columnId: 'PriorityFactorGradingName' |
| | | dataPath: 'PriorityFactorGradingName' |
| | | dataType: 'string' |
| | | index: 10 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_PriorityTotalScore |
| | | { |
| | | columnId: 'PriorityTotalScore' |
| | | dataPath: 'PriorityTotalScore' |
| | | dataType: 'real' |
| | | index: 11 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormPriorityFactor |
| | | { |
| | | title: 'QTIANMA_JITUAN::FormPriorityFactor' |
| | | shown: true |
| | | componentID: 'QTIANMA_JITUAN::FormPriorityFactor' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 37 |
| | | rowSpan: 8 |
| | | columnPosition: 1 |
| | | columnSpan: 4 |
| | | } |
| | | components |
| | | { |
| | | FormPriorityFactor_ListPriorityFactor |
| | | { |
| | | } |
| | | FormPriorityFactor_DataSetLevelPriorityFactor |
| | | { |
| | | groupDepth: -1 |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_Coefficient |
| | | { |
| | | columnId: 'Coefficient' |
| | | dataPath: 'Coefficient' |
| | | dataType: 'real' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_Desc |
| | | { |
| | | columnId: 'Desc' |
| | | dataPath: 'Desc' |
| | | dataType: 'string' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormPriorityFactorGrading |
| | | { |
| | | title: 'QTIANMA_JITUAN::FormPriorityFactorGrading' |
| | | shown: true |
| | | componentID: 'QTIANMA_JITUAN::FormPriorityFactorGrading' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 32 |
| | | rowSpan: 5 |
| | | columnPosition: 1 |
| | | columnSpan: 4 |
| | | } |
| | | components |
| | | { |
| | | FormPriorityFactorGrading_ListPriorityFactorGrading |
| | | { |
| | | } |
| | | FormPriorityFactorGrading_DataSetLevelPriorityFactorGrading |
| | | { |
| | | groupDepth: -1 |
| | | column_GradingName |
| | | { |
| | | columnId: 'GradingName' |
| | | dataPath: 'GradingName' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_GradeValueStr |
| | | { |
| | | columnId: 'GradeValueStr' |
| | | dataPath: 'GradeValueStr' |
| | | dataType: 'string' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_GradeDesc |
| | | { |
| | | columnId: 'GradeDesc' |
| | | dataPath: 'GradeDesc' |
| | | dataType: 'string' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | userconfigurableinformation |
| | | { |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | { |
| | | viewcontents |
| | | { |
| | | forms |
| | | { |
| | | form_FormInterfaceTest |
| | | { |
| | | title: 'QTIANMA_JITUAN::FormInterfaceTest' |
| | | shown: true |
| | | componentID: 'QTIANMA_JITUAN::FormInterfaceTest' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 1 |
| | | rowSpan: 10 |
| | | columnPosition: 1 |
| | | columnSpan: 6 |
| | | } |
| | | components |
| | | { |
| | | FormInterfaceTest_PanelInterfaceOptions |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormInterfaceTest_PanelInterfaceTest |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormInterfaceTest_PanelInterfaceTest981 |
| | | { |
| | | sizeRatio: 1 |
| | | } |
| | | FormInterfaceTest_ListInterfaceTest |
| | | { |
| | | } |
| | | FormInterfaceTest_DataSetLevelInterfaceTest |
| | | { |
| | | groupDepth: -1 |
| | | column_BrokerName |
| | | { |
| | | columnId: 'BrokerName' |
| | | dataPath: 'BrokerName' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_ElementTotal |
| | | { |
| | | columnId: 'ElementTotal' |
| | | dataPath: 'ElementTotal' |
| | | dataType: 'number' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_ErrorDateTime |
| | | { |
| | | columnId: 'ErrorDateTime' |
| | | dataPath: 'ErrorDateTime' |
| | | dataType: 'string' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_ErrorMessage |
| | | { |
| | | columnId: 'ErrorMessage' |
| | | dataPath: 'ErrorMessage' |
| | | dataType: 'string' |
| | | index: 3 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_ErrorNo |
| | | { |
| | | columnId: 'ErrorNo' |
| | | dataPath: 'ErrorNo' |
| | | dataType: 'number' |
| | | index: 4 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_IsSuccess |
| | | { |
| | | columnId: 'IsSuccess' |
| | | dataPath: 'IsSuccess' |
| | | dataType: 'boolean' |
| | | index: 5 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | index: 6 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_SuccessDateTime |
| | | { |
| | | columnId: 'SuccessDateTime' |
| | | dataPath: 'SuccessDateTime' |
| | | dataType: 'string' |
| | | index: 7 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormBusinessType |
| | | { |
| | | title: 'QTIANMA_JITUAN::FormBusinessType' |
| | | shown: true |
| | | componentID: 'QTIANMA_JITUAN::FormBusinessType' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 11 |
| | | rowSpan: 6 |
| | | columnPosition: 1 |
| | | columnSpan: 6 |
| | | } |
| | | components |
| | | { |
| | | FormBusinessType_ListBusinessType |
| | | { |
| | | } |
| | | FormBusinessType_DataSetLevelBusinessType |
| | | { |
| | | groupDepth: -1 |
| | | column_BusinessTypeName |
| | | { |
| | | columnId: 'BusinessTypeName' |
| | | dataPath: 'BusinessTypeName' |
| | | dataType: 'string' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormShowInterfaceData |
| | | { |
| | | title: 'QTIANMA_JITUAN::FormShowInterfaceData' |
| | | shown: true |
| | | componentID: 'QTIANMA_JITUAN::FormShowInterfaceData' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 1 |
| | | rowSpan: 16 |
| | | columnPosition: 7 |
| | | columnSpan: 6 |
| | | } |
| | | components: null |
| | | } |
| | | } |
| | | userconfigurableinformation |
| | | { |
| | | } |
| | | image: 'SKIN_TIGER' |
| | | page: '' |
| | | group: '' |
| | | index: 0 |
| | | description: '' |
| | | } |
| | | formatversion: 2 |
| | | id: 'æ¥å£æµè¯' |
| | | name: 'æ¥å£æµè¯' |
| | | isglobal: false |
| | | isroot: true |
| | | } |