Автоматизация воспитательной работы УО "Гомельский государственный аграрно-экономический колледж"
Основные направления воспитательной работы учреждения образования. Состав и организация программного обеспечения автоматизации воспитательной работы учреждения образования. Разработка графического интерфейса. Описание компонентов и иерархии классов.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 06.01.2017 |
Размер файла | 4,8 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
for (int i = 1; i < dataGridView1.ColumnCount; i++)
{
wordtable.Columns.Add();
wordtable.Rows[1].Cells[wordtable.Columns.Count].Range.Text = dataGridView1.Columns[i].HeaderText;
}
for (int j = 0; j < dataGridView1.RowCount; j++)
{
wordtable.Rows.Add();
if (dataGridView1[1, j].Value.ToString() != "" || dataGridView1[1, j].Value is DBNull == false)
sum[0]=sum[0]+Convert.ToInt16(dataGridView1[1,j].Value.ToString());
if (dataGridView1[2, j].Value.ToString() != "" || dataGridView1[2, j].Value is DBNull == false)
sum[1] = sum[1] + Convert.ToInt16(dataGridView1[2, j].Value.ToString());
if (dataGridView1[3, j].Value.ToString() != "" || dataGridView1[3, j].Value is DBNull == false)
sum[2] = sum[2] + Convert.ToInt16(dataGridView1[3, j].Value.ToString());
for (int i = 0; i < dataGridView1.ColumnCount; i++)
{
wordtable.Cell(j + 2, i + 1).Range.Text = dataGridView1[i, j].Value.ToString();
}
}
wordtable.Rows.Add();
wordtable.Cell(dataGridView1.RowCount + 2, 1).Range.Text = "Итого";
wordtable.Cell(dataGridView1.RowCount + 2, 2).Range.Text = sum[0].ToString();
wordtable.Cell(dataGridView1.RowCount + 2, 3).Range.Text = sum[1].ToString();
wordtable.Cell(dataGridView1.RowCount + 2, 4).Range.Text = sum[2].ToString();
wordtable.AutoFitBehavior(Word.WdAutoFitBehavior.wdAutoFitContent);
}
private void dataGridView1_CellLeave(object sender, DataGridViewCellEventArgs e)
{
for (int i=0;i<dataGridView1.RowCount;i++)
{
int x=0;
if (dataGridView1[1, i].Value is DBNull==false)
x = x + Convert.ToInt32(dataGridView1[1, i].Value.ToString());
if (dataGridView1[2,i].Value is DBNull ==false)
x = x + Convert.ToInt32(dataGridView1[2, i].Value.ToString());
if (x != 0)
{
dataGridView1[3, i].Value = x;
}
else dataGridView1[3, i].Value = "";
}
}
}
}
Главное_окно.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace АвтоматизацияРаботыУОГГАЭК
{
public partial class Главное_окно : Form
{
private Form _f;
private int _log;
private int _gr;
public Главное_окно(Form f, int log)
{
InitializeComponent();
_f = f;
_log = log;
}
private void button1_Click(object sender, EventArgs e)
{
Перечень_учащихся f;
if (_log != -1)
{
if (_gr != -2)
{
if (_gr != -1)
{
f = new Перечень_учащихся(this, _log);
this.Hide();
f.Show();
}
else MessageBox.Show("К вашей записи не привязана группа. Войдите в меню Справочники и создайте группу");
}
else MessageBox.Show("Логическая ошибка: на вас зарегисрированы несколько групп. Проверьте данные в справочниках");
}
else MessageBox.Show("Для добавления данных об учащихся необходимо войти с учетной записью куратора группы");
}
private void button2_Click(object sender, EventArgs e)
{
Application.Exit();
}
private void справочникиToolStripMenuItem_Click(object sender, EventArgs e)
{
Справочники f = new Справочники(this,_log);
this.Hide();
f.Show();
}
private void Главное_окно_Load(object sender, EventArgs e)
{
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Отделения". При необходимости она может быть перемещена или удалена.
this.отделенияTableAdapter.Fill(this.бДDataSet.Отделения);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Группы". При необходимости она может быть перемещена или удалена.
this.группыTableAdapter.Fill(this.бДDataSet.Группы);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Кураторы". При необходимости она может быть перемещена или удалена.
this.кураторыTableAdapter.Fill(this.бДDataSet.Кураторы);
if (_log == -1) label1.Text = "Добро пожаловать, администратор!";
else
{
label1.Text = "Добро пожаловать,\n " + бДDataSet.Кураторы.FindByКод_куратора(_log).Имя + " " + бДDataSet.Кураторы.FindByКод_куратора(_log).Отчество + "!";
отделенияBindingSource.MoveFirst();
string str = "(";
int g = DateTime.Today.Year;
for (int i = 0; i < отделенияBindingSource.Count; i++)
{
if (i != 0) str += " or ";
DataRow zn = ((DataRowView)отделенияBindingSource.Current).Row;
if (DateTime.Today.Month < 9 && ((int)zn[3] % 2 == 0))
str += "Код_отделения=" + zn[0].ToString() + " and Дата_набора>=#09/01/" + (g - ((int)zn[3] / 2)) + "#";
else str += "Код_отделения=" + zn[0].ToString() + " and Дата_набора>=#09/01/" + (g - (((int)zn[3] - 1) / 2)) + "#";
отделенияBindingSource.MoveNext();
}
группыBindingSource.Filter = str + ") and Код_куратора=" + _log;
отделенияBindingSource.MoveFirst();
if (группыBindingSource.Count == 0) _gr = -1;
else if (группыBindingSource.Count > 1) { _gr = -2; MessageBox.Show("Логическая ошибка: на вас зарегисрированы несколько групп. Проверьте данные в справочниках"); }
else _gr = Convert.ToInt16(((DataRowView)группыBindingSource.Current).Row[2].ToString());
группыBindingSource.Filter = "";
}
}
private void button3_Click(object sender, EventArgs e)
{
Ведомость_за_месяц_србалл f;
if (_log != -1)
{
if (_gr!=-2)
if (_gr != -1)
{
f = new Ведомость_за_месяц_србалл(this, _gr);
this.Hide();
f.Show();
}
else MessageBox.Show("К вашей записи не привязана группа. Войдите в меню Справочники и создайте группу");
else MessageBox.Show("Логическая ошибка: на вас зарегисрированы несколько групп. Проверьте данные в справочниках");
}
else MessageBox.Show("Для формирования ведомостей необходимо войти через учетную запись куратора группы");
}
private void button4_Click(object sender, EventArgs e)
{
Ведомость_по_пропускам f;
if (_log != -1)
{
if (_gr!=-2)
if (_gr != -1)
{
f = new Ведомость_по_пропускам(this, _gr);
this.Hide();
f.Show();
}
else MessageBox.Show("К вашей записи не привязана группа. Войдите в меню Справочники и создайте группу");
else MessageBox.Show("Логическая ошибка: на вас зарегисрированы несколько групп. Проверьте данные в справочниках");
}
else MessageBox.Show("Для формирования ведомостей необходимо войти через учетную запись куратора группы");
}
private void выйтиИзСистемыToolStripMenuItem_Click(object sender, EventArgs e)
{
this.Close();
_f.Show();
}
private void оПрограммеToolStripMenuItem_Click(object sender, EventArgs e)
{
AboutBox1 f = new AboutBox1();
f.ShowDialog();
}
private void настройкиToolStripMenuItem_Click(object sender, EventArgs e)
{
Настройки f = new Настройки();
f.ShowDialog();
}
private void Главное_окно_Layout(object sender, LayoutEventArgs e)
{
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Отделения". При необходимости она может быть перемещена или удалена.
this.отделенияTableAdapter.Fill(this.бДDataSet.Отделения);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Группы". При необходимости она может быть перемещена или удалена.
this.группыTableAdapter.Fill(this.бДDataSet.Группы);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Кураторы". При необходимости она может быть перемещена или удалена.
this.кураторыTableAdapter.Fill(this.бДDataSet.Кураторы);
отделенияBindingSource.MoveFirst();
string str = "(";
int g = DateTime.Today.Year;
for (int i = 0; i < отделенияBindingSource.Count; i++)
{
if (i != 0) str += " or ";
DataRow zn = ((DataRowView)отделенияBindingSource.Current).Row;
if (DateTime.Today.Month < 9 && ((int)zn[3] % 2 == 0))
str += "Код_отделения=" + zn[0].ToString() + " and Дата_набора>=#09/01/" + (g - ((int)zn[3] / 2)) + "#";
else str += "Код_отделения=" + zn[0].ToString() + " and Дата_набора>=#09/01/" + (g - (((int)zn[3] - 1) / 2)) + "#";
отделенияBindingSource.MoveNext();
}
группыBindingSource.Filter = str + ") and Код_куратора=" + _log;
отделенияBindingSource.MoveFirst();
if (группыBindingSource.Count == 0) _gr = -1;
else if (группыBindingSource.Count > 1) { _gr = -2; MessageBox.Show("Логическая ошибка: на вас зарегисрированы несколько групп. Проверьте данные в справочниках"); }
else _gr = Convert.ToInt16(((DataRowView)группыBindingSource.Current).Row[2].ToString());
}
}
}
Настройки.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace АвтоматизацияРаботыУОГГАЭК
{
public partial class Настройки : Form
{
public Настройки()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
if (textBox1.Text == Properties.Settings.Default.admin_pass && textBox2.Text == textBox3.Text)
{
Properties.Settings.Default.admin_pass = textBox2.Text;
MessageBox.Show("Пароль успешно изменен");
textBox1.Text = "";
textBox2.Text = "";
textBox3.Text = "";
}
else MessageBox.Show("Ошибка! проверьте данные для ввода");
}
private void button2_Click(object sender, EventArgs e)
{
Properties.Settings.Default.admin_pass = Properties.Settings.Default.admin_pass_p;
MessageBox.Show("Пароль успешно сброшен");
}
}
}
Перечень_учащихся.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Excel = Microsoft.Office.Interop.Excel;
using Word = Microsoft.Office.Interop.Word;
namespace АвтоматизацияРаботыУОГГАЭК
{
public partial class Перечень_учащихся : Form
{
private Form _f;
private int _log;
private Excel.Application excelapp;
private Excel.Workbook excelappworkbook;
private Excel.Sheets excelsheets;
private Excel.Worksheet excelworksheet;
private Excel.Range excelcells;
private Word.Application wordapp;
private Word.Document worddocument;
private Word.Paragraphs wordparagraphs;
public Перечень_учащихся(Form f,int log)
{
InitializeComponent();
_f = f;
_log = log;
}
private void группа_куратора()
{
if (учащиесяBindingSource.Filter == "")
учащиесяBindingSource.Filter = "Код_группы=" + _log;
else учащиесяBindingSource.Filter += " and Код_группы=" + _log;
}
private void Перечень_учащихся_Load(object sender, EventArgs e)
{
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Поощрения". При необходимости она может быть перемещена или удалена.
this.поощренияTableAdapter.Fill(this.бДDataSet.Поощрения);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Виды_поощрений". При необходимости она может быть перемещена или удалена.
this.виды_поощренийTableAdapter.Fill(this.бДDataSet.Виды_поощрений);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Удержания". При необходимости она может быть перемещена или удалена.
this.удержанияTableAdapter.Fill(this.бДDataSet.Удержания);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Виды_удержаний". При необходимости она может быть перемещена или удалена.
this.виды_удержанийTableAdapter.Fill(this.бДDataSet.Виды_удержаний);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Сдача_ЦТ". При необходимости она может быть перемещена или удалена.
this.сдача_ЦТTableAdapter.Fill(this.бДDataSet.Сдача_ЦТ);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Предметы_ЦТ". При необходимости она может быть перемещена или удалена.
this.предметы_ЦТTableAdapter.Fill(this.бДDataSet.Предметы_ЦТ);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Группы". При необходимости она может быть перемещена или удалена.
this.группыTableAdapter.Fill(this.бДDataSet.Группы);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Учащиеся". При необходимости она может быть перемещена или удалена.
this.учащиесяTableAdapter.Fill(this.бДDataSet.Учащиеся);
dataGridView1.Columns[0].Visible = false;
}
private void button1_Click(object sender, EventArgs e)
{
this.Close();
_f.Show();
}
private void button2_Click(object sender, EventArgs e)
{
Учащиеся f;
if (_log!=-1)
f = new Учащиеся(this,0,_log);
else f = new Учащиеся(this,0,-1);
this.Hide();
f.Show();
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
if (checkBox2.Checked == false)
{
if (checkBox1.Checked == false)
{
comboBox2.Visible = true;
if (comboBox2.SelectedValue != null)
if (comboBox1.Text == "" && textBox1.Text != "")
{
учащиесяBindingSource.Filter = "Код_группы=" + comboBox2.SelectedValue + " and " + comboBox1.SelectedItem.ToString() + " like '" + textBox1.Text + "%'";
}
else учащиесяBindingSource.Filter = "Код_группы=" + comboBox2.SelectedValue;
}
else
{
if (comboBox1.Text != "" && textBox1.Text != "")
{
учащиесяBindingSource.Filter = comboBox1.SelectedItem.ToString() + " like '" + textBox1.Text + "%'";
}
else учащиесяBindingSource.Filter = "";
comboBox2.Visible = false;
}
}
else
{
checkBox1.Checked = false;
comboBox2.Visible = false;
if (comboBox1.Text == "" && textBox1.Text != "")
{
учащиесяBindingSource.Filter = "Код_группы=" + _log + " and " + comboBox1.SelectedItem.ToString() + " like '" + textBox1.Text + "%'";
}
else учащиесяBindingSource.Filter = "Код_группы=" + _log;
}
}
private void открытьКартуToolStripMenuItem_Click(object sender, EventArgs e)
{
if (dataGridView1.RowCount == 0)
MessageBox.Show("Нет учащихся. Сначала добавьте учащихся", "Ошибка");
else
{
Учащиеся f = new Учащиеся(this, (int)dataGridView1.CurrentRow.Cells[0].Value, -1);
this.Hide();
f.Show();
}
}
private void button4_Click(object sender, EventArgs e)
{
if (dataGridView1.RowCount == 0) MessageBox.Show("Для удаления должна быть хотя бы одна запись", "Ошибка!");
else
{
DialogResult res = MessageBox.Show("Вы действительно хотите удалить запись?", "Подтверждение", MessageBoxButtons.YesNo);
if (res == DialogResult.Yes)
{
try
{
бДDataSet.Учащиеся.FindByКод_учащегося(Convert.ToInt16(dataGridView1.CurrentRow.Cells[0].Value.ToString())).Delete();
учащиесяTableAdapter.Update(бДDataSet.Учащиеся);
учащиесяTableAdapter.Fill(бДDataSet.Учащиеся);
}
catch { MessageBox.Show("Ошибка при удалении. Обратитесь к системному администратору"); }
}
}
}
private void Перечень_учащихся_Layout(object sender, LayoutEventArgs e)
{
учащиесяTableAdapter.Fill(бДDataSet.Учащиеся);
}
private void открытьКартуToolStripMenuItem_Click(object sender, DataGridViewCellEventArgs e)
{
Учащиеся f = new Учащиеся(this, (int)dataGridView1.CurrentRow.Cells[0].Value,-1);
this.Hide();
f.Show();
}
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
if (checkBox1.Checked==false)
{
comboBox2.Visible = true;
if (comboBox2.SelectedValue != null)
{ учащиесяBindingSource.Filter = "Код_группы=" + comboBox2.SelectedValue; }
}
else
{
comboBox2.Visible = false;
учащиесяBindingSource.Filter = "";
}
}
private void button5_Click(object sender, EventArgs e)
{
excelapp = new Excel.Application();
excelapp.Visible = true;
excelappworkbook = excelapp.Workbooks.Open(Application.StartupPath + @"\1.xls",
Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing);
excelsheets = excelappworkbook.Worksheets;
excelworksheet = (Excel.Worksheet)excelsheets.get_Item(1);
excelcells = excelworksheet.get_Range("J3", Type.Missing);
int[] kd = new int[3];
предметыЦТBindingSource.MoveFirst();
for (int j = 0; j < 3; j++)
{
DataRow zn = ((DataRowView)предметыЦТBindingSource.Current).Row;
excelcells.Value = бДDataSet.Предметы_ЦТ.FindByКод_предмета((int)zn[0]).Наименование;
kd[j]=Convert.ToInt16(zn[0]);
предметыЦТBindingSource.MoveNext();
excelcells = excelcells.get_Offset(0, 1);
}
excelcells=excelworksheet.get_Range("A4",Type.Missing);
for (int i = 0; i < dataGridView1.RowCount; i++)
{
excelcells.Value=dataGridView1[0, i].Value;
excelcells = excelcells.get_Offset(0, 1);
excelcells.Value = dataGridView1[7, i].Value;
excelcells = excelcells.get_Offset(0, 1);
excelcells.Value = dataGridView1[1, i].Value + " " + dataGridView1[2, i].Value + " " + dataGridView1[3, i].Value;
excelcells = excelcells.get_Offset(0, 1);
excelcells.Value = dataGridView1[4, i].Value;
excelcells = excelcells.get_Offset(0, 1);
excelcells.Value = dataGridView1[5, i].Value;
excelcells = excelcells.get_Offset(0, 1);
excelcells.Value = dataGridView1[6, i].Value;
excelcells = excelcells.get_Offset(0, 1);
excelcells.Value = dataGridView1[8, i].Value;
excelcells = excelcells.get_Offset(0, 1);
excelcells.Value = dataGridView1[9, i].Value;
excelcells = excelcells.get_Offset(0, 1);
excelcells.Value = dataGridView1[10, i].Value;
excelcells = excelcells.get_Offset(0, 1);
for (int j=0;j<3;j++)
{
сдачаЦТBindingSource.Filter = "Код_учащегося=" + dataGridView1[0, i].Value + " and Код_предмета="+kd[j];
if (сдачаЦТBindingSource.Count!=0)
{
DataRow zn = ((DataRowView)сдачаЦТBindingSource.Current).Row;
excelcells.Value = zn[3];
excelcells = excelcells.get_Offset(0, 1);
}
else excelcells = excelcells.get_Offset(0, 1);
}
excelcells.Value = dataGridView1[11, i].Value;
excelcells = excelcells.get_Offset(0, 2);
excelcells.Value = dataGridView1[12, i].Value;
excelcells = excelcells.get_Offset(0, 1);
excelcells.Value = dataGridView1[13, i].Value;
excelcells = excelcells.get_Offset(0, 1);
excelcells.Value = dataGridView1[14, i].Value;
excelcells = excelcells.get_Offset(0, 1);
excelcells.Value = dataGridView1[15, i].Value;
excelcells = excelcells.get_Offset(0, 1);
excelcells.Value = dataGridView1[16, i].Value;
excelcells = excelcells.get_Offset(0, 1);
excelcells.Value = dataGridView1[17, i].Value;
excelcells = excelcells.get_Offset(0, 1);
excelcells.Value = dataGridView1[18, i].Value;
excelcells = excelcells.get_Offset(0, 2);
excelcells.Value = dataGridView1[19, i].Value;
excelcells = excelcells.get_Offset(0, 1);
excelcells.Value = dataGridView1[20, i].Value;
excelcells = excelcells.get_Offset(0, 1);
excelcells.Value = dataGridView1[21, i].Value;
excelcells = excelcells.get_Offset(0, 1);
excelcells.Value = dataGridView1[22, i].Value;
excelcells = excelcells.get_Offset(0, 1);
excelcells.Value = dataGridView1[23, i].Value;
excelcells = excelcells.get_Offset(0, 3);
excelcells.Value = dataGridView1[24, i].Value;
excelcells = excelcells.get_Offset(0, 1);
excelcells.Value = dataGridView1[25, i].Value;
excelcells = excelcells.get_Offset(0, 1);
excelcells.Value = dataGridView1[26, i].Value;
excelcells = excelcells.get_Offset(1, -31);
}
}
private void button6_Click(object sender, EventArgs e)
{
wordapp = new Word.Application();
wordapp.Visible = true;
Object template = Application.StartupPath + @"\1.doc";
Object newTemplate = false;
Object documentType = Word.WdNewDocumentType.wdNewBlankDocument;
Object visible = true;
worddocument = wordapp.Documents.Add( ref template, ref newTemplate, ref documentType, ref visible);
wordparagraphs = worddocument.Paragraphs;
Object begin = 0;
Object end = 5;
Word.Range wordrange = worddocument.Range(ref begin, ref end);
Object defaultTableBehavior = Word.WdDefaultTableBehavior.wdWord9TableBehavior;
Object autoFitBehavior = Word.WdAutoFitBehavior.wdAutoFitWindow;
//Добавляем таблицу и получаем объект wordtable
Word.Table wordtable = worddocument.Tables[1];
for (int i = 0; i < dataGridView1.RowCount;i++ )
{
wordtable.Rows.Add();
wordtable.Cell(wordtable.Rows.Count, 1).Range.Text = dataGridView1[0, i].Value.ToString();
wordtable.Cell(wordtable.Rows.Count, 2).Range.Text = dataGridView1[1, i].Value + " " + dataGridView1[2, i].Value + " " + dataGridView1[3, i].Value;
wordtable.Cell(wordtable.Rows.Count, 3).Range.Text = dataGridView1[4, i].Value.ToString().Split(' ')[0];
wordtable.Cell(wordtable.Rows.Count, 4).Range.Text = dataGridView1[8, i].Value.ToString();
wordtable.Cell(wordtable.Rows.Count, 5).Range.Text = dataGridView1[8, i].Value.ToString();
wordtable.Cell(wordtable.Rows.Count, 6).Range.Text = dataGridView1[12, i].Value.ToString();
wordtable.Cell(wordtable.Rows.Count, 7).Range.Text = dataGridView1[13, i].Value.ToString();
wordtable.Cell(wordtable.Rows.Count, 8).Range.Text = dataGridView1[14, i].Value.ToString() + " " + dataGridView1[15, i].Value.ToString();
}
}
}
}
Справочники.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace АвтоматизацияРаботыУОГГАЭК
{
public partial class Справочники : Form
{
private Form _f;
private int _log;
public Справочники(Form f, int log)
{
InitializeComponent();
_f = f;
_log = log;
}
private int Семестры()
{
if (отделенияBindingSource.Count!=0)
{
return бДDataSet.Отделения.FindByКод_отделения(Convert.ToInt16(comboBox2.SelectedValue)).Срок_обуч;
}
else
{
return 0;
}
}
private void Справочники_Load(object sender, EventArgs e)
{
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Отделения". При необходимости она может быть перемещена или удалена.
this.отделенияTableAdapter.Fill(this.бДDataSet.Отделения);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Виды_удержаний". При необходимости она может быть перемещена или удалена.
this.виды_удержанийTableAdapter.Fill(this.бДDataSet.Виды_удержаний);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Дисциплины". При необходимости она может быть перемещена или удалена.
this.дисциплиныTableAdapter.Fill(this.бДDataSet.Дисциплины);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Предметы_ЦТ". При необходимости она может быть перемещена или удалена.
this.предметы_ЦТTableAdapter.Fill(this.бДDataSet.Предметы_ЦТ);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Кураторы". При необходимости она может быть перемещена или удалена.
this.кураторыTableAdapter.Fill(this.бДDataSet.Кураторы);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Группы". При необходимости она может быть перемещена или удалена.
this.группыTableAdapter.Fill(this.бДDataSet.Группы);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Виды_поощрений". При необходимости она может быть перемещена или удалена.
this.виды_поощренийTableAdapter.Fill(this.бДDataSet.Виды_поощрений);
if (_log!=-1)
{
tabPage4.Parent = null;
tabPage6.Parent = null;
}
кураторыDataGridView.Columns[0].Visible = false;
виды_поощренийDataGridView.Columns[0].Visible = false;
виды_удержанийDataGridView.Columns[0].Visible = false;
группыDataGridView.Columns[0].Visible = false;
отделенияDataGridView.Columns[0].Visible = false;
предметы_ЦТDataGridView.Columns[0].Visible = false;
дисциплиныDataGridView.Columns[0].Visible = false;
DateTime d = new DateTime(DateTime.Today.Year,9,1);
dateTimePicker1.Value=d;
}
private void удаление_записи(DataGridView datagrd)
{
if (datagrd.RowCount == 0) MessageBox.Show("Для удаления должна быть хотя бы одна запись", "Ошибка!");
else
{
DialogResult res = MessageBox.Show("Вы действительно хотите удалить запись?", "Подтверждение", MessageBoxButtons.YesNo);
if (res == DialogResult.Yes)
{
try
{
switch (datagrd.Name)
{
case "виды_поощренийDataGridView":
бДDataSet.Виды_поощрений.FindByКод_вида_поощр((int)datagrd.CurrentRow.Cells[0].Value).Delete();
tableAdapterManager.UpdateAll(бДDataSet);
виды_поощренийTableAdapter.Fill(бДDataSet.Виды_поощрений);
break;
case "виды_удержанийDataGridView":
бДDataSet.Виды_удержаний.FindByКод_вида_удержаний((int)datagrd.CurrentRow.Cells[0].Value).Delete();
tableAdapterManager.UpdateAll(бДDataSet);
виды_удержанийTableAdapter.Fill(бДDataSet.Виды_удержаний);
break;
case "кураторыDataGridView":
бДDataSet.Кураторы.FindByКод_куратора((int)datagrd.CurrentRow.Cells[0].Value).Delete();
tableAdapterManager.UpdateAll(бДDataSet);
кураторыTableAdapter.Fill(бДDataSet.Кураторы);
break;
case "группыDataGridView":
бДDataSet.Группы.FindByКод_группы((int)datagrd.CurrentRow.Cells[0].Value).Delete();
tableAdapterManager.UpdateAll(бДDataSet);
группыTableAdapter.Fill(бДDataSet.Группы);
break;
case "предметы_ЦТDataGridView":
бДDataSet.Предметы_ЦТ.FindByКод_предмета((int)datagrd.CurrentRow.Cells[0].Value).Delete();
tableAdapterManager.UpdateAll(бДDataSet);
предметы_ЦТTableAdapter.Fill(бДDataSet.Предметы_ЦТ);
break;
case "дисциплиныDataGridView":
бДDataSet.Дисциплины.FindByКод_дисциплины((int)datagrd.CurrentRow.Cells[0].Value).Delete();
tableAdapterManager.UpdateAll(бДDataSet);
дисциплиныTableAdapter.Fill(бДDataSet.Дисциплины);
break;
case "отделенияDataGridView":
бДDataSet.Отделения.FindByКод_отделения((int)datagrd.CurrentRow.Cells[0].Value).Delete();
tableAdapterManager.UpdateAll(бДDataSet);
отделенияTableAdapter.Fill(бДDataSet.Отделения);
break;
}
}
catch { MessageBox.Show("Ошибка при удалении. Обратитесь к системному администратору"); }
}
}
}
private void button1_Click(object sender, EventArgs e)
{
this.Close();
_f.Show();
}
private void button2_Click(object sender, EventArgs e)
{
if (textBox1.Text == "") MessageBox.Show("Проверьте введенные данные");
else
{
виды_поощренийTableAdapter.Insert(textBox1.Text);
виды_поощренийTableAdapter.Fill(бДDataSet.Виды_поощрений);
}
}
private void button3_Click(object sender, EventArgs e)
{
if (textBox2.Text == "") MessageBox.Show("Проверьте введенные данные");
else
{
виды_удержанийTableAdapter.Insert(textBox2.Text);
виды_удержанийTableAdapter.Fill(бДDataSet.Виды_удержаний);
}
}
private void button4_Click(object sender, EventArgs e)
{
try
{
кураторыTableAdapter.Insert(textBox3.Text, textBox6.Text, textBox7.Text, textBox8.Text);
кураторыTableAdapter.Fill(бДDataSet.Кураторы);
}
catch { MessageBox.Show("Проверьте введенные данные"); }
}
private void button5_Click(object sender, EventArgs e)
{
try
{
string str = "";
str += бДDataSet.Отделения.FindByКод_отделения((int)comboBox5.SelectedValue).Приставка_группы;
DateTime d1,d2;
int kas=0,sr=бДDataSet.Отделения.FindByКод_отделения((int)comboBox5.SelectedValue).Срок_обуч;
d1 = dateTimePicker1.Value;
d2 = DateTime.Today;
if (d2.Year > d1.Year)
{
kas = d2.Year - d1.Year;
if (d2.Month >= d1.Month)
{
kas++;
}
}
else if (d2.Year == d1.Year)
{
if (d1.Month >= 9) kas = 1;
}
if (((kas*2) - sr)>1) if (sr % 2 == 0)
{ kas = sr / 2; }
else kas = (sr / 2) + 1;
str += "-" + kas;
группыBindingSource.Filter = "Код_отделения=" + comboBox5.SelectedValue.ToString() + " and Дата_набора=#" + dateTimePicker1.Value.Month + "/" + dateTimePicker1.Value.Day + "/" + dateTimePicker1.Value.Year + "#"; ;
if (группыBindingSource.Count > 0)
{
str += (группыBindingSource.Count+1);
}
else str += 1;
группыBindingSource.Filter = "";
группыTableAdapter.Insert(str, (int)comboBox1.SelectedValue,dateTimePicker1.Value.Date,(int)comboBox5.SelectedValue);
группыTableAdapter.Fill(бДDataSet.Группы);
}
catch { MessageBox.Show("Проверьте введенные данные"); }
}
private void button6_Click(object sender, EventArgs e)
{
try
{
предметы_ЦТTableAdapter.Insert(textBox5.Text, Convert.ToDouble(textBox9.Text));
предметы_ЦТTableAdapter.Fill(бДDataSet.Предметы_ЦТ);
}
catch { MessageBox.Show("Проверьте введенные данные"); }
}
private void button7_Click(object sender, EventArgs e)
{
try
{
дисциплиныTableAdapter.Insert(textBox10.Text,(int)comboBox2.SelectedValue,(int)comboBox3.SelectedItem);
дисциплиныTableAdapter.Fill(бДDataSet.Дисциплины);
}
catch { MessageBox.Show("Проверьте введенные данные"); }
}
private void button8_Click(object sender, EventArgs e)
{
try
{
отделенияTableAdapter.Insert(textBox12.Text, textBox13.Text,Convert.ToInt16(textBox11.Text));
отделенияTableAdapter.Fill(бДDataSet.Отделения);
}
catch { MessageBox.Show("Проверьте введенные данные"); }
}
private void виды_удержанийDataGridView_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
tableAdapterManager.UpdateAll(бДDataSet);
}
private void удалитьToolStripMenuItem_Click(object sender, EventArgs e)
{
удаление_записи(виды_поощренийDataGridView);
}
private void toolStripMenuItem1_Click(object sender, EventArgs e)
{
удаление_записи(виды_удержанийDataGridView);
}
private void toolStripMenuItem2_Click(object sender, EventArgs e)
{
удаление_записи(кураторыDataGridView);
}
private void toolStripMenuItem3_Click(object sender, EventArgs e)
{
удаление_записи(группыDataGridView);
}
private void toolStripMenuItem4_Click(object sender, EventArgs e)
{
удаление_записи(предметы_ЦТDataGridView);
}
private void toolStripMenuItem5_Click(object sender, EventArgs e)
{
удаление_записи(дисциплиныDataGridView);
}
private void toolStripMenuItem6_Click(object sender, EventArgs e)
{
удаление_записи(отделенияDataGridView);
}
private void comboBox2_SelectedValueChanged(object sender, EventArgs e)
{
comboBox3.Items.Clear();
for (int i=1;i<=Семестры();i++)
{
comboBox3.Items.Add(i);
}
}
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
if (checkBox1.CheckState == CheckState.Checked)
{
отделенияBindingSource.MoveFirst();
string str = "";
int g = DateTime.Today.Year;
for (int i = 0; i < отделенияBindingSource.Count; i++)
{
if (i != 0) str += " or ";
DataRow zn = ((DataRowView)отделенияBindingSource.Current).Row;
if (DateTime.Today.Month <9 && ((int)zn[3] % 2 == 0))
str += "Код_отделения=" + zn[0].ToString() + " and Дата_набора>=#09/01/" + (g - ((int)zn[3] / 2))+"#";
else str += "Код_отделения=" + zn[0].ToString() + " and Дата_набора>=#09/01/" + (g - (((int)zn[3] - 1) / 2)) + "#";
отделенияBindingSource.MoveNext();
}
группыBindingSource.Filter = str;
отделенияBindingSource.MoveFirst();
}
else группыBindingSource.Filter = "";
}
}
}
Учащиеся.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace АвтоматизацияРаботыУОГГАЭК
{
public partial class Учащиеся : Form
{
private Form _f;
private int _par;
private int _gr;
public Учащиеся(Form f, int par,int gr)
{
InitializeComponent();
_f = f;
_par = par;
_gr = gr;
}
private void Учащиеся_Load(object sender, EventArgs e)
{
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Группы". При необходимости она может быть перемещена или удалена.
this.группыTableAdapter.Fill(this.бДDataSet.Группы);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Виды_удержаний". При необходимости она может быть перемещена или удалена.
this.виды_удержанийTableAdapter.Fill(this.бДDataSet.Виды_удержаний);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Виды_поощрений". При необходимости она может быть перемещена или удалена.
this.виды_поощренийTableAdapter.Fill(this.бДDataSet.Виды_поощрений);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Удержания". При необходимости она может быть перемещена или удалена.
this.удержанияTableAdapter.Fill(this.бДDataSet.Удержания);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Поощрения". При необходимости она может быть перемещена или удалена.
this.поощренияTableAdapter.Fill(this.бДDataSet.Поощрения);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Отметки_по_дисциплинам". При необходимости она может быть перемещена или удалена.
this.отметки_по_дисциплинамTableAdapter.Fill(this.бДDataSet.Отметки_по_дисциплинам);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Предметы_ЦТ". При необходимости она может быть перемещена или удалена.
this.предметы_ЦТTableAdapter.Fill(this.бДDataSet.Предметы_ЦТ);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Сдача_ЦТ". При необходимости она может быть перемещена или удалена.
this.сдача_ЦТTableAdapter.Fill(this.бДDataSet.Сдача_ЦТ);
// TODO: данная строка кода позволяет загрузить данные в таблицу "бДDataSet.Учащиеся". При необходимости она может быть перемещена или удалена.
this.учащиесяTableAdapter.Fill(this.бДDataSet.Учащиеся);
if (_par==0)
{
if (_gr!=-1)
comboBox1.SelectedValue = _gr;
button1.Visible = true;
button2.Visible = false;
tabPage4.Parent = null;
}
else
{
поощренияBindingSource.Filter = "Код_учащегося=" + _par;
удержанияBindingSource.Filter = "Код_учащегося=" + _par;
фамилияTextBox.Text = бДDataSet.Учащиеся.FindByКод_учащегося(_par).Фамилия;
имяTextBox.Text = бДDataSet.Учащиеся.FindByКод_учащегося(_par).Имя;
отчествоTextBox.Text = бДDataSet.Учащиеся.FindByКод_учащегося(_par).Отчество;
образованиеTextBox.Text = бДDataSet.Учащиеся.FindByКод_учащегося(_par).Образование;
средний_баллTextBox.Text = бДDataSet.Учащиеся.FindByКод_учащегося(_par).Средний_балл.ToString();
целевой_договорTextBox.Text = бДDataSet.Учащиеся.FindByКод_учащегося(_par).Целевой_договор;
дата_рожденияDateTimePicker.Value = бДDataSet.Учащиеся.FindByКод_учащегося(_par).Дата_рождения;
место_пропискиTextBox.Text = бДDataSet.Учащиеся.FindByКод_учащегося(_par).Место_прописки;
место_работы_прежнееTextBox.Text = бДDataSet.Учащиеся.FindByКод_учащегося(_par).Место_работы_прежнее;
место_рожденияTextBox.Text = бДDataSet.Учащиеся.FindByКод_учащегося(_par).Место_рождения;
if (бДDataSet.Учащиеся.FindByКод_учащегося(_par).IsКод_группыNull() == false) comboBox1.SelectedValue = бДDataSet.Учащиеся.FindByКод_учащегося(_par).Код_группы;
отецTextBox.Text = бДDataSet.Учащиеся.FindByКод_учащегося(_par).Отец;
матьTextBox.Text = бДDataSet.Учащиеся.FindByКод_учащегося(_par).Мать;
братьяTextBox.Text = бДDataSet.Учащиеся.FindByКод_учащегося(_par).Братья;
сестрыTextBox.Text=бДDataSet.Учащиеся.FindByКод_учащегося(_par).Сестры;
супруг_а_TextBox.Text = бДDataSet.Учащиеся.FindByКод_учащегося(_par)._Супруг_а_;
бракTextBox.Text = бДDataSet.Учащиеся.FindByКод_учащегося(_par).Брак;
детиTextBox.Text = бДDataSet.Учащиеся.FindByКод_учащегося(_par).Дети;
курениеTextBox.Text = бДDataSet.Учащиеся.FindByКод_учащегося(_par).Курение;
религияTextBox.Text = бДDataSet.Учащиеся.FindByКод_учащегося(_par).Религия;
водительские_праваTextBox.Text = бДDataSet.Учащиеся.FindByКод_учащегося(_par).Водительские_права;
увлечения_и_хоббиTextBox.Text = бДDataSet.Учащиеся.FindByКод_учащегося(_par).Увлечения_и_хобби;
спортTextBox.Text = бДDataSet.Учащиеся.FindByКод_учащегося(_par).Спорт;
общественная_нагрузкаTextBox.Text = бДDataSet.Учащиеся.FindByКод_учащегося(_par).Общественная_нагрузка;
самодеятельностьTextBox.Text = бДDataSet.Учащиеся.FindByКод_учащегося(_par).Самодеятельность;
психологическая_характеристикаTextBox.Text = бДDataSet.Учащиеся.FindByКод_учащегося(_par).Психологическая_характеристика;
сдача_ЦТDataGridView.Visible = true;
}
удержанияDataGridView.Columns[0].Visible = false;
поощренияDataGridView.Columns[0].Visible = false;
сдача_ЦТDataGridView.Columns[0].Visible = false;
}
private void button3_Click(object sender, EventArgs e)
{
this.Close();
_f.Show();
}
private void button1_Click(object sender, EventArgs e)
{
try
{
if (comboBox1.SelectedValue!=null)
учащиесяTableAdapter.Insert(фамилияTextBox.Text, имяTextBox.Text, отчествоTextBox.Text, дата_рожденияDateTimePicker.Value.Date, место_рожденияTextBox.Text, целевой_договорTextBox.Text, (int)comboBox1.SelectedValue, место_пропискиTextBox.Text, образованиеTextBox.Text, Convert.ToDouble(средний_баллTextBox.Text), место_работы_прежнееTextBox.Text, отецTextBox.Text, матьTextBox.Text, братьяTextBox.Text, сестрыTextBox.Text, супруг_а_TextBox.Text, бракTextBox.Text, детиTextBox.Text, курениеTextBox.Text, религияTextBox.Text, водительские_праваTextBox.Text, увлечения_и_хоббиTextBox.Text, спортTextBox.Text, общественная_нагрузкаTextBox.Text, самодеятельностьTextBox.Text, психологическая_характеристикаTextBox.Text);
else
учащиесяTableAdapter.Insert(фамилияTextBox.Text, имяTextBox.Text, отчествоTextBox.Text, дата_рожденияDateTimePicker.Value.Date, место_рожденияTextBox.Text, целевой_договорTextBox.Text, null, место_пропискиTextBox.Text, образованиеTextBox.Text, Convert.ToInt16(средний_баллTextBox.Text), место_работы_прежнееTextBox.Text, отецTextBox.Text, матьTextBox.Text, братьяTextBox.Text, сестрыTextBox.Text, супруг_а_TextBox.Text, бракTextBox.Text, детиTextBox.Text, курениеTextBox.Text, религияTextBox.Text, водительские_праваTextBox.Text, увлечения_и_хоббиTextBox.Text, спортTextBox.Text, общественная_нагрузкаTextBox.Text, самодеятельностьTextBox.Text, психологическая_характеристикаTextBox.Text);
учащиесяTableAdapter.Fill(бДDataSet.Учащиеся);
сдача_ЦТTableAdapter.Update(бДDataSet.Сдача_ЦТ);
сдача_ЦТTableAdapter.Fill(бДDataSet.Сдача_ЦТ);
this.Close();
_f.Show();
}
catch { MessageBox.Show("Ошибка! Проверьте, что ввели все данные", "Ошибка!"); }
}
private void button2_Click(object sender, EventArgs e)
{
бДDataSet.Учащиеся.FindByКод_учащегося(_par).Фамилия=фамилияTextBox.Text;
бДDataSet.Учащиеся.FindByКод_учащегося(_par).Имя = имяTextBox.Text;
бДDataSet.Учащиеся.FindByКод_учащегося(_par).Отчество = отчествоTextBox.Text;
бДDataSet.Учащиеся.FindByКод_учащегося(_par).Образование = образованиеTextBox.Text;
бДDataSet.Учащиеся.FindByКод_учащегося(_par).Средний_балл = Convert.ToDouble(средний_баллTextBox.Text);
бДDataSet.Учащиеся.FindByКод_учащегося(_par).Целевой_договор = целевой_договорTextBox.Text;
бДDataSet.Учащиеся.FindByКод_учащегося(_par).Дата_рождения = дата_рожденияDateTimePicker.Value;
бДDataSet.Учащиеся.FindByКод_учащегося(_par).Место_прописки = место_пропискиTextBox.Text;
бДDataSet.Учащиеся.FindByКод_учащегося(_par).Место_работы_прежнее = место_работы_прежнееTextBox.Text;
бДDataSet.Учащиеся.FindByКод_учащегося(_par).Место_рождения = место_рожденияTextBox.Text;
if (comboBox1.SelectedValue != null) бДDataSet.Учащиеся.FindByКод_учащегося(_par).Код_группы = (int)comboBox1.SelectedValue;
бДDataSet.Учащиеся.FindByКод_учащегося(_par).Отец = отецTextBox.Text;
бДDataSet.Учащиеся.FindByКод_учащегося(_par).Мать = матьTextBox.Text;
бДDataSet.Учащиеся.FindByКод_учащегося(_par).Братья = братьяTextBox.Text;
бДDataSet.Учащиеся.FindByКод_учащегося(_par).Сестры = сестрыTextBox.Text;
бДDataSet.Учащиеся.FindByКод_учащегося(_par)._Супруг_а_ = супруг_а_TextBox.Text;
бДDataSet.Учащиеся.FindByКод_учащегося(_par).Брак = бракTextBox.Text;
бДDataSet.Учащиеся.FindByКод_учащегося(_par).Дети = детиTextBox.Text;
бДDataSet.Учащиеся.FindByКод_учащегося(_par).Курение = курениеTextBox.Text;
бДDataSet.Учащиеся.FindByКод_учащегося(_par).Религия = религияTextBox.Text;
бДDataSet.Учащиеся.FindByКод_учащегося(_par).Водительские_права = водительские_праваTextBox.Text;
бДDataSet.Учащиеся.FindByКод_учащегося(_par).Увлечения_и_хобби = увлечения_и_хоббиTextBox.Text;
бДDataSet.Учащиеся.FindByКод_учащегося(_par).Спорт = спортTextBox.Text;
бДDataSet.Учащиеся.FindByКод_учащегося(_par).Общественная_нагрузка = общественная_нагрузкаTextBox.Text;
бДDataSet.Учащиеся.FindByКод_учащегося(_par).Самодеятельность = самодеятельностьTextBox.Text;
бДDataSet.Учащиеся.FindByКод_учащегося(_par).Психологическая_характеристика = психологическая_характеристикаTextBox.Text;
tableAdapterManager.UpdateAll(бДDataSet);
}
private void сдача_ЦТDataGridView_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e)
{
if (сдача_ЦТDataGridView.CurrentRow != null)
сдача_ЦТDataGridView[1, сдача_ЦТDataGridView.CurrentRow.Index].Value = _par;
}
private void поощренияDataGridView_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e)
{
if (поощренияDataGridView.CurrentRow != null)
поощренияDataGridView[1, поощренияDataGridView.CurrentRow.Index].Value = _par;
}
private void удержанияDataGridView_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e)
{
if (удержанияDataGridView.CurrentRow != null)
удержанияDataGridView[1, удержанияDataGridView.CurrentRow.Index].Value = _par;
}
}
}
Program.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace АвтоматизацияРаботыУОГГАЭК
{
static class Program
{
/// <summary>
/// Главная точка входа для приложения.
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}
}
ПРИЛОЖЕНИЕ Б
(обязательное)
Руководство программиста
1. Назначение и условия применения программного обеспечения
Программа предназначена для упрощения отчетности и работы по сбору и хранению данных об учащихся.
Минимальные требования к оборудованию для работы программы:
- ОС «Windows 7» и выше;
- клавиатура;
- мышь;
- процессор «Pentium 4»;
- оперативная память не менее 256 Мб;
- свободное место на диске не менее 60 Мб;
- монитор;
- Microsoft Office 2010 и выше;
- .Net Framework 4.5 и выше.
2. Характеристики программного обеспечения
Данную программу можно использовать в большинстве учреждений среднего и высшего образования. Данная программа имеет упрощенную систему контроля доступа: для входа необходимо выбрать учетную запись, но только запись администратора защищена паролем.
Данные по умолчанию для записи администратора: логин - admin, пароль - admin. В случае утери пароля пароль можно сбросить до значения по умолчанию.
3. Входные и выходные данные
Входной информацией являются сведения о кураторах, группах, дисциплинах, учащихся. Все данные хранятся в файле базы данных БД.mdf.
Программа позволяет составлять выходные документы, такие, как ведомости успеваемости и посещаемости учащихся группы, социальный паспорт группы.
4. Сообщения
В процессе работы программы предусмотрены проверки на ошибки ввода данных пользователями. В данном случае выводятся сообщения о некорректности ввода данных.
ПРИЛОЖЕНИЕ В
(обязательное)
Руководство пользователя
1. Введение
Программа автоматизации воспитательной работы УО «Гомельский государственный аграрно-экономический колледж» предназначена для упрощения работы кураторов групп, систематизации и хранения данных об учащихся, группах, кураторах, дисциплинах, а также информации о социальной жизни учащихся: поощрения, удержания.
Для работы с программным обеспечением достаточно ознакомиться с настоящим руководством пользователя.
2. Назначение и условия применения
Разработанное программное обеспечение предназначено для упрощения отчетности и упрощения работы по сбору и хранению данных об учащихся.
Минимальные требования к оборудованию для работы программы:
- ОС «Windows 7» и выше;
- процессор «Pentium» с частотой 233 МГц или более быстрый (рекомендуется не менее 300 МГц);
- не менее 256 МБ оперативной памяти;
- не менее 60Мб свободного места на жестком диске;
- клавиатура;
- мышь или совместимое указывающее устройство;
- монитор;
- Microsoft Office 2010 и выше;
- принтер.
3. Подготовка к работе
Для работы с выходными документами на компьютере должны быть установлены MS Word и Excel. Операционная система должна иметь установленный пакет .Net Framework версии 4.5 или выше. Пользователь данного программного продукта должен владеть минимальными навыками работы с компьютером.
4. Описание операций
Программное обеспечение «Автоматизация воспитательной работы УО «Гомельский государственный аграрно-экономический колледж»» позволяет выполнять следующие функции, задачи и комплексы задач:
- добавление данных об учащихся;
- изменение данных об учащихся;
- удаление данных об учащихся;
- добавление, изменение и удаление справочных данных;
- формирование ведомости учета пропусков за месяц;
- формирование ведомости успеваемости за месяц;
- формирование социального паспорта группы.
К справочным данным относятся данные о видах поощрений за достижения и удержаний за нарушения дисциплины, данные о группах, отделениях, кураторах, дисциплинах обучения учреждения образования, информация о сдаваемых на ЦТ экзаменах.
Для реализации данных возможностей и организации безопасности БД была создана система учетных записей. Поддерживается учетная запись администратора с паролем, с помощью которой можно получить полный доступ к данным справочников. Остальные учетные записи формируются автоматически на базе данных справочника кураторов и не имеют пароля, но позволяют формировать ведомости по выбранным группам.
Запуск программы производится путем двойного нажатия на файле «Автоматизация воспитательной работы УО ГГАЭК.exe». После запуска программы появляется окно входа, предлагающее пользователю войти в систему (рисунок В.1).
Рисунок В.1 - Окно входа
После выбора учетной записи либо ввода «admin» и пароля для получения доступа к записи администратора необходимо нажать кнопку «Войти». По умолчанию пароль администратора «admin». Если данные были введены неверно, то появляется окно ошибки, изображенное на рисунке В.2. Если данные были введены верно, то будет открыто главное окно программы, изображенное на рисунке В.3.
Рисунок В.2 - Окно ошибки входа
Рисунок В.3 - Главное окно
На главной странице представлено меню, при переходе по одному из пунктов можно перейти на выбранное окно. При выборе пункта меню настройки будут открыто окно настройки, где можно установить или сбросить пароль (рисунок В.4).
Рисунок В.4 - Настройки программы
При нажатии «Сменить пароль» будет проверен старый пароль, введенный и подтверждение введенного пароля. Если что-либо не совпадет, пароль изменен не будет, а пользователю будет выдано сообщение об ошибке. В случае успешной смены пароля пользователю будет выдано сообщение об успешной смене пароля. По нажатию на кнопку «Задать по умолчанию» пароль будет сброшен до системной установки.
При выборе на главном окне пункта меню «Справочники» откроется окно редактирования справочных данных в соответствии с рисунком В.5. В данном окне можно добавлять, изменять и удалять данные всех справочников. Интерфейс организован в виде вкладок, позволяющих переключаться между справочниками. Если справочники открываются от имени администратора, то ему доступны все вкладки в соответствии с рисунком В.5. Если же вход произошел от имени куратора, то куратор не может редактировать вкладки «Отделения» и «Кураторы».
Рисунок В.5 - Внешний вид окна «Справочники»
Рисунок В.6 - Ошибка при неправильном вводе
В блоке «Добавить» для каждой вкладки имеются свои поля, необходимые для добавления новых данных. По нажатию на кнопку «Добавить» будет произведена попытка добавления данных. Если возникнет ошибка вследствие неправильного ввода пользователя, ему будет выдано соответствующее сообщение, приведенное на рисунке В.6. Нажатие кнопки «Назад» откроет главное меню.
При выборе пункта меню «Выйти из системы» программа вернется к состоянию запуска и появится окно входа.
При выборе пункта меню «О программе» откроется окно справки, в котором отображены название и версия программы, краткое описание программы и год создания программы.
Внешний вид окна «О программе» приведен на рисунке В.7.
Рисунок В.7 - Внешний вид окна «О программе»
Если вход был произведен под учетной записью куратора, то при выборе пункта «Просмотреть перечень учащихся» будет открыто окно, содержащее список всех учащихся в группе данного куратора (рисунок В.8). Если же вход был произведен от учетной записи администратора, то ему будет выдано сообщение, изображенное на рисунке В.9.
Рисунок В.8 - Внешний вид страницы «Перечень учащихся»
Рисунок В.9 - Ошибка открытия перечня учащихся администратором
При нажатии кнопки «Удалить» будет проведен ряд проверок: если в БД не окажется записей об учащихся, то будет выдано сообщение, изображенное на рисунке В.10; если записи есть, то пользователю будет выдано диалоговое окно подтверждения, изображенное на рисунке В.11. Только в случае подтверждения будет произведено удаление данных из БД.
Рисунок В.10 - Ошибка при отсутствии записей
Рисунок В.11 - Окно подтверждения удаления данных
При нажатии кнопки «Соц. паспорт» сформируется документ MS Word, представленный на рисунке В.12.
Рисунок В.12 - Сформированный социальный паспорт
При выборе пункта «Изменить» или двойном нажатии на строку учащегося откроется окно с данными учащегося (рисунок В.13).
Рисунок В.13 - Внешний вид окна «Учащийся»
С помощью кнопки «Назад» всегда можно вернуться на предыдущее окно. При нажатии кнопки «Сохранить» будут проверены данные, и если будет ошибка, то пользователю будет выдано сообщение.
При выборе в главном окне пункта «Сформировать ведомость за месяц» при входе от куратора откроется окно формирования ведомостей (рисунок В.14), а при входе от администратора выйдет соответствующее сообщение.
После открытия окна необходимо выбрать месяц и год ведомости и нажать кнопку сформировать. Если месяц и год выбраны неверно, то выйдет соответствующее сообщение об ошибке. После формирования ведомости при нажатии кнопки «Сохранить» данные будут занесены в базу. Если введенные данные были неверны, то появится сообщение об ошибке.
Рисунок В.14 - Внешний вид окна ведомости
После формирования и сохранения ведомости данные можно вывести в MS Word, нажав кнопку «Вывести в Word» (рисунок В.15).
Рисунок В.15 - Ведомость по успеваемости
Вернувшись на главное окно программы, при помощи кнопки «Сформировать ведомость по пропускам» куратор может аналогичным способом заполнить ведомость по пропускам, сохранить данные и вывести в Word. Внешний вид окна ведомости по пропускам приведен на рисунке 16.
Рисунок В.16 - Окно ведомости по пропускам
Пример вывода данных ведомости по успеваемости в MS Word приведен на рисунке В.17.
Рисунок В.17 - Вывод в MS Word
Для выхода из программы на главном окне нажмите кнопку «Выход».
После завершения апробации можно убедиться, что программное средство работает корректно и полностью работоспособно.
5. Аварийные ситуации
1) Действия в случае несоблюдения условий выполнения технологического процесса, в том числе при длительных отказах технических средств;
2) Действия в случае удаления одного из компонентов программы;
3) Действия в других аварийных ситуациях.
При неисправной работе программного обеспечения и возникновении дополнительных непредвиденных ошибок просьба связаться с технической поддержкой.
Электронный адрес службы технической поддержки - «aleksandr_alekseenka96@mail.ru»
6. Рекомендации по освоению
Для освоения и эксплуатации разработанного программного обеспечения необходимо ознакомиться с настоящим руководством пользователя и, запустив программу, ознакомиться с работой программы, интерфейс которого прост, удобен и интуитивно понятен, что позволяет в кратчайшие сроки его освоить.
ПРИЛОЖЕНИЕ Г
(обязательное)
Основные экономические показатели
Рисунок Г.1 - Основные экономические показатели УО «ГГАЭК»
ПРИЛОЖЕНИЕ Д
(справочное)
Шаблон социального паспорта группы
Рисунок Д.1 - Шаблон социального паспорта группы
ПРИЛОЖЕНИЕ Е
(справочное)
Шаблон ведомости успеваемости учащихся
Рисунок Е.1 - Шаблон ведомости успеваемости учащихся
Размещено на Allbest.ru
Подобные документы
Ознакомление с общей организацией компьютерного класса учреждения "Гуманитарно-экономический колледж". Рассмотрение используемых операционных систем (Windows XP Professional SP 2). Описание специализированного прикладного программного обеспечения.
отчет по практике [26,2 K], добавлен 10.06.2015Рассмотрение приемов разработки программных средств для автоматизированных систем обработки информации и управления. Разработка программного продукта, предназначенного для автоматизации работы заместителя директора по учебно-воспитательной работе.
дипломная работа [1,7 M], добавлен 27.02.2015Подбор игрового движка и описание его основных характеристик. Разработка структуры, алгоритма и интерфейса программы. Проектирование иерархии классов. Выделение типового приема визуализации. Тестирование правильности работы программного обеспечения.
курсовая работа [3,1 M], добавлен 19.01.2017Постановка задачи автоматизации учебного процесса колледжа и описание предметной области. Работа с базами данных в Delphi: способы, компоненты доступа к данным и работы с ними. Язык запросов SQL. База данных в Microsoft Access и результаты исследований.
дипломная работа [55,6 K], добавлен 16.07.2008Анализ существующих систем автоматизации документооборота. Выбор шаблона проектирования. Microsoft SQL Server как комплексная высокопроизводительная платформа баз данных. Язык программирования C#. Разработка интерфейса и иллюстрация работы системы.
дипломная работа [2,5 M], добавлен 19.07.2014Характеристика работы Алтайского филиала телекоммуникаций "Сибирьтелеком". Разработка программы для автоматизации работы телефонного справочника. Основные функции программного продукта: хранение, обработка, ввод и редактирование информации об абонентах.
дипломная работа [6,0 M], добавлен 07.06.2012Разработка программы для операционной системы Windows с использованием VisualC++ (6.0, .NET). Рассмотрение основ программного моделирования работы прибора (электрического чайника). Правила создания классов устройства и его графического интерфейса.
курсовая работа [424,3 K], добавлен 03.06.2014Разработка программной системы автоматизации работы приемной комиссии. Выбор CASE-средства проектирования базы данных. Разграничение доступа к записям таблиц. Триггеры и функции БД. Выбор интерфейса программирования. Разработка классов и структур данных.
дипломная работа [1,9 M], добавлен 07.03.2012Классификация служебных программных средств. Файловая структура операционных систем. Основы графического интерфейса пользователя Windows XX. Анализ алгоритмов решения задач. Описание процесса разработки программного обеспечения и результатов работы.
курсовая работа [2,4 M], добавлен 14.11.2016Цель и основные составные части автоматизации. Характеристика ее объекта. Описание концептуальной модели предметной области. Обоснование выбора программного обеспечения. Разработка программы в среде Borland Delphi 7. Общий алгоритм работы приложения.
курсовая работа [368,6 K], добавлен 21.05.2015