Quintiq file version 2.0 #parent: #root Method NewCampaign ( internal[GUIComponent] parent, CampaignType_MP campaigntype, Unit owner ) as Campaign_MP id:Method_DialogCreateEditCampaign_MP_NewCampaign { #keys: '[110880.4.851635701]' Body: [* // New campaign if( isnull( campaigntype ) ) { campaigntype := Campaign_MP::GetDefaultCampaignType( owner ); } data := owner.Campaign_MP( relshadow, UnitID := owner.ID(), CampaignID := "", // Temporary set CampaignID to empty, will be defined during creation InputType := campaigntype.InputType() ); // Create will default to campaign type input type Dialog.Data( data ); Dialog.SetDefaultValue( campaigntype ); ValueHolderCampaignAddToLast.Data( true ); this.InitializeDialog(); this.SetIndicatorValue(); result := Dialog.DoModal( parent ); newobj := null( Campaign_MP ); if( result > 0 ) { campaignid := OS::GenerateGUIDAsString(); newobj := Campaign_MP::Create( SelectionCampaignType.Data().Unit(), data.EarliestStart(), data.SequenceNumberForExcel(), data.MinQuantity(), data.MaxQuantity(), data.MinDuration(), data.MaxDuration(), SelectionCampaignType.Data().Name(), campaignid, data.Comment(), data.HasInputMaxQuantity() and RadioButtonGroupQuantityDuration.BoundValue() = GlobalParameters_MP::GetCampaignTransitionsTypeQuantity(), data.HasInputMaxDuration() and RadioButtonGroupQuantityDuration.BoundValue() = GlobalParameters_MP::GetCampaignTransitionsTypeDuration(), false ); } return newobj; *] }