コード例 #1
0
ファイル: Transfers.cs プロジェクト: tousekdominik/SkSys
 public void Change(Transfer item)
 {
     _SQL.RunQuery(String.Format("UPDATE `{0}` SET ID_DEADLINE={1}, ID_MATTYPE={2}, ID_COMPANY={3}, AMOUNT={4}, ID_UNIT={5}, PRICE={6}, ID_CURRENCY={7}, COURSEDATE='{8}', COURSE={9} WHERE ID={10};",
         _table, item.Deadline.ID, item.MaterialType.ID, item.Company.ID, item.Amount.ToString().Replace(',', '.'), item.Unit.ID, item.Price.ToString().Replace(',', '.'), item.Currency.ID, DateTimeUtils.DateTimeToSQLDate(item.CourseDate), item.Course.ToString().Replace(',', '.'), item.ID));
 }
コード例 #2
0
        private void dataGridView1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
        {
            if ((dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value == null)&&(cellValue=="")) return;
            else if ((dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value!=null)&&(cellValue == dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString()))
                return;
            if ((addID != -1) && (addID != e.RowIndex))
                rowsAdded = false;
            else if ((addID != -1) && (addID == e.RowIndex))
                rowsAdded = true;

            if (initState) return;
            if (units == null) return;
            if (companies == null) return;

            foreach(String collumn in nummericIntCollums){
                int intOut = 0;
                if (dataGridView1.Rows[e.RowIndex].Cells[collumn].Value == null) continue;
                if (!int.TryParse(dataGridView1.Rows[e.RowIndex].Cells[collumn].Value.ToString(), out intOut))
                {
                    dataGridView1.Rows[e.RowIndex].Cells[collumn].ErrorText = "Zadejte číselnou hodnotu!";
                }
                else {
                    dataGridView1.Rows[e.RowIndex].Cells[collumn].ErrorText = "";
                }
            }
            foreach (String collumn in nummericFloatCollums)
            {
                float floatOut = 0;
                if (dataGridView1.Rows[e.RowIndex].Cells[collumn].Value == null) continue;
                if (!float.TryParse(dataGridView1.Rows[e.RowIndex].Cells[collumn].Value.ToString().Replace('.',','), out floatOut))
                {
                    dataGridView1.Rows[e.RowIndex].Cells[collumn].ErrorText = "Zadejte číselnou hodnotu!";
                }
                else
                {
                    dataGridView1.Rows[e.RowIndex].Cells[collumn].ErrorText = "";
                }
            }
            if (dataGridView1.Rows[e.RowIndex].Cells["CourseDateColumn"].Value != null)
            {
                String courseDateStr = dataGridView1.Rows[e.RowIndex].Cells["CourseDateColumn"].Value.ToString();
                String[] dateParts = courseDateStr.Split('.');
                int intVal = 0;
                if (!courseDateStr.Contains("."))
                {
                    dataGridView1.Rows[e.RowIndex].Cells["CourseDateColumn"].ErrorText = "Datum nemá správný formát(dd.mm.yyyy)";
                }
                else if (dateParts.Length != 3)
                {
                    dataGridView1.Rows[e.RowIndex].Cells["CourseDateColumn"].ErrorText = "Datum nemá správný formát(dd.mm.yyyy)";
                }
                else if (!int.TryParse(dateParts[0], out intVal) || !int.TryParse(dateParts[1], out intVal) || !int.TryParse(dateParts[2], out intVal))
                {
                    dataGridView1.Rows[e.RowIndex].Cells["CourseDateColumn"].ErrorText = "Datum nemá správný formát(dd.mm.yyyy)";
                }
                else
                {
                    dataGridView1.Rows[e.RowIndex].Cells["CourseDateColumn"].ErrorText = "";
                }
                if (dataGridView1.Rows[e.RowIndex].Cells["CourseDateColumn"].Value.ToString() == "")
                    dataGridView1.Rows[e.RowIndex].Cells["CourseDateColumn"].ErrorText = "";
            }
            else {
                dataGridView1.Rows[e.RowIndex].Cells["CourseDateColumn"].ErrorText = "";
            }

            bool rowError = false;
            foreach (DataGridViewCell cell in dataGridView1.Rows[e.RowIndex].Cells) {
                if (cell.ErrorText != "")
                {
                    rowError = true;
                    break;
                }
            }

            if (dataGridView1.Rows[e.RowIndex].Cells["UnitColumn"].Value == null) return;
            Unit unitItem = getUnit(dataGridView1.Rows[e.RowIndex].Cells["UnitColumn"].Value.ToString());
            if (unitItem.ID == 0) return;

            if (dataGridView1.Rows[e.RowIndex].Cells["CompanyColumn"].Value == null) return;
            Company companyItem = getCompany(dataGridView1.Rows[e.RowIndex].Cells["CompanyColumn"].Value.ToString());
            if (companyItem.ID == 0) return;

            DateTime courseDate = new DateTime();

            if (dataGridView1.Rows[e.RowIndex].Cells["CourseDateColumn"].Value == null)
            {
                //courseDate = DateTimeUtils.GetFirstWorkDay(dateTimePicker1.Value.Month,dateTimePicker1.Value.Year);
                //dataGridView1.Rows[e.RowIndex].Cells["CourseDateColumn"].Value = DateTimeUtils.DateToString(courseDate);
            }
            else
            {
                if ((!rowError) && (dataGridView1.Rows[e.RowIndex].Cells["CourseDateColumn"].Value.ToString()!=""))
                {
                    String[] dateParts = dataGridView1.Rows[e.RowIndex].Cells["CourseDateColumn"].Value.ToString().Split('.');
                    courseDate = new DateTime(int.Parse(dateParts[2]), int.Parse(dateParts[1]), int.Parse(dateParts[0]));
                }
            }

            //if (dataGridView1.Rows[e.RowIndex].Cells["PriceColumn"].Value == null) return;
            if (dataGridView1.Rows[e.RowIndex].Cells["MaterialTypeColumn"].Value == null) return;
            MaterialType materialTypeItem = getMaterialType(dataGridView1.Rows[e.RowIndex].Cells["MaterialTypeColumn"].Value.ToString());
            if (materialTypeItem.ID == 0) return;

            Currency currencyItem;
            if (dataGridView1.Rows[e.RowIndex].Cells["CurrencyColumn"].Value == null) currencyItem = new Currency(0, "");
            else currencyItem = getCurrency(dataGridView1.Rows[e.RowIndex].Cells["CurrencyColumn"].Value.ToString());
            if (currencyItem.ID == 0) return;
            float course = 0;
            if ((dataGridView1.Rows[e.RowIndex].Cells["CourseDateColumn"].Value!=null)&&(dataGridView1.Rows[e.RowIndex].Cells["CourseDateColumn"].ErrorText == "") && (dataGridView1.Rows[e.RowIndex].Cells["CourseDateColumn"].Value.ToString() != ""))
            {
                course = ExchangeRates.getByDate(Currencies.getCurrency(dataGridView1.Rows[e.RowIndex].Cells["CurrencyColumn"].Value.ToString()), courseDate);
            }
            else {
                course = 0;
            }
            dataGridView1.Rows[e.RowIndex].Cells["CourseColumn"].Value = course.ToString();
            int id = 0;
            if (!rowsAdded) id = items[e.RowIndex].ID;/* id = int.Parse(dataGridView1.Rows[e.RowIndex].Cells["IDColumn"].Value.ToString());*/
            Transfer transferItem = new Transfer(
                 (int)parseCell(0,e.RowIndex,"IDColumn"),
                 new Deadline(0,new DateTime()),
                 materialTypeItem,
                 companyItem,
                 parseCell(0,e.RowIndex,"AmountColumn"),
                 unitItem,
                 parseCell(0, e.RowIndex, "PriceColumn"),
                 currencyItem,
                 courseDate,
                 course
            );

            if (rowError) return;
            if (rowsAdded)
            {
                Status = "Přidávám novou položku...";
                Transfers.Add(transferItem);
                if (!connector.IsConnected()) return;
                dataGridView1.BeginInvoke(new Action(()=>{
                    reload();
                    dataGridView1.FirstDisplayedScrollingRowIndex = dataGridView1.Rows.Count - 1;
                    //dataGridView1.Rows[dataGridView1.Rows.Count - 1].Cells[dataGridView1.Rows[dataGridView1.Rows.Count - 1].Cells.Count - 1].Selected = true;
                    //dataGridView1.BeginEdit(true);
                }));
                addID = -1;
                dataGridView1.Rows[dataGridView1.NewRowIndex].ReadOnly = false;
                dataGridView1.Rows[dataGridView1.NewRowIndex].DefaultCellStyle = dataGridView1.DefaultCellStyle;
                refresh();
            }
            else
            {
                if (items[e.RowIndex] != transferItem)
                {
                    Status = "Provádím úpravy...";
                    Transfers.Change(transferItem);
                    if (!connector.IsConnected()) return;
                    if ((dataGridView1.Columns[e.ColumnIndex].Name == "PriceColumn") || (dataGridView1.Columns[e.ColumnIndex].Name == "AmountColumn") || (dataGridView1.Columns[e.ColumnIndex].Name == "CurrencyColumn") || (dataGridView1.Columns[e.ColumnIndex].Name == "CourseDateColumn"))
                        refresh();
                }
            }
            rowsAdded = false;
            Status = ".....";
        }
コード例 #3
0
ファイル: Transfers.cs プロジェクト: tousekdominik/SkSys
 public void Add(Transfer item)
 {
     this.Add(item.Deadline, item.MaterialType, item.Company, item.Amount, item.Unit, item.Price, item.Currency, item.CourseDate, item.Course);
 }