Quintiq file version 2.0 Component ListActiveGoal { #keys: '[112884.0.700844712]' BaseType: 'List' Children: [ #child: ColumnTitles Component popupList { #keys: '[112884.0.700844713]' BaseType: 'popupList' Children: [ Component PopupParent { #keys: '[514.0.129466]' BaseType: 'PopupParent' IsDerived: true Children: [ Component Menu1 { #keys: '[112884.0.705686565]' BaseType: 'Menu' Properties: [ Separator: true ] } Component MenuIncreaseWeight { #keys: '[112884.0.705689586]' BaseType: 'Menu' Properties: [ Image: 'LM_HOR_FIX_PLUS' Shortcut: '+' Text: 'Increase weight' ] } Component MenuDecreaseWeight { #keys: '[112884.0.705692493]' BaseType: 'Menu' Properties: [ Image: 'LM_HOR_FIX_MINUS' Shortcut: '-' Text: 'Decrease weight' ] } Component Menu3 { #keys: '[112884.0.705694114]' BaseType: 'Menu' Properties: [ Separator: true ] } Component MenuEdit { #keys: '[112884.0.705696845]' BaseType: 'Menu' Properties: [ BindDoubleClick: true Image: 'DOCUMENT_EDIT' Shortcut: 'Enter' Text: '&Edit...' ] } Component Menu4 { #keys: '[112884.0.705699567]' BaseType: 'Menu' Properties: [ Separator: true ] } Component MenuDeactivate { #keys: '[112884.0.705706292]' BaseType: 'Menu' Properties: [ Image: 'TRASH' Shortcut: 'Del' Text: '&Deactivate' ] } Component MenuIncreaseLevel { #keys: '[112884.0.705709700]' BaseType: 'Menu' Properties: [ Image: 'DOWN_PLUS' Shortcut: 'Ctrl+Down' Text: 'Increase level' ] } Component MenuDecreaseLevel { #keys: '[112884.0.705710781]' BaseType: 'Menu' Properties: [ Image: 'UP_MINUS' Shortcut: 'Ctrl+Up' Text: 'Decrease level' ] } ] Properties: [ ModeledStringList ChildOrdering { c: MenuActions c: MenuFilter c: menuListQuintiqSetQuantor c: Menu1 c: MenuEdit c: MenuDeactivate c: Menu4 c: MenuIncreaseLevel c: MenuDecreaseLevel c: Menu3 c: MenuIncreaseWeight c: MenuDecreaseWeight } ] } ] Properties: [ PosX: 2 PosY: 25 SizePosition: 'lt2 28 25 51' ] } Component GUIDataExtractorUserGroupDefinition { #keys: '[112884.0.700844714]' BaseType: 'GUIDataExtractor' Properties: [ Component: 'DataHolderActiveKPIs' DataType: 'structured[shadow[KPIWeight]]' FixedFilter: 'object.KPI().IsUsedByOptimizer() and object.Level() > 0' PosX: 3 PosY: 56 SizePosition: 'lt2 28 57 83' Transformation: 'Elements' ] } Component GUIDataSetLevelActiveKPIWeight { #keys: '[112884.0.700844715]' BaseType: 'GUIDataSetLevel' Properties: [ AutoSelectColumns: false Columns: 'KPIWeightColumns1' DataExtractor: 'GUIDataExtractorUserGroupDefinition' PosX: 2 PosY: 89 SizePosition: 'lt2 28 89 115' SortCriteria: 'Level;DisplayIndex' ] } Component UserConfigurableInformation { #keys: '[112884.1.258364182]' BaseType: 'UserConfigurableInformation' Properties: [ Identification: 'KPIWeightActiveGoal' ObjectType: 'shadow[KPIWeight]' PosX: 239 PosY: 80 Precondition: "not object.KPIName() = 'Campaign'" TooltipText: [* VALUE(object.KPI().DescriptionUOM()) VALUE(ifexpr( object.KPI().IsMaximize() and object.Level()=1, 'Having this bonus-driven goal on the first level may result in an unbounded and potentially infeasible plan.', '')) *] ] } Component DataHolderActiveKPIs { #keys: '[113402.0.1062734750]' BaseType: 'DataHolder' Databinding: 'structured[shadow[KPIWeight]]*' Children: [ Component GUIDataExtractorListActiveKPI { #keys: '[113402.0.1062736111]' BaseType: 'GUIDataExtractor' Properties: [ Component: 'ScenarioManager_DialogCreateEditStrategy' DataType: 'shadow[Strategy]' FixedFilter: 'object.KPI().IsUsedByOptimizer() and object.Level() > 0' PosX: 59 PosY: 53 Transformation: 'KPIWeight' ] } ] Properties: [ PosX: 234 PosY: 160 ] } Component UserConfigurableInformationCampaign { #keys: '[146140.2.136473077]' BaseType: 'UserConfigurableInformation' Properties: [ Identification: 'KPIWeightActiveGoal' ObjectType: 'shadow[KPIWeight]' PosX: 271 PosY: 81 Precondition: "object.KPIName() = 'Campaign'" TooltipText: [* VALUE(ifexpr( object.KPI().IsMaximize() and object.Level()=1, 'The campaign goal contains both penalty-driven and bonus-driven sub-goals. Placing it on the same level as other penalty-driven goals, such as unity capacity, might result in an unbounded or infeasible plan.',object.KPI().DescriptionUOM())) VALUE(ifexpr( object.KPI().IsMaximize() and object.Level()=1, 'Suggest prioritizing penalty-driven constraints and placing the campaign goal on a separate level.', '')) *] ] } ] Properties: [ AutoDrag: true BackgroundColor: 'White' ContextMenu: 'popupList' FullRowSelect: true NumberColumns: 0 NumberLines: 0 SizePosition: 'ss0 0 0 0' ModeledStringList ChildOrdering { c: ColumnTitles c: popupList c: GUIDataExtractorUserGroupDefinition c: GUIDataSetLevelActiveKPIWeight c: UserConfigurableInformation c: DataHolderActiveKPIs c: UserConfigurableInformationCampaign } ] ResponseDefinitions: [ DelegatedResponseDefinition OnClick id:Responsedef_ListActiveGoal_Menu_OnClick { #keys: '[11122.0.41582911]' Initiator: 'Menu' IsInherited: false ResponseType: 'OnClick' Arguments: [ ResponseDefinitionArgument selection { #keys: '[11122.0.41582912]' Binding: 'this.Selection()' } ] } DelegatedResponseDefinition OnClick id:Responsedef_ListActiveGoal_GUIButtonBase_OnClick { #keys: '[11122.0.41582919]' Initiator: 'GUIButtonBase' IsInherited: false ResponseType: 'OnClick' Arguments: [ ResponseDefinitionArgument selection { #keys: '[11122.0.41582920]' Binding: 'this.Selection()' } ] } ] }