private IList <string> GetValues()
        {
            FieldsValidator validator = new FieldsValidator();
            IList <string>  values    = new List <string>();

            string     newValue;
            DataColumn column;

            TextBox[] textBoxes = personalDataPage.Controls.OfType <TextBox>().ToArray();
            Label[]   labels    = personalDataPage.Controls.OfType <Label>().ToArray();
            for (int i = 0; i < textBoxes.Length; i++)
            {
                newValue = textBoxes[i].Text.Trim();
                column   = Table.Columns[Table.Columns.IndexOf(labels[i].Text)];
                if (!validator.CheckField(column, newValue))
                {
                    MessageBox.Show(string.Format("Поле '{0}' заповнене невірно.", Table.Columns[labels[i].Text].ColumnName),
                                    "Уважаемый пользователь!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return(null);
                }

                if (string.IsNullOrEmpty(newValue))
                {
                    values.Add("DEFAULT");
                }
                else
                {
                    values.Add(" '" + newValue + "'");
                }
            }

            return(values);
        }
Пример #2
0
        private void ProceedUpdate()
        {
            foreach (KeyValuePair <int, int> cellCoords in CellsUpdated.Keys)
            {
                DataTable table = (DataTable)dataGridView.DataSource;
                // Проверка на корректность содержимого полей
                FieldsValidator validator = new FieldsValidator();
                if (!validator.CheckField(table.Columns[cellCoords.Value], CellsUpdated[cellCoords]))
                {
                    continue;
                }

                string columnName = table.Columns[cellCoords.Value].ColumnName;
                string newValue   = CellsUpdated[cellCoords];
                // Изменить поля с датой в соответствие формату в БД
                if (table.Columns[columnName].DataType.Name.Equals("DateTime"))
                {
                    newValue = validator.ConvertToPostgreSQLDate(newValue);
                }
                if (table.Columns.Contains("id"))
                {
                    UpdateOneValueWithAnyColumn(table.TableName, columnName, newValue,
                                                "id", dataGridView.Rows[cellCoords.Key].Cells[table.Columns.IndexOf("id")].Value.ToString());
                }
                if (table.TableName.Equals("department") || table.TableName.Equals("hall"))
                {
                    UpdateOneValueWithAnyColumn(table.TableName, columnName, newValue,
                                                "name", dataGridView.Rows[cellCoords.Key].Cells[table.Columns.IndexOf("name")].Value.ToString());
                }
            }
        }
Пример #3
0
        private string GetValues(TextBox[] textBoxes)
        {
            Label[] labels = Controls.OfType <Label>().ToArray();

            FieldsValidator validator = new FieldsValidator();
            StringBuilder   values    = new StringBuilder();

            string     newValue;
            DataColumn column;

            for (int i = 0; i < textBoxes.Length; i++)
            {
                newValue = textBoxes[i].Text.Trim();
                column   = Table.Columns[Table.Columns.IndexOf(labels[i].Text)];
                if (!validator.CheckField(column, newValue))
                {
                    MessageBox.Show(string.Format("Поле '{0}' заповнене невірно.", Table.Columns[labels[i].Text].ColumnName),
                                    "Уважаемый пользователь!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return(null);
                }

                // Изменить поля с датой в соответствие формату в БД
                if (column.DataType.Name.Equals("DateTime"))
                {
                    newValue = validator.ConvertToPostgreSQLDate(newValue);
                }

                if (string.IsNullOrEmpty(newValue))
                {
                    values.Append(" DEFAULT");
                }
                else
                {
                    values.Append(" '").Append(newValue).Append("'");
                }
                if (i + 1 < textBoxes.Length)
                {
                    values.Append(",");
                }
            }

            return(values.ToString());
        }