Разработка предложений по оптимизации информационной структуры
Проходя практику в университете, было рассмотрено множество должностей и выбран один из них для автоматизаций и цифровизации работы, также тем временем проводя процесс цифровизации, избавляя от нагрузки бумажной рутины. Им стал руководитель практики от кафедры.
Работа руководителя практики сложна тем, что приходится иметь дело с огромным потоком бумажной работы, что весьма неудобно и требует тратить больше сил и времени на выполнения определённой работы. В то время когда в каждое рабочее место внедряют специальные компьютерные приложения, которые существенно повышают эффективность и скорость выполнения обычных задач. Руководитель практики от кафедры занимается сбором отчётов от преподавателей, которые проводят практику, но это то, что ждёт в конце.
До начала самой практики руководителю нужно собрать информацию о группах на кафедре. Информация о группе содержит: количество студентов, места прохождения их практики. Сверка графиков поставленные отделом по академическим вопросам. В итоге создание списков, где будут указаны данные о руководителе практики, графике сдачи и группах, которые закреплены за руководителем.
После начала практики наступает момент, когда руководителю практики от кафедры необходимо следить за сдачей всех отчётов от групп в срок. Приходится постоянно держать в уме список и вычёркивать группы, полностью сдавшие все отчёты.
|
|
Более подробно показано всё в двух схемах в приложении Г и Д. Приложение Г содержит схему информационных потоков. В ней указаны пути информаций и документов по очереди. В ней можно оценить полный масштаб работы, проделываемое руководителем практики от кафедры.
На схеме документооборота изображенном в приложении Д можно увидеть документы, передаваемые из разных областей университета. В центре всей схемы находится сам руководитель практики. Схема выполнена для представления пути документов по университету и на ней удобно рассмотреть взаимодействие руководителя с университетом.
Разработка алгоритма для задачи оптимизации информационной структуры
Программа будет иметь 2 таблицы в базе данных. Первая это основная, где хранятся информация о задействованных в практике руководителей, а также состояние завершения их работы. Вторая является дополнительной, где непосредственно находятся данные о группах, количестве студентов, проходящих практику, а также график сдачи самой практики.
В схеме связи между таблицами БД показанной полностью в приложении Е представлены выше указанные таблицы и их связи между собой. Подробно о каждой таблице. Основная таблица:
|
|
· Руководитель практики – Фамилия и инициалы преподавателя за которым закреплены группы;
· Отметка о сдачи – статус о готовности всех отчётов и дневников закреплённых за преподавателем групп.
Дополнительная таблица содержит в себе 5 столбцов:
· Руководитель практики – полностью копирует столбец из основной таблицы и создан для создания связи между ними;
· График сдачи – в строках под этим столбцом указывается дата окончания практики;
· Группа – наименования группы проходящая практику;
· Прошедшие – количество студентов, уже сдавших отчёт и дневник;
· Всего студентов – общее количество студентов.
В самой программе будет использованы такие элементы как BindingSource, Dataset и 2 Datagridview. Всё это нужно для связи базы данных Access с программой. Также необходимо обеспечить базу основными возможностями управления, такие как: фильтрация, сортировка, добавление записи, изменение записи и вывод отчёта. В нашем случае понадобится добавление как записи, так и руководителя практики.
Написание и отладка программы
Первым делом создав форму мы начнём работу с базами данных для этого мы добавим на форму 4 элемента. Сперва это будут BindingSource и Dataset, с помощью них как раз-таки производится подключение базы данных с программой. Следующими будут компоненты, которые смогут отобразить данные из базы. Ими выступят 2 Datagridview. Один нам понадобиться для таблицы с руководителя практики, а второй для таблицы с информацией обо всех группах, проходящих практику. Результат показан на рисунке 1.
|
|
Рисунок 1. Добавлено и подключено всё необходимое для базы данных.
Следующим хорошо бы добавить возможность добавления записей. Для того, чтобы это реализовать добавим на форму кнопку, затем вторую форму в проект, всё для того, чтобы реализовать там добавление.
Создав вторую форму, туда поместим Combobox для выбора руководителя практики из выпадающего списка. Чтобы Combobox заполнялся данными из базы, мы к нему привяжем значения через свойство DataSource. Выбрав нужный нам столбец, подтверждаем и получаем автоматически заполняющийся Combobox с фамилиями и инициалами преподавателей. Далее мы поместим Datetimepicker, он пригодится для удобного указания даты в столбце график сдачи. Чтобы высвечивалась лишь дата, изменяем его свойство Format на Short. Следующим шагом добавим оставшимся столбцам 3 Textbox-а. Напоследок остались 2 кнопки. Кнопка «Добавить» и «Отмена». Кнопка с названием просто закроет форму, тем временем как кнопка «Добавить» добавит новую запись, а затем закроет саму форму. Всё что получилось можно увидеть на рисунке 2.
|
|
Рисунок 2. Вторая форма для добавления записи.
Для добавления записи используется следующий код:
{
bdDataSet.ДопRow newR;
newR = bdDataSet.Доп.NewДопRow();
newR.Руководитель_практики = comboBox1.SelectedValue.ToString();
newR.График_сдачи = dateTimePicker1.Value.Date;
newR.Группа = textBox3.Text;
newR.Прошедшие = Convert.ToInt32(textBox1.Text);
newR.Всего_студентов = Convert.ToInt32(textBox2.Text);
bdDataSet.Доп.Rows.Add(newR);
f1.допTableAdapter.Update(this.bdDataSet.Доп);
f1.допTableAdapter.Update(f1.bdDataSet1);
f1.dataGridView2.Refresh();
DialogResult = DialogResult.OK;
Close();
}
Тут добавляется переменная строка, которая берёт из всех указанных компонентов информацию каждую в свою строку. Далее при помощи команды Add мы её добавляем в саму базу. Но оставив бы мы всё так, то у нас обновилась лишь база в Access, поэтому для того, чтобы обновить базу в программе необходимо воспользоваться командой Update, а после командой Refresh. Update обновит Dataset в программе, а Refresh перерисует таблицы, всё для того, чтобы высветить новые записи в таблице.
Редактирование записей реализовать можно включив у Datagridview в свойстве Columns для столбцов, не нуждающихся в редактировании свойство ReadOnly. В тоже время нужно поставить галочку разрешить правку в Datagridview как показано на рисунке 3.
Рисунок 3. Включение правки в Datagridview.
Следующим шагом будет добавить фильтрацию по руковителю практики. Таким образом нажимая на фамилию преподавателя, нижняя таблица будет фильтровать таблицу по фамилии руководителя. Для того, чтобы это работало необходимо описать код в событии SelectedChanged у компонента Datagridview. Код будет выглядеть так:
{
string s = dataGridView1.SelectedCells[0].Value.ToString();
допBindingSource.Filter = "Руководитель_практики LIKE '%" + s + "%'";
}
На рисунке 4 показано как работает данный код.
Рисунок 4. Работа фильтрации в программе.
Далее, что нужно добавить это отчёт по дате. На форму добавим 2 Datetimepicker-а и Checkbox. При помощи ним можно будет реализовать фильтрацию по дате. Один Datetimepicker будет использован как от какого числа, а второй будет до какого числа. А Checkbox будет активировать данную функцию. Создали это всё на отдельной панели, чтобы не создавать ещё одну форму, вызывать её будем кликнув на кнопку «Отчёт в Word». На рисунке 5 показана эта панель.
Рисунок 5. Панель настройки отчёта.
Теперь мы сделаем сортировку нижней таблицы. Сортировка будет от А до Я и наоборот, а чтобы это удобнее реализовать, применим 2 Radiobutton-а, для удобства поместим их в Groupbox. Используя событие у Radiobutton-а под название CheckedChanged мы вписываем следующий код:
{
допBindingSource.Sort = "группа ASC";
}
Спрограммировав напоследок возможность добавления нового руководителя практики получаем такой результат, показанный на рисунке 6.
Рисунок 6. Конечный вид программы.
Дата добавления: 2019-11-16; просмотров: 253; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!