Разработка и администрирование базы данных "Компьютерный сервис"

Анализ методов и средств построения корпоративных баз для учета технических средств. Разработка логической модели баз данных. Регистрация документов, хранение. Требования к функциональным характеристикам системы. Рекомендации по процессу документирования.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 14.12.2019
Размер файла 4,9 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

4. Список всех известных/важных значений и их значение, например, для столбца состояния может быть таким: "Статус документа: A - Активен, C - Отменено, D - Удалено";

5. Если любой API для таблицы - представление, которое должно использоваться для чтения данных и функций/процедур для вставки/обновления данных, перечислить его в описании таблицы;

6. Описать, откуда берутся строки/столбцы (процедура, форма, интерфейс и т.д.);

7. Использовать "[устаревший]" знак (или аналогичный) для столбцов, которые не должны использоваться (поле столбца полезно для этого, объяснить, какое поле должно использоваться вместо этого в поле описания).

Примеры скриншотов утилиты для документации Dataedo показаны на рисунках 6.1, 6.2, 6.3.

Рисунок 6.1 - Окно таблицы Relations в Dataedo.

Рисунок 6.2 - Окно таблицы Columns в Dataedo

Рисунок 6.3 - Модуль документации Dataedo.

ЗАКЛЮЧЕНИЕ

В ходе выполнения выпускной квалификационной работы была реализована программа для работы компьютерного сервиса.

В процессе выполнения проекта был произведен следующий комплекс работ: проанализирован возможный список подходящих для создания автоматизированной информационной системы средств; разработано приложение, соответствующее требованиям выпускной квалификационной работы; проведено экспериментальное исследование с пятью опытами на стабильность системы; проведена проверка работоспособности и пригодности для предприятия; оценено влияние программы на развитие работы склада.

Результатом выполнения выпускной квалификационной работы является программа «Компьютерный сервис». Реализация системы проводилась с использованием СУБД Microsoft SQL Server 2017 Express. Проверки проводились с использованием Microsoft Visual Studio. При написании программы было уделено внимание удобству работы пользователя.

В ходе всех проверок было установлено, что программа стабильна и вполне способна заменить текущие решения ведения учета данных на предприятии на данный момент. Программа удовлетворяет всем требованиям для работы. Простота использования программой позволяет беспроблемно передать управление новому сотруднику, в случае ухода текущего. Количество хранимых записей в базе данных достаточно для работы на данный момент. В последствии можно развить программу.

Автоматизированная информационная система «Компьютерный сервис» выполняет следующие функции: Просмотр поставщиков, Просмотр оказанных услуг, Просмотр информации о складе, Просмотр и редактирование, Информация о сотрудниках и покупках, Формирование отчетов.

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

1. Нестеров, С. А. Базы данных учебник и практикум для академического бакалавриата / С. А. Нестеров. -- М. : Издательство Юрайт, 2017.-- 230 с.

2. Королева, О.Н. Базы данных курс лекций/ Королева О.Н., Мажукин А.В., Королева Т.В.-- Электрон. текстовые данные.-- М.: Московский гуманитарный университет, 2012.-- 66 c.

3. Култыгин, О.П. Администрирование баз данных. СУБД MS SQL Server [Электронный ресурс]: учебное пособие/ Култыгин О.П.-- Электрон. текстовые данные.-- М.: Московский финансово-промышленный университет «Синергия», 2012.-- 232 c.

ПРИЛОЖЕНИЕ 1

Примеры отчетов

Рис 1.1 Список сотрудников

Рисунок 1.2 - Список клиентов

Рисунок 1.4 - Список поставщиков

Рисунок 1.5 - Список сотрудников

Рисунок 1.6 - Оказанные услуги за период

Рисунок 1.7 - Список запчастей от поставщика

Рисунок 1.8 - Услуги оказываемые сотрудником

Рисунок 1.8 - Продажи за период

Рисунок 1.9 - Срок гарантийных услуг

ПРИЛОЖЕНИЕ 2

Исходный код программы

Модуль авторизация:

private void closeButton_Click(object sender, EventArgs e)

{

Application.Exit();

}

private void loginButton_Click(object sender, EventArgs e)

{

try

{

if (passTextbox.Text == queriesTableAdapter.GetUserPassword(usernameTextbox.Text).ToString())

{

MenuForm menu = new MenuForm(this, queriesTableAdapter.GetUserRole(usernameTextbox.Text).ToString());

menu.Show();

this.Hide();

usernameTextbox.Clear();

passTextbox.Clear();

}

else

{

MessageBox.Show("Введён неправильный пароль");

}

}

catch (System.NullReferenceException)

{

MessageBox.Show("Пользователя не существует");

}

Модуль меню:

public MenuForm()

{

InitializeComponent();

}

string userrole = "manager";

Form parentForm;

public MenuForm(Form f, string s)

{

InitializeComponent();

parentForm = f;

userrole = s;

}

private void MenuForm_Load(object sender, EventArgs e)

{

if (userrole=="manager")

{

adminPanel.Hide();

}

else

{

adminPanel.Show();

}

}

private void closeButton_Click(object sender, EventArgs e)

{

Application.Exit();

}

private void changeUserButton_Click(object sender, EventArgs e)

{

parentForm.Show();

this.Close();

}

private void skladButton_Click(object sender, EventArgs e)

{

Form newForm = new SkladForm();

newForm.ShowDialog();

}

private void ofornPokypButton_Click(object sender, EventArgs e)

{

Form newForm = new OformPokupkuForm();

newForm.ShowDialog();

}

private void clientButton_Click(object sender, EventArgs e)

{

Form newForm = new ClientsForm();

newForm.ShowDialog();

}

private void oformUslButton_Click(object sender, EventArgs e)

{

Form newForm = new OformUslForm();

newForm.ShowDialog();

}

private void uslugiButton_Click(object sender, EventArgs e)

{

Form newForm = new UslugiForm();

newForm.ShowDialog();

}

private void sotrButton_Click(object sender, EventArgs e)

{

Form newForm = new SotrydnikiForm();

newForm.ShowDialog();

}

private void postavButton_Click(object sender, EventArgs e)

{

Form newForm = new PostavshikiForm();

newForm.ShowDialog();

}

private void reportsButton_Click(object sender, EventArgs e)

{

Form newForm = new OtchetForm();

newForm.ShowDialog();

}

}

}

Модуль оформление покупки:

public partial class OformPokupkuForm : Form

{

public OformPokupkuForm()

{

InitializeComponent();

}

private void prodasiBindingNavigatorSaveItem_Click(object sender, EventArgs e)

{

this.Validate();

this.prodasiBindingSource.EndEdit();

this.tableAdapterManager.UpdateAll(this.komp_servisDataSet);

}

private void OformPokupkuForm_Load(object sender, EventArgs e)

{

try

{

// TODO: данная строка кода позволяет загрузить данные в таблицу "komp_servisDataSet.Sotrudniki". При необходимости она может быть перемещена или удалена.

this.sotrudnikiTableAdapter.Fill(this.komp_servisDataSet.Sotrudniki);

// TODO: данная строка кода позволяет загрузить данные в таблицу "komp_servisDataSet.Klient". При необходимости она может быть перемещена или удалена.

this.klientTableAdapter.Fill(this.komp_servisDataSet.Klient);

// TODO: данная строка кода позволяет загрузить данные в таблицу "komp_servisDataSet.Tovar". При необходимости она может быть перемещена или удалена.

this.tovarTableAdapter.Fill(this.komp_servisDataSet.Tovar);

// TODO: данная строка кода позволяет загрузить данные в таблицу "komp_servisDataSet.Prodasi". При необходимости она может быть перемещена или удалена.

this.prodasiTableAdapter.Fill(this.komp_servisDataSet.Prodasi);

priceLabel.Text = queriesTableAdapter.GetProductPrice(Convert.ToInt32(tovarComboBox.SelectedValue)).ToString();

sumLabel.Text = (Convert.ToDouble(priceLabel.Text) * Convert.ToInt32(kolNB.Value)).ToString();

}

catch (Exception)

{

}

}

private void tovarComboBox_SelectedIndexChanged(object sender, EventArgs e)

{

priceLabel.Text = queriesTableAdapter.GetProductPrice(Convert.ToInt32(tovarComboBox.SelectedValue)).ToString();

sumLabel.Text = (Convert.ToDouble(priceLabel.Text) * Convert.ToInt32(kolNB.Value)).ToString();

}

private void kolNB_ValueChanged(object sender, EventArgs e)

{

sumLabel.Text = (Convert.ToDouble(priceLabel.Text) * Convert.ToInt32(kolNB.Value)).ToString();

}

private void addButton_Click(object sender, EventArgs e)

{

if (tovarComboBox.SelectedValue != null && klientComboBox.SelectedValue != null && sotrComboBox.SelectedValue != null)

{

int idTov = Convert.ToInt32(tovarComboBox.SelectedValue);

int idKl = Convert.ToInt32(klientComboBox.SelectedValue);

int idSotr = Convert.ToInt32(sotrComboBox.SelectedValue);

int kolv = Convert.ToInt32(kolNB.Value);

double sum = Convert.ToDouble(sumLabel.Text);

prodasiTableAdapter.Insert(idTov, idKl, idSotr, kolv, dateDTP.Value, sum);

this.prodasiTableAdapter.Fill(this.komp_servisDataSet.Prodasi);

MessageBox.Show("Покупка успешно добавлена");

}

else

{

MessageBox.Show("Заполните все поля");

}

}

private void prodasiDataGridView_DataError(object sender, DataGridViewDataErrorEventArgs e)

{

}

private void deleteButton_Click(object sender, EventArgs e)

{

prodasiTableAdapter.Delete(Convert.ToInt32(prodasiDataGridView[IDColumn.Index, prodasiDataGridView.CurrentRow.Index].Value));

this.prodasiTableAdapter.Fill(this.komp_servisDataSet.Prodasi);

MessageBox.Show("Покупка удалена");

}

}

}

Модуль оформление услуги:

public partial class OformUslForm : Form

{

public OformUslForm()

{

InitializeComponent();

}

private void dogovorBindingNavigatorSaveItem_Click(object sender, EventArgs e)

{

this.Validate();

this.dogovorBindingSource.EndEdit();

this.tableAdapterManager.UpdateAll(this.komp_servisDataSet);

}

private void OformUslForm_Load(object sender, EventArgs e)

{

// TODO: данная строка кода позволяет загрузить данные в таблицу "komp_servisDataSet.Uslugi". При необходимости она может быть перемещена или удалена.

this.uslugiTableAdapter.Fill(this.komp_servisDataSet.Uslugi);

// TODO: данная строка кода позволяет загрузить данные в таблицу "komp_servisDataSet.Klient". При необходимости она может быть перемещена или удалена.

this.klientTableAdapter.Fill(this.komp_servisDataSet.Klient);

// TODO: данная строка кода позволяет загрузить данные в таблицу "komp_servisDataSet.Dogovor". При необходимости она может быть перемещена или удалена.

this.dogovorTableAdapter.Fill(this.komp_servisDataSet.Dogovor);

}

private void dogovorDataGridView_DataError(object sender, DataGridViewDataErrorEventArgs e)

{

}

private void addButton_Click(object sender, EventArgs e)

{

if (klientComboBox.SelectedValue != null && uslugaComboBox.SelectedValue != null && srokTextBox.Text != "")

{

int idKl = Convert.ToInt32(klientComboBox.SelectedValue);

int idUsl = Convert.ToInt32(uslugaComboBox.SelectedValue);

int srok = Convert.ToInt32(srokTextBox.Text);

double sum = Convert.ToDouble(queriesTableAdapter.GetStoimostUsl(idUsl));

dogovorTableAdapter.Insert(idKl, idUsl, dateDTP.Value, srokTextBox.Text);

this.dogovorTableAdapter.Fill(this.komp_servisDataSet.Dogovor);

}

else

{

MessageBox.Show("Заполните все поля");

}

}

private void deleteButton_Click(object sender, EventArgs e)

{

dogovorTableAdapter.Delete(Convert.ToInt32(dogovorDataGridView[IDColumn.Index, dogovorDataGridView.CurrentRow.Index].Value));

this.dogovorTableAdapter.Fill(this.komp_servisDataSet.Dogovor);

}

private void groupBox1_Enter(object sender, EventArgs e)

{

}

}

}

Модуль отчет:

public partial class OtchetForm : Form

{

private ReportDataSource reportDataSource = new ReportDataSource();

public OtchetForm()

{

InitializeComponent();

}

private void OtchetForm_Load(object sender, EventArgs e)

{

// TODO: данная строка кода позволяет загрузить данные в таблицу "komp_servisDataSet.uslugiSotrudnika". При необходимости она может быть перемещена или удалена.

PostavsikTableAdapter.Fill(this.komp_servisDataSet.Postavsik);

SotrudnikiTableAdapter.Fill(this.komp_servisDataSet.Sotrudniki);

this.reportViewer.RefreshReport();

}

private void spisokSotrButton_Click(object sender, EventArgs e)

{

reportViewer.Reset();

this.SotrudnikiTableAdapter.Fill(this.komp_servisDataSet.Sotrudniki);

reportDataSource.Name = "DataSet1";

reportDataSource.Value = this.SotrudnikiBindingSource;

this.reportViewer.LocalReport.DataSources.Add(reportDataSource);

this.reportViewer.LocalReport.ReportEmbeddedResource = "KompServiceProgramm.ReportSpisokSotr.rdlc";

this.reportViewer.RefreshReport();

}

private void spisokKlientovButton_Click(object sender, EventArgs e)

{

reportViewer.Reset();

this.KlientTableAdapter.Fill(this.komp_servisDataSet.Klient);

reportDataSource.Name = "DataSet1";

reportDataSource.Value = this.KlientBindingSource;

this.reportViewer.LocalReport.DataSources.Add(reportDataSource);

this.reportViewer.LocalReport.ReportEmbeddedResource = "KompServiceProgramm.ReportSpisokKlientov.rdlc";

this.reportViewer.RefreshReport();

}

private void spisokUslugButton_Click(object sender, EventArgs e)

{

reportViewer.Reset();

this.UslugiTableAdapter.Fill(this.komp_servisDataSet.Uslugi);

reportDataSource.Name = "DataSet1";

reportDataSource.Value = this.UslugiBindingSource;

this.reportViewer.LocalReport.DataSources.Add(reportDataSource);

this.reportViewer.LocalReport.ReportEmbeddedResource = "KompServiceProgramm.ReportSpisokUslug.rdlc";

this.reportViewer.RefreshReport();

}

private void zapchastiNaSkladeButton_Click(object sender, EventArgs e)

{

reportViewer.Reset();

this.skladTableAdapter.Fill(this.komp_servisDataSet.sklad);

reportDataSource.Name = "DataSet1";

reportDataSource.Value = this.skladBindingSource;

this.reportViewer.LocalReport.DataSources.Add(reportDataSource);

this.reportViewer.LocalReport.ReportEmbeddedResource = "KompServiceProgramm.ReportTovariNaSklade.rdlc";

this.reportViewer.RefreshReport();

}

private void prodaziZaPeriodButton_Click(object sender, EventArgs e)

{

if (maxdate1DTP.Value >= mindate1DTP.Value)

{

var minParam = new ReportParameter("minDate", mindate1DTP.Value.ToShortDateString());

var maxParam = new ReportParameter("maxDate", maxdate1DTP.Value.ToShortDateString());

reportViewer.Reset();

ProdasiZaPeriodTableAdapter.Fill(this.komp_servisDataSet.ProdasiZaPeriod, mindate1DTP.Value, maxdate1DTP.Value);

reportDataSource.Name = "DataSet1";

reportDataSource.Value = this.ProdasiZaPeriodBindingSource;

this.reportViewer.LocalReport.DataSources.Add(reportDataSource);

this.reportViewer.LocalReport.ReportEmbeddedResource = "KompServiceProgramm.ReportProdaziZaPeriod.rdlc";

this.reportViewer.LocalReport.SetParameters(new ReportParameter[] { minParam, maxParam });

this.reportViewer.RefreshReport();

}

else

{

MessageBox.Show("Дата начала периода больше чем дата конца периода.");

}

}

private void uslugiZaPeriodButton_Click(object sender, EventArgs e)

{

if (maxdate2DTP.Value >= mindate2DTP.Value)

{

var minParam = new ReportParameter("minDate", mindate2DTP.Value.ToShortDateString());

var maxParam = new ReportParameter("maxDate", maxdate2DTP.Value.ToShortDateString());

reportViewer.Reset();

OkazannieUslugiZaPeriodTableAdapter.Fill(this.komp_servisDataSet.OkazannieUslugiZaPeriod, mindate2DTP.Value, maxdate2DTP.Value);

reportDataSource.Name = "DataSet1";

reportDataSource.Value = this.OkazannieUslugiZaPeriodBindingSource;

this.reportViewer.LocalReport.DataSources.Add(reportDataSource);

this.reportViewer.LocalReport.ReportEmbeddedResource = "KompServiceProgramm.ReportUslugiZaPeriod.rdlc";

this.reportViewer.LocalReport.SetParameters(new ReportParameter[] { minParam, maxParam });

this.reportViewer.RefreshReport();

}

else

{

MessageBox.Show("Дата начала периода больше чем дата конца периода.");

}

}

private void SpisokPostavshikovButton_Click(object sender, EventArgs e)

{

reportViewer.Reset();

this.PostavsikTableAdapter.Fill(this.komp_servisDataSet.Postavsik);

reportDataSource.Name = "DataSet1";

reportDataSource.Value = this.PostavsikBindingSource;

this.reportViewer.LocalReport.DataSources.Add(reportDataSource);

this.reportViewer.LocalReport.ReportEmbeddedResource = "KompServiceProgramm.ReportSpisokPostavshikov.rdlc";

this.reportViewer.RefreshReport();

}

private void zapchastiPostavsikaButton_Click(object sender, EventArgs e)

{

reportViewer.Reset();

this.zapchastiPostavsikaTableAdapter.Fill(this.komp_servisDataSet.zapchastiPostavsika,Convert.ToInt32(postavsikComboBox.SelectedValue));

reportDataSource.Name = "DataSet1";

reportDataSource.Value = this.zapchastiPostavsikaBindingSource;

this.reportViewer.LocalReport.DataSources.Add(reportDataSource);

this.reportViewer.LocalReport.ReportEmbeddedResource = "KompServiceProgramm.zapchastiPostavsikaReport.rdlc";

this.reportViewer.RefreshReport();

}

private void uslSotrButton_Click(object sender, EventArgs e)

{

reportViewer.Reset();

this.uslugiSotrudnikaTableAdapter.Fill(this.komp_servisDataSet.uslugiSotrudnika, Convert.ToInt32(sotrComboBox.SelectedValue));

reportDataSource.Name = "DataSet1";

reportDataSource.Value = this.uslugiSotrudnikaBindingSource;

this.reportViewer.LocalReport.DataSources.Add(reportDataSource);

this.reportViewer.LocalReport.ReportEmbeddedResource = "KompServiceProgramm.ReportUslugiSotrudnika.rdlc";

this.reportViewer.RefreshReport();

}

private void reportViewer_Load(object sender, EventArgs e)

{

}

}

}

Модуль поставщик:

public partial class PostavshikiForm : Form

{

public PostavshikiForm()

{

InitializeComponent();

}

private bool needToSave = false;

private void postavsikBindingNavigatorSaveItem_Click(object sender, EventArgs e)

{

if (MessageBox.Show("Сохранить изменения в базе данных?", "Предупреждение", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question) == DialogResult.Yes)

{

this.Validate();

this.postavsikBindingSource.EndEdit();

this.tableAdapterManager.UpdateAll(this.komp_servisDataSet);

needToSave = false;

}

}

private void PostavshikiForm_Load(object sender, EventArgs e)

{

// TODO: данная строка кода позволяет загрузить данные в таблицу "komp_servisDataSet.Postavsik". При необходимости она может быть перемещена или удалена.

this.postavsikTableAdapter.Fill(this.komp_servisDataSet.Postavsik);

}

private void postavsikDataGridView_CellBeginEdit(object sender, DataGridViewCellCancelEventArgs e)

{

needToSave = true;

}

private void PostavshikiForm_FormClosing(object sender, FormClosingEventArgs e)

{

if (needToSave)

{

DialogResult dr = MessageBox.Show("Сохранить изменения в базе данных?", "Предупреждение", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question);

e.Cancel = (dr == DialogResult.Cancel);

if (dr == DialogResult.Yes)

{

this.Validate();

this.postavsikBindingSource.EndEdit();

this.tableAdapterManager.UpdateAll(this.komp_servisDataSet);

}

}

}

private void postavsikDataGridView_DataError(object sender, DataGridViewDataErrorEventArgs e)

{

}

}

}

Модуль формы склад:

public partial class SkladForm : Form

{

public SkladForm()

{

InitializeComponent();

}

private bool needToSave = false;

private void tovarBindingNavigatorSaveItem_Click(object sender, EventArgs e)

{

if (MessageBox.Show("Сохранить изменения в базе данных?", "Предупреждение", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question) == DialogResult.Yes)

{

this.Validate();

this.tovarBindingSource.EndEdit();

this.tableAdapterManager.UpdateAll(this.komp_servisDataSet);

needToSave = false;

}

}

private void SkladForm_Load(object sender, EventArgs e)

{

// TODO: данная строка кода позволяет загрузить данные в таблицу "komp_servisDataSet.Postavsik". При необходимости она может быть перемещена или удалена.

this.postavsikTableAdapter.Fill(this.komp_servisDataSet.Postavsik);

// TODO: данная строка кода позволяет загрузить данные в таблицу "komp_servisDataSet.Tovar". При необходимости она может быть перемещена или удалена.

this.tovarTableAdapter.Fill(this.komp_servisDataSet.Tovar);

}

private void SkladForm_FormClosing(object sender, FormClosingEventArgs e)

{

if (needToSave)

{

DialogResult dr = MessageBox.Show("Сохранить изменения в базе данных?", "Предупреждение", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question);

e.Cancel = (dr == DialogResult.Cancel);

if (dr == DialogResult.Yes)

{

this.Validate();

this.tovarBindingSource.EndEdit();

this.tableAdapterManager.UpdateAll(this.komp_servisDataSet);

}

}

}

private void tovarDataGridView_CellBeginEdit(object sender, DataGridViewCellCancelEventArgs e)

{

needToSave = true;

}

private void tovarDataGridView_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)

{

if (e.Control is ComboBox)

{

ComboBox combo = (ComboBox)e.Control;

combo.DropDownStyle = ComboBoxStyle.DropDown;

(e.Control as ComboBox).AutoCompleteMode = AutoCompleteMode.Suggest;

(e.Control as ComboBox).AutoCompleteSource = AutoCompleteSource.ListItems;

}

}

private void tovarDataGridView_DataError(object sender, DataGridViewDataErrorEventArgs e)

{

}

}

}

Модуль формы сотрудники:

public partial class SotrydnikiForm : Form

{

public SotrydnikiForm()

{

InitializeComponent();

}

private bool needToSave = false;

private void sotrudnikiBindingNavigatorSaveItem_Click(object sender, EventArgs e)

{

if (MessageBox.Show("Сохранить изменения в базе данных?", "Предупреждение", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question) == DialogResult.Yes)

{

this.Validate();

this.sotrudnikiBindingSource.EndEdit();

this.tableAdapterManager.UpdateAll(this.komp_servisDataSet);

needToSave = false;

}

}

private void SotrydnikiForm_Load(object sender, EventArgs e)

{

// TODO: данная строка кода позволяет загрузить данные в таблицу "komp_servisDataSet.Sotrudniki". При необходимости она может быть перемещена или удалена.

this.sotrudnikiTableAdapter.Fill(this.komp_servisDataSet.Sotrudniki);

}

private void sotrudnikiDataGridView_CellBeginEdit(object sender, DataGridViewCellCancelEventArgs e)

{

needToSave = true;

}

private void SotrydnikiForm_FormClosing(object sender, FormClosingEventArgs e)

{

if (needToSave)

{

DialogResult dr = MessageBox.Show("Сохранить изменения в базе данных?", "Предупреждение", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question);

e.Cancel = (dr == DialogResult.Cancel);

if (dr == DialogResult.Yes)

{

this.Validate();

this.sotrudnikiBindingSource.EndEdit();

this.tableAdapterManager.UpdateAll(this.komp_servisDataSet);

}

}

}

private void sotrudnikiDataGridView_DataError(object sender, DataGridViewDataErrorEventArgs e)

{

}

}

}

Модуль формы USER:

public partial class UsersForm : Form

{

public UsersForm()

{

InitializeComponent();

}

private void registerBtn_Click(object sender, EventArgs e)

{

if ((usernameTB.Text != "") && (passTb.Text != "") && (roleTb.Text != "") && (checkPassTb.Text != ""))

{

if ((passTb.Text == checkPassTb.Text))

{

usersTableAdapter.Insert(usernameTB.Text, passTb.Text, roleTb.Text);

MessageBox.Show("Пользователь " + usernameTB.Text + " добавлен.");

}

else

{

MessageBox.Show("Пароль не совпадает.");

}

}

else

{

MessageBox.Show("Заполните все поля.");

}

}

private void deleteBtn_Click(object sender, EventArgs e)

{

if (editUsernameTb.Text != "")

{

usersTableAdapter.Delete(editUsernameTb.Text);

MessageBox.Show("Пользователь " + editUsernameTb.Text + " удален.");

}

else

{

MessageBox.Show("Введите имя пользователя");

}

}

}

}

Модуль формы услуги :

public partial class UslugiForm : Form

{

public UslugiForm()

{

InitializeComponent();

}

private bool needToSave = false;

private void uslugiBindingNavigatorSaveItem_Click(object sender, EventArgs e)

{

if (MessageBox.Show("Сохранить изменения в базе данных?", "Предупреждение", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question) == DialogResult.Yes)

{

this.Validate();

this.uslugiBindingSource.EndEdit();

this.tableAdapterManager.UpdateAll(this.komp_servisDataSet);

needToSave = false;

}

}

private void UslugiForm_Load(object sender, EventArgs e)

{

// TODO: данная строка кода позволяет загрузить данные в таблицу "komp_servisDataSet.Sotrudniki". При необходимости она может быть перемещена или удалена.

this.sotrudnikiTableAdapter.Fill(this.komp_servisDataSet.Sotrudniki);

// TODO: данная строка кода позволяет загрузить данные в таблицу "komp_servisDataSet.Uslugi". При необходимости она может быть перемещена или удалена.

this.uslugiTableAdapter.Fill(this.komp_servisDataSet.Uslugi);

}

private void uslugiDataGridView_CellBeginEdit(object sender, DataGridViewCellCancelEventArgs e)

{

needToSave = true;

}

private void UslugiForm_FormClosing(object sender, FormClosingEventArgs e)

{

if (needToSave)

{

DialogResult dr = MessageBox.Show("Сохранить изменения в базе данных?", "Предупреждение", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question);

e.Cancel = (dr == DialogResult.Cancel);

if (dr == DialogResult.Yes)

{

this.Validate();

this.uslugiBindingSource.EndEdit();

this.tableAdapterManager.UpdateAll(this.komp_servisDataSet);

needToSave = false;

}

}

}

private void uslugiDataGridView_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)

{

if (e.Control is ComboBox)

{

ComboBox combo = (ComboBox)e.Control;

combo.DropDownStyle = ComboBoxStyle.DropDown;

(e.Control as ComboBox).AutoCompleteMode = AutoCompleteMode.Suggest;

(e.Control as ComboBox).AutoCompleteSource = AutoCompleteSource.ListItems;

}

}

private void uslugiDataGridView_DataError(object sender, DataGridViewDataErrorEventArgs

{

}

}

}

Размещено на Allbest.ru

...

Подобные документы

  • Системный анализ предметной области. Требования к программе и программному изделию, к функциональным характеристикам, к надежности, составу и параметрам технических средств. Обоснование выбора средств выбора для хранения и обработки базы данных.

    реферат [403,8 K], добавлен 02.02.2014

  • Проектирование логической структуры базы данных методом нормальных форм, сущность связь. Сравнительный анализ спроектированной базы данных и базы данных существующих информационных систем. Выбор и обоснование состава технических и программных средств.

    курсовая работа [3,0 M], добавлен 22.12.2014

  • Разработка системы управления базой данных "Структура ВУЗа". Требования к программе: функциональным характеристикам, надежности, эксплуатации, составу и параметрам технических средств. Требования к программной документации. Порядок контроля и приемки.

    курсовая работа [982,7 K], добавлен 08.06.2015

  • Понятие банка и базы данных, их назначение. Создание базы данных "Учет нарушений ПДД" с удобным пользовательским интерфейсом. Требования к функциональным характеристикам. Условия эксплуатации и программные требования. Описание входных и выходных данных.

    курсовая работа [2,9 M], добавлен 22.09.2012

  • Исследование особенностей проектирования и реализации автоматизированной системы "Учет товаров в сети продуктовых магазинов". Анализ требований к функциональным характеристикам, параметрам технических средств и надежности. Разработка моделей базы данных.

    курсовая работа [1,2 M], добавлен 24.11.2013

  • Определение базы данных и банков данных. Компоненты банка данных. Основные требования к технологии интегрированного хранения и обработки данных. Система управления и модели организации доступа к базам данных. Разработка приложений и администрирование.

    презентация [17,1 K], добавлен 19.08.2013

  • Построение логической и физической структуры базы данных. Сценарии вариантов использования: вход и выход из системы, обновление меню и списка официантов, регистрация и проверка выполнения заказа. Расчёт стоимости и эффективность внедрения программы.

    курсовая работа [1,3 M], добавлен 21.09.2015

  • Разработка системы автоматизации для работы инженеров, бухгалтера, менеджера для предприятия, работающего в сфере торговли и обслуживания платформ многоканальной звукозаписи. Требования к функциональным характеристикам базы данных в MS Access.

    курсовая работа [774,3 K], добавлен 23.01.2013

  • История создания предприятия и анализ его деятельности. Основные понятия торговли. Этапы разработки модели данных, построение информационно-логической модели. Разработка базы данных для учета товародвижения и документооборота на предприятии в ACCESS.

    дипломная работа [1006,2 K], добавлен 14.01.2012

  • Выбор состава технических и программных средств разработки системы. Описание входных и выходных данных. Выбор модели базы данных. Разработка подсистемы наполнения базы данных, формирования отчетов. Разработка интерфейса пользователя, тестирование системы.

    курсовая работа [3,7 M], добавлен 04.12.2014

  • Анализ аналогов и выбор прототипа, разработка алгоритма и графического интерфейса, кодирование и тестирование. Логическая модель данных "Нотариальная контора". Особенности реализации в MS SQL. Требования к функциональным характеристикам базы данных.

    курсовая работа [1,3 M], добавлен 12.01.2013

  • Основные функции системы управления базами данных - описание структуры базы данных, обработка данных и управление данными. Компьютерный магазин как предметная область, ее технико-экономические характеристики. Построение логической и физической моделей.

    курсовая работа [3,7 M], добавлен 02.07.2012

  • Разработка игровой программы "разгадывания кроссворда". Создание схемы хранения данных, изучение возможности среды программирования. Требования к функциональным характеристикам, составу и параметрам технических средств, информационной совместимости.

    курсовая работа [403,9 K], добавлен 26.03.2015

  • Обзор средств проектирования баз данных. Технологические платформы баз данных. Основные этапы проектирования. Разработка логической и физическойц модели. Генерация модели в MS Access 2003. Реализация форм и запросов базы данных. Требования по установке.

    курсовая работа [3,0 M], добавлен 28.12.2015

  • Процесс разработки Web-сайта. Состав и содержание работ по созданию подсистемы. Требования к Web-сайту. Определение сущностей модели базы данных. Разработка логической модели базы данных. Реализация PHP-скриптов и заполнение базы данных Web-сайта.

    дипломная работа [8,2 M], добавлен 29.06.2011

  • Разработка базы данных организации, которая занимается ремонтом автомобилей и реализована в виде программного продукта. Моделирование структуры баз данных с использованием CASE-средств средствами языка SQL. Разработка логической и физической модели базы.

    курсовая работа [2,3 M], добавлен 21.03.2010

  • Базы данных - важнейшая составная часть информационных систем. Проектирование базы данных на примере предметной области "Оргтехника". Сбор информации о предметной области. Построение информационно-логической модели данных. Разработка логической структуры.

    курсовая работа [318,6 K], добавлен 24.12.2014

  • Описание экспертной системы по подбору кадров. Требования к функциональным характеристикам программы. Состав и параметры технических средств ЭВМ. Структура входных данных. Руководство программиста и пользователя. Тестирование программного средства.

    курсовая работа [897,0 K], добавлен 13.11.2016

  • Системный анализ и анализ требований к базе данных. Концептуальная и инфологическая модель предметной области. Типы атрибутов в логической модели базы. Физическая модель проектируемой базы данных в методологии IDEF1X. Требования к пользователям системы.

    курсовая работа [2,3 M], добавлен 21.11.2013

  • Выбор программных средст, основные требования. Разработка программного обеспечение для автоматизации учета использования и обслуживания транспортных средств. Инфологическая модель базы данных. Разработка SQL запросов, алгоритмов. Структура базы данных.

    курсовая работа [1,0 M], добавлен 16.02.2015

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.