Пример #1
0
        protected void GridViewParameters_Action(object sender, CommonGridViewActionEventArgs e)
        {
            if (e == null)
            {
                return;
            }

            switch (e.Action)
            {
            case CommandActions.Add:
                GridViewParameters.Visible = false;
                TableEditParameter.Visible = true;
                RuleParameterCaption.Text  = MagicForm.GetCaption(DetailsViewMode.Insert, Resources.RuleParametersControl_RuleParameterCaption_Text);
                m_EntityValue = null;
                m_FieldName   = null;
                DropDownListEntityTypes.DataBind();
                if (DropDownListEntityTypes.Items.Count > 0)
                {
                    DropDownListEntityTypes_SelectedIndexChanged(DropDownListEntityTypes, EventArgs.Empty);
                }
                break;

            case CommandActions.Edit:
                GridViewParameters.SelectedIndex = e.RowIndex;
                GridViewParameters.Visible       = false;
                TableEditParameter.Visible       = true;
                RuleParameterCaption.Text        = MagicForm.GetCaption(DetailsViewMode.Edit, Resources.RuleParametersControl_RuleParameterCaption_Text);
                ClientDataSet.RuleParametersRow row = RuleEngineProvider.GetRuleParameterRow(this.RuleParameterId);
                if (row != null)
                {
                    m_FieldName   = row.FieldName;
                    m_EntityValue = row.Value;
                    m_Term        = row.Term;
                    DropDownListEntityTypes.DataBind();
                    DropDownListEntityTypes.SelectedValue = row.EntityNodeTypeId.ToString();
                    DropDownListEntityTypes_SelectedIndexChanged(DropDownListEntityTypes, EventArgs.Empty);
                }
                break;

            case CommandActions.Delete:
                GridViewParameters.DataBind();
                break;

            default:
                break;
            }
        }
Пример #2
0
        public static void UpdateRuleParameter(Guid organizationId, Guid ruleParameterId, Guid ruleId,
                                               Guid entityNodeTypeId, bool isInputParameter, bool isEntity, string fieldName, string fullName
                                               , string typeName, string term, object value)
        {
            if (organizationId.Equals(Guid.Empty) || ruleParameterId.Equals(Guid.Empty) || value == null)
            {
                throw new ArgumentNullException("ruleParameterId", Properties.Resources.ExceptionMessage_ArgumentsIsEmpty);
            }

            using (RuleParametersTableAdapter adapter = new RuleParametersTableAdapter(OrganizationProvider.GetConnectionString(organizationId)))
            {
                ClientDataSet.RuleParametersDataTable table = adapter.GetRuleParameter(ruleParameterId);

                ClientDataSet.RuleParametersRow row = ((table.Count > 0) ? table[0] : null);

                if (row == null)
                {
                    row = table.NewRuleParametersRow();
                }

                row.RuleParameterId  = ruleParameterId;
                row.RuleId           = ruleId;
                row.EntityNodeTypeId = entityNodeTypeId;
                row.IsInputParameter = isInputParameter;
                row.IsEntity         = isEntity;
                row.FieldName        = fieldName;
                row.FullName         = fullName;
                row.TypeName         = typeName;
                row.Term             = term;
                row.Value            = value;

                if (row.RowState == DataRowState.Detached)
                {
                    table.AddRuleParametersRow(row);
                }

                adapter.Update(row);
            }
        }