/// <summary> /// <para> /// Validate the display the value of the field contained within DataBinding</para> /// </summary> /// <returns> /// <para>The data validation result.</para> /// </returns> public DataValidation.Result validField(Boolean newRecord, DataBinding dataBinding, DataRow dataRow) { DataValidation.Result dataValidationResult = null; /*switch ((Net7_db.Table_item_device)dataBinding.enumeration) * { * }*/ return(dataValidationResult); }
public DataValidation.Result recordValid() { Boolean newRecord = m_state.Equals(State.Add); DataValidation.Result dataValidationResult = new DataValidation.Result(); String value; foreach (DataBinding dataBinding in listDataBinding) { dataValidationResult = null; // Process the list of validations foreach (DataValidation dataValidation in dataBinding.m_listDataValidation) { if (dataBinding.control.GetType() == typeof(ComboBox)) { ComboBox comboBox = (ComboBox)dataBinding.control; CodeValue codeValue = (CodeValue)comboBox.SelectedItem; if (codeValue == null) { value = null; } else { value = codeValue.code.ToString(); } } else { value = dataBinding.control.Text; } dataValidationResult = dataValidation.validate(value); if (dataValidationResult != null && !dataValidationResult.isValid()) { break; } } if ((dataValidationResult == null || dataValidationResult.isValid()) && dataBinding.enumeration != null) { // Process any special validations specified within the record manager. dataValidationResult = m_recordManager.validField(newRecord, dataBinding, m_dataRow); } if (dataValidationResult != null && !dataValidationResult.isValid()) { dataValidationResult.setControlName(dataBinding.controlName); setFocusOnError(dataBinding.control); break; } } return(dataValidationResult); }
public static Result isInteger(String value) { Int32 number; DataValidation.Result result = isNonEmpty(value); if (result.isValid() && !Int32.TryParse(value, out number)) { result.setMessage("The value '" + value + "' is not an integer"); } return(result); }
public static Result isNumeric(String value) { Decimal number; DataValidation.Result result = isNonEmpty(value); if (result.isValid() && !Decimal.TryParse(value, out number)) { result.setMessage("The value '" + value + "' is not a number"); } return(result); }
public static Result isNumericLesserEqual(String value, Decimal maximum) { Decimal number = 0; DataValidation.Result result = isNumeric(value); if (result.isValid()) { Decimal.TryParse(value, out number); if (number > maximum) { result.setMessage("The value is not lesser or equal to the maximum of " + maximum.ToString()); } } return(result); }
public static Result isNumericGreater(String value, Decimal minimum) { Decimal number = 0; DataValidation.Result result = isNumeric(value); if (result.isValid()) { Decimal.TryParse(value, out number); if (number <= minimum) { result.setMessage("The value is not greater than the minimum of " + minimum.ToString()); } } return(result); }
public static Result isNumericOutsideRange(String value, Decimal lowerBound, Decimal upperBound) { Decimal number = 0; DataValidation.Result result = isNumeric(value); if (result.isValid()) { Decimal.TryParse(value, out number); if (number >= lowerBound && number <= upperBound) { result.setMessage("The value '" + value + "' is within the bounds of " + lowerBound.ToString() + " and " + upperBound.ToString()); } } return(result); }
public static Result isNumericDifferent(String value, Decimal targetValue) { Decimal number = 0; DataValidation.Result result = isNumeric(value); if (result.isValid()) { Decimal.TryParse(value, out number); if (number == targetValue) { result.setMessage("The value is equal to " + targetValue.ToString()); } } return(result); }
public static Result isNumericInsideRange(String value, Decimal minimum, Decimal maximum) { Decimal number = 0; DataValidation.Result result = isNumeric(value); if (result.isValid()) { Decimal.TryParse(value, out number); if (number < minimum) { result.setMessage("The value '" + value + "' is lesser than the minimum of " + minimum.ToString()); } else if (number > maximum) { result.setMessage("The value '" + value + "' is lesser than the minimum of " + minimum.ToString()); } } return(result); }
public DataValidation.Result validField(Boolean newRecord, DataBinding dataBinding, DataRow dataRow) { DataValidation.Result dataValidationResult = null; switch ((Net7.Table_item_base)dataBinding.enumeration) { case Net7.Table_item_base._id: { if (newRecord) { dataBinding.control.Text = Database.getNextItemId(); } } break; case Net7.Table_item_base._category: { ComboBox comboBox = (ComboBox)dataBinding.control; CodeValue codeValue = (CodeValue)comboBox.SelectedItem; //dataValidationResult = DataValidation.isNumericGreaterEqual(codeValue.code.ToString(), 1); dataValidationResult = DataValidation.isNonEmpty(codeValue); if (dataValidationResult.isValid() && !Enum.IsDefined(typeof(Items.ItemCategory), codeValue.code)) { dataValidationResult = new DataValidation.Result("The category '" + codeValue.code + "' is invalid"); } // TODO: Validate through the item_category table /* * dataValidationResult = DataValidation.isInTable(codeValue.code.ToString(), * Net7_db.Tables.item_category.ToString(), * DB.getQueryItemCategory());*/ } break; case Net7.Table_item_base._sub_category: { ComboBox comboBox = (ComboBox)dataBinding.control; CodeValue codeValue = (CodeValue)comboBox.SelectedItem; // TODO: codeValue can be null even though there is something displayed on the screen //dataValidationResult = DataValidation.isNumericGreaterEqual(codeValue.code.ToString(), 1); dataValidationResult = DataValidation.isNonEmpty(codeValue); if (dataValidationResult.isValid() && !Enum.IsDefined(typeof(Items.ItemSubCategory), codeValue.code)) { dataValidationResult = new DataValidation.Result("The sub-category '" + codeValue.code + "' is invalid"); } // TODO: Validate through the item_sub_category table /* * dataValidationResult = DataValidation.isInTable(codeValue.code.ToString(), * Net7_db.Tables.item_sub_category.ToString(), * DB.getQueryItemSubCategory());*/ /* * if(dataValidationResult.isValid()) * { * String query = "SELECT item_id" + " FROM " + Net7_db.Tables.item_subcategory.ToString() + " WHERE " + ColumnData.GetName(Net7_db.item_subcategory._item_id) + " = '" + codeValue.code.ToString() + "'"; + dataValidationResult = DataValidation.isIdInTable(codeValue.code.ToString(), + Net7_db.Tables.item_subcategory.ToString(), + query); + } */ } break; case Net7.Table_item_base._manufacturer: { ComboBox comboBox = (ComboBox)dataBinding.control; CodeValue codeValue = (CodeValue)comboBox.SelectedItem; dataValidationResult = DataValidation.isNumeric(codeValue.code.ToString()); if (dataValidationResult.isValid()) { String query = "SELECT " + ColumnData.GetName(Net7.Table_item_manufacturer_base._id) + " FROM " + Net7.Tables.item_manufacturer_base.ToString() + " WHERE " + ColumnData.GetName(Net7.Table_item_manufacturer_base._id) + " = '" + codeValue.code.ToString() + "'"; dataValidationResult = DataValidation.isInTable(codeValue.code.ToString(), "Manufacturers", query); } } break; case Net7.Table_item_base._name: dataValidationResult = DataValidation.isNonEmpty(dataBinding.control.Text); if (dataValidationResult.isValid()) { String columnName = ColumnData.GetName(Net7.Table_item_base._name); String currentValue = newRecord ? "" : dataRow[columnName].ToString(); String newValue = dataBinding.control.Text; if (currentValue.ToLower().CompareTo(newValue.ToLower()) != 0 && // It's not a simple rename !currentValue.Equals(newValue)) { String query = "SELECT " + columnName + " FROM " + Net7.Tables.item_base.ToString() + " WHERE " + columnName + " = '" + dataBinding.control.Text.Replace("'", "''") + "'"; dataValidationResult = DataValidation.isNotInTable(dataBinding.control.Text, "Items", query); } } break; case Net7.Table_item_base._item_base_id: { TextBox baseItemId = (TextBox)dataBinding.control; if (baseItemId.Enabled) { String columnName = ColumnData.GetName(Net7.Table_item_base._id); String query = "SELECT " + columnName + " FROM " + Net7.Tables.item_base.ToString() + " WHERE " + columnName + " = '" + dataBinding.control.Text + "'"; dataValidationResult = DataValidation.isInTable(dataBinding.control.Text, "Items", query); } } break; case Net7.Table_item_base._effect_id: { TextBox equipVisualEffectId = (TextBox)dataBinding.control; if (equipVisualEffectId.Enabled) { String columnName = ColumnData.GetName(Net7.Table_effects._effect_id); String query = "SELECT " + columnName + " FROM " + Net7.Tables.effects + " WHERE " + columnName + " = '" + dataBinding.control.Text + "'"; dataValidationResult = DataValidation.isInTable(dataBinding.control.Text, "Effects", query); } } break; } return(dataValidationResult); }
/// <summary> /// <para> /// Validate the display the value of the field contained within DataBinding</para> /// </summary> /// <returns> /// <para>The data validation result.</para> /// </returns> public DataValidation.Result validField(Boolean newRecord, DataBinding dataBinding, DataRow dataRow) { DataValidation.Result dataValidationResult = null; switch ((Net7.Table_item_manufacture)dataBinding.enumeration) { case Net7.Table_item_manufacture._item_id: { if (newRecord) { // Store the item ID String itemIdColumnName = ColumnData.GetName(Net7.Table_item_base._id); String itemId = dataRow[itemIdColumnName].ToString(); String manufacturingIdColumnName = ColumnData.GetName(Net7.Table_item_manufacture._item_id); dataRow[manufacturingIdColumnName] = itemId; } } break; case Net7.Table_item_manufacture._comp_1: case Net7.Table_item_manufacture._comp_2: case Net7.Table_item_manufacture._comp_3: case Net7.Table_item_manufacture._comp_4: case Net7.Table_item_manufacture._comp_5: case Net7.Table_item_manufacture._comp_6: { int componentIndex = getComponentIndexFromEnum((Net7.Table_item_manufacture)dataBinding.enumeration); String componentId = m_listComponentFields[componentIndex].getFields().m_field.Text; if (componentIndex == 0) { dataValidationResult = componentId.Equals(UnspecifiedComponentId) ? null : DataValidation.isInTable(componentId, Net7.Tables.item_manufacture.ToString(), Database.getQueryItem(componentId)); } else if (componentIndex > 0) { // Valid to be unspecified otherwise must be in the item table dataValidationResult = componentId.Equals(UnspecifiedComponentId) ? null : DataValidation.isInTable(componentId, "Items", Database.getQueryItem(componentId)); if (dataValidationResult == null || dataValidationResult.isValid()) { // Previous component must be specified String previousComponentId = m_listComponentFields[componentIndex - 1].getFields().m_field.Text; if (!componentId.Equals(UnspecifiedComponentId) && previousComponentId.Equals(UnspecifiedComponentId)) { if (dataValidationResult == null) { dataValidationResult = new DataValidation.Result(); } dataValidationResult.setMessage("You must define the previous component before specifying this one"); } } } } break; } return dataValidationResult; }
public void saveRecord() { DataValidation.Result dataValidationResult = new DataValidation.Result(); // 1. Validate the data foreach (TableHandler tableHandler in listTableHandler) { if (!tableHandler.getTableIO().isRecordOptional()) { dataValidationResult = tableHandler.getTableIO().recordValid(); if (dataValidationResult != null && !dataValidationResult.isValid()) { dataValidationResult.showMessage(); break; } } } if (dataValidationResult == null || dataValidationResult.isValid()) { // 2. Retrieve the id from the primary table String primaryId = null; if (listTableHandler.Count != 0) { TableHandler primaryTableHandler = listTableHandler[0]; if (true /*|| primaryTableHandler.getTableIO().getState().Equals(TableIO.State.Add)*/ ) { Control idControl = primaryTableHandler.getTableIO().findControl(Net7.Table_item_base._id); if (idControl != null) { primaryId = idControl.Text; } } } else { // Data is invalid, issue a halt to this process } // 3. Save each table // TODO: This generates multiple calls to TableIO.enableFiels() foreach (TableHandler tableHandler in listTableHandler) { if (!tableHandler.getTableIO().isRecordOptional()) { if (!tableHandler.getTableIO().recordSave(primaryId)) { return; } } } // 4. Set the proper state foreach (TableHandler tableHandler in listTableHandler) { tableHandler.getTableIO().setState(TableIO.State.View); } } }
/// <summary> /// <para> /// Validate the display the value of the field contained within DataBinding</para> /// </summary> /// <returns> /// <para>The data validation result.</para> /// </returns> public DataValidation.Result validField(Boolean newRecord, DataBinding dataBinding, DataRow dataRow) { DataValidation.Result dataValidationResult = null; return(dataValidationResult); }
public DataValidation.Result recordValid() { Boolean newRecord = m_state.Equals(State.Add); DataValidation.Result dataValidationResult = new DataValidation.Result(); String value; foreach (DataBinding dataBinding in listDataBinding) { dataValidationResult = null; // Process the list of validations foreach (DataValidation dataValidation in dataBinding.m_listDataValidation) { if (dataBinding.control.GetType() == typeof(ComboBox)) { ComboBox comboBox = (ComboBox)dataBinding.control; CodeValue codeValue = (CodeValue)comboBox.SelectedItem; if (codeValue == null) { value = null; } else { value = codeValue.code.ToString(); } } else { value = dataBinding.control.Text; } dataValidationResult = dataValidation.validate(value); if (dataValidationResult != null && !dataValidationResult.isValid()) { break; } } if ((dataValidationResult == null || dataValidationResult.isValid()) && dataBinding.enumeration != null) { // Process any special validations specified within the record manager. dataValidationResult = m_recordManager.validField(newRecord, dataBinding, m_dataRow); } if (dataValidationResult != null && !dataValidationResult.isValid()) { dataValidationResult.setControlName(dataBinding.controlName); setFocusOnError(dataBinding.control); break; } } return dataValidationResult; }
public DataValidation.Result validField(Boolean newRecord, DataBinding dataBinding, DataRow dataRow) { DataValidation.Result dataValidationResult = null; switch ((Net7.Table_item_base)dataBinding.enumeration) { case Net7.Table_item_base._id: { if (newRecord) { dataBinding.control.Text = Database.getNextItemId(); } } break; case Net7.Table_item_base._category: { ComboBox comboBox = (ComboBox)dataBinding.control; CodeValue codeValue = (CodeValue)comboBox.SelectedItem; //dataValidationResult = DataValidation.isNumericGreaterEqual(codeValue.code.ToString(), 1); dataValidationResult = DataValidation.isNonEmpty(codeValue); if (dataValidationResult.isValid() && !Enum.IsDefined(typeof(Items.ItemCategory), codeValue.code)) { dataValidationResult = new DataValidation.Result("The category '" + codeValue.code + "' is invalid"); } // TODO: Validate through the item_category table /* dataValidationResult = DataValidation.isInTable(codeValue.code.ToString(), Net7_db.Tables.item_category.ToString(), DB.getQueryItemCategory());*/ } break; case Net7.Table_item_base._sub_category: { ComboBox comboBox = (ComboBox)dataBinding.control; CodeValue codeValue = (CodeValue)comboBox.SelectedItem; // TODO: codeValue can be null even though there is something displayed on the screen //dataValidationResult = DataValidation.isNumericGreaterEqual(codeValue.code.ToString(), 1); dataValidationResult = DataValidation.isNonEmpty(codeValue); if (dataValidationResult.isValid() && !Enum.IsDefined(typeof(Items.ItemSubCategory), codeValue.code)) { dataValidationResult = new DataValidation.Result("The sub-category '" + codeValue.code + "' is invalid"); } // TODO: Validate through the item_sub_category table /* dataValidationResult = DataValidation.isInTable(codeValue.code.ToString(), Net7_db.Tables.item_sub_category.ToString(), DB.getQueryItemSubCategory());*/ /* if(dataValidationResult.isValid()) { String query = "SELECT item_id" + " FROM " + Net7_db.Tables.item_subcategory.ToString() + " WHERE " + ColumnData.GetName(Net7_db.item_subcategory._item_id) + " = '" + codeValue.code.ToString() + "'"; dataValidationResult = DataValidation.isIdInTable(codeValue.code.ToString(), Net7_db.Tables.item_subcategory.ToString(), query); } */ } break; case Net7.Table_item_base._manufacturer: { ComboBox comboBox = (ComboBox)dataBinding.control; CodeValue codeValue = (CodeValue)comboBox.SelectedItem; dataValidationResult = DataValidation.isNumeric(codeValue.code.ToString()); if(dataValidationResult.isValid()) { String query = "SELECT " + ColumnData.GetName(Net7.Table_item_manufacturer_base._id) + " FROM " + Net7.Tables.item_manufacturer_base.ToString() + " WHERE " + ColumnData.GetName(Net7.Table_item_manufacturer_base._id) + " = '" + codeValue.code.ToString() + "'"; dataValidationResult = DataValidation.isInTable(codeValue.code.ToString(), "Manufacturers", query); } } break; case Net7.Table_item_base._name: dataValidationResult = DataValidation.isNonEmpty(dataBinding.control.Text); if (dataValidationResult.isValid()) { String columnName = ColumnData.GetName(Net7.Table_item_base._name); String currentValue = newRecord ? "" : dataRow[columnName].ToString(); String newValue = dataBinding.control.Text; if( currentValue.ToLower().CompareTo(newValue.ToLower()) != 0 // It's not a simple rename && !currentValue.Equals(newValue)) { String query = "SELECT " + columnName + " FROM " + Net7.Tables.item_base.ToString() + " WHERE " + columnName + " = '" + dataBinding.control.Text.Replace("'", "''") + "'"; dataValidationResult = DataValidation.isNotInTable(dataBinding.control.Text, "Items", query); } } break; case Net7.Table_item_base._item_base_id: { TextBox baseItemId = (TextBox)dataBinding.control; if (baseItemId.Enabled) { String columnName = ColumnData.GetName(Net7.Table_item_base._id); String query = "SELECT " + columnName + " FROM " + Net7.Tables.item_base.ToString() + " WHERE " + columnName + " = '" + dataBinding.control.Text + "'"; dataValidationResult = DataValidation.isInTable(dataBinding.control.Text, "Items", query); } } break; case Net7.Table_item_base._effect_id: { TextBox equipVisualEffectId = (TextBox)dataBinding.control; if (equipVisualEffectId.Enabled) { String columnName = ColumnData.GetName(Net7.Table_effects._effect_id); String query = "SELECT " + columnName + " FROM " + Net7.Tables.effects + " WHERE " + columnName + " = '" + dataBinding.control.Text + "'"; dataValidationResult = DataValidation.isInTable(dataBinding.control.Text, "Effects", query); } } break; } return dataValidationResult; }
/// <summary> /// <para> /// Validate the display the value of the field contained within DataBinding</para> /// </summary> /// <returns> /// <para>The data validation result.</para> /// </returns> public DataValidation.Result validField(Boolean newRecord, DataBinding dataBinding, DataRow dataRow) { DataValidation.Result dataValidationResult = null; switch ((Net7.Table_item_manufacture)dataBinding.enumeration) { case Net7.Table_item_manufacture._item_id: { if (newRecord) { // Store the item ID String itemIdColumnName = ColumnData.GetName(Net7.Table_item_base._id); String itemId = dataRow[itemIdColumnName].ToString(); String manufacturingIdColumnName = ColumnData.GetName(Net7.Table_item_manufacture._item_id); dataRow[manufacturingIdColumnName] = itemId; } } break; case Net7.Table_item_manufacture._comp_1: case Net7.Table_item_manufacture._comp_2: case Net7.Table_item_manufacture._comp_3: case Net7.Table_item_manufacture._comp_4: case Net7.Table_item_manufacture._comp_5: case Net7.Table_item_manufacture._comp_6: { int componentIndex = getComponentIndexFromEnum((Net7.Table_item_manufacture)dataBinding.enumeration); String componentId = m_listComponentFields[componentIndex].getFields().m_field.Text; if (componentIndex == 0) { dataValidationResult = componentId.Equals(UnspecifiedComponentId) ? null : DataValidation.isInTable(componentId, Net7.Tables.item_manufacture.ToString(), Database.getQueryItem(componentId)); } else if (componentIndex > 0) { // Valid to be unspecified otherwise must be in the item table dataValidationResult = componentId.Equals(UnspecifiedComponentId) ? null : DataValidation.isInTable(componentId, "Items", Database.getQueryItem(componentId)); if (dataValidationResult == null || dataValidationResult.isValid()) { // Previous component must be specified String previousComponentId = m_listComponentFields[componentIndex - 1].getFields().m_field.Text; if (!componentId.Equals(UnspecifiedComponentId) && previousComponentId.Equals(UnspecifiedComponentId)) { if (dataValidationResult == null) { dataValidationResult = new DataValidation.Result(); } dataValidationResult.setMessage("You must define the previous component before specifying this one"); } } } } break; } return(dataValidationResult); }