Merge branch 'dev_yy' into dev
| | |
| | | **/LibUserSettings/** |
| | | |
| | | /.idea |
| | | _Main/UI/MacroPlannerWebApp/_ROOT_Project_MacroPlannerWebApp.qp |
| | | *.properties |
| | |
| | | { |
| | | DefaultText: 'Revert' |
| | | } |
| | | InfoMessage Scenario_General_IsReleased |
| | | { |
| | | DefaultText: 'Not allowed on a released scenario' |
| | | } |
| | | InfoMessage Strategy_CampaignOptimizer_DisableTooltip |
| | | { |
| | | DefaultText: 'When disabled, the optimizer is only allowed to replan the quantities of the campaigns based on the constraints of the campaigns created manually.' |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute IsReleased |
| | | { |
| | | #keys: '3[412960.0.172790038][412960.0.172790037][412960.0.172790039]' |
| | | Description: 'è¯¥çæ¬æ¯å¦å·²åå¸' |
| | | ValueType: Boolean |
| | | InterfaceProperties { Accessibility: 'Module' } |
| | | } |
| | |
| | | { |
| | | feedback_o := Translations::Scenario_General_IsDeleted(); |
| | | } |
| | | else if( this.IsReleased() ){ |
| | | feedback_o := Translations::Scenario_General_IsReleased(); |
| | | } |
| | | |
| | | return feedback_o = ''; |
| | | *] |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method SetReleased |
| | | { |
| | | Description: '设置æåºæ¯çåå¸ç¶æ' |
| | | IsAbstract: true |
| | | TextBody: |
| | | [* |
| | | // Administrator Sep-15-2023 (created) |
| | | this.IsReleased( true ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | MethodOverride SetReleased |
| | | { |
| | | TextBody: 'this.IsReleased( true );' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | EDIBroker Broker_OTD_VersionControl |
| | | { |
| | | MDSDefinition: GlobalOTDTable |
| | | TimeZone: 'ACT' |
| | | UseOSTimeZone: false |
| | | EDIModelLink.Destination MappingVersionControl |
| | | { |
| | | EDIMLTable MappingVersionControl |
| | | { |
| | | PrimaryKeyColumns: EndTime |
| | | PrimaryKeyColumns: ProductID |
| | | PrimaryKeyColumns: StartTime |
| | | PrimaryKeyColumns: StockingPointID |
| | | PrimaryKeyColumns: VersionID |
| | | TargetType: MappingVersionControl |
| | | TypeIndex: TypeIndexVersionControl |
| | | EDIMLColumn CreateTime { Attribute: CreateTime ValueType: DateTime } |
| | | EDIMLColumn DataFrom { Attribute: DataFrom ValueType: String } |
| | | EDIMLColumn DataTo { Attribute: DataTo ValueType: String } |
| | | EDIMLColumn EndTime { Attribute: EndTime ValueType: DateTime } |
| | | EDIMLColumn ProductID { Attribute: ProductID ValueType: String } |
| | | EDIMLColumn Qty { Attribute: Qty ValueType: Real } |
| | | EDIMLColumn ReleaseTime { Attribute: ReleaseTime ValueType: DateTime } |
| | | EDIMLColumn StartTime { Attribute: StartTime ValueType: DateTime } |
| | | EDIMLColumn StockingPointID { Attribute: StockingPointID ValueType: String } |
| | | EDIMLColumn User { Attribute: User ValueType: String } |
| | | EDIMLColumn VersionID { Attribute: VersionID ValueType: String } |
| | | EDIMLColumn VersionName { Attribute: VersionName ValueType: String } |
| | | } |
| | | } |
| | | EDIODBCLink.Source MID_VERSIONCONTROL |
| | | { |
| | | DataIntegrityStrategy: 'Disabled' |
| | | SettingsEngineLink: 'domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle' |
| | | EDIODBCLinkTable MID_VERSIONCONTROL |
| | | { |
| | | OthersMayCreateTable: true |
| | | OthersMayDeleteRow: true |
| | | OthersMayDropTable: true |
| | | OthersMayFlushTable: true |
| | | OthersMayInsertRow: true |
| | | Parameters: '/owner="TIANMA"' |
| | | PrimaryKeyColumns: ENDTIME |
| | | PrimaryKeyColumns: ID |
| | | PrimaryKeyColumns: PRODUCTID |
| | | PrimaryKeyColumns: STARTTIME |
| | | PrimaryKeyColumns: STOCKINGPOINTID |
| | | RecordModificationHintStrategy: 'None' |
| | | EDIODBCLinkColumn CREATETIME |
| | | { |
| | | OthersMayUpdateColumn: true |
| | | ValueType: DateTime |
| | | } |
| | | EDIODBCLinkColumn DATAFROM |
| | | { |
| | | OthersMayUpdateColumn: true |
| | | ValueType: String |
| | | } |
| | | EDIODBCLinkColumn DATATO |
| | | { |
| | | OthersMayUpdateColumn: true |
| | | ValueType: String |
| | | } |
| | | EDIODBCLinkColumn ENDTIME |
| | | { |
| | | OthersMayUpdateColumn: true |
| | | ValueType: DateTime |
| | | } |
| | | EDIODBCLinkColumn ID |
| | | { |
| | | OthersMayUpdateColumn: true |
| | | ValueType: String |
| | | } |
| | | EDIODBCLinkColumn NAME |
| | | { |
| | | OthersMayUpdateColumn: true |
| | | ValueType: String |
| | | } |
| | | EDIODBCLinkColumn PRODUCTID |
| | | { |
| | | OthersMayUpdateColumn: true |
| | | ValueType: String |
| | | } |
| | | EDIODBCLinkColumn QTY |
| | | { |
| | | OthersMayUpdateColumn: true |
| | | ValueType: Real |
| | | } |
| | | EDIODBCLinkColumn RELEASETIME |
| | | { |
| | | OthersMayUpdateColumn: true |
| | | ValueType: DateTime |
| | | } |
| | | EDIODBCLinkColumn STARTTIME |
| | | { |
| | | OthersMayUpdateColumn: true |
| | | ValueType: DateTime |
| | | } |
| | | EDIODBCLinkColumn STOCKINGPOINTID |
| | | { |
| | | OthersMayUpdateColumn: true |
| | | ValueType: String |
| | | } |
| | | EDIODBCLinkColumn USER |
| | | { |
| | | OthersMayUpdateColumn: true |
| | | ValueType: String |
| | | } |
| | | } |
| | | } |
| | | EDITransformation.Transformation TransformationVersionControl |
| | | { |
| | | EDITableTransformation |
| | | { |
| | | InputTable: MID_VERSIONCONTROL |
| | | OutputTable: MappingVersionControl |
| | | EDIColumnMatch { InputColumn: CREATETIME OutputColumn: CreateTime } |
| | | EDIColumnMatch { InputColumn: DATAFROM OutputColumn: DataFrom } |
| | | EDIColumnMatch { InputColumn: DATATO OutputColumn: DataTo } |
| | | EDIColumnMatch { InputColumn: ENDTIME OutputColumn: EndTime } |
| | | EDIColumnMatch { InputColumn: ID OutputColumn: VersionID } |
| | | EDIColumnMatch { InputColumn: NAME OutputColumn: VersionName } |
| | | EDIColumnMatch { InputColumn: PRODUCTID OutputColumn: ProductID } |
| | | EDIColumnMatch { InputColumn: QTY OutputColumn: Qty } |
| | | EDIColumnMatch { InputColumn: RELEASETIME OutputColumn: ReleaseTime } |
| | | EDIColumnMatch { InputColumn: STARTTIME OutputColumn: StartTime } |
| | | EDIColumnMatch { InputColumn: STOCKINGPOINTID OutputColumn: StockingPointID } |
| | | EDIColumnMatch { InputColumn: USER OutputColumn: User } |
| | | } |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | EDIBroker Broker_OTD_VersionControlToDB |
| | | { |
| | | MDSDefinition: GlobalOTDTable |
| | | TimeZone: 'ACT' |
| | | UseOSTimeZone: false |
| | | EDIModelLink.Source MappingVersionControlToDB |
| | | { |
| | | EDIMLTable MappingVersionControl |
| | | { |
| | | PrimaryKeyColumns: EndTime |
| | | PrimaryKeyColumns: ProductID |
| | | PrimaryKeyColumns: StartTime |
| | | PrimaryKeyColumns: StockingPointID |
| | | PrimaryKeyColumns: VersionID |
| | | TargetType: MappingVersionControl |
| | | TypeIndex: TypeIndexVersionControl |
| | | EDIMLColumn CreateTime { Attribute: CreateTime ValueType: DateTime } |
| | | EDIMLColumn DataFrom { Attribute: DataFrom ValueType: String } |
| | | EDIMLColumn DataTo { Attribute: DataTo ValueType: String } |
| | | EDIMLColumn EndTime { Attribute: EndTime ValueType: DateTime } |
| | | EDIMLColumn ProductID { Attribute: ProductID ValueType: String } |
| | | EDIMLColumn Qty { Attribute: Qty ValueType: Real } |
| | | EDIMLColumn ReleaseTime { Attribute: ReleaseTime ValueType: DateTime } |
| | | EDIMLColumn StartTime { Attribute: StartTime ValueType: DateTime } |
| | | EDIMLColumn StockingPointID { Attribute: StockingPointID ValueType: String } |
| | | EDIMLColumn User { Attribute: User ValueType: String } |
| | | EDIMLColumn VersionID { Attribute: VersionID ValueType: String } |
| | | EDIMLColumn VersionName { Attribute: VersionName ValueType: String } |
| | | } |
| | | } |
| | | EDIODBCLink.Destination MID_VERSIONCONTROLTODB |
| | | { |
| | | DataIntegrityStrategy: 'Disabled' |
| | | SettingsEngineLink: 'domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle' |
| | | EDIODBCLinkTable MID_VERSIONCONTROL |
| | | { |
| | | MayCreateTable: true |
| | | MayDeleteRow: true |
| | | MayDropTable: true |
| | | MayFlushTable: true |
| | | MayInsertRow: true |
| | | Parameters: '/owner="TIANMA"' |
| | | PrimaryKeyColumns: ENDTIME |
| | | PrimaryKeyColumns: ID |
| | | PrimaryKeyColumns: PRODUCTID |
| | | PrimaryKeyColumns: STARTTIME |
| | | PrimaryKeyColumns: STOCKINGPOINTID |
| | | RecordModificationHintStrategy: 'None' |
| | | EDIODBCLinkColumn CREATETIME |
| | | { |
| | | MayUpdateColumn: true |
| | | ValueType: DateTime |
| | | } |
| | | EDIODBCLinkColumn DATAFROM |
| | | { |
| | | MayUpdateColumn: true |
| | | ValueType: String |
| | | } |
| | | EDIODBCLinkColumn DATATO |
| | | { |
| | | MayUpdateColumn: true |
| | | ValueType: String |
| | | } |
| | | EDIODBCLinkColumn ENDTIME |
| | | { |
| | | MayUpdateColumn: true |
| | | ValueType: DateTime |
| | | } |
| | | EDIODBCLinkColumn ID |
| | | { |
| | | MayUpdateColumn: true |
| | | ValueType: String |
| | | } |
| | | EDIODBCLinkColumn NAME |
| | | { |
| | | MayUpdateColumn: true |
| | | ValueType: String |
| | | } |
| | | EDIODBCLinkColumn PRODUCTID |
| | | { |
| | | MayUpdateColumn: true |
| | | ValueType: String |
| | | } |
| | | EDIODBCLinkColumn QTY |
| | | { |
| | | MayUpdateColumn: true |
| | | ValueType: Real |
| | | } |
| | | EDIODBCLinkColumn RELEASETIME |
| | | { |
| | | MayUpdateColumn: true |
| | | ValueType: DateTime |
| | | } |
| | | EDIODBCLinkColumn STARTTIME |
| | | { |
| | | MayUpdateColumn: true |
| | | ValueType: DateTime |
| | | } |
| | | EDIODBCLinkColumn STOCKINGPOINTID |
| | | { |
| | | MayUpdateColumn: true |
| | | ValueType: String |
| | | } |
| | | EDIODBCLinkColumn USER |
| | | { |
| | | MayUpdateColumn: true |
| | | ValueType: String |
| | | } |
| | | } |
| | | } |
| | | EDITransformation.Transformation TransformationVersionControlToDB |
| | | { |
| | | EDITableTransformation |
| | | { |
| | | InputTable: MappingVersionControl |
| | | OutputTable: MID_VERSIONCONTROL |
| | | EDIColumnMatch { InputColumn: CreateTime OutputColumn: CREATETIME } |
| | | EDIColumnMatch { InputColumn: DataFrom OutputColumn: DATAFROM } |
| | | EDIColumnMatch { InputColumn: DataTo OutputColumn: DATATO } |
| | | EDIColumnMatch { InputColumn: EndTime OutputColumn: ENDTIME } |
| | | EDIColumnMatch { InputColumn: ProductID OutputColumn: PRODUCTID } |
| | | EDIColumnMatch { InputColumn: Qty OutputColumn: QTY } |
| | | EDIColumnMatch { InputColumn: ReleaseTime OutputColumn: RELEASETIME } |
| | | EDIColumnMatch { InputColumn: StartTime OutputColumn: STARTTIME } |
| | | EDIColumnMatch { InputColumn: StockingPointID OutputColumn: STOCKINGPOINTID } |
| | | EDIColumnMatch { InputColumn: User OutputColumn: USER } |
| | | EDIColumnMatch { InputColumn: VersionID OutputColumn: ID } |
| | | EDIColumnMatch { InputColumn: VersionName OutputColumn: NAME } |
| | | } |
| | | } |
| | | } |
| | |
| | | { |
| | | DefaultText: 'Please input validate value !' |
| | | } |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation MappingVersionControl_GlobalOTDTable_GlobalOTDTable_MappingVersionControl |
| | | { |
| | | #keys: '1[412960.0.150120043]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide GlobalOTDTable |
| | | { |
| | | #keys: '3[412960.0.150120045][412960.0.150120044][412960.0.150120046]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: MappingVersionControl |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide MappingVersionControl |
| | | { |
| | | #keys: '3[412960.0.150120048][412960.0.150120047][412960.0.150120049]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: GlobalOTDTable |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation OrderLockLog_MacroPlan_MacroPlan_OrderLockLog |
| | | { |
| | | #keys: '1[412960.0.217504333]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide MacroPlan |
| | | { |
| | | #keys: '3[412960.0.217504335][412960.0.217504334][412960.0.217504336]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: OrderLockLog |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide OrderLockLog |
| | | { |
| | | #keys: '3[412960.0.217504338][412960.0.217504337][412960.0.217504339]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: MacroPlan |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation VersionControl_GlobalOTDTable_GlobalOTDTable_VersionControl |
| | | { |
| | | #keys: '1[412960.0.134860006]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide GlobalOTDTable |
| | | { |
| | | #keys: '3[412960.0.134860008][412960.0.134860007][412960.0.134860009]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: VersionControl |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide VersionControl |
| | | { |
| | | #keys: '3[412960.0.134860011][412960.0.134860010][412960.0.134860012]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: GlobalOTDTable |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation VersionStatusDetail_VersionStatus_VersionStatus_VersionStatusDetail |
| | | { |
| | | #keys: '1[412960.0.143214355]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide VersionStatus |
| | | { |
| | | #keys: '3[412960.0.143214357][412960.0.143214356][412960.0.143214358]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: VersionStatusDetail |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide VersionStatusDetail |
| | | { |
| | | #keys: '3[412960.0.143214360][412960.0.143214359][412960.0.143214361]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: VersionStatus |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation VersionStatus_GlobalOTDTable_GlobalOTDTable_VersionStatus |
| | | { |
| | | #keys: '1[412960.0.134830056]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide GlobalOTDTable |
| | | { |
| | | #keys: '3[412960.0.134830058][412960.0.134830057][412960.0.134830059]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: VersionStatus |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide VersionStatus |
| | | { |
| | | #keys: '3[412960.0.134830061][412960.0.134830060][412960.0.134830062]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: GlobalOTDTable |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute LastModify |
| | | { |
| | | #keys: '3[412960.0.217504307][412960.0.217504306][412960.0.217504308]' |
| | | Description: 'æåä¿®æ¹äºº' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute LastModifyTime |
| | | { |
| | | #keys: '3[412960.0.217504317][412960.0.217504316][412960.0.217504318]' |
| | | Description: 'æåæä½æ¶é´' |
| | | ValueType: DateTime |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GetBusinessTypeName ( |
| | | String name |
| | | ) as String |
| | | { |
| | | Description: 'ä»äºä¸é¨ä¸æåç§°å°ç¼©åç转æ¢' |
| | | TextBody: |
| | | [* |
| | | // Administrator Sep-13-2023 (created) |
| | | result := ""; |
| | | if( name = "éå¢" ){ |
| | | result := "TM"; |
| | | }else if( name = "ææºäºä¸é¨" ){ |
| | | result := "SJ"; |
| | | }else if( name = "ITäºä¸é¨" ){ |
| | | result := "IT"; |
| | | }else if( name = "车载äºä¸é¨" ){ |
| | | result := "CZ"; |
| | | }else if( name = "汽车çµåäºä¸é¨" ){ |
| | | result := "QD"; |
| | | }else if( name = "䏿¾äºä¸é¨" ){ |
| | | result := "ZX"; |
| | | }else if( name = "ç©¿æ´äºä¸é¨" ){ |
| | | result := "CD"; |
| | | }else if( name = "颿¿" ){ |
| | | result := "MB"; |
| | | } |
| | | |
| | | return result; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GetNextCalType ( |
| | | String latestcaltype, |
| | | String businesstype |
| | | ) as String |
| | | { |
| | | Description: 'è·åä¸ä¸ä¸ªè®¡ç®æ¥éª¤' |
| | | TextBody: |
| | | [* |
| | | // Administrator Sep-13-2023 (created) |
| | | result := ""; |
| | | if( businesstype = "TM"){ |
| | | if( latestcaltype = "" ){ |
| | | result := "SCENE"; |
| | | }else if( latestcaltype = "SCENE" ){ |
| | | result := "TM_SOP_R1"; |
| | | }else if( latestcaltype = "TM_SOP_R1" ){ |
| | | result := "TM_SOP_R2"; |
| | | }else if( latestcaltype = "TM_SOP_R2" ){ |
| | | error( "This version is ended" ); |
| | | } |
| | | }else{ |
| | | if( latestcaltype = "TM_SOP_R1" ){ |
| | | result := businesstype + "_SOP_R1"; |
| | | }else if( latestcaltype = "TM_SOP_R2" ){ |
| | | result := businesstype + "_MPS_R1"; |
| | | }else if( latestcaltype = businesstype + "_MPS_R1" ){ |
| | | result := businesstype + "_MRP_R1"; |
| | | }else if( latestcaltype = businesstype + "_MRP_R1" ){ |
| | | result := businesstype + "_MPS_R2"; |
| | | }else if( latestcaltype = businesstype + "_MPS_R2" ){ |
| | | result := businesstype + "_MRP_R2"; |
| | | }else if( latestcaltype = businesstype + "_MRP_R2" ){ |
| | | error( "This version is ended" ); |
| | | } |
| | | } |
| | | |
| | | return result; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GetOutputVersionData ( |
| | | GlobalOTDTable owner, |
| | | MacroPlan macroplan, |
| | | String businessname |
| | | ) |
| | | { |
| | | Description: 'å½¢æå¹¶åéçæ¬æ°æ®' |
| | | TextBody: |
| | | [* |
| | | // Administrator Sep-14-2023 (created) |
| | | businesstype := GlobalOTDTable::GetBusinessTypeName( businessname ); |
| | | |
| | | // Clean exist data |
| | | traverse( owner, MappingVersionControl, mpc, true ){ |
| | | mpc.Delete(); |
| | | } |
| | | |
| | | // Get Latest version |
| | | latestversion := VersionControl::FindLatestUpdateVersion( owner, businesstype ); |
| | | createtime := latestversion.CreateTime(); |
| | | datafrom := businesstype; |
| | | releasetime := latestversion.ReleaseTime(); |
| | | versionid := latestversion.VersionID() + "-" + latestversion.CalType(); |
| | | info( versionid ); |
| | | versionname := latestversion.LongVersionName(); |
| | | user := latestversion.User(); |
| | | |
| | | // Get Data list to deal |
| | | listtodeal := selectset( macroplan, |
| | | Product_MP.ProductInStockingPoint_MP.ProductInStockingPointInPeriod, |
| | | pispip, |
| | | pispip.SalesDemandQuantity() > 0 ); |
| | | |
| | | if( latestversion.CalType() = "TM_SOP_R1" ){ |
| | | listtodeal := selectset( macroplan, |
| | | Product_MP.ProductInStockingPoint_MP.ProductInStockingPointInPeriod, |
| | | pispip, |
| | | pispip.ProductInStockingPoint_MP().ProductID().StartsWith( "C1" ) ); |
| | | } |
| | | |
| | | traverse( listtodeal, Elements, item, true ){ |
| | | endtime := item.End(); |
| | | productid := item.ProductInStockingPoint_MP().ProductID(); |
| | | qty := item.SalesDemandQuantity(); |
| | | starttime := item.Start(); |
| | | stockingpointid := item.StockingPointInPeriod().StockingPointID(); |
| | | datato := "TM"; |
| | | if( businesstype <> "TM" ){ |
| | | datato := "TM"; |
| | | } |
| | | owner.MappingVersionControl( relnew, |
| | | CreateTime := createtime, |
| | | DataFrom := datafrom, |
| | | DataTo := datato, |
| | | EndTime := endtime, |
| | | ProductID := productid, |
| | | Qty := qty, |
| | | ReleaseTime := releasetime, |
| | | StartTime := starttime, |
| | | StockingPointID := stockingpointid, |
| | | User := user, |
| | | VersionID := versionid, |
| | | VersionName := versionname ) |
| | | } |
| | | |
| | | // Send Data To DB |
| | | owner.Broker_OTD_VersionControlToDB().Execute(); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GetVersionData ( |
| | | GlobalOTDTable owner, |
| | | String businessname |
| | | ) |
| | | { |
| | | Description: 'æ½åå¹¶å¤ççæ¬æ°æ®' |
| | | TextBody: |
| | | [* |
| | | // Administrator Sep-14-2023 (created) |
| | | businesstype := GlobalOTDTable::GetBusinessTypeName( businessname ); |
| | | releasetime := DateTime::ActualTime(); |
| | | // Clean exist data |
| | | traverse( owner, MappingVersionControl, mpc, true ){ |
| | | mpc.Delete(); |
| | | } |
| | | |
| | | // Get Data From DB |
| | | owner.Broker_OTD_VersionControl().Execute(); |
| | | |
| | | // Get Data list to deal |
| | | listtodeal := selectset( owner, MappingVersionControl, item, item.DataTo() = businesstype ); |
| | | |
| | | traverse( listtodeal, Elements, item, true ){ |
| | | versionid := item.VersionID(); |
| | | existversion := VersionControl::FindByFullVersionID( owner, versionid ); |
| | | if( isnull( existversion ) ){ |
| | | longversionname := item.VersionName(); |
| | | longversionnamelist := longversionname.Tokenize( "-" ); |
| | | shortversionname := longversionnamelist.Element( longversionnamelist.Size() - 1 ); |
| | | caltype := shortversionname.SubString( 0, 10 ); |
| | | shortversionid := versionid.ReplaceAll( "-" + caltype, "" ); |
| | | newversioncontrol := VersionControl::Create( owner, |
| | | item.DataFrom(), |
| | | caltype, |
| | | item.CreateTime(), |
| | | shortversionid, |
| | | longversionname, |
| | | shortversionname, |
| | | item.User() ); |
| | | newversioncontrol.IsReleased( true ); |
| | | newversioncontrol.ReleaseTime( releasetime ); |
| | | } |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute CreateTime |
| | | { |
| | | #keys: '3[412960.0.150120147][412960.0.150120146][412960.0.150120148]' |
| | | Description: 'å建æ¶é´' |
| | | ValueType: DateTime |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute DataFrom |
| | | { |
| | | #keys: '3[412960.0.150120067][412960.0.150120066][412960.0.150120068]' |
| | | Description: 'æ°æ®ååºçé¨é¨åç§°' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute DataTo |
| | | { |
| | | #keys: '3[412960.0.150120077][412960.0.150120076][412960.0.150120078]' |
| | | Description: 'æ¥æ¶æ°æ®çé¨é¨åç§°' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute EndTime |
| | | { |
| | | #keys: '3[412960.0.150120127][412960.0.150120126][412960.0.150120128]' |
| | | Description: 'ç»ææ¶é´' |
| | | IsReadOnly: true |
| | | ValueType: DateTime |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute ProductID |
| | | { |
| | | #keys: '3[412960.0.150120087][412960.0.150120086][412960.0.150120088]' |
| | | Description: 'ç©æç¼ç ' |
| | | IsReadOnly: true |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Qty |
| | | { |
| | | #keys: '3[412960.0.150120097][412960.0.150120096][412960.0.150120098]' |
| | | Description: 'æ°é' |
| | | ValueType: Real |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute ReleaseTime |
| | | { |
| | | #keys: '3[412960.0.150120157][412960.0.150120156][412960.0.150120158]' |
| | | Description: 'å叿¶é´' |
| | | ValueType: DateTime |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute StartTime |
| | | { |
| | | #keys: '3[412960.0.150120117][412960.0.150120116][412960.0.150120118]' |
| | | Description: 'å¼å§æ¶é´' |
| | | IsReadOnly: true |
| | | ValueType: DateTime |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute StockingPointID |
| | | { |
| | | #keys: '3[412960.0.150120107][412960.0.150120106][412960.0.150120108]' |
| | | Description: 'åºåç¹ç¼ç ' |
| | | IsReadOnly: true |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute User |
| | | { |
| | | #keys: '3[412960.0.150120137][412960.0.150120136][412960.0.150120138]' |
| | | Description: 'ç¨æ·åç§°' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute VersionID |
| | | { |
| | | #keys: '3[412960.0.150120057][412960.0.150120056][412960.0.150120058]' |
| | | Description: 'æ°æ®åºæ½åçå
¨éçæ¬å·' |
| | | IsReadOnly: true |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute VersionName |
| | | { |
| | | #keys: '3[412960.0.150124918][412960.0.150124917][412960.0.150124919]' |
| | | Description: 'çæ¬åç§°' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | TypeIndex TypeIndexVersionControl |
| | | { |
| | | Attributes: |
| | | [ |
| | | TypeIndexAttribute |
| | | { |
| | | ModelElement: VersionID |
| | | } |
| | | TypeIndexAttribute |
| | | { |
| | | ModelElement: EndTime |
| | | } |
| | | TypeIndexAttribute |
| | | { |
| | | ModelElement: StockingPointID |
| | | } |
| | | TypeIndexAttribute |
| | | { |
| | | ModelElement: StartTime |
| | | } |
| | | TypeIndexAttribute |
| | | { |
| | | ModelElement: ProductID |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type MappingVersionControl |
| | | { |
| | | #keys: '5[412960.0.150120040][412960.0.150120038][0.0.0][412960.0.150120039][412960.0.150120041]' |
| | | BaseType: Object |
| | | Description: 'çæ¬æ§å¶ä¸é´è¡¨' |
| | | StructuredName: 'MappingVersionControls' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute CustomerName |
| | | { |
| | | #keys: '3[412960.0.217504426][412960.0.217504425][412960.0.217504427]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute End |
| | | { |
| | | #keys: '3[412960.0.217504488][412960.0.217504487][412960.0.217504489]' |
| | | ValueType: Date |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute EndDate |
| | | { |
| | | #keys: '3[412960.0.217504467][412960.0.217504466][412960.0.217504468]' |
| | | ValueType: Date |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute IsFirmed |
| | | { |
| | | #keys: '3[412960.0.217504477][412960.0.217504476][412960.0.217504478]' |
| | | ValueType: Boolean |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute LastModify |
| | | { |
| | | #keys: '3[412960.0.217504501][412960.0.217504500][412960.0.217504502]' |
| | | Description: 'æåä¿®æ¹äºº' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute LastModifyTime |
| | | { |
| | | #keys: '3[412960.0.217504498][412960.0.217504497][412960.0.217504499]' |
| | | Description: 'æåæä½æ¶é´' |
| | | ValueType: DateTime |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute OrderID |
| | | { |
| | | #keys: '3[412960.0.217504386][412960.0.217504385][412960.0.217504387]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Price |
| | | { |
| | | #keys: '3[412960.0.217504457][412960.0.217504456][412960.0.217504458]' |
| | | ValueType: Real |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute ProductID |
| | | { |
| | | #keys: '3[412960.0.217504396][412960.0.217504395][412960.0.217504397]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Quantity |
| | | { |
| | | #keys: '3[412960.0.217504437][412960.0.217504436][412960.0.217504438]' |
| | | ValueType: Real |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute SalesSegmentName |
| | | { |
| | | #keys: '3[412960.0.217504406][412960.0.217504405][412960.0.217504407]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute StockingPointID |
| | | { |
| | | #keys: '3[412960.0.217504416][412960.0.217504415][412960.0.217504417]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute UnitOfMeasureName |
| | | { |
| | | #keys: '3[412960.0.217504447][412960.0.217504446][412960.0.217504448]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | DefaultValue |
| | | { |
| | | TargetAttribute: LastModify |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type OrderLockLog |
| | | { |
| | | #keys: '5[412960.0.217504330][412960.0.217504328][0.0.0][412960.0.217504329][412960.0.217504331]' |
| | | BaseType: Object |
| | | Description: '订åé宿使¥å¿' |
| | | StructuredName: 'OrderLockLogs' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute IsCreateNewVersion |
| | | { |
| | | #keys: '3[412960.0.155630021][412960.0.155630020][412960.0.155630022]' |
| | | Description: 'æ¯å¦å建ä»éå¢SOPå¼å§çå
¨æ°çæ¬' |
| | | ValueType: Boolean |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute IsOrderLocked |
| | | { |
| | | #keys: '3[412960.0.212420059][412960.0.212420058][412960.0.212420060]' |
| | | Description: '订åéå®çæ¯å¦éå®ç鿡件' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute VersionID |
| | | { |
| | | #keys: '3[412960.0.150120035][412960.0.150120034][412960.0.150120036]' |
| | | Description: 'å½ååºæ¯å¯¹åºççæ¬å·ï¼äºåå»ºçæ¬æ¶ç¡®å®' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | DefaultValue |
| | | { |
| | | TargetAttribute: VersionID |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method SetReleased #extension |
| | | { |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute BusinessType |
| | | { |
| | | #keys: '3[412960.0.134860020][412960.0.134860019][412960.0.134860021]' |
| | | Description: 'ååºè¯¥çæ¬çäºä¸é¨ï¼ç¨äºè¯å«åæ ¡éªæ¯å¦ææäºä¸é¨åæåä¼ æ°æ®ï¼ç®ååå¼èå´ä¸º[ éå¢(TM)ï¼ææºäºä¸é¨(SJ)ï¼ITäºä¸é¨(IT)ï¼è½¦è½½äºä¸é¨(CZ)ï¼æ±½è½¦çµåäºä¸é¨(QD)ï¼ä¸æ¾äºä¸é¨(ZX)ï¼ç©¿æ´äºä¸é¨(CD)] ã' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute CalType |
| | | { |
| | | #keys: '3[412960.0.136134246][412960.0.136134245][412960.0.136134247]' |
| | | Description: '计ç®ç±»åï¼ç¨äºæ 注为åªä¸æ¥è®¡ç®çæçè¯¥çæ¬ï¼å¦SOP_R1' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute CreateTime |
| | | { |
| | | #keys: '3[412960.0.136134256][412960.0.136134255][412960.0.136134257]' |
| | | Description: 'åå»ºè¯¥çæ¬çæ¶é´' |
| | | ValueType: DateTime |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute IsReleased |
| | | { |
| | | #keys: '3[412960.0.134830023][412960.0.134830022][412960.0.134830024]' |
| | | ValueType: Boolean |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute LongVersionName |
| | | { |
| | | #keys: '3[412960.0.136134236][412960.0.136134235][412960.0.136134237]' |
| | | Description: 'è¯¥çæ¬å·å¯¹åºççæ¬åç§°ï¼å称为ç¨äºå端å±ç¤ºçæ ¼å¼ï¼å¦SCENE(2023-09-06 15:06:57)' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Notes |
| | | { |
| | | #keys: '3[412960.0.136138830][412960.0.136138829][412960.0.136138831]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute ReleaseTime |
| | | { |
| | | #keys: '3[412960.0.136134266][412960.0.136134265][412960.0.136134267]' |
| | | Description: 'åå¸è¯¥çæ¬çæ¶é´' |
| | | ValueType: DateTime |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute SingleVersionName |
| | | { |
| | | #keys: '3[412960.0.136138782][412960.0.136138781][412960.0.136138783]' |
| | | Description: 'åä¸ªçæ¬çååï¼å³å°çæ¬å' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute User |
| | | { |
| | | #keys: '3[412960.0.134830093][412960.0.134830092][412960.0.134830094]' |
| | | Description: 'åå»ºè¯¥çæ¬çç¨æ·' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute VersionID |
| | | { |
| | | #keys: '3[412960.0.134860030][412960.0.134860029][412960.0.134860031]' |
| | | Description: '11使°çæ¶é´æ³æ¼æ¥èæçææ¬ï¼ä»
å
嫿°åé¨å' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod CopyVersion ( |
| | | GlobalOTDTable owner, |
| | | String businessname |
| | | ) as VersionControl |
| | | { |
| | | Description: 'å¤å¶å½åçæ¬å¹¶æ´æ°çæ¬å·' |
| | | TextBody: |
| | | [* |
| | | // Administrator Sep-13-2023 (created) |
| | | createtime := DateTime::ActualTime(); |
| | | user := QuintiqUser::CurrentUser().Username(); |
| | | starttime := DateTime::Construct(1970,1,1,0,0,0); |
| | | // Get the local scenario businesstype |
| | | businesstype := GlobalOTDTable::GetBusinessTypeName( businessname ); |
| | | |
| | | // Get the older version info |
| | | oldversionid := ""; |
| | | oldversionname := ""; |
| | | |
| | | latestversion := VersionControl::FindLatestUpdateVersion( owner, businesstype ); |
| | | copyversionid := latestversion.VersionID(); |
| | | info( copyversionid ); |
| | | |
| | | if( copyversionid.FindString( "-", 0 ) > 0 ){ |
| | | latestversionlist := copyversionid.Tokenize( "-" ); |
| | | latestversionnamelist := latestversion.LongVersionName().Tokenize( "-" ); |
| | | for( i := 0; i < latestversionlist.Size() - 1; i := i + 1 ){ |
| | | if( oldversionid = "" ){ |
| | | oldversionid := latestversionlist.Element( i ); |
| | | oldversionname := latestversionnamelist.Element( i ); |
| | | }else{ |
| | | oldversionid := oldversionid + "-" + latestversionlist.Element( i ); |
| | | oldversionname := oldversionname + "-" + latestversionnamelist.Element( i ); |
| | | } |
| | | info( oldversionid ); |
| | | } |
| | | if( oldversionid <> "" ){ |
| | | oldversionid := oldversionid + "-"; |
| | | oldversionname := oldversionname + "-"; |
| | | } |
| | | info( oldversionid ); |
| | | } |
| | | |
| | | // Calculate new version info |
| | | additionversionid := ( createtime.MinutesAsReal( starttime ) * 60 * 10 + createtime.SecondOfMinute() ).Round( 0 ); |
| | | newversionid := oldversionid + [String]additionversionid; |
| | | newcaltype := latestversion.CalType(); |
| | | newsingleversionname := newcaltype + "(" + createtime.Format( "Y/M2/D2 H:m:s" ) + ")"; |
| | | newversionname := oldversionname + newsingleversionname; |
| | | info( newversionid ); |
| | | |
| | | // Create new version |
| | | newversion := VersionControl::Create( owner, businesstype, newcaltype, createtime, newversionid, newversionname, newsingleversionname, user ); |
| | | |
| | | return newversion; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Create ( |
| | | GlobalOTDTable owner, |
| | | String businesstype, |
| | | String caltype, |
| | | DateTime createtime, |
| | | String versionid, |
| | | String versionname, |
| | | String singleversionname, |
| | | String user |
| | | ) as VersionControl |
| | | { |
| | | Description: 'åå»ºçæ¬' |
| | | TextBody: |
| | | [* |
| | | // Administrator Sep-13-2023 (created) |
| | | newversion := owner.VersionControl( relnew, |
| | | BusinessType := businesstype, |
| | | CalType := caltype, |
| | | CreateTime := createtime, |
| | | VersionID := versionid, |
| | | LongVersionName := versionname, |
| | | SingleVersionName := singleversionname, |
| | | User := user ); |
| | | |
| | | return newversion; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod CreateNewSceneVersion ( |
| | | GlobalOTDTable owner, |
| | | String businessname |
| | | ) as VersionControl |
| | | { |
| | | Description: 'éåå»ºåºæ¯è¿è¡çæ¬å建' |
| | | TextBody: |
| | | [* |
| | | // Administrator Sep-13-2023 (created) |
| | | createtime := DateTime::ActualTime(); |
| | | user := QuintiqUser::CurrentUser().Username(); |
| | | starttime := DateTime::Construct(1970,1,1,0,0,0); |
| | | // Get the local scenario businesstype |
| | | businesstype := GlobalOTDTable::GetBusinessTypeName( businessname ); |
| | | |
| | | // Get the older version info |
| | | oldversion_id := ""; |
| | | oldversion_name := ""; |
| | | oldcaltype := ""; |
| | | |
| | | // Calculate new version info |
| | | additionversionid := ( createtime.MinutesAsReal( starttime ) * 60 * 10 + createtime.SecondOfMinute() ).Round( 0 ); |
| | | newversionid := oldversion_id + [String]additionversionid; |
| | | newcaltype := GlobalOTDTable::GetNextCalType( oldcaltype, businesstype ); |
| | | newsingleversionname := newcaltype + "(" + createtime.Format( "Y/M2/D2 H:m:s" ) + ")"; |
| | | newversionname := oldversion_name + newsingleversionname; |
| | | |
| | | // Create new version |
| | | newversion := VersionControl::Create( owner, businesstype, newcaltype, createtime, newversionid, newversionname, newsingleversionname, user ); |
| | | newversion.IsReleased( true ); |
| | | newversion.ReleaseTime( createtime ); |
| | | |
| | | return newversion; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod CreateNewVersion ( |
| | | GlobalOTDTable owner, |
| | | String businessname |
| | | ) as VersionControl |
| | | { |
| | | Description: 'å¨ä¸ä¸çæ¬åæ·»å æ°çæ¬å·å¹¶çææ°çæ¬' |
| | | TextBody: |
| | | [* |
| | | // Administrator Sep-13-2023 (created) |
| | | createtime := DateTime::ActualTime(); |
| | | user := QuintiqUser::CurrentUser().Username(); |
| | | starttime := DateTime::Construct(1970,1,1,0,0,0); |
| | | // Get the local scenario businesstype |
| | | businesstype := GlobalOTDTable::GetBusinessTypeName( businessname ); |
| | | |
| | | // Get the older version info |
| | | oldversion_id := ""; |
| | | oldversion_name := ""; |
| | | oldcaltype := ""; |
| | | |
| | | latestversion := VersionControl::FindLatestUpdateVersion( owner, businesstype ); |
| | | |
| | | if( isnull( latestversion ) and not businesstype = "TM" ){ |
| | | error( "Can't find last version in " + businesstype.AsQUILL() ); |
| | | } |
| | | else if( not isnull( latestversion ) ){ |
| | | oldversion_id := latestversion.VersionID() + "-"; |
| | | oldversion_name := latestversion.LongVersionName() + "-"; |
| | | oldcaltype := latestversion.CalType(); |
| | | } |
| | | |
| | | |
| | | // Calculate new version info |
| | | additionversionid := ( createtime.MinutesAsReal( starttime ) * 60 * 10 + createtime.SecondOfMinute() ).Round( 0 ); |
| | | newversionid := oldversion_id + [String]additionversionid; |
| | | newcaltype := GlobalOTDTable::GetNextCalType( oldcaltype, businesstype ); |
| | | newsingleversionname := newcaltype + "(" + createtime.Format( "Y/M2/D2 H:m:s" ) + ")"; |
| | | newversionname := oldversion_name + newsingleversionname; |
| | | |
| | | // Create new version |
| | | newversion := VersionControl::Create( owner, businesstype, newcaltype, createtime, newversionid, newversionname, newsingleversionname, user ); |
| | | |
| | | return newversion; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod FindByFullVersionID ( |
| | | GlobalOTDTable owner, |
| | | String versionid |
| | | ) as VersionControl |
| | | { |
| | | Description: 'éè¿å
¨éçæ¬å·è¿è¡æ¥æ¾' |
| | | TextBody: |
| | | [* |
| | | // Administrator Sep-14-2023 (created) |
| | | // Get the version data |
| | | resultversion := select( owner, VersionControl, version, version.VersionID() + "-" + version.CalType() = versionid ); |
| | | |
| | | return resultversion; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod FindLatestUpdateVersion ( |
| | | GlobalOTDTable globalotdtable, |
| | | String businesstype |
| | | ) as VersionControl |
| | | { |
| | | Description: 'è·åæäºä¸é¨ç®åææ°ççæ¬å·' |
| | | TextBody: |
| | | [* |
| | | // Administrator Sep-13-2023 (created) |
| | | |
| | | // Get the latest version data |
| | | latestversion := maxselect( globalotdtable, |
| | | VersionControl, |
| | | version, |
| | | version.BusinessType()=businesstype and version.IsReleased()=true, |
| | | version.CreateTime() ); |
| | | |
| | | return latestversion; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod FindLatestVersion ( |
| | | GlobalOTDTable globalotdtable, |
| | | String businesstype |
| | | ) as VersionControl |
| | | { |
| | | Description: 'è·åæäºä¸é¨ç®åææ°ççæ¬å·' |
| | | TextBody: |
| | | [* |
| | | // Administrator Sep-13-2023 (created) |
| | | |
| | | // Get the latest version data |
| | | latestversion := maxselect( globalotdtable, |
| | | VersionControl, |
| | | version, |
| | | version.BusinessType()=businesstype, |
| | | version.CreateTime() ); |
| | | |
| | | return latestversion; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod FindReleasedVersions ( |
| | | GlobalOTDTable globalotdtable, |
| | | String businesstype, |
| | | String versionid |
| | | ) as owning VersionControls |
| | | { |
| | | Description: 'è·åæäºä¸é¨ç®åææ°ççæ¬å·' |
| | | TextBody: |
| | | [* |
| | | // Administrator Sep-13-2023 (created) |
| | | |
| | | // Get the latest version data |
| | | latestversion := selectset( globalotdtable, VersionControl, version, version.BusinessType()=businesstype and version.IsReleased()=true and version.VersionID().FindString( versionid, 0 ) = 0 ); |
| | | |
| | | return &latestversion; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GetVersionInfo ( |
| | | GlobalOTDTable owner, |
| | | String businessname |
| | | ) as owning Strings |
| | | { |
| | | Description: 'è·åå¤§çæ¬çæ¬å·åçæ¬åç§°' |
| | | TextBody: |
| | | [* |
| | | // Administrator Sep-13-2023 (created) |
| | | businesstyoe := GlobalOTDTable::GetBusinessTypeName( businessname ); |
| | | result := construct( Strings ); |
| | | rootversion := VersionControl::FindLatestVersion( owner, businesstyoe ); |
| | | |
| | | if( not isnull( rootversion ) ){ |
| | | result.Add( rootversion.VersionID() ); |
| | | result.Add( rootversion.LongVersionName() ); |
| | | result.Add( rootversion.VersionID() + "-" + rootversion.CalType() ); |
| | | result.Add( rootversion.SingleVersionName() ); |
| | | }else{ |
| | | result.Add( "" ); |
| | | result.Add( "" ); |
| | | result.Add( "" ); |
| | | result.Add( "" ); |
| | | } |
| | | |
| | | return &result; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod ReleaseLatestVersion |
| | | { |
| | | Description: 'åå¸å½åçæ¬ï¼å¾
ç¼å' |
| | | TextBody: |
| | | [* |
| | | // Administrator Sep-14-2023 (created) |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod ReleaseNewVersion ( |
| | | GlobalOTDTable owner, |
| | | String businesstype |
| | | ) |
| | | { |
| | | Description: 'å叿°çæ¬' |
| | | TextBody: |
| | | [* |
| | | // Administrator Sep-13-2023 (created) |
| | | releasetime := DateTime::ActualTime(); |
| | | |
| | | // Create new version |
| | | newversion := VersionControl::CreateNewVersion( owner, businesstype ); |
| | | |
| | | newversion.IsReleased( true ); |
| | | newversion.ReleaseTime( releasetime ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type VersionControl |
| | | { |
| | | #keys: '5[412960.0.134860003][412960.0.134860001][0.0.0][412960.0.134860002][412960.0.134860004]' |
| | | BaseType: Object |
| | | Description: 'å¨åå
¨éçæ¬ç¶æçobject' |
| | | StructuredName: 'VersionControls' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute BusinessName |
| | | { |
| | | #keys: '3[412960.0.134830239][412960.0.134830238][412960.0.134830240]' |
| | | Description: 'å±ç¤ºç¨äºä¸é¨åç§°' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute BusinessType |
| | | { |
| | | #keys: '3[412960.0.134830072][412960.0.134830071][412960.0.134830073]' |
| | | Description: 'äºä¸é¨åç§°' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute LastReleaseTime |
| | | { |
| | | #keys: '3[412960.0.136138799][412960.0.136138798][412960.0.136138800]' |
| | | Description: 'æååæ¥çæ¶é´' |
| | | ValueType: DateTime |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute LastUser |
| | | { |
| | | #keys: '3[412960.0.136138809][412960.0.136138808][412960.0.136138810]' |
| | | Description: 'æåæä½äºº' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute LastVersionName |
| | | { |
| | | #keys: '3[412960.0.136138768][412960.0.136138767][412960.0.136138769]' |
| | | Description: 'æç»æ¼æ¥èæççæ¬åç§°' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Notes |
| | | { |
| | | #keys: '3[412960.0.136138819][412960.0.136138818][412960.0.136138820]' |
| | | Description: '夿³¨' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute SortNumber |
| | | { |
| | | #keys: '3[412960.0.136138758][412960.0.136138757][412960.0.136138759]' |
| | | Description: 'åºå·' |
| | | ValueType: Number |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod CreateOrUpdate ( |
| | | GlobalOTDTable owner, |
| | | String businesstype, |
| | | String businessname, |
| | | DateTime lastreleasetime, |
| | | String lastuser, |
| | | String lastversionname, |
| | | String notes, |
| | | Number sortnumber |
| | | ) |
| | | { |
| | | Description: 'å建æ°ççæ¬åå¸ç¶æ' |
| | | TextBody: |
| | | [* |
| | | // Administrator Sep-13-2023 (created) |
| | | // Find exist status |
| | | existstatus := VersionStatus::FindLatestStatus( owner, businesstype ); |
| | | if( isnull( existstatus ) ){ |
| | | owner.VersionStatus( relnew, |
| | | BusinessType := businesstype, |
| | | BusinessName := businessname, |
| | | LastReleaseTime := lastreleasetime, |
| | | LastUser := lastuser, |
| | | LastVersionName := lastversionname, |
| | | Notes := notes, |
| | | SortNumber := sortnumber ); |
| | | }else{ |
| | | existstatus.LastReleaseTime( lastreleasetime ); |
| | | existstatus.LastUser( lastuser ); |
| | | existstatus.LastVersionName( lastversionname ); |
| | | existstatus.Notes( notes ); |
| | | existstatus.SortNumber( sortnumber ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod FindLatestStatus ( |
| | | GlobalOTDTable globalotdtable, |
| | | String businesstype |
| | | ) as VersionStatus |
| | | { |
| | | Description: 'è·åæäºä¸é¨ç®åææ°çåå¸ç¶æ' |
| | | TextBody: |
| | | [* |
| | | // Administrator Sep-13-2023 (created) |
| | | |
| | | // Get the latest version data |
| | | lateststatus := select( globalotdtable, VersionStatus, version, version.BusinessType()=businesstype ); |
| | | |
| | | return lateststatus; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GetBusinessTypeStatus ( |
| | | GlobalOTDTable owner, |
| | | String rootversionid |
| | | ) |
| | | { |
| | | Description: 'å·æ°ææäºä¸é¨çå叿
åµ' |
| | | TextBody: |
| | | [* |
| | | // Administrator Sep-13-2023 (created) |
| | | // Get business type list |
| | | businesstypes := "éå¢,颿¿,ææºäºä¸é¨,ITäºä¸é¨,车载äºä¸é¨,汽车çµåäºä¸é¨,䏿¾äºä¸é¨,ç©¿æ´äºä¸é¨"; |
| | | businesstypelist := businesstypes.Tokenize( "," ); |
| | | |
| | | sortnumber := 0; |
| | | sortdetailnumber := 0; |
| | | traverse( businesstypelist, Elements, businessname, true ){ |
| | | // info( businessname ); |
| | | // Get the local scenario businesstype |
| | | businesstype := GlobalOTDTable::GetBusinessTypeName( businessname ); |
| | | sortnumber := sortnumber + 1; |
| | | lastversion := VersionControl::FindLatestUpdateVersion( owner, businesstype ); |
| | | if( not isnull( lastversion ) ){ |
| | | VersionStatus::CreateOrUpdate( owner, |
| | | businesstype, |
| | | businessname, |
| | | lastversion.ReleaseTime(), |
| | | lastversion.User(), |
| | | lastversion.SingleVersionName(), |
| | | lastversion.Notes(), |
| | | sortnumber ); |
| | | }else{ |
| | | existstatus := VersionStatus::FindLatestStatus( owner, businesstype ); |
| | | if( isnull( existstatus ) ){ |
| | | owner.VersionStatus( relnew, |
| | | BusinessType := businesstype, |
| | | BusinessName := businessname, |
| | | SortNumber := sortnumber |
| | | ); |
| | | } |
| | | } |
| | | |
| | | rootstatus := VersionStatus::FindLatestStatus( owner, businesstype ); |
| | | // Get the versions list |
| | | versionlist := VersionControl::FindReleasedVersions( owner, businesstype, rootversionid ); |
| | | // info( rootversionid ); |
| | | if( not isnull( versionlist ) ){ |
| | | traverse( versionlist, Elements, version, true ){ |
| | | info( version.VersionID() ); |
| | | sortdetailnumber := sortdetailnumber + 1; |
| | | VersionStatusDetail::CreateOrUpdate( rootstatus, |
| | | version.VersionID() + "-" + version.CalType(), |
| | | version.CreateTime(), |
| | | version.ReleaseTime(), |
| | | version.SingleVersionName(), |
| | | version.User(), |
| | | version.Notes(), |
| | | sortdetailnumber ); |
| | | } |
| | | } |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type VersionStatus |
| | | { |
| | | #keys: '5[412960.0.134830053][412960.0.134830051][0.0.0][412960.0.134830052][412960.0.134830054]' |
| | | BaseType: Object |
| | | Description: 'åäºä¸é¨ççæ¬åå¸ç¶ææ°æ®' |
| | | StructuredName: 'VersionStatuss' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute CreateTime |
| | | { |
| | | #keys: '3[412960.0.143214324][412960.0.143214323][412960.0.143214325]' |
| | | Description: 'åå»ºè¯¥çæ¬çæ¶é´' |
| | | ValueType: DateTime |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Notes |
| | | { |
| | | #keys: '3[412960.0.143214333][412960.0.143214332][412960.0.143214334]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute ReleaseTime |
| | | { |
| | | #keys: '3[412960.0.143214336][412960.0.143214335][412960.0.143214337]' |
| | | Description: 'åå¸è¯¥çæ¬çæ¶é´' |
| | | ValueType: DateTime |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute SingleVersionName |
| | | { |
| | | #keys: '3[412960.0.143214339][412960.0.143214338][412960.0.143214340]' |
| | | Description: 'åä¸ªçæ¬çååï¼å³å°çæ¬å' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute SortNumber |
| | | { |
| | | #keys: '3[412960.0.143220022][412960.0.143220021][412960.0.143220023]' |
| | | ValueType: Number |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute User |
| | | { |
| | | #keys: '3[412960.0.143214342][412960.0.143214341][412960.0.143214343]' |
| | | Description: 'åå»ºè¯¥çæ¬çç¨æ·' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute VersionID |
| | | { |
| | | #keys: '3[412960.0.143214345][412960.0.143214344][412960.0.143214346]' |
| | | Description: 'å
¨éçæ¬å·' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | DefaultValue |
| | | { |
| | | TargetAttribute: Notes |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | DefaultValue |
| | | { |
| | | TargetAttribute: SingleVersionName |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | DefaultValue |
| | | { |
| | | TargetAttribute: User |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod CreateOrUpdate ( |
| | | VersionStatus owner, |
| | | String versionid, |
| | | DateTime createtime, |
| | | DateTime releasetime, |
| | | String versionname, |
| | | String user, |
| | | String notes, |
| | | Number sortnumber |
| | | ) |
| | | { |
| | | Description: 'å建æ°ççæ¬åå¸ç¶æè¯¦æ
' |
| | | TextBody: |
| | | [* |
| | | // Administrator Sep-13-2023 (created) |
| | | // Find exist status |
| | | existstatusdetail := VersionStatusDetail::FindStatus( owner, versionid ); |
| | | if( isnull( existstatusdetail ) ){ |
| | | owner.VersionStatusDetail( relnew, |
| | | CreateTime := createtime, |
| | | ReleaseTime := releasetime, |
| | | SingleVersionName := versionname, |
| | | User := user, |
| | | VersionID := versionid, |
| | | Notes := notes, |
| | | SortNumber := sortnumber ); |
| | | }else{ |
| | | existstatusdetail.CreateTime( createtime ); |
| | | existstatusdetail.ReleaseTime( releasetime ); |
| | | existstatusdetail.SingleVersionName( versionname ); |
| | | existstatusdetail.User( user ); |
| | | existstatusdetail.Notes( notes ); |
| | | existstatusdetail.SortNumber( sortnumber ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod FindStatus ( |
| | | VersionStatus owner, |
| | | String versionid |
| | | ) as VersionStatusDetail |
| | | { |
| | | Description: 'éè¿çæ¬å·æ¥æ¾æ¯å¦æåå¨çç¶æè¯¦æ
' |
| | | TextBody: |
| | | [* |
| | | // Administrator Sep-13-2023 (created) |
| | | |
| | | // Get the latest version data |
| | | lateststatusdetail := select( owner, VersionStatusDetail, version, version.VersionID()=versionid ); |
| | | |
| | | return lateststatusdetail; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod GetFullVersionID ( |
| | | VersionStatus owner |
| | | ) as String |
| | | { |
| | | Description: 'è·åå
¨éçæ¬å·' |
| | | TextBody: |
| | | [* |
| | | // Administrator Sep-13-2023 (created) |
| | | result := ""; |
| | | latestversion := maxselect( owner, VersionStatusDetail, version, true, version.CreateTime() ); |
| | | |
| | | if( not isnull( latestversion ) ){ |
| | | result := latestversion.VersionID(); |
| | | } |
| | | |
| | | return result; |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type VersionStatusDetail |
| | | { |
| | | #keys: '5[412960.0.143214315][412960.0.143214313][0.0.0][412960.0.143214314][412960.0.143214316]' |
| | | BaseType: Object |
| | | Description: 'å¨å对åºåå¸ç¶æä¸çæ¬ç¶æçæ°æ®' |
| | | StructuredName: 'VersionStatusDetails' |
| | | } |
| | |
| | | Taborder: 4 |
| | | ] |
| | | } |
| | | Component CheckboxIsCreateNewVersion |
| | | { |
| | | #keys: '[412960.0.157150313]' |
| | | BaseType: 'WebCheckbox' |
| | | Properties: |
| | | [ |
| | | DataBinding: 'DataHolderDialogData.Data.IsCreateNewVersion' |
| | | Label: 'Create a new version' |
| | | Taborder: 7 |
| | | ] |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component pnlActions #extension |
| | | { |
| | | Children: |
| | | [ |
| | | Component btnOK #extension |
| | | { |
| | | } |
| | | ] |
| | | } |
| | |
| | | DataHolderActionCopy.Data( false ); |
| | | DataHolderDialogData.Data( &scenario ); |
| | | DataHolderDialogData.Data().EnableSync( enableSync ); |
| | | DataHolderDialogData.Data().IsCreateNewVersion( true ); |
| | | |
| | | ApplicationMacroPlanner.ShowFormModal( this ); |
| | | *] |
| | |
| | | |
| | | DataHolderActionCopy.Data( false ); |
| | | DataHolderDialogData.Data( &scenario ); |
| | | DataHolderDialogData.Data().IsCreateNewVersion( true ); |
| | | |
| | | ApplicationMacroPlanner.ShowFormModal( this ); |
| | | *] |
| | |
| | | newscenario := null( Scenario ); |
| | | strategy := null( Strategy ); |
| | | |
| | | // New version |
| | | globalotdtable := GlobalOTDTable; |
| | | testbusinesstype := "éå¢"; |
| | | if( data.IsCreateNewVersion() ){ |
| | | VersionControl::CreateNewSceneVersion( globalotdtable, testbusinesstype ); |
| | | }else{ |
| | | VersionControl::CopyVersion( globalotdtable, testbusinesstype ); |
| | | } |
| | | versionname := VersionControl::GetVersionInfo( globalotdtable, testbusinesstype ).Element( 3 ); |
| | | |
| | | // Get Version Name |
| | | if( data.Name() = "" ){ |
| | | data.Name( versionname ); |
| | | } |
| | | |
| | | // Copy scenario |
| | | if( isnull( data.WrappedInstance() ) ) |
| | | { |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: pnlActions/btnOK |
| | | Response OnClick () id:Response_pnlActions_btnOK_OnClick #extension |
| | | { |
| | | Precondition: |
| | | [* |
| | | data := DataHolderDialogData.Data(); |
| | | return not isnull( data ) |
| | | and Scenario::ValidateInput( feedback, |
| | | ScenarioManager, |
| | | // edtName.Text(), |
| | | "for version", |
| | | data.WrappedInstance(), |
| | | '', |
| | | GlobalParameters_MP::GetKB_New(), |
| | | 'Test', |
| | | RadioButtonGroupStorageState.BoundValue(), |
| | | Domain.MDSStorageDefinitionManager().Enabled(), |
| | | Domain.MDSStorageDefinitionManager().DatasetStoreEnabled(), |
| | | Domain.MDSStorageDefinitionManager().DatabaseEnabled() ); |
| | | *] |
| | | } |
| | |
| | | Children: |
| | | [ |
| | | #child: pnlContent |
| | | #child: pnlActions |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component pnlActions |
| | | { |
| | | #keys: '[412960.0.149440162]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component btnApply |
| | | { |
| | | #keys: '[412960.0.149440164]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Label: 'Apply' |
| | | Taborder: 0 |
| | | Visible: false |
| | | ] |
| | | } |
| | | Component btnOk |
| | | { |
| | | #keys: '[412960.0.149440166]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Label: 'OK' |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | Component btnCancel |
| | | { |
| | | #keys: '[412960.0.149440168]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | Label: 'Cancel' |
| | | Taborder: 2 |
| | | Visible: false |
| | | ] |
| | | } |
| | | ] |
| | | 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: '[412960.0.149440160]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component lblContent |
| | | { |
| | | #keys: '[412960.0.149330142]' |
| | | BaseType: 'WebLabel' |
| | | Properties: |
| | | [ |
| | | FixedSize: false |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Padding: 'true' |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method JustShow () id:Method_DialogVersionIDCopy_JustShow |
| | | { |
| | | #keys: '[412960.0.149561615]' |
| | | Body: |
| | | [* |
| | | ApplicationMacroPlanner.ShowFormModal( this ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: pnlActions/btnApply |
| | | Response OnClick () id:Response_pnlActions_btnApply_OnClick |
| | | { |
| | | #keys: '[412960.0.149440170]' |
| | | 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: '[412960.0.149440172]' |
| | | 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: '[412960.0.149440171]' |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | GroupServerCalls: true |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | Form.ApplyChanges(); |
| | | Form.Close(); |
| | | *] |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: MacroPlannerWebApp |
| | | OrphanComponent DialogVersionIDCopy |
| | | { |
| | | #keys: '[412960.0.149440158]' |
| | | BaseType: 'WebForm' |
| | | Children: |
| | | [ |
| | | #child: pnlContent |
| | | #child: pnlActions |
| | | ] |
| | | Properties: |
| | | [ |
| | | Alignment: 'trailing' |
| | | Description: 'å±ç¤ºå
¨éçæ¬å·ä»¥å¤å¶' |
| | | EnterButton: 'btnOk' |
| | | EscapeButton: 'btnCancel' |
| | | ExcludeFromActiveComponent: true |
| | | Image: 'DATA_COPY' |
| | | Padding: 'false' |
| | | Title: 'å
¨éçæ¬å·' |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component ListOrderLock id:ListOrderLock_844 |
| | | { |
| | | #keys: '[412960.0.217980651]' |
| | | BaseType: 'WebList' |
| | | Children: |
| | | [ |
| | | Component DataExtractorOrderLock743 |
| | | { |
| | | #keys: '[412960.0.217980652]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'structured[CustomerOrder]' |
| | | Description: 'è·å订å' |
| | | Source: 'DataHolderOrderLock' |
| | | Taborder: 0 |
| | | Transformation: 'Elements' |
| | | ] |
| | | } |
| | | #child: listActionBarPageOrderLock_1 |
| | | Component DataSetLevelOrderLock |
| | | { |
| | | #keys: '[412960.0.217980654]' |
| | | BaseType: 'WebDataSetLevel' |
| | | Children: |
| | | [ |
| | | #child: listContextMenuOrderLock_1 |
| | | ] |
| | | Properties: |
| | | [ |
| | | Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"OrderID","title":"OrderID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"OrderID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductID","title":"ProductID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SalesSegmentName","title":"SalesSegmentName","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SalesSegmentName"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StockingPointID","title":"StockingPointID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StockingPointID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"CustomerName","title":"CustomerName","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"CustomerName"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Quantity","title":"Quantity","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Quantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"UnitOfMeasureName","title":"UnitOfMeasureName","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"UnitOfMeasureName"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Price","title":"Price","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Price"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"EndDate","title":"EndDate","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"EndDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"IsFirmed","title":"IsFirmed","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"IsFirmed"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"First.AsPlanningBaseSalesDemandInPeriod.End","title":"End","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"First.AsPlanningBaseSalesDemandInPeriod.End"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"LastModify","title":"LastModify","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"LastModify"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"LastModifyTime","title":"LastModifyTime","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"LastModifyTime"}}]' |
| | | ContextMenu: 'listContextMenuOrderLock' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component MatrixEditorProductPlanning id:MatrixEditorProductPlanning_679 |
| | | { |
| | | #keys: '[412960.0.220270414]' |
| | | BaseType: 'WebMatrixEditor' |
| | | Children: |
| | | [ |
| | | Component MatrixEditorCellPISPIP |
| | | { |
| | | #keys: '[412960.0.220270415]' |
| | | BaseType: 'WebMatrixEditorCell' |
| | | Children: |
| | | [ |
| | | Component DataExtractorPISPIP |
| | | { |
| | | #keys: '[412960.0.220270416]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'structured[ProductInStockingPoint_MP]' |
| | | FixedFilter: 'not object.ProductInStockingPoint_MP().IsSystem() and object.ProductInStockingPoint_MP().IsLeaf()' |
| | | Source: 'ApplicationMacroPlanner.DataHolderPISP' |
| | | Taborder: 0 |
| | | Transformation: 'Elements.ProductInStockingPointInPeriod' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Attributes: 'DisplaySupplyQuantity;DependentDemandAndSalesDemandQuantity;TargetInventoryLevel;InventoryLevelEnd;StockLevelInDays' |
| | | Column: 'Period_MP' |
| | | Row: 'ProductInStockingPoint_MP' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | Component MatrixEditorRowsPISP |
| | | { |
| | | #keys: '[412960.0.220270417]' |
| | | BaseType: 'WebMatrixEditorHeaderLevel' |
| | | Children: |
| | | [ |
| | | Component DataExtractorPISP |
| | | { |
| | | #keys: '[412960.0.220270418]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'CustomerOrder' |
| | | ExtractionMode: 'Selected' |
| | | FixedFilter: 'not object.IsSystem() and object.IsLeaf()' |
| | | Source: 'ListOrderLock' |
| | | Taborder: 0 |
| | | Transformation: 'ProductInStockingPoint_MP' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Legend: 'Name' |
| | | SortCriteria: 'Product_MP.DisplayIndex;Name' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | Component MatrixEditorColumnsPeriod |
| | | { |
| | | #keys: '[412960.0.220270419]' |
| | | BaseType: 'WebMatrixEditorHeaderLevel' |
| | | Children: |
| | | [ |
| | | Component DataExtractorPeriod |
| | | { |
| | | #keys: '[412960.0.220270420]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'structured[Period_MP]' |
| | | Source: 'ApplicationMacroPlanner.DataHolderPeriods' |
| | | Taborder: 0 |
| | | Transformation: 'Elements' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Legend: 'Start' |
| | | SortCriteria: 'Start' |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | Component UserConfigurableInformationMatrixEditorProductPlanning |
| | | { |
| | | #keys: '[412960.0.220270421]' |
| | | BaseType: 'WebUserConfigurableInformation' |
| | | Properties: |
| | | [ |
| | | Identifier: 'Cell: PISPIP' |
| | | ObjectType: 'ProductInStockingPointInPeriod' |
| | | Taborder: 3 |
| | | Text: 'Test text' |
| | | Tooltip: '<table><tr><td><b>SYNONYM(object.InventoryLevelEnd())</b></td><td>VALUE( MacroPlan::GetDisplayValue( object.InventoryLevelEnd() ) )</td><td>VALUE(object.ProductInStockingPoint_MP().UnitOfMeasureName())</td><td><b>Inventory holding cost </b></td><td>VALUE(object.TotalBaseInventoryHoldingCost())VALUE( \' \'+ object.ProductInStockingPoint_MP().StockingPoint_MP().Currency_MP().Symbol() )</td><td>VALUE( \'[\' + object.TotalBaseInventoryHoldingCostPerQuantity().Format(\'N(Dec(2))\') )</td><td>VALUE( object.ProductInStockingPoint_MP().StockingPoint_MP().Currency_MP().Symbol() + \'/\' + object.ProductInStockingPoint_MP().UnitOfMeasure_MP().Name() + \']\' ) </td></tr><tr><td><b>SYNONYM(object.StockLevelInDays())</b></td><td>VALUE(object.StockLevelInDays)</td><td>day</td></tr><tr><td><b>Total supply </b></td><td>VALUE(object.SupplyQuantity())</td><td>VALUE(object.ProductInStockingPoint_MP().UnitOfMeasureName())</td><td/><td><b>Total demand </b></td><td>VALUE(object.GetDemandQuantity())</td><td>VALUE(object.ProductInStockingPoint_MP().UnitOfMeasureName())</td></tr><br><tr><td><b>Inventory start </b></td><td>VALUE( guard( MacroPlan::GetDisplayValue( object.InventoryLevelStartPISPIP().InventoryLevelEnd() ), 0.0 ) )</td><td>VALUE(object.ProductInStockingPoint_MP().UnitOfMeasureName())</td><td/><td><b>Sales demand </b></td><td>VALUE(object.SalesDemandQuantity())</td><td>VALUE(object.ProductInStockingPoint_MP().UnitOfMeasureName())</td></tr><tr><td><b>New supply </b></td><td>VALUE(object.NewSupplyQuantity())</td><td>VALUE(object.ProductInStockingPoint_MP().UnitOfMeasureName())</td><td/><td><b>Dependent demand </b></td><td>VALUE(object.DependentDemandQuantity())</td><td>VALUE(object.ProductInStockingPoint_MP().UnitOfMeasureName())</td></tr><tr><td><b>Inventory supply </b></td><td>VALUE(object.InventorySupplyQuantity())</td><td>VALUE(object.ProductInStockingPoint_MP().UnitOfMeasureName())</td><td/><td><b>Fulfilled demand </b></td><td>VALUE(object.FulfilledDemandQuantity() )</td><td>VALUE(object.ProductInStockingPoint_MP().UnitOfMeasureName())</td></tr></table><hr>VALUE( object.ImgHasFeedback() ) VALUE( ifexpr( object.HasFeedback() , " Feedback message exist. Refer to Supply Planning matrix for details." , "" ) )' |
| | | ] |
| | | } |
| | | #child: matrixEditorActionBarPageProductPlanning_1 |
| | | #child: matrixeditorContextMenuProductPlanning_1 |
| | | ] |
| | | Properties: |
| | | [ |
| | | AllowAttributeConfiguration: true |
| | | AllowMultipleAttributes: true |
| | | Columns: 'MatrixEditorColumnsPeriod' |
| | | ContextMenu: 'matrixeditorContextMenuProductPlanning' |
| | | Rows: 'MatrixEditorRowsPISP' |
| | | ShowEditability: true |
| | | ShowSingleAttribute: true |
| | | Taborder: 0 |
| | | ] |
| | | ResponseDefinitions: |
| | | [ |
| | | DelegatedResponseDefinition OnClick id:Responsedef_MatrixEditorProductPlanning_679_WebMenu_OnClick |
| | | { |
| | | #keys: '[412960.0.220270401]' |
| | | Initiator: 'WebMenu' |
| | | IsInherited: false |
| | | ResponseType: 'OnClick' |
| | | Arguments: |
| | | [ |
| | | ResponseDefinitionArgument selection |
| | | { |
| | | #keys: '[6763.0.7990336]' |
| | | Binding: 'this.Selection()' |
| | | } |
| | | ] |
| | | } |
| | | DelegatedResponseDefinition OnClick id:Responsedef_MatrixEditorProductPlanning_679_WebButton_OnClick |
| | | { |
| | | #keys: '[412960.0.220270400]' |
| | | Initiator: 'WebButton' |
| | | IsInherited: false |
| | | ResponseType: 'OnClick' |
| | | Arguments: |
| | | [ |
| | | ResponseDefinitionArgument selection |
| | | { |
| | | #keys: '[6763.0.7990409]' |
| | | Binding: 'this.Selection()' |
| | | } |
| | | ] |
| | | } |
| | | DelegatedResponseDefinition OnClick id:Responsedef_MatrixEditorProductPlanning_679_WebMenu_OnClick_119 |
| | | { |
| | | #keys: '[412960.0.220270399]' |
| | | Initiator: 'WebMenu' |
| | | IsInherited: false |
| | | ResponseType: 'OnClick' |
| | | Arguments: |
| | | [ |
| | | ResponseDefinitionArgument selectedrows |
| | | { |
| | | #keys: '[6763.0.7990482]' |
| | | Binding: 'this.SelectedRows()' |
| | | } |
| | | ] |
| | | } |
| | | DelegatedResponseDefinition OnClick id:Responsedef_MatrixEditorProductPlanning_679_WebButton_OnClick_720 |
| | | { |
| | | #keys: '[412960.0.220270398]' |
| | | Initiator: 'WebButton' |
| | | IsInherited: false |
| | | ResponseType: 'OnClick' |
| | | Arguments: |
| | | [ |
| | | ResponseDefinitionArgument selectedrows |
| | | { |
| | | #keys: '[6763.0.7990555]' |
| | | Binding: 'this.SelectedRows()' |
| | | } |
| | | ] |
| | | } |
| | | DelegatedResponseDefinition OnClick id:Responsedef_MatrixEditorProductPlanning_679_WebMenu_OnClick_640 |
| | | { |
| | | #keys: '[412960.0.220270397]' |
| | | Initiator: 'WebMenu' |
| | | IsInherited: false |
| | | ResponseType: 'OnClick' |
| | | Arguments: |
| | | [ |
| | | ResponseDefinitionArgument selectedcolumns |
| | | { |
| | | #keys: '[6763.0.7990628]' |
| | | Binding: 'this.SelectedColumns()' |
| | | } |
| | | ] |
| | | } |
| | | DelegatedResponseDefinition OnClick id:Responsedef_MatrixEditorProductPlanning_679_WebButton_OnClick_582 |
| | | { |
| | | #keys: '[412960.0.220270396]' |
| | | Initiator: 'WebButton' |
| | | IsInherited: false |
| | | ResponseType: 'OnClick' |
| | | Arguments: |
| | | [ |
| | | ResponseDefinitionArgument selectedcolumns |
| | | { |
| | | #keys: '[6763.0.7990701]' |
| | | Binding: 'this.SelectedColumns()' |
| | | } |
| | | ] |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelMatrix id:PanelMatrix_780 |
| | | { |
| | | #keys: '[412960.0.220270412]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component DataHolderSelectedPISPIPsInProductPlanningMatrix |
| | | { |
| | | #keys: '[412960.0.220270413]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'structured[ProductInStockingPointInPeriod]*' |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | #child: MatrixEditorProductPlanning_679 |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelOrderLock |
| | | { |
| | | #keys: '[412960.0.212571359]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | #child: PanelOrderLockHeader_545 |
| | | #child: PanelOrderLockOrder |
| | | #child: PanelOrderLockPlanning |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelOrderLockHeader id:PanelOrderLockHeader_545 |
| | | { |
| | | #keys: '[412960.0.212571440]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component LabelOrderLockHeaderVersion |
| | | { |
| | | #keys: '[412960.0.212571441]' |
| | | BaseType: 'WebLabel' |
| | | Properties: |
| | | [ |
| | | Description: 'MPSçæ¬åç§°' |
| | | Label: 'MPSçæ¬ï¼' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | Component EditFieldOrderLockHeader |
| | | { |
| | | #keys: '[412960.0.212571468]' |
| | | BaseType: 'WebEditField' |
| | | Properties: |
| | | [ |
| | | Description: 'æ¨¡ç³æç´¢çéæ¡' |
| | | PlaceHolder: 'æ¨¡ç³æç´¢' |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | Component DateSelectorOrderLockHeaderCustomerOrder |
| | | { |
| | | #keys: '[412960.0.212571527]' |
| | | BaseType: 'WebDateSelector' |
| | | Properties: |
| | | [ |
| | | Date: 2023-01-01 |
| | | Description: '客æ·éæ±æ¶é´' |
| | | Label: '客æ·éæ±æ¶é´' |
| | | Taborder: 3 |
| | | ] |
| | | } |
| | | Component DateSelectorOrderLockHeaderPlanDeliver |
| | | { |
| | | #keys: '[412960.0.212571611]' |
| | | BaseType: 'WebDateSelector' |
| | | Properties: |
| | | [ |
| | | Date: 2023-01-01 |
| | | Description: '计åäº¤ä»æ¶é´' |
| | | Label: '计åäº¤ä»æ¶é´' |
| | | Taborder: 4 |
| | | ] |
| | | } |
| | | Component ButtonOrderLockHeader |
| | | { |
| | | #keys: '[412960.0.212571669]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | ButtonSize: 'compact' |
| | | Description: 'æ¨¡ç³æç´¢æé®' |
| | | Label: 'æç´¢' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | Component RadioButtonGroupOrderLockHeader |
| | | { |
| | | #keys: '[412960.0.212571696]' |
| | | BaseType: 'WebRadioButtonGroup' |
| | | Properties: |
| | | [ |
| | | BoundValue: 'all' |
| | | ButtonLabels: 'å·²éå®;æªéå®;å
¨é¨' |
| | | ButtonValues: 'locked;unlocked;all' |
| | | DataBinding: 'DataHolderOrderLockGlobal.Data.IsOrderLocked' |
| | | Description: 'æ¯å¦éå®çç¹éæ¡' |
| | | Orientation: 'horizontal' |
| | | Taborder: 5 |
| | | ] |
| | | } |
| | | Component ButtonOrderLockHeaderLock |
| | | { |
| | | #keys: '[412960.0.221760476]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | ButtonSize: 'compact' |
| | | Description: '订åéå®' |
| | | Label: 'éå®' |
| | | Taborder: 7 |
| | | ] |
| | | } |
| | | Component ButtonOrderLockHeaderUnlock |
| | | { |
| | | #keys: '[412960.0.221760488]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | ButtonSize: 'compact' |
| | | Description: '订åè§£é' |
| | | Label: 'è§£é' |
| | | Taborder: 8 |
| | | ] |
| | | } |
| | | Component ButtonOrderLockHeaderClear |
| | | { |
| | | #keys: '[412960.0.223264324]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | ButtonSize: 'compact' |
| | | Description: 'æ¸
é¤çé项' |
| | | Label: 'æ¸
é¤çé' |
| | | Taborder: 6 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Description: 'æ¾ç½®lableï¼æé®ç' |
| | | FixedSize: true |
| | | Orientation: 'horizontal' |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelOrderLockOrder |
| | | { |
| | | #keys: '[412960.0.217980613]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | #child: ListOrderLock_844 |
| | | ] |
| | | Properties: |
| | | [ |
| | | Description: '订åä¿¡æ¯å±ç¤º' |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelOrderLockPlanning |
| | | { |
| | | #keys: '[412960.0.220270252]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | #child: PanelMatrix_780 |
| | | ] |
| | | Properties: |
| | | [ |
| | | Border: true |
| | | Description: '订å对åºçè®¡åæ°æ®' |
| | | Taborder: 2 |
| | | Title: '计å详æ
' |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listActionBarPageOrderLock id:listActionBarPageOrderLock_1 |
| | | { |
| | | #keys: '[412960.0.217980653]' |
| | | BaseType: 'listActionBarPage' |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listContextMenuOrderLock id:listContextMenuOrderLock_1 |
| | | { |
| | | #keys: '[412960.0.217980655]' |
| | | BaseType: 'listContextMenu' |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component matrixEditorActionBarPageProductPlanning id:matrixEditorActionBarPageProductPlanning_1 |
| | | { |
| | | #keys: '[412960.0.220270422]' |
| | | BaseType: 'matrixEditorActionBarPage' |
| | | Properties: |
| | | [ |
| | | Taborder: 5 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component matrixeditorContextMenuProductPlanning id:matrixeditorContextMenuProductPlanning_1 |
| | | { |
| | | #keys: '[412960.0.220270423]' |
| | | BaseType: 'matrixeditorContextMenu' |
| | | Children: |
| | | [ |
| | | Component MenuCopy |
| | | { |
| | | #keys: '[138034.3.1296123318]' |
| | | BaseType: 'MenuCopy' |
| | | IsDerived: true |
| | | Properties: |
| | | [ |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | Component MenuSeparator3 |
| | | { |
| | | #keys: '[412960.0.220270424]' |
| | | BaseType: 'WebMenu' |
| | | Properties: |
| | | [ |
| | | Separator: true |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | Component MenuLock |
| | | { |
| | | #keys: '[412960.0.220270427]' |
| | | BaseType: 'WebMenu' |
| | | Properties: |
| | | [ |
| | | DelegationID: 'ActionBarPlan_Lock' |
| | | Image: 'LOCK' |
| | | Taborder: 3 |
| | | Title: 'Lock' |
| | | ] |
| | | } |
| | | Component MenuUnlock |
| | | { |
| | | #keys: '[412960.0.220270428]' |
| | | BaseType: 'WebMenu' |
| | | Properties: |
| | | [ |
| | | DelegationID: 'ActionBarPlan_Unlock' |
| | | Image: 'LOCK_OPEN' |
| | | Taborder: 4 |
| | | Title: 'Unlock' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 4 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: MatrixEditorProductPlanning_679 |
| | | Response OnClick ( |
| | | structured[ProductInStockingPointInPeriod] selection |
| | | ) id:Response_MatrixEditorProductPlanning_679_MenuLock_OnClick |
| | | { |
| | | #keys: '[412960.0.220270410]' |
| | | CanBindMultiple: false |
| | | DefinitionID => /MatrixEditorProductPlanning_679/Responsedef_MatrixEditorProductPlanning_679_WebMenu_OnClick |
| | | Initiator: 'MenuLock' |
| | | Precondition: |
| | | [* |
| | | return ProductInStockingPointInPeriod::CanLockUnlock( selection, feedback ); |
| | | *] |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | // Lock total supply quantity for PISPIPs |
| | | // This is a workaround, we supposedly set the bindingtype of selection as the subtype, but |
| | | // the response would have trouble handling multiple cell selection, so for now, we bind the base type |
| | | // then select the subtype |
| | | |
| | | |
| | | pispipLeafs := selectset( selection, |
| | | Elements.astype( ProductInStockingPointInPeriodPlanningLeaf ), |
| | | pispip, |
| | | true ); |
| | | |
| | | ProductInStockingPointInPeriod::LockUnlockPlanning( pispipLeafs, true, true ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: MatrixEditorProductPlanning_679 |
| | | Response OnClick ( |
| | | structured[ProductInStockingPointInPeriod] selection |
| | | ) id:Response_MatrixEditorProductPlanning_679_MenuUnlock_OnClick |
| | | { |
| | | #keys: '[412960.0.220270407]' |
| | | CanBindMultiple: false |
| | | DefinitionID => /MatrixEditorProductPlanning_679/Responsedef_MatrixEditorProductPlanning_679_WebMenu_OnClick |
| | | Initiator: 'MenuUnlock' |
| | | Precondition: |
| | | [* |
| | | return ProductInStockingPointInPeriod::CanLockUnlock( selection, feedback ); |
| | | *] |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | // Unlock the total supply quantity of pispips |
| | | // This is a workaround, we supposedly set the bindingtype of selection as the subtype, but |
| | | // the response would have trouble handling multiple cell selection, so for now, we bind the base type |
| | | // then select the subtype |
| | | |
| | | pispipLeafs := selectset( selection, Elements.astype( ProductInStockingPointInPeriodPlanningLeaf ), pispip, |
| | | true ); |
| | | ProductInStockingPointInPeriod::LockUnlockPlanning( pispipLeafs, false, true ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: MatrixEditorProductPlanning_679 |
| | | Response OnCheckEditability ( |
| | | structured[ProductInStockingPointInPeriodPlanning] cell, |
| | | Real value |
| | | ) id:Response_MatrixEditorProductPlanning_679_OnCheckEditability |
| | | { |
| | | #keys: '[412960.0.220270404]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebMatrixEditor_OnCheckEditability' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | //Precondition |
| | | attributes := construct( Strings ); |
| | | attributes.Add(focusedattribute); |
| | | isSupply_o := false; |
| | | feedback :=""; |
| | | |
| | | cond := MacroPlan.CanPlan( feedback ) |
| | | and ProductInStockingPointInPeriod::CanEnterSupplyQuantity( feedback, |
| | | cell, |
| | | attributes, |
| | | isSupply_o ); |
| | | if( cond ) |
| | | { |
| | | if( isSupply_o ) |
| | | { |
| | | periods := selectset( cell, Elements.Period_MP, period, true ); |
| | | cond := ScenarioManager::CanStartSmartPlan( ScenarioManager, |
| | | DataHolderActiveScenario.Data(), |
| | | true, |
| | | periods, |
| | | feedback ); |
| | | } |
| | | } |
| | | editinfo.CanEdit( cond ); |
| | | editinfo.UserHint( feedback ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: MatrixEditorProductPlanning_679 |
| | | Response OnUserSelectionChanged ( |
| | | structured[ProductInStockingPointInPeriod] selection |
| | | ) id:Response_MatrixEditorProductPlanning_679_OnUserSelectionChanged |
| | | { |
| | | #keys: '[412960.0.220270402]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebMatrixEditor_OnUserSelectionChanged' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | //Assign selection to data holder |
| | | DataHolderSelectedPISPIPsInProductPlanningMatrix.Data( selection.Copy() ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelOrderLockHeader_545/ButtonOrderLockHeaderClear |
| | | Response OnClick () id:Response_PanelOrderLockHeader_545_ButtonOrderLockHeaderClear_OnClick |
| | | { |
| | | #keys: '[412960.0.223264347]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | GroupServerCalls: true |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | EditFieldOrderLockHeader.Text( "" ); |
| | | DateSelectorOrderLockHeaderCustomerOrder.Date( Date::Construct(2023,1,1) ); |
| | | DateSelectorOrderLockHeaderPlanDeliver.Date( Date::Construct(2023,1,1) ); |
| | | RadioButtonGroupOrderLockHeader.BoundValue( "all" ); |
| | | DataExtractorOrderLock.FixedFilter( "true" ); |
| | | *] |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelOrderLockHeader_545/ButtonOrderLockHeader |
| | | Response OnClick () id:Response_PanelOrderLockHeader_545_ButtonOrderLockHeader_OnClick |
| | | { |
| | | #keys: '[412960.0.221841965]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | GroupServerCalls: true |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | thisfilter := "( object.OrderID().LikeUserLocale( " + EditFieldOrderLockHeader.Text().AsQUILL() + " )" |
| | | + " or " + "object.ProductID().LikeUserLocale( " + EditFieldOrderLockHeader.Text().AsQUILL() + " )" |
| | | + " or " + "object.UnitOfMeasureName().LikeUserLocale( " + EditFieldOrderLockHeader.Text().AsQUILL() + " )" |
| | | + " or " + "object.StockingPointID().LikeUserLocale( " + EditFieldOrderLockHeader.Text().AsQUILL() + " )" |
| | | + " or " + "object.CustomerName().LikeUserLocale( " + EditFieldOrderLockHeader.Text().AsQUILL() + " )" |
| | | + " or " + "object.SalesSegmentName().LikeUserLocale( " + EditFieldOrderLockHeader.Text().AsQUILL() + " ) )" ; |
| | | |
| | | existfilter := DataExtractorOrderLock.FixedFilter(); |
| | | if( existfilter = "true" ){ |
| | | existfilter := ""; |
| | | } |
| | | existfilterlist := existfilter.Tokenize( " and " ); |
| | | |
| | | newfilter := ""; |
| | | findcount := 0; |
| | | traverse( existfilterlist, Elements, filter ){ |
| | | if( filter.FindString( "OrderID()", 0 ) >= 0 ){ |
| | | if( newfilter = "" ){ |
| | | newfilter := thisfilter; |
| | | }else{ |
| | | newfilter := newfilter + " and " + thisfilter; |
| | | } |
| | | findcount := 1; |
| | | }else{ |
| | | if( newfilter = "" ){ |
| | | newfilter := filter; |
| | | }else{ |
| | | newfilter := newfilter + " and " + filter; |
| | | } |
| | | } |
| | | } |
| | | |
| | | if( findcount = 0 ){ |
| | | if( newfilter = "" ){ |
| | | newfilter := thisfilter; |
| | | }else{ |
| | | newfilter := newfilter + " and " + thisfilter; |
| | | } |
| | | } |
| | | |
| | | info( newfilter ); |
| | | |
| | | DataExtractorOrderLock.FixedFilter( newfilter ); |
| | | *] |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelOrderLockHeader_545/DateSelectorOrderLockHeaderCustomerOrder |
| | | Response OnChanged () id:Response_PanelOrderLockHeader_545_DateSelectorOrderLockHeaderCustomerOrder_OnChanged |
| | | { |
| | | #keys: '[412960.0.221842202]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebDateTimeFieldBase_OnChanged' |
| | | GroupServerCalls: true |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | existfilter := DataExtractorOrderLock.FixedFilter(); |
| | | if( existfilter = "true" ){ |
| | | existfilter := ""; |
| | | } |
| | | existfilterlist := existfilter.Tokenize( " and " ); |
| | | |
| | | newfilter := ""; |
| | | findcount := 0; |
| | | traverse( existfilterlist, Elements, filter ){ |
| | | if( filter.FindString( "EndDate()", 0 ) >= 0 ){ |
| | | if( newfilter = "" ){ |
| | | newfilter := "( object.EndDate() = " + this.Date().AsQUILL() + " )"; |
| | | }else{ |
| | | newfilter := newfilter + " and " + "( object.EndDate() = " + this.Date().AsQUILL() + " )"; |
| | | } |
| | | findcount := 1; |
| | | }else{ |
| | | if( newfilter = "" ){ |
| | | newfilter := filter; |
| | | }else{ |
| | | newfilter := newfilter + " and " + filter; |
| | | } |
| | | } |
| | | } |
| | | |
| | | if( findcount = 0 ){ |
| | | if( newfilter = "" ){ |
| | | newfilter := "( object.EndDate() = " + this.Date().AsQUILL() + " )"; |
| | | }else{ |
| | | newfilter := newfilter + " and " + "( object.EndDate() = " + this.Date().AsQUILL() + " )"; |
| | | } |
| | | } |
| | | |
| | | info( newfilter ); |
| | | |
| | | DataExtractorOrderLock.FixedFilter( newfilter ); |
| | | *] |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelOrderLockHeader_545/DateSelectorOrderLockHeaderPlanDeliver |
| | | Response OnChanged () id:Response_PanelOrderLockHeader_545_DateSelectorOrderLockHeaderPlanDeliver_OnChanged |
| | | { |
| | | #keys: '[412960.0.221842649]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebDateTimeFieldBase_OnChanged' |
| | | GroupServerCalls: true |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | existfilter := DataExtractorOrderLock.FixedFilter(); |
| | | if( existfilter = "true" ){ |
| | | existfilter := ""; |
| | | } |
| | | existfilterlist := existfilter.Tokenize( " and " ); |
| | | |
| | | newfilter := ""; |
| | | findcount := 0; |
| | | traverse( existfilterlist, Elements, filter ){ |
| | | if( filter.FindString( "End()", 0 ) >= 0 and filter.FindString( "EndDate()", 0 ) < 0 ){ |
| | | if( newfilter = "" ){ |
| | | newfilter := "( object.First().AsPlanningBaseSalesDemandInPeriod().End().Date() = " + this.Date().AsQUILL() + " )"; |
| | | }else{ |
| | | newfilter := newfilter + " and " + "( object.First().AsPlanningBaseSalesDemandInPeriod().End().Date() = " + this.Date().AsQUILL() + " )"; |
| | | } |
| | | findcount := 1; |
| | | }else{ |
| | | if( newfilter = "" ){ |
| | | newfilter := filter; |
| | | }else{ |
| | | newfilter := newfilter + " and " + filter; |
| | | } |
| | | } |
| | | } |
| | | |
| | | if( findcount = 0 ){ |
| | | if( newfilter = "" ){ |
| | | newfilter := "( object.First().AsPlanningBaseSalesDemandInPeriod().End().Date() = " + this.Date().AsQUILL() + " )"; |
| | | }else{ |
| | | newfilter := newfilter + " and " + "( object.First().AsPlanningBaseSalesDemandInPeriod().End().Date() = " + this.Date().AsQUILL() + " )"; |
| | | } |
| | | } |
| | | |
| | | info( newfilter ); |
| | | |
| | | DataExtractorOrderLock.FixedFilter( newfilter ); |
| | | *] |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelOrderLockHeader_545/RadioButtonGroupOrderLockHeader |
| | | Response OnChanged () id:Response_PanelOrderLockHeader_545_RadioButtonGroupOrderLockHeader_OnChanged |
| | | { |
| | | #keys: '[412960.0.221843171]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebRadioButtonGroup_OnChanged' |
| | | GroupServerCalls: true |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | existfilter := DataExtractorOrderLock.FixedFilter(); |
| | | if( existfilter = "true" ){ |
| | | existfilter := ""; |
| | | } |
| | | existfilterlist := existfilter.Tokenize( " and " ); |
| | | |
| | | newfilter := ""; |
| | | findcount := 0; |
| | | traverse( existfilterlist, Elements, filter ){ |
| | | if( filter.FindString( "IsFirmed()", 0 ) >= 0 ){ |
| | | if( this.BoundValue() = "locked" ){ |
| | | if( newfilter = "" ){ |
| | | newfilter := "( object.IsFirmed() = true )"; |
| | | }else{ |
| | | newfilter := newfilter + " and " + "( object.IsFirmed() = true )"; |
| | | } |
| | | }else if( this.BoundValue() = "unlocked" ){ |
| | | if( newfilter = "" ){ |
| | | newfilter := "( object.IsFirmed() = false )"; |
| | | }else{ |
| | | newfilter := newfilter + " and " + "( object.IsFirmed() = false )"; |
| | | } |
| | | }else if( this.BoundValue() = "all" ){ |
| | | newfilter := newfilter + ""; |
| | | } |
| | | findcount := 1; |
| | | }else{ |
| | | if( newfilter = "" ){ |
| | | newfilter := filter; |
| | | }else{ |
| | | newfilter := newfilter + " and " + filter; |
| | | } |
| | | } |
| | | } |
| | | |
| | | if( findcount = 0 ){ |
| | | if( this.BoundValue() = "locked" ){ |
| | | if( newfilter = "" ){ |
| | | newfilter := "( object.IsFirmed() = true )"; |
| | | }else{ |
| | | newfilter := newfilter + " and " + "( object.IsFirmed() = true )"; |
| | | } |
| | | }else if( this.BoundValue() = "unlocked" ){ |
| | | if( newfilter = "" ){ |
| | | newfilter := "( object.IsFirmed() = false )"; |
| | | }else{ |
| | | newfilter := newfilter + " and " + "( object.IsFirmed() = false )"; |
| | | } |
| | | }else if( this.BoundValue() = "all" ){ |
| | | newfilter := newfilter + ""; |
| | | } |
| | | } |
| | | |
| | | DataExtractorOrderLock.FixedFilter( newfilter ); |
| | | *] |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: MacroPlannerWebApp |
| | | OrphanComponent FormOrderLock |
| | | { |
| | | #keys: '[412960.0.212511678]' |
| | | BaseType: 'WebForm' |
| | | Children: |
| | | [ |
| | | #child: PanelOrderLock |
| | | Component DataHolderOrderLock |
| | | { |
| | | #keys: '[412960.0.212571799]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'structured[CustomerOrder]*' |
| | | Children: |
| | | [ |
| | | Component DataExtractorOrderLock |
| | | { |
| | | #keys: '[412960.0.212571816]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'MacroPlan' |
| | | Description: 'æ½åè®¢åæ°æ®' |
| | | Source: 'MacroPlan' |
| | | Taborder: 0 |
| | | Transformation: 'SalesDemand.astype(CustomerOrder)' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | Component DataHolderOrderLockGlobal |
| | | { |
| | | #keys: '[412960.0.212571897]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'shadow[Scenario]*' |
| | | Properties: |
| | | [ |
| | | Description: 'å卿¯å¦éå®çç鿡件' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Description: '订åéå®è§£éçé¢' |
| | | Image: 'DATA_LOCK' |
| | | Title: '订åéå®è§£éçé¢' |
| | | ] |
| | | } |
| | |
| | | Quintiq file version 2.0 |
| | | Component ListScenario #extension |
| | | { |
| | | Children: |
| | | [ |
| | | Component DataSetLevelScenario #extension |
| | | { |
| | | Children: |
| | | [ |
| | | Component listContextMenuScenarioFolder #extension |
| | | { |
| | | Children: |
| | | [ |
| | | Component MenuRelaeaseNewVersion |
| | | { |
| | | #keys: '[412960.0.168283194]' |
| | | BaseType: 'WebMenu' |
| | | Properties: |
| | | [ |
| | | DelegationID: 'ActionBarScenario_Release' |
| | | Description: 'å叿°çæ¬' |
| | | Image: 'EDITOR_ALGORITHM' |
| | | Taborder: 10 |
| | | Title: 'Release New Version...' |
| | | ] |
| | | } |
| | | Component MenuCopyScenario #extension |
| | | { |
| | | } |
| | | Component MenuSaveNewVersion |
| | | { |
| | | #keys: '[412960.0.172960163]' |
| | | BaseType: 'WebMenu' |
| | | Properties: |
| | | [ |
| | | DelegationID: 'ActionBarScenario_Save' |
| | | Description: 'å叿°çæ¬' |
| | | Image: 'DATA_DISK' |
| | | Taborder: 11 |
| | | Title: 'Save New Version...' |
| | | ] |
| | | } |
| | | Component MenuSeparator2 #extension |
| | | { |
| | | Properties: |
| | | [ |
| | | Taborder: 12 |
| | | ] |
| | | } |
| | | Component MenuSeparator3 #extension |
| | | { |
| | | Properties: |
| | | [ |
| | | Taborder: 14 |
| | | ] |
| | | } |
| | | Component MenuSelectScenario #extension |
| | | { |
| | | Properties: |
| | | [ |
| | | Taborder: 13 |
| | | ] |
| | | } |
| | | Component MenuEditAuthorization #extension |
| | | { |
| | | Properties: |
| | | [ |
| | | Taborder: 15 |
| | | ] |
| | | } |
| | | Component MenuSeparator4 #extension |
| | | { |
| | | Properties: |
| | | [ |
| | | Taborder: 16 |
| | | ] |
| | | } |
| | | Component MenuLoadScenario #extension |
| | | { |
| | | Properties: |
| | | [ |
| | | Taborder: 17 |
| | | ] |
| | | } |
| | | Component MenuUnloadScenario #extension |
| | | { |
| | | Properties: |
| | | [ |
| | | Taborder: 18 |
| | | ] |
| | | } |
| | | Component MenuSeparator5 #extension |
| | | { |
| | | Properties: |
| | | [ |
| | | Taborder: 19 |
| | | ] |
| | | } |
| | | Component MenuAdministration #extension |
| | | { |
| | | Properties: |
| | | [ |
| | | Taborder: 20 |
| | | ] |
| | | } |
| | | Component MenuRestoreItem #extension |
| | | { |
| | | Properties: |
| | | [ |
| | | Taborder: 21 |
| | | ] |
| | | } |
| | | ] |
| | | } |
| | | ] |
| | | } |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ListScenario |
| | | Response OnClick ( |
| | | ScenarioMP selection |
| | | ) id:Response_ListScenario_MenuCopyScenario_OnClick #extension |
| | | { |
| | | Precondition: |
| | | [* |
| | | feedback := ApplicationMacroPlanner.HasValidDataset( selection ); |
| | | return feedback = '' and selection.CanCopy( feedback ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ListScenario |
| | | Response OnClick ( |
| | | ScenarioMP selection |
| | | ) id:Response_ListScenario_MenuRelaeaseNewVersion_OnClick |
| | | { |
| | | #keys: '[412960.0.170112594]' |
| | | CanBindMultiple: false |
| | | DefinitionID => /ListScenario/Responsedef_ListScenario_WebMenu_OnClick |
| | | Initiator: 'MenuRelaeaseNewVersion' |
| | | Precondition: |
| | | [* |
| | | feedback := ApplicationMacroPlanner.HasValidDataset( selection ); |
| | | return feedback = '' and selection.CanCopy( feedback ); |
| | | *] |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | // Copy scenario |
| | | owner := GlobalOTDTable; |
| | | macroplan := MacroPlan; |
| | | testbusinesstype := "éå¢"; |
| | | |
| | | VersionControl::ReleaseNewVersion( owner, testbusinesstype ); |
| | | GlobalOTDTable::GetOutputVersionData( owner, macroplan, testbusinesstype ); |
| | | selection.SetReleased(); |
| | | |
| | | versionname := VersionControl::GetVersionInfo( owner, testbusinesstype ).Element( 3 ); |
| | | // Get the active scenario |
| | | //data := selection; |
| | | newscenario := null( Scenario ); |
| | | strategy := null( Strategy ); |
| | | |
| | | data := ScenarioManager.ScenarioNode( relshadow, |
| | | ScenarioMP, |
| | | Parent := selection, |
| | | Name := versionname, |
| | | SelectedStrategy := selection.SelectedStrategy(), |
| | | State := selection.State() ); |
| | | |
| | | scenario := data.Parent().astype( ScenarioMP ); |
| | | strategy := data.SelectedStrategy(); |
| | | |
| | | newscenario:= scenario.Copy( data.Parent(), versionname, "", |
| | | data.Comment(), data.State() ); |
| | | |
| | | newscenario.SelectedStrategy( relset, strategy ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ListScenario |
| | | Response OnClick ( |
| | | ScenarioMP selection |
| | | ) id:Response_ListScenario_MenuSaveNewVersion_OnClick |
| | | { |
| | | #keys: '[412960.0.171680443]' |
| | | CanBindMultiple: false |
| | | DefinitionID => /ListScenario/Responsedef_ListScenario_WebMenu_OnClick |
| | | Initiator: 'MenuSaveNewVersion' |
| | | Precondition: |
| | | [* |
| | | feedback := ApplicationMacroPlanner.HasValidDataset( selection ); |
| | | return feedback = '' and selection.CanCopy( feedback ); |
| | | *] |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | // Copy scenario |
| | | owner := GlobalOTDTable; |
| | | macroplan := MacroPlan; |
| | | testbusinesstype := "éå¢"; |
| | | |
| | | VersionControl::CopyVersion( owner, testbusinesstype ); |
| | | |
| | | versionname := VersionControl::GetVersionInfo( owner, testbusinesstype ).Element( 3 ); |
| | | // Copy scenario |
| | | newscenario := null( Scenario ); |
| | | strategy := null( Strategy ); |
| | | |
| | | data := ScenarioManager.ScenarioNode( relshadow, |
| | | ScenarioMP, |
| | | Parent := selection, |
| | | Name := versionname, |
| | | SelectedStrategy := selection.SelectedStrategy(), |
| | | State := selection.State() ); |
| | | |
| | | scenario := data.Parent().astype( ScenarioMP ); |
| | | strategy := data.SelectedStrategy(); |
| | | |
| | | newscenario:= scenario.Copy( data.Parent(), versionname, "", |
| | | data.Comment(), data.State() ); |
| | | |
| | | newscenario.SelectedStrategy( relset, strategy ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component ListVersionOfSOP |
| | | { |
| | | #keys: '[412960.0.134950322]' |
| | | BaseType: 'WebList' |
| | | Children: |
| | | [ |
| | | Component DataExtractorVersionOfSOP642 |
| | | { |
| | | #keys: '[412960.0.134950323]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'structured[VersionStatus]' |
| | | Source: 'DataHolderVersionOfSOP' |
| | | Taborder: 0 |
| | | Transformation: 'Elements' |
| | | ] |
| | | } |
| | | #child: listActionBarPageVersionOfSOP |
| | | Component DataSetLevelVersionOfSOP |
| | | { |
| | | #keys: '[412960.0.134950328]' |
| | | BaseType: 'WebDataSetLevel' |
| | | Children: |
| | | [ |
| | | #child: listContextMenuVersionOfSOP |
| | | ] |
| | | Properties: |
| | | [ |
| | | Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SortNumber","title":"SortNumber","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SortNumber"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"BusinessName","title":"BusinessName","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"BusinessName"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"LastVersionName","title":"LastVersionName","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"LastVersionName"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"LastReleaseTime","title":"LastReleaseTime","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"LastReleaseTime"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"LastUser","title":"LastUser","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"LastUser"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Notes","title":"Notes","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Notes"}}]' |
| | | ContextMenu: 'listContextMenuVersionOfSOP' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component ListVersionOfSOPDetails |
| | | { |
| | | #keys: '[412960.0.142180298]' |
| | | BaseType: 'WebList' |
| | | Children: |
| | | [ |
| | | Component DataExtractorVersionOfSOPDetails |
| | | { |
| | | #keys: '[412960.0.142180299]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'structured[VersionStatusDetail]' |
| | | Source: 'DataHolderVersionOfSOPDetails' |
| | | Taborder: 0 |
| | | Transformation: 'Elements' |
| | | ] |
| | | } |
| | | #child: listActionBarPageVersionOfSOPDetails |
| | | Component DataSetLevelVersionOfSOPDetails |
| | | { |
| | | #keys: '[412960.0.142180304]' |
| | | BaseType: 'WebDataSetLevel' |
| | | Children: |
| | | [ |
| | | #child: listContextMenuVersionOfSOPDetails |
| | | ] |
| | | Properties: |
| | | [ |
| | | Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SortNumber","title":"SortNumber","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SortNumber"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SingleVersionName","title":"SingleVersionName","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SingleVersionName"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"CreateTime","title":"CreateTime","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"CreateTime"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ReleaseTime","title":"ReleaseTime","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ReleaseTime"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"User","title":"User","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"User"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Notes","title":"Notes","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Notes"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"VersionID","title":"VersionID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"VersionID"}}]' |
| | | ContextMenu: 'listContextMenuVersionOfSOPDetails' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelVersionOfSOP |
| | | { |
| | | #keys: '[412960.0.134980204]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | #child: ListVersionOfSOP |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelVersionOfSOPDetails |
| | | { |
| | | #keys: '[412960.0.140720490]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | #child: ListVersionOfSOPDetails |
| | | ] |
| | | Properties: |
| | | [ |
| | | Description: 'äºä¸é¨åå¸ç¶æè¯¦æ
panel' |
| | | Taborder: 2 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelVersionOfSOPHeader |
| | | { |
| | | #keys: '[412960.0.137940569]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component ButtonVersionOfSOPHeaderFresh |
| | | { |
| | | #keys: '[412960.0.138000879]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | ButtonSize: 'compact' |
| | | Description: 'ç¨äºå·æ°åäºä¸é¨å½åçæ¬åå¸ç¶æçæé®' |
| | | Label: 'å·æ°' |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | Component ButtonVersionOfSOPHeaderCopy |
| | | { |
| | | #keys: '[412960.0.138000890]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | ButtonSize: 'compact' |
| | | Description: 'ç¨äºå¤å¶éä¸ççæ¬å
¨éçæ¬å·çæé®' |
| | | Label: 'å
¨éçæ¬å·å¤å¶' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | Component ButtonVersionOfSOPHeaderRelease |
| | | { |
| | | #keys: '[412960.0.142110396]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | | ButtonSize: 'compact' |
| | | Description: 'åå¸ä¸ä¸ªæ°çæ¬' |
| | | Label: 'æµè¯ç¨çæ¬åå¸' |
| | | Taborder: 3 |
| | | Visible: false |
| | | ] |
| | | } |
| | | Component LabelVersionOfSOPHeader |
| | | { |
| | | #keys: '[412960.0.138000861]' |
| | | BaseType: 'WebLabel' |
| | | Properties: |
| | | [ |
| | | Description: 'çæ¬å·å±ç¤ºå¤' |
| | | FixedSize: false |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Description: 'ç¨äºæ¾ç½®è¡¨å¤´ä¿¡æ¯åæé®çpanel' |
| | | FixedSize: true |
| | | Orientation: 'horizontal' |
| | | Style: 'header' |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listActionBarPageVersionOfSOP |
| | | { |
| | | #keys: '[412960.0.134950325]' |
| | | BaseType: 'listActionBarPage' |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listActionBarPageVersionOfSOPDetails |
| | | { |
| | | #keys: '[412960.0.142180301]' |
| | | BaseType: 'listActionBarPage' |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listContextMenuVersionOfSOP |
| | | { |
| | | #keys: '[412960.0.134950330]' |
| | | BaseType: 'listContextMenu' |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listContextMenuVersionOfSOPDetails |
| | | { |
| | | #keys: '[412960.0.142180306]' |
| | | BaseType: 'listContextMenu' |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelVersionOfSOPHeader/ButtonVersionOfSOPHeaderCopy |
| | | Response OnClick () id:Response_PanelVersionOfSOPHeader_ButtonVersionOfSOPHeaderCopy_OnClick |
| | | { |
| | | #keys: '[412960.0.149330244]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | owner := GlobalOTDTable; |
| | | testbusinesstype := "éå¢"; |
| | | rootversionid := VersionControl::GetVersionInfo( owner, testbusinesstype ).Element( 2 ); |
| | | dlg := construct( DialogVersionIDCopy ); |
| | | dlg.lblContent().Text( rootversionid ); |
| | | dlg.JustShow(); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelVersionOfSOPHeader/ButtonVersionOfSOPHeaderFresh |
| | | Response OnClick () id:Response_PanelVersionOfSOPHeader_ButtonVersionOfSOPHeaderFresh_OnClick |
| | | { |
| | | #keys: '[412960.0.133611384]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | owner := GlobalOTDTable; |
| | | testbusinesstype := "éå¢"; |
| | | //GlobalOTDTable::GetVersionData( owner, testbusinesstype ); |
| | | rootversionid := VersionControl::GetVersionInfo( owner, testbusinesstype ).Element( 0 ); |
| | | DataExtractorVersionOfSOPDetails.FixedFilter( "object.VersionID().FindString( " + rootversionid.AsQUILL() + ", 0 ) = 0" ); |
| | | rootversionname := VersionControl::GetVersionInfo( owner, testbusinesstype ).Element( 1 ); |
| | | LabelVersionOfSOPHeader.Text( rootversionname ); |
| | | VersionStatus::GetBusinessTypeStatus( owner, rootversionid ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelVersionOfSOPHeader/ButtonVersionOfSOPHeaderRelease |
| | | Response OnClick () id:Response_PanelVersionOfSOPHeader_ButtonVersionOfSOPHeaderRelease_OnClick |
| | | { |
| | | #keys: '[412960.0.142110414]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | GroupServerCalls: true |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | owner := GlobalOTDTable; |
| | | macroplan := MacroPlan; |
| | | testbusinesstype := "éå¢"; |
| | | |
| | | VersionControl::ReleaseNewVersion( owner, testbusinesstype ); |
| | | //GlobalOTDTable::GetOutputVersionData( owner, macroplan, testbusinesstype ); |
| | | *] |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: MacroPlannerWebApp |
| | | OrphanComponent FormVersionOfSOP |
| | | { |
| | | #keys: '[412960.0.135200328]' |
| | | BaseType: 'WebForm' |
| | | Children: |
| | | [ |
| | | #child: PanelVersionOfSOP |
| | | Component DataHolderVersionOfSOP |
| | | { |
| | | #keys: '[412960.0.134980222]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'structured[VersionStatus]*' |
| | | Children: |
| | | [ |
| | | Component DataExtractorVersionOfSOP |
| | | { |
| | | #keys: '[412960.0.134980234]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'GlobalOTDTable' |
| | | Source: 'GlobalOTDTable' |
| | | Taborder: 0 |
| | | Transformation: 'VersionStatus' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 3 |
| | | ] |
| | | } |
| | | #child: PanelVersionOfSOPHeader |
| | | #child: PanelVersionOfSOPDetails |
| | | Component DataHolderVersionOfSOPDetails |
| | | { |
| | | #keys: '[412960.0.140750496]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'structured[VersionStatusDetail]*' |
| | | Children: |
| | | [ |
| | | Component DataExtractorVersionOfSOPDetails453 |
| | | { |
| | | #keys: '[412960.0.142212532]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'VersionStatus' |
| | | ExtractionMode: 'Selected' |
| | | Source: 'ListVersionOfSOP' |
| | | Taborder: 0 |
| | | Transformation: 'VersionStatusDetail' |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Description: 'äºä¸é¨å¯¹åºè¯¦æ
æ°æ®' |
| | | Taborder: 4 |
| | | ] |
| | | } |
| | | Component DataHolderVersionOfSOPCopy |
| | | { |
| | | #keys: '[412960.0.166861218]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'shadow[ScenarioMP]*' |
| | | Properties: |
| | | [ |
| | | Taborder: 5 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Description: 'SOPçæ¬æ°æ®å±ç¤ºçé¢' |
| | | Image: 'WINDOW_TIME' |
| | | Title: 'SOPåäºä¸é¨æ°æ®åæ¥ç¶æ' |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | { |
| | | viewcontents |
| | | { |
| | | forms |
| | | { |
| | | form_legacy_1 |
| | | { |
| | | title: 'Scenario manager' |
| | | shown: true |
| | | componentID: 'FormScenarioManager' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 1 |
| | | rowSpan: 8 |
| | | columnPosition: 1 |
| | | columnSpan: 5 |
| | | } |
| | | components |
| | | { |
| | | FormScenarioManager_ListScenario |
| | | { |
| | | } |
| | | FormScenarioManager_DataSetLevelScenario |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 90 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'åç§°' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 277 |
| | | } |
| | | column_ChangedBy |
| | | { |
| | | columnId: 'ChangedBy' |
| | | dataPath: 'ChangedBy' |
| | | dataType: 'string' |
| | | title: 'Changed by' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 106 |
| | | } |
| | | column_ChangedOn |
| | | { |
| | | columnId: 'ChangedOn' |
| | | dataPath: 'ChangedOn' |
| | | dataType: 'datetime' |
| | | title: 'Changed on' |
| | | index: 3 |
| | | subtotals: '' |
| | | width: 99 |
| | | } |
| | | column_StorageMode |
| | | { |
| | | columnId: 'StorageMode' |
| | | dataPath: 'StorageMode' |
| | | dataType: 'string' |
| | | title: 'StorageMode' |
| | | index: 4 |
| | | subtotals: '' |
| | | width: 40 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_legacy_2 |
| | | { |
| | | title: 'Assumptions' |
| | | shown: true |
| | | componentID: 'FormAssumptions' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 9 |
| | | rowSpan: 8 |
| | | columnPosition: 1 |
| | | columnSpan: 5 |
| | | } |
| | | components |
| | | { |
| | | FormAssumptions_ListAssumptions |
| | | { |
| | | } |
| | | FormAssumptions_DataSetLevelAssumptions |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Category |
| | | { |
| | | columnId: 'Category' |
| | | dataPath: 'Category' |
| | | dataType: 'string' |
| | | title: 'ç±»å«' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 108 |
| | | } |
| | | column_Importance |
| | | { |
| | | columnId: 'Importance' |
| | | dataPath: 'Importance' |
| | | dataType: 'string' |
| | | title: 'éè¦æ§' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 110 |
| | | } |
| | | column_Title |
| | | { |
| | | columnId: 'Title' |
| | | dataPath: 'Title' |
| | | dataType: 'string' |
| | | title: 'æ é¢' |
| | | index: 3 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_ChangedBy |
| | | { |
| | | columnId: 'ChangedBy' |
| | | dataPath: 'ChangedBy' |
| | | dataType: 'string' |
| | | title: 'Changed by' |
| | | index: 4 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_CreatedOn |
| | | { |
| | | columnId: 'CreatedOn' |
| | | dataPath: 'CreatedOn' |
| | | dataType: 'datetime' |
| | | title: 'Created on' |
| | | index: 5 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormScenariosKPIsComparison |
| | | { |
| | | title: 'QLibMacroPlannerWebUI::FormScenariosKPIsComparison' |
| | | shown: true |
| | | componentID: 'QLibMacroPlannerWebUI::FormScenariosKPIsComparison' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 1 |
| | | rowSpan: 16 |
| | | columnPosition: 6 |
| | | columnSpan: 7 |
| | | } |
| | | components |
| | | { |
| | | FormScenariosKPIsComparison_MatrixEditorFinancialKPIs |
| | | { |
| | | gridColor: '#c4c4c4' |
| | | totalHeaderWidth: 200 |
| | | attributeHeaderWidthRatio: 0.6 |
| | | nameHeaderWidthRatio: 0.4 |
| | | columnWidth: 100 |
| | | horizontalGrid: true |
| | | verticalGrid: true |
| | | backendState |
| | | { |
| | | componentId: 'QLibMacroPlannerWebUI::FormScenariosKPIsComparison.MatrixEditorFinancialKPIs' |
| | | state |
| | | { |
| | | cells |
| | | { |
| | | attributes |
| | | { |
| | | attribute_DisplayValue |
| | | { |
| | | type: 'MatrixEditorWebApiCellDataModelInterest' |
| | | index: 0 |
| | | rowsubtotal: '' |
| | | columnsubtotal: '' |
| | | attribute: 'DisplayValue' |
| | | } |
| | | } |
| | | } |
| | | columns |
| | | { |
| | | sorting |
| | | { |
| | | criteria: '' |
| | | } |
| | | } |
| | | rows |
| | | { |
| | | sorting |
| | | { |
| | | criteria: "datamember:'KPISetting.DisplayIndex'" |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | 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: true |
| | | componentID: 'FormKPI' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 1 |
| | | } |
| | | components |
| | | { |
| | | FormKPI_PanelKPI |
| | | { |
| | | sizeRatio: 1 |
| | | activeChild: 'PanelKPISelection' |
| | | } |
| | | 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 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | userconfigurableinformation |
| | | { |
| | | } |
| | | page: 'applicationDevelopmentActionBarPageDef' |
| | | group: '' |
| | | index: 2 |
| | | image: 'DOCUMENT_LOCK' |
| | | description: '' |
| | | } |
| | | formatversion: 2 |
| | | id: 'OrderLock' |
| | | name: 'OrderLock' |
| | | isglobal: false |
| | | isroot: true |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | { |
| | | viewcontents |
| | | { |
| | | forms |
| | | { |
| | | form_legacy_1 |
| | | { |
| | | title: 'Scenario manager' |
| | | shown: true |
| | | componentID: 'FormScenarioManager' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 1 |
| | | rowSpan: 8 |
| | | columnPosition: 1 |
| | | columnSpan: 5 |
| | | } |
| | | components |
| | | { |
| | | FormScenarioManager_ListScenario |
| | | { |
| | | } |
| | | FormScenarioManager_DataSetLevelScenario |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 90 |
| | | } |
| | | column_Name |
| | | { |
| | | columnId: 'Name' |
| | | dataPath: 'Name' |
| | | dataType: 'string' |
| | | title: 'Name' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 197 |
| | | } |
| | | column_ChangedBy |
| | | { |
| | | columnId: 'ChangedBy' |
| | | dataPath: 'ChangedBy' |
| | | dataType: 'string' |
| | | title: 'Changed by' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 91 |
| | | } |
| | | column_ChangedOn |
| | | { |
| | | columnId: 'ChangedOn' |
| | | dataPath: 'ChangedOn' |
| | | dataType: 'datetime' |
| | | title: 'Changed on' |
| | | index: 3 |
| | | subtotals: '' |
| | | width: 99 |
| | | } |
| | | column_StorageMode |
| | | { |
| | | columnId: 'StorageMode' |
| | | dataPath: 'StorageMode' |
| | | dataType: 'string' |
| | | title: 'StorageMode' |
| | | index: 4 |
| | | subtotals: '' |
| | | width: 40 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_legacy_2 |
| | | { |
| | | title: 'Assumptions' |
| | | shown: true |
| | | componentID: 'FormAssumptions' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 9 |
| | | rowSpan: 8 |
| | | columnPosition: 1 |
| | | columnSpan: 5 |
| | | } |
| | | components |
| | | { |
| | | FormAssumptions_ListAssumptions |
| | | { |
| | | } |
| | | FormAssumptions_DataSetLevelAssumptions |
| | | { |
| | | groupDepth: -1 |
| | | column_All_constraints |
| | | { |
| | | columnId: 'All constraints' |
| | | dataPath: 'All constraints' |
| | | dataType: 'string' |
| | | title: 'All constraints' |
| | | index: 0 |
| | | subtotals: '' |
| | | width: 32 |
| | | } |
| | | column_Category |
| | | { |
| | | columnId: 'Category' |
| | | dataPath: 'Category' |
| | | dataType: 'string' |
| | | title: 'Category' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 108 |
| | | } |
| | | column_Importance |
| | | { |
| | | columnId: 'Importance' |
| | | dataPath: 'Importance' |
| | | dataType: 'string' |
| | | title: 'Importance' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 110 |
| | | } |
| | | column_Title |
| | | { |
| | | columnId: 'Title' |
| | | dataPath: 'Title' |
| | | dataType: 'string' |
| | | title: 'Title' |
| | | index: 3 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_ChangedBy |
| | | { |
| | | columnId: 'ChangedBy' |
| | | dataPath: 'ChangedBy' |
| | | dataType: 'string' |
| | | title: 'Changed by' |
| | | index: 4 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | column_CreatedOn |
| | | { |
| | | columnId: 'CreatedOn' |
| | | dataPath: 'CreatedOn' |
| | | dataType: 'datetime' |
| | | title: 'Created on' |
| | | index: 5 |
| | | subtotals: '' |
| | | width: 150 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormScenariosKPIsComparison |
| | | { |
| | | title: 'QLibMacroPlannerWebUI::FormScenariosKPIsComparison' |
| | | shown: true |
| | | componentID: 'QLibMacroPlannerWebUI::FormScenariosKPIsComparison' |
| | | layout |
| | | { |
| | | mode: 'open' |
| | | rowPosition: 1 |
| | | rowSpan: 16 |
| | | columnPosition: 6 |
| | | columnSpan: 7 |
| | | } |
| | | components |
| | | { |
| | | FormScenariosKPIsComparison_MatrixEditorFinancialKPIs |
| | | { |
| | | gridColor: '#c4c4c4' |
| | | totalHeaderWidth: 200 |
| | | attributeHeaderWidthRatio: 0.6 |
| | | nameHeaderWidthRatio: 0.4 |
| | | columnWidth: 100 |
| | | horizontalGrid: true |
| | | verticalGrid: true |
| | | backendState |
| | | { |
| | | componentId: 'QLibMacroPlannerWebUI::FormScenariosKPIsComparison.MatrixEditorFinancialKPIs' |
| | | state |
| | | { |
| | | cells |
| | | { |
| | | attributes |
| | | { |
| | | attribute_DisplayValue |
| | | { |
| | | type: 'MatrixEditorWebApiCellDataModelInterest' |
| | | index: 0 |
| | | rowsubtotal: '' |
| | | columnsubtotal: '' |
| | | attribute: 'DisplayValue' |
| | | } |
| | | } |
| | | } |
| | | columns |
| | | { |
| | | sorting |
| | | { |
| | | criteria: '' |
| | | } |
| | | } |
| | | rows |
| | | { |
| | | sorting |
| | | { |
| | | criteria: "datamember:'KPISetting.DisplayIndex'" |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | 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: 'Name' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 109 |
| | | } |
| | | column_Description |
| | | { |
| | | columnId: 'Description' |
| | | dataPath: 'Description' |
| | | dataType: 'string' |
| | | title: 'Description' |
| | | index: 2 |
| | | subtotals: '' |
| | | width: 207 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | form_FormKPI |
| | | { |
| | | title: 'KPI Dashboard' |
| | | shown: true |
| | | componentID: 'FormKPI' |
| | | layout |
| | | { |
| | | mode: 'dockright' |
| | | index: 1 |
| | | } |
| | | components |
| | | { |
| | | FormKPI_PanelKPI |
| | | { |
| | | sizeRatio: 1 |
| | | activeChild: 'PanelKPISelection' |
| | | } |
| | | 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: 'Name' |
| | | index: 1 |
| | | subtotals: '' |
| | | width: 200 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | userconfigurableinformation |
| | | { |
| | | } |
| | | page: 'applicationDevelopmentActionBarPageDef' |
| | | group: '' |
| | | index: 1 |
| | | image: 'WINDOW_TIME' |
| | | description: '' |
| | | } |
| | | formatversion: 2 |
| | | id: 'SOP_Versions' |
| | | name: 'SOP Versions' |
| | | isglobal: false |
| | | isroot: true |
| | | } |
| | |
| | | domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitsfrommodel.parameters= |
| | | domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitsfrommodel.password= |
| | | domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle=template:domainmodel.ediremotedatasourcedefinition |
| | | domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle.connection= |
| | | domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle.connection=dbodbc1 |
| | | domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle.maxcolumnnamelength=0 |
| | | domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle.maxtablenamelength=0 |
| | | domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle.parameters= |
| | | domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle.password= |
| | | domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle.parameters=/datasource=orclpdb /owner=TIANMA /chardatatypeforstring /characterencoding=UTF-8 /appdatatypeforstring=wchar |
| | | domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle.password=1 E9FE769DABE91891284EBBA6CEA8F41B 479d6f99-cffb-41e6-94f1-d35bdf20703c |
| | | domainmodel.ediremotedatasourcedefinition.remotestorage.oracle=template:domainmodel.ediremotedatasourcedefinition |
| | | domainmodel.ediremotedatasourcedefinition.remotestorage.oracle.connection=dbodbc1 |
| | | domainmodel.ediremotedatasourcedefinition.remotestorage.oracle.maxcolumnnamelength=0 |