示例#1
0
        /// <summary>
        /// Вызывает форму со статистикой
        /// </summary>
        /// <remarks>Предварительно запускает процедуру автризации пользователя</remarks>
        private void pbStat_Click(object sender, System.EventArgs e)
        {
            fmAdminLog adminLog = new fmAdminLog();

            if (adminLog.logAdmin(ref dcr) == true)
            {
                fmStat stat = new fmStat(dcr.conStr);
                stat.ShowDialog();
            }
            tbCode.Focus();
        }
示例#2
0
        /// <summary>
        /// Вызывает форму для редактирования данных о сотрудниках
        /// </summary>
        /// <remarks>Предварительно запускает процедуру автризации пользователя</remarks>
        private void pbSets_Click(object sender, System.EventArgs e)
        {
            fmAdminLog adminLog = new fmAdminLog();

            if (adminLog.logAdmin(ref dcr) == true)
            {
                fmEmpl empl = new fmEmpl(dcr.conStr);
                empl.ShowDialog();
            }
            tbCode.Focus();
        }
示例#3
0
        /// <summary>
        /// Создаёт новую базу InCome либо только прописывает в реестре строку соединения с базой
        /// </summary>
        /// <remarks>Предварительно запускает процедуру автризации пользователя</remarks>
        private void btnNewDB_Click(object sender, System.EventArgs e)
        {
            fmAdminLog adminLog = new fmAdminLog();

            if (adminLog.logAdmin(ref dcr) == true)
            {
                //если пересоздаем базу
                if (MessageBox.Show("Вы действительно хотите пересоздать базу InCome (при этом вся существующая информация будет потеряна, административный пароль изменится на стандартный)? Если да, удостоверьтесь, что база в данный момент никем не используется", "Предупреждение", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) == DialogResult.Yes)
                {
                    dcr = new CDbCreator("SOFTWARE\\InCome");
                    if (dcr.setConStr() != true)                  //не задана строка соединения
                    {
                        MessageBox.Show("Не была задана строка соединения c MS SQL Server!", "Предупреждение", MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
                    }
                    else
                    {
                        Cursor = Cursors.WaitCursor;
                        Refresh();
                        if (dcr.createDB() == false)
                        {
                            MessageBox.Show("Не удалось создать базу InCome на выбранном MS SQL Server. Приложение не может продолжать работать!", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);
                            this.Close();
                            return;
                        }
                        else                        //пишем в реестр строку соединения и версию
                        {
                            //подменяем пользователя и базу на стандартные
                            int p1 = dcr.conStr.IndexOf("User ID=");
                            int p2 = dcr.conStr.IndexOf("Data Source=");
                            dcr.conStr = dcr.conStr.Replace(dcr.conStr.Substring(p1, p2 - p1), "User ID=InComeUser;Initial Catalog=InCome;");

                            if ((dcr.setRegValue("SOFTWARE\\InCome", "connection", dcr.conStr) == false) || (dcr.setRegValue("SOFTWARE\\InCome", "sqlver", Convert.ToString((int)dcr.sqlVer)) == false))
                            {
                                MessageBox.Show("Не удалось записать настройки соединения с базой InCome в реестр. Попробуйте перезапустить приложение и повторить настройку!", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);
                                this.Close();
                                return;
                            }
                            MessageBox.Show("Создана база InCome!", "Сообщение", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1);
                        }
                        Cursor = Cursors.Default;
                        Refresh();
                    }
                }
                else
                //если меняем только строку соединения
                if (MessageBox.Show("Вы хотите изменить строку соединения с базой?", "Предупреждение", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.Yes)
                {
                    if (dcr.setConStr() != true)                          //не задана строка соединения
                    {
                        MessageBox.Show("Не была задана строка соединения c MS SQL Server!", "Предупреждение", MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
                    }
                    else                            //пишем в реестр строку соединения и версию
                    {
                        //подменяем пользователя и базу на стандартные
                        int p1 = dcr.conStr.IndexOf("User ID=");
                        int p2 = dcr.conStr.IndexOf("Data Source=");
                        dcr.conStr = dcr.conStr.Replace(dcr.conStr.Substring(p1, p2 - p1), "User ID=InComeUser;Initial Catalog=InCome;");

                        if ((dcr.setRegValue("SOFTWARE\\InCome", "connection", dcr.conStr) == false) || (dcr.setRegValue("SOFTWARE\\InCome", "sqlver", Convert.ToString((int)dcr.sqlVer)) == false))
                        {
                            MessageBox.Show("Не удалось записать настройки соединения с базой InCome в реестр. Попробуйте перезапустить приложение и повторить настройку!", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);
                            this.Close();
                        }
                        MessageBox.Show("Строка соединения изменена!", "Сообщение", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1);
                    }
                }
            }
            tbCode.Focus();
        }