예제 #1
0
        private void btnSearch_Click(object sender, EventArgs e)
        {
            if (tbCode.Text.Length < 4 & btnSearch.Visible)
            {
                searchResult = new FrmSearchResult(tbNames.Text, SearchBy.Name);
            }
            else
            {
                searchResult = new FrmSearchResult(tbCode.Text, SearchBy.Code);
            }

            if (searchResult.ShowDialog() == DialogResult.Yes)
            {
                tbCode.Text       = searchResult.SelectedCode;
                tbNames.Text      = searchResult.SelectedName;
                tbPriceDC.Text    = searchResult.SelectedPriceDC;
                tbPricePC.Text    = searchResult.SelectedPricePC;
                cbDiscont.Checked = searchResult.SelectedDiscont;

                // Устанавливаем в ComboBox с периодами каталога выбранное значение. Если такового нет в БД - добавляем
                if (CatalogPeriod.SearchSuchCatalog(searchResult.SelectedPeriodText))
                {
                    cbCatalog.Text = searchResult.SelectedPeriodText;
                }
                else
                {
                    // добавляем каталожный период в БД (без проверки на его существование)
                    SkladBase.AddCatalogPeriod(searchResult.selectedPeriod, searchResult.selectedYear);

                    cbCatalog.DataSource = CatalogPeriod.catalogPeriod;
                    cbCatalog.Text       = searchResult.SelectedPeriodText;
                }
            }
        }
예제 #2
0
        /// <summary>
        /// Добавляем каталожный период в БД (без проверки на его существование)
        /// </summary>
        /// <param name="period"></param>
        /// <param name="year"></param>
        public static void AddCatalogPeriod(int period, int year)
        {
            int yearId = CheckExistYear(year);

            if (yearId == 0)
            {
                yearId = InsertYear(year);
            }

            InsertPeriod(period, yearId);

            //обновляем информацию в локальном листе
            CatalogPeriod.MakeList();
        }
예제 #3
0
        private void tsmImport_Click(object sender, EventArgs e)
        {
            openfdImport.Filter     = "Excel (*.xlsx)|*.xlsx";
            openfdImport.DefaultExt = "xlsx";
            if (openfdImport.ShowDialog() == DialogResult.OK && File.Exists(openfdImport.FileName))
            {
                ImportExport.Import(openfdImport.FileName);

                CatalogType.MakeList();
                Category.MakeList();
                CatalogPeriod.MakeList();
                Catalog.MakeList();
                dgvMain.DataSource = SkladBase.SearchProdByCode(tbCode.Text);
            }
        }
예제 #4
0
        private void frmMain_Load(object sender, EventArgs e)
        {
            if (DataBase.CheckConnection())
            {
                if (!DataBase.CheckExistDB())
                {
                    DataBase.CreateDB();
                    DataBase.CreateAllTabels();
                    DataBase.FillTestData();
                }

                // ! используются только во время разработки
#if DEVELOP
                CatalogPeriod.FillDBCatalog();
                Catalog.FillDBCatalog();
#endif

                CatalogType.MakeList();
                Category.MakeList();
                CatalogPeriod.MakeList();
                Catalog.MakeList();
            }
            else
            {
                MessageBox.Show("Невозможно установить соединение с базой данных" + Environment.NewLine +
                                "Проверьте строку подключения (connectionString) к вашему MS SQL Server" + Environment.NewLine +
                                "в файле \"" + System.Reflection.Assembly.GetExecutingAssembly().Location + ".config\"", "Ошибка соединения");
                Environment.Exit(2);
            }


            // заполняем грид при загрузке всеми продуктами
            dgvMain.DataSource = SkladBase.SearchProdByCode(tbCode.Text);

            dgvMain.SelectionChanged += new System.EventHandler(dgvMain_SelectionChanged);

            // если грид заполнен, получаем код первого продукта и заполняем грид Details
            if (dgvMain.CurrentRow != null)
            {
                currentCode           = dgvMain.CurrentRow.Cells["Code"].Value.ToString();
                dgvDetails.DataSource = SkladBase.FilldgvDetails(currentCode);
            }

            tbCode.Select();
        }
예제 #5
0
        private void btnOk_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(tbmPeriod.Text) || tbmPeriod.Text == " " || tbmPeriod.Text == "  ")
            {
                lblErrorPeriodExist.Visible = false;
                lblError.Visible            = true;
                return;
            }

            Period = Int32.Parse(tbmPeriod.Text);
            Year   = (int)nudYear.Value;

            if (CatalogPeriod.SearchSuchCatalog(InputedPeriodText))
            {
                lblErrorPeriodExist.Text    = string.Format($"Период \"{InputedPeriodText}\" существует !");
                lblError.Visible            = false;
                lblErrorPeriodExist.Visible = true;
                return;
            }

            this.DialogResult = DialogResult.OK;
        }
예제 #6
0
        public FrmAdd(string code, string name, string priceDC, string pricePC, bool discont, string periodText, int period, int year) : this()
        {
            tbCode.Text       = code;
            tbNames.Text      = name;
            tbPriceDC.Text    = priceDC;
            tbPricePC.Text    = pricePC;
            cbDiscont.Checked = discont;

            // Устанавливаем в ComboBox с периодами каталога выбранное значение. Если такового нет в БД - добавляем
            if (CatalogPeriod.SearchSuchCatalog(periodText))
            {
                cbCatalog.Text = periodText;
            }
            else
            {
                // добавляем каталожный период в БД (без проверки на его существование)
                SkladBase.AddCatalogPeriod(period, year);

                cbCatalog.DataSource = CatalogPeriod.catalogPeriod;
                cbCatalog.Text       = periodText;
            }
        }
예제 #7
0
        private void frmMain_Load(object sender, EventArgs e)
        {
            //  File.Delete(DataBase.dbFile);
            if (!DataBase.CheckExistDB())
            {
                DataBase.CreateDB();
                DataBase.CreateAllTabels();
                //      DataBase.FillTestData(); // Используется для тестового заполнения БД
            }


            CatalogType.MakeList();


#if DEVELOP     // ! используются только во время разработки
            CatalogPeriod.FillDBCatalog();
            Catalog.FillDBCatalog();
#endif

            Category.MakeList();
            CatalogPeriod.MakeList();
            Catalog.MakeList();


            // заполняем грид при загрузке всеми продуктами
            dgvMain.DataSource = SkladBase.SearchProdByCode(tbCode.Text);

            dgvMain.SelectionChanged += new System.EventHandler(dgvMain_SelectionChanged);

            //если грид заполнен, получаем код первого продукта и заполняем грид Details
            if (dgvMain.CurrentRow != null)
            {
                currentCode           = dgvMain.CurrentRow.Cells["Code"].Value.ToString();
                dgvDetails.DataSource = SkladBase.FilldgvDetails(currentCode);
            }

            tbCode.Select();
        }