private void BuildAdgroupGKList() { ArrayList gks = new ArrayList(); for (int i = 0; i < _results.Count; i++) { AdgroupAllMeasures aam = (AdgroupAllMeasures)_results[i]; AdgroupGK agk = new AdgroupGK(); agk._adgroupGK = aam.GK; agk._campaignGK = aam.CampaignGK; gks.Add(agk); } if (ParentWorkflow.InternalParameters.ContainsKey("AdgroupGKList")) { ArrayList gkList = (ArrayList)ParentWorkflow.InternalParameters["AdgroupGKList"]; for (int i = 0; i < gkList.Count; i++) { if (!gks.Contains(gkList[i])) { gks.Add(gkList[i]); } } ParentWorkflow.InternalParameters["AdgroupGKList"] = gks; } else { ParentWorkflow.InternalParameters.Add("AdgroupGKList", gks); } }
private void LoadAdgroupForCampaign(int accountID, int channelID, int campaignGK) { using (DataManager.Current.OpenConnection()) { SqlCommand campaignAdgroups = BuildCommand(); campaignAdgroups.Parameters["@Campaign_GK"].Value = campaignGK.ToString(); campaignAdgroups.ExecuteNonQuery(); Hashtable parameters = new Hashtable(); parameters.Add("AccountID", accountID); parameters.Add("ChannelID", channelID); parameters.Add("CampaignGK", campaignGK); //Now we need to loop on the table and build the list of campaigns and deltas. SqlDataReader sdr = GetMeasuredData(parameters); string accountName = String.Empty; while (sdr.Read()) { AdgroupAllMeasures aam = new AdgroupAllMeasures(sdr, Filters, AlertMeasures, _alertType); accountName = aam.AccountName; aam.TimeMeasurement = this.TimeMeasurement; aam.MeasurementType = this.MeasurementType; if (aam.Include) { _results.Add(aam); } } if (!ParentWorkflow.InternalParameters.Contains("AccountName")) { ParentWorkflow.InternalParameters.Add("AccountName", accountName); } sdr.Close(); sdr.Dispose(); BuildAdgroupGKList(); } }