private void button8_Click(object sender, EventArgs e)
        {
            txtDBColumnName.CausesValidation = true;
            cbColumnType.CausesValidation    = true;

            if (!validateInputs(panel1))
            {
                return;
            }

            columnTypes selectedType = columnTypes.STRING;

            switch (cbColumnType.Text)
            {
            case "DECIMAL 0.00": { selectedType = columnTypes.DECIMAL_18_2; } break;

            case "DECIMAL 0.000": { selectedType = columnTypes.DECIMAL_18_3; } break;

            case "DECIMAL 0.0000": { selectedType = columnTypes.DECIMAL_18_4; } break;

            case "DECIMAL 0.00000": { selectedType = columnTypes.DECIMAL_18_5; } break;
            }

            tempMethods.createDBColumn(txtDBColumnName.Text, selectedType);
            cbColumnNames.SelectedValue = txtDBColumnName.Text;
            txtDBColumnName.Text        = "";
            loadDBColumns();
        }
示例#2
0
        private void createDBColumnMaster(string columnName, columnTypes colType, TableNames.StockTables tableName)
        {
            //format columnName
            columnName = System.Threading.Thread.CurrentThread.CurrentCulture.TextInfo.ToTitleCase(columnName.ToLower());
            columnName = columnName.Replace(" ", "");

            //determines the column type
            string scolType = "VARCHAR(500)";

            switch (colType)
            {
            case columnTypes.DECIMAL_18_2: { scolType = "DECIMAL(18, 2)"; } break;

            case columnTypes.DECIMAL_18_3: { scolType = "DECIMAL(18, 3)"; } break;

            case columnTypes.DECIMAL_18_4: { scolType = "DECIMAL(18, 4)"; } break;

            case columnTypes.DECIMAL_18_5: { scolType = "DECIMAL(18, 5)"; } break;
            }

            //creates the column
            string query = @"
IF NOT EXISTS (SELECT *
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = '" + tableName + "' AND COLUMN_NAME = '" + columnName + @"')
ALTER TABLE [DBO]." + tableName + " ADD " + columnName + @" " + scolType + @" NULL
";

            try
            {
                db.write(query);
            }
            catch (Exception ee)
            {
                throw new DataException("Unable to create database column: " + ee.Message, ee);
            }
        }
示例#3
0
 public void createDBColumn(string columnName, columnTypes colType)
 {
     createDBColumnMaster(columnName, colType, TableNames.StockTables.StockItems);
     createDBColumnMaster(columnName, colType, TableNames.StockTables.StockItems_Specials);
 }
示例#4
0
        private TemplateColumns bindTemplateColumns(DataRow dr)
        {
            TemplateColumns tc = new TemplateColumns();

            tc.templateColumnID = dr["templateColumnID"].ToString();
            tc.csvHeader        = dr["csvHeader"].ToString();
            tc.databaseColumn   = dr["databaseColumn"].ToString();
            switch (dr["calculationType"].ToString())
            {
            case "CALCULATE": { tc.calculationType = columnCalculationType.CALCULATE; } break;

            case "MERGE": { tc.calculationType = columnCalculationType.MERGE; } break;

            case "NONE": { tc.calculationType = columnCalculationType.NONE; } break;

            case "COPY": { tc.calculationType = columnCalculationType.COPY; } break;

            default: { tc.calculationType = columnCalculationType.NONE; } break;
            }

            columnTypes selectedFormat = columnTypes.STRING;

            switch (dr["columnType"].ToString())
            {
            case "STRING": { selectedFormat = columnTypes.STRING; } break;

            case "DECIMAL 0.00": { selectedFormat = columnTypes.DECIMAL_18_2; } break;

            case "DECIMAL 0.000": { selectedFormat = columnTypes.DECIMAL_18_3; } break;

            case "DECIMAL 0.0000": { selectedFormat = columnTypes.DECIMAL_18_4; } break;

            case "DECIMAL 0.00000": { selectedFormat = columnTypes.DECIMAL_18_5; } break;
            }

            tc.columnType    = selectedFormat;
            tc.calculation   = dr["calculation"].ToString();
            tc.applyRounding = bool.Parse(dr["applyRounding"].ToString());
            tc.dontOverride  = bool.Parse(dr["dontOverride"].ToString());
            tc.position      = int.Parse(dr["position"].ToString());
            tc.exportDefault = dr["exportDefault"].ToString();
            if (!string.IsNullOrWhiteSpace(dr["includeAttributes"].ToString()))
            {
                tc.includeAttributes = bool.Parse(dr["includeAttributes"].ToString());
            }
            tc.specialsBasePriceCSVColumn = dr["specialsBasePriceCSVColumn"].ToString();
            if (!string.IsNullOrWhiteSpace(dr["isSpecialsExportColumn"].ToString()))
            {
                tc.isSpecialsExportColumn = bool.Parse(dr["isSpecialsExportColumn"].ToString());
            }
            if (!string.IsNullOrWhiteSpace(dr["keepOriginalData"].ToString()))
            {
                tc.keepOriginalData = bool.Parse(dr["keepOriginalData"].ToString());
            }
            else
            {
                tc.keepOriginalData = true;
            }

            return(tc);
        }