Exemple #1
0
        private void frmMain_Load(object sender, EventArgs e)
        {
            try
            {
                StreamWriter sw = new StreamWriter(prop.Dir_net_export + "\\Exchanger_" + Environment.MachineName + "_" + Environment.UserName + ".info", false, Encoding.GetEncoding(1251));
                sw.Write("Date:          " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() +
                         "\nMashine:       " + Environment.MachineName +
                         "\nUser:          "******"\nExchanger mod: " + Application.ProductVersion);
                sw.Close();
            }
            catch
            {
            }

            if (!Checking.checkVersion(Modules.Exchanger, Application.ProductVersion))
                if (MessageBox.Show("Внимание! Существует более новая версия модуля!\nУстановить обновление?", "Контроль обновлений", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
                    System.Diagnostics.Process.Start(System.Environment.GetCommandLineArgs()[0].Substring(
                                                    0,
                                                    System.Environment.GetCommandLineArgs()[0].LastIndexOf('\\')
                                                    ) + "\\PSA.Update.cmd");

            if (!PSA.Lib.Util.Semaphore.semInventory)
            {
                this.WindowState = FormWindowState.Maximized;

                txtDateBegin.Value = DateTime.Now.AddDays(-20);
                txtDateEnd.Value = DateTime.Now.AddDays(5);
                txtDateBeginPr.Value = DateTime.Now.AddDays(-20);
                txtDateEndPr.Value = DateTime.Now.AddDays(5);

                bool tmp_login_ok = false;
                bool tmp_exit = false;

                // Если ограничение на запуск одной копии пройдено, то продолжаем...
                // Открываем соединение с базой
                try
                {
                    db_connection.ConnectionString = prop.Connection_string;
                    db_connection.Open();
                }
                catch (Exception ex)
                {
                    ErrorNfo.WriteErrorInfo(ex);
                    // Если не удалось подключиться к базе, то
                    // выдаем сообщение об ошибке и открываем форму
                    // подключения к базе данных
                    MessageBox.Show("Ошибка подключения к базе данных!\n" + ex.Message + "\n" + ex.Source + "\nПроверьте настройки подключения!", "Ошибка!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    try
                    {
                        frmSetup fOptions = new frmSetup();
                        fOptions.ShowDialog();
                        prop = new PSA.Lib.Util.Settings();
                        // Опять пробуем подключиться к базе
                        db_connection.ConnectionString = prop.Connection_string;
                        db_connection.Open();
                    }
                    catch (Exception exc)
                    {
                        ErrorNfo.WriteErrorInfo(exc);
                        // Если после второй попытки не удалось подключиться, то закрываем программу.
                        MessageBox.Show("Ошибка подключения к базе данных!\n" + exc.Message + "\n" + exc.Source, "Ошибка!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        tmp_exit = true;
                    }
                }

                if (!tmp_exit)
                {
                    // открываем окно запроса пользователя
                    PSA.Lib.Interface.frmLogin fLogin = new PSA.Lib.Interface.frmLogin();
                    // спрашиваем пока не угадает пароль или не надоест угадывать
                    while (!tmp_login_ok)
                    {
                        switch (fLogin.ShowDialog())
                        {
                            case DialogResult.Cancel:
                                {
                                    tmp_login_ok = true;
                                    tmp_exit = true;
                                    break;
                                }
                            case DialogResult.OK:
                                {
                                    tmp_login_ok = true;
                                    if (fLogin.usr.prmCanLoginAcceptance)
                                    {
                                        this.Show();
                                    }
                                    else
                                    {
                                        tmp_exit = true;
                                        MessageBox.Show("Доступ в модуль приемка заперщен!", "Вход в программу", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                    }
                                    break;
                                }
                        }
                    }
                    if (!tmp_exit)
                    {
                        // если мы уже тут, значит пароль все же угадали
                        // Получаем данные о пользователе
                        usr = fLogin.usr;
                        // Показываем окно
                        this.Focus();
                        SqlCommand cmd_status = new SqlCommand("SELECT [order_status], [status_desc] FROM [order_status] ORDER BY [status_desc]", db_connection);
                        SqlDataAdapter da_status = new SqlDataAdapter(cmd_status);
                        DataTable dt_status = new DataTable("status");
                        da_status.Fill(dt_status);
                        checkStatus.DataSource = dt_status;
                        checkStatus.DisplayMember = "status_desc";
                        checkStatus.ValueMember = "order_status";
                        for (int i = 0; i < checkStatus.Items.Count; i++)
                        {
                            checkStatus.SetSelected(i, true);
                            //checkStatus.SelectedItem =  i;
                            if (checkStatus.SelectedValue.ToString().Trim() == "000000")
                                checkStatus.SetItemChecked(i, true);
                        }

                        checkFilterInput.Checked = true;

                        checkFilter();

                        FilterR = new FilterRowLike(GridOder);
                    }
                    else
                    {
                        Application.Exit();
                    }
                }
                else
                {
                    Application.Exit();
                }
            }
            else
            {

                MessageBox.Show("В момент проведения инвентаризации вход в модуль запрещен!", "Внимание", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                Application.Exit();
            }
        }
Exemple #2
0
 private void frmLostOrders_Load(object sender, EventArgs e)
 {
     db_connection = new SqlConnection(prop.Connection_string);
     LoadData();
     if (fRow == null)
         fRow = new FilterRowLike(data);
 }
        private void frmAcceptanceTable_Load(object sender, EventArgs e)
        {
            this.WindowState = FormWindowState.Maximized;

            txtDateBegin.Value = DateTime.Now.AddDays(-7);
            txtDateEnd.Value = DateTime.Now.AddDays(3);
            txtDateBeginPr.Value = DateTime.Now.AddDays(-7);
            txtDateEndPr.Value = DateTime.Now.AddDays(3);

            checkFilterOutput.Checked = true;
            checkFilterInput.Checked = true;

            checkFilter();

            FilterR = new FilterRowLike(GridOder);

            if (prop.UpdateOrderTableInAcceptance > 0)
            {
                tmr.Interval = 1000 * prop.UpdateOrderTableInAcceptance;
                checkAutoUpdate.Checked = true;
                tmr.Start();
            }
            else
            {
                tmr.Interval = 10000;
                checkAutoUpdate.Checked = false;
                tmr.Stop();
            }

            LoadGrid();

            tmrcls.Start();
        }
Exemple #4
0
        private void FillOrderList()
        {
            if (CheckState(db_connection))
            {
                int selid = 0;
                try
                {
                    selid = int.Parse(gridOrderList.GetData(gridOrderList.Row, 1).ToString());
                }
                catch (Exception ex)
                {
                    //ErrorNfo.WriteErrorInfo(ex);
                }

                db_table_orders.Rows.Clear();
                string tmpF_Good = "", tmpF_Crop = "", tmpF_Paper = "";

                if (txtFilterGoods.SelectedValue.ToString() != "0")
                    tmpF_Good = " AND [id_good] = '" + txtFilterGoods.SelectedValue + "'";
                else
                    tmpF_Good = "";

                db_command_orders = new SqlCommand("SELECT DISTINCT [id_order], [number], [status], [input_date], [expected_date], [id_user_designer] FROM [vwOrderListDesigner] WHERE (([id_order] > 0) " + tmpF_Good + ") ORDER BY [expected_date]", db_connection);
                db_command_orders.CommandTimeout = 900;
                db_adapter_orders = new SqlDataAdapter(db_command_orders);
                db_adapter_orders.Fill(db_table_orders);
                lblLoaded.Text = "Загружено " + db_table_orders.Rows.Count.ToString("N0", new CultureInfo("de-DE")) + " зак.";

                gridOrderList.DataSource = db_table_orders;
                /*
                 * 1 [id_order],
                 * 2 [number],
                 * 3 [status],
                 * 4 [input_date],
                 * 5 [expected_date]
                 */
                gridOrderList.Cols[1].Visible = false;
                gridOrderList.Cols[2].Visible = false;
                gridOrderList.Cols[3].Visible = false;
                gridOrderList.Cols[4].Visible = false;
                gridOrderList.Cols[5].Visible = false;
                gridOrderList.Cols[6].Visible = false;

                gridOrderList.Cols[2].Visible = true;
                gridOrderList.Cols[2].Width = 120;
                gridOrderList.Cols[2].AllowDragging = false;
                gridOrderList.Cols[2].AllowEditing = false;
                gridOrderList.Cols[2].AllowMerging = false;
                gridOrderList.Cols[2].AllowResizing = true;
                gridOrderList.Cols[2].AllowSorting = true;
                gridOrderList.Cols[2].Caption = "Заказ №";

                gridOrderList.Cols[4].Visible = true;
                gridOrderList.Cols[4].Width = 110;
                gridOrderList.Cols[4].AllowDragging = false;
                gridOrderList.Cols[4].AllowEditing = false;
                gridOrderList.Cols[4].AllowMerging = false;
                gridOrderList.Cols[4].AllowResizing = true;
                gridOrderList.Cols[4].AllowSorting = true;
                gridOrderList.Cols[4].Caption = "Прием";
                gridOrderList.Cols[4].Format = "g";

                gridOrderList.Cols[5].Visible = true;
                gridOrderList.Cols[5].Width = 110;
                gridOrderList.Cols[5].AllowDragging = false;
                gridOrderList.Cols[5].AllowEditing = false;
                gridOrderList.Cols[5].AllowMerging = false;
                gridOrderList.Cols[5].AllowResizing = true;
                gridOrderList.Cols[5].AllowSorting = true;
                gridOrderList.Cols[5].Caption = "Выдача";
                gridOrderList.Cols[5].Format = "g";

                if (fRow == null)
                    fRow = new FilterRowLike(gridOrderList);
                int selrow = 2;
                for (int i = 2; i < gridOrderList.Rows.Count; i++)
                {
                    try
                    {
                        if (selid == int.Parse(gridOrderList.GetData(i, 1).ToString()))
                            selrow = i;
                    }
                    catch (Exception ex)
                    {
                        ErrorNfo.WriteErrorInfo(ex);
                    }
                    if (gridOrderList[i, 6].ToString().Trim() == "0")
                        gridOrderList.Rows[i].Style = gridOrderList.Styles["MyNull"];
                    else if (gridOrderList[i, 6].ToString().Trim() == usr.Id_user.ToString().Trim())
                        gridOrderList.Rows[i].Style = gridOrderList.Styles["MyMy"];
                    else if (gridOrderList[i, 6].ToString().Trim() != usr.Id_user.ToString().Trim())
                        gridOrderList.Rows[i].Style = gridOrderList.Styles["MyNotMy"];
                    if ((gridOrderList[i, 3].ToString().Trim() == "000211") || (gridOrderList[i, 3].ToString().Trim() == "000212"))
                        gridOrderList.Rows[i].Style = gridOrderList.Styles["MyOK"];
                    if (gridOrderList[i, 3].ToString().Trim() == "000111")
                        gridOrderList.Rows[i].Style = gridOrderList.Styles["In"];

                }

                if (selrow < gridOrderList.Rows.Count)
                    gridOrderList.Select(selrow, 2);
            }
        }
Exemple #5
0
        private void frmAcceptanceTable_Load(object sender, EventArgs e)
        {
            this.WindowState = FormWindowState.Maximized;

            txtDateBegin.Value = DateTime.Now.AddDays(-7);
            txtDateEnd.Value = DateTime.Now.AddDays(3);
            txtDateBeginPr.Value = DateTime.Now.AddDays(-7);
            txtDateEndPr.Value = DateTime.Now.AddDays(3);

            SqlCommand cmd_status = new SqlCommand("SELECT [order_status], [status_desc] FROM [order_status] ORDER BY [status_desc]", db_connection);
            SqlDataAdapter da_status = new SqlDataAdapter(cmd_status);
            DataTable dt_status = new DataTable("status");
            da_status.Fill(dt_status);
            checkStatus.DataSource = dt_status;
            checkStatus.DisplayMember = "status_desc";
            checkStatus.ValueMember = "order_status";
            for (int i = 0; i < checkStatus.Items.Count; i++)
            {
                checkStatus.SetItemChecked(i, true);
            }

            checkFilterOutput.Checked = true;

            checkFilter();

            FilterR = new FilterRowLike(GridOder);

            if (prop.UpdateOrderTableInAcceptance > 0)
            {
                tmr.Interval = 1000 * prop.UpdateOrderTableInAcceptance;
                checkAutoUpdate.Checked = true;
                tmr.Start();
            }
            else
            {
                tmr.Interval = 10000;
                checkAutoUpdate.Checked = false;
                tmr.Stop();
            }

            LoadGrid();

            tmrcls.Start();
        }