void UpdateField() { var fieldOrder = (int)DataSource[FieldsTableColumn.Order]; var newFieldType = cboFieldType.SelectedItem.Value; var newHelpText = txtHelpText.Text.Trim(); var fieldTitle = GetFieldTitle(); var inputSettings = GetInputSettings(); var formerTitle = DataSource[FieldsTableColumn.Title].AsString(); var formerType = DataType.ByName(DataSource[FieldsTableColumn.Type].AsString()); var id = DataSource[FieldsTableColumn.Id].AsInt(); if (IsAllowedFieldTitle(fieldTitle) && IsUniqueFieldTitle(fieldTitle, formerTitle)) { if (formerType.IsUserDefinedField) { if (IsNewField(id)) { id = FieldController.AddField(ModuleContext.ModuleId, fieldTitle, fieldOrder, newHelpText, chkRequired.Checked, newFieldType, txtDefault.Text, chkDisplayOnList.Checked, chkShowOnEdit.Checked, chkSearchable.Checked, chkRestrictedFormField.Checked, chkMultipleValues.Checked, inputSettings, txtOutputSettings.Text, chkNormalizeFlag.Checked, txtValidationRule.Text, txtValidationMessage.Text, txtEditStyle.Text); if (txtDefault.Text != "") { new UserDefinedTableController(ModuleContext).FillDefaultData(id, txtDefault.Text); } } else { FieldController.UpdateField(id, fieldTitle, newHelpText, chkRequired.Checked, newFieldType, txtDefault.Text, chkDisplayOnList.Checked, chkShowOnEdit.Checked, chkSearchable.Checked, chkRestrictedFormField.Checked, chkMultipleValues.Checked, inputSettings, txtOutputSettings.Text, chkNormalizeFlag.Checked, txtValidationRule.Text, txtValidationMessage.Text, txtEditStyle.Text); } } else { FieldController.UpdateField(id, fieldTitle, newHelpText, true, formerType.Name, string.Empty, chkDisplayOnList.Checked, chkShowOnEdit.Checked, chkSearchable.Checked, chkRestrictedFormField.Checked, false, string.Empty, txtOutputSettings.Text, chkNormalizeFlag.Checked, string.Empty, string.Empty, string.Empty); } } ListFieldSettings.Update(id, DataType.ByName(newFieldType)); FormFieldSettings.Update(id, DataType.ByName(newFieldType)); }