protected void ButtonAddUpdateIntervention_OnClick(Object sender, EventArgs eventArgs) { Boolean existingInterventionFound = false; Client.Core.Individual.CarePlanIntervention newIntervention = null; Int64 careInterventionId = 0; Client.Core.Individual.CarePlanGoal carePlanGoal; Client.Core.Individual.CareIntervention careIntervention; Dictionary <String, String> validationResponse; SaveResponseLabel.Text = String.Empty; if (MercuryApplication == null) { return; } if (CarePlanCareInterventionGoalSelection.SelectedItem == null) { return; } if (CarePlanCareInterventionSelection.SelectedItem == null) { return; } // GOAL THAT IS TO BE THE PARENT OF THE INTERVENTION carePlanGoal = carePlan.CarePlanGoal(CarePlanCareInterventionGoalSelection.SelectedValue); if (carePlanGoal == null) { return; } // CREATE INTERVENTION careInterventionId = Convert.ToInt64(CarePlanCareInterventionSelection.SelectedValue); careIntervention = MercuryApplication.CareInterventionGet(careInterventionId, true); newIntervention = new Client.Core.Individual.CarePlanIntervention(MercuryApplication); newIntervention.CarePlanGoalId = carePlanGoal.Id; newIntervention.CarePlanGoal = carePlanGoal; newIntervention.Name = careIntervention.Name; newIntervention.Description = careIntervention.Description; newIntervention.CareInterventionId = careIntervention.Id; newIntervention.Inclusion = (Mercury.Server.Application.CarePlanItemInclusion)Convert.ToInt32(CarePlanInteventionInclusionSelection.SelectedValue); validationResponse = MercuryApplication.CoreObject_Validate((Mercury.Server.Application.CoreObject)newIntervention.ToServerObject()); if (validationResponse.Count == 0) { existingInterventionFound = carePlanGoal.ContainsCareIntervention(careInterventionId); switch (((System.Web.UI.WebControls.Button)sender).ID) { case "ButtonAddIntervention": if (!existingInterventionFound) { carePlanGoal.Interventions.Add(newIntervention); SaveResponseLabel.Text = String.Empty; } else { SaveResponseLabel.Text = "Duplicate Intervention."; } break; case "ButtonUpdateIntervention": if (InterventionsGrid.SelectedItems.Count != 0) { newIntervention.Id = carePlanGoal.Interventions[InterventionsGrid.SelectedItems[0].DataSetIndex].Id; carePlanGoal.Interventions.RemoveAt(InterventionsGrid.SelectedItems[0].DataSetIndex); carePlanGoal.Interventions.Add(newIntervention); } else { SaveResponseLabel.Text = "No Intervention Selected."; } break; } } else { foreach (String validationKey in validationResponse.Keys) { SaveResponseLabel.Text = "Invalid [" + validationKey + "]: " + validationResponse[validationKey]; break; } } InitializeInterventionsPage(); InterventionsGrid.Rebind(); return; }