protected void WorkflowParametersGrid_OnItemCommand(Object sender, Telerik.Web.UI.GridCommandEventArgs eventArgs) { switch (eventArgs.CommandName) { case Telerik.Web.UI.RadGrid.EditCommandName: String parameterName = (String)((Telerik.Web.UI.GridEditableItem)eventArgs.Item).OwnerTableView.DataKeyValues[eventArgs.Item.ItemIndex]["ParameterName"]; Mercury.Server.Application.ActionParameter workflowParameter = MercuryApplication.CopyActionParameter(workflow.WorkflowParameters[parameterName]); WorkflowParameterName.Text = parameterName; WorkflowParameterDataType.SelectedValue = ((Int32)workflow.WorkflowParameters[parameterName].DataType).ToString(); eventArgs.Canceled = true; break; } InitializeParametersPage(); WorkflowParametersGrid.SelectedIndexes.Add(eventArgs.Item.ItemIndex); return; }
protected void ButtonAddUpdateWorkflowParameter_OnClick(Object sender, EventArgs eventArgs) { Boolean existingParameterFound = false; Server.Application.ActionParameter newParameter = null; SaveResponseLabel.Text = String.Empty; if (MercuryApplication == null) { return; } newParameter = new Mercury.Server.Application.ActionParameter(); newParameter.ParameterName = WorkflowParameterName.Text; newParameter.DataType = (Mercury.Server.Application.ActionParameterDataType)Convert.ToInt32(WorkflowParameterDataType.SelectedValue); newParameter.AllowFixedValue = WorkflowParameterAllowFixedValue.Checked; newParameter.Required = WorkflowParameterRequired.Checked; if ((!String.IsNullOrEmpty(newParameter.ParameterName)) && (newParameter.ParameterName.Trim().ToLower() != "workflowid")) { existingParameterFound = false; foreach (String currentParameterName in workflow.WorkflowParameters.Keys) { if (currentParameterName.Trim().ToLower() == newParameter.ParameterName.Trim().ToLower()) { existingParameterFound = true; break; } } switch (((System.Web.UI.WebControls.Button)sender).ID) { case "ButtonAddWorkflowParameter": if (!existingParameterFound) { workflow.WorkflowParameters.Add(newParameter.ParameterName, newParameter); SaveResponseLabel.Text = String.Empty; } else { SaveResponseLabel.Text = "Duplicate Parameter."; } break; case "ButtonUpdateWorkflowParameter": if (WorkflowParametersGrid.SelectedItems[0] != null) { workflow.WorkflowParameters[newParameter.ParameterName] = MercuryApplication.CopyActionParameter(newParameter); } else { SaveResponseLabel.Text = "No Parameter Selected."; } break; } } else { SaveResponseLabel.Text = "Invalid Name Specified."; } InitializeParametersPage(); return; }