- •Календарный план
- •Введение
- •Разработка аванпроекта
- •Формирование требований к подсистеме
- •Организационная диаграмма «Центра внешкольной работы г. Сочи»
- •Технико-экономическое обоснование на создание «Подсистемы управления образовательными услугами ис «Центра внешкольной работы г. Сочи»»
- •Анализ существующих систем
- •Информационная система бд «Учебный процесс»
- •Информационная система netschool
- •Информационная система «Журнал Приказов. Образование»
- •Разработка концепции подсистемы
- •Разработка функциональной модели
- •Разработка технического задания
- •Общие сведения о проекте
- •Назначения и цели создания подсистемы
- •Характеристики объекта автоматизации
- •Требования к подсистеме
- •Состав и содержание работ по созданию (развитию) подсистемы
- •Требования к документированию
- •Общие положения
- •Цели, назначение и области использования подсистемы
- •Утвержденные спецификации требований и алгоритмы на функциональные группы программ, программные и информационные компоненты
- •Спецификации на программные модули
- •Спецификации на таблицы бд
- •Спецификации на элементы пользовательского интерфейса
- •Описание организации информационной базы
- •Логическая структура бд
- •Физическая структура бд
- •Выбор языка и среды программирования
- •Программирование
- •Руководство пользователя (оператора) (гост 19.505-79)
- •Определение затрат проекта
- •Расчет единовременных затрат
- •Расчет затрат на основную заработную плату разработчика
- •Расчет отчислений на социальное страхование и обеспечение
- •Расчет единовременных затрат на амортизацию эвм
- •Расчет единовременных затрат на электроэнергию
- •Экономия труда за счет внедрения подсистемы
- •Расчет экономической эффективности от внедрения подсистемы
- •Вредные факторы
- •Требования к помещениям, содержащим эвм
- •Организация и оборудование рабочих мест с пэвм
- •Режим труда и отдыха
- •Требования к освещению помещений и рабочих мест с пэвм
- •Требования безопасности при чс
- •Список использованных источников
Программирование
Набор программных модулей, полученный в результате построения функциональной модели «TO-BE», совместно с базой данных логического уровня определяет структуру пользовательского интерфейса, который на данном этапе представляется деревом меню (см. рис. 3.2).
Ниже представлен программный код модуля «Vnesenie_dannih_o_meropriyatie». Форма ввода информации о новом мероприятии «Новое мероприятие» доступна для пользователя «Зам. директор» на вкладке «Мероприятия» (см. приложение 6, рис. П.6.12) главного окна подсистемы. При нажатии на кнопку «Новое мероприятие» открывается соответствующая форма. После заполнения всех данных необходимо нажать на кнопку «Сохранить», после чего выполняется следующий программный код [9]:
//$$---- Form CPP ----
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "NovSob.h"
#include "MainU.h"
#include "Pomosh.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm6 *Form6;
//---------------------------------------------------------------------------
__fastcall TForm6::TForm6(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm6::N4Click(TObject *Sender)
{
Form6->Close(); //закрытие формы добавления нового мероприятия
}
//---------------------------------------------------------------------------
void __fastcall TForm6::FormActivate(TObject *Sender)
{
Form6->ADOQuery1->Active=true;
Form6->ADOQuery2->Active=true;
Form6->DBLookupComboBox1->KeyValue=-1;
Form6->DBLookupComboBox2->KeyValue=-1;
Form6->Edit1->Text="";
Form6->Edit2->Text="";
Form6->Edit3->Text="";
Form6->Edit4->Text="";
}
//---------------------------------------------------------------------------
void __fastcall TForm6::Button1Click(TObject *Sender)
{
Integer vid, org;
if ((Edit1->Text=="") || (Edit2->Text=="") || (Edit3->Text=="") || (Form6->DBLookupComboBox1->KeyValue==-1) || (Form6->DBLookupComboBox2->KeyValue==-1) )//проверка наличия пустых полей на форме
{
ShowMessage("Введите все данные");
}
else
if ((Edit1->Text!="") && (Edit2->Text!="") && (Edit3->Text!="") && (Form6->DBLookupComboBox1->KeyValue!=-1) && (Form6->DBLookupComboBox2->KeyValue==-1) )
{
vid=Form6->DBLookupComboBox1->KeyValue;
org=Form6->DBLookupComboBox2->KeyValue;
ADOQuery3->Close();
ADOQuery3->SQL->Clear();
ADOQuery3->SQL->Add("Insert into sobitia (nazvanie_s,period_s,mesto_s, id_vid, id_org) Values ('" +Edit1->Text + "','" + Edit2->Text + "','" + Edit3->Text + "', '"+vid+"', '"+org+"' )");//добавление информации о новом мероприятии
ADOQuery3->ExecSQL();
Form1->ADOQuery2->Requery();//обновлении запроса на заполнение таблицы о мероприятиях на главной форме вкладка «Мероприятия»
Form6->Edit1->Text="";
Form6->Edit2->Text="";
Form6->Edit3->Text="";
Form6->Edit4->Text="";
Form6->DBLookupComboBox1->KeyValue=-1;
Form6->DBLookupComboBox2->KeyValue=-1;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm6::N3Click(TObject *Sender)
{
Integer vid, org;
if ((Edit1->Text=="") || (Edit2->Text=="") || (Edit3->Text=="") || (Form6->DBLookupComboBox1->KeyValue==-1) || (Form6->DBLookupComboBox2->KeyValue==-1) )
//проверка наличия пустых полей на форме
{
ShowMessage("Введите все данные");
}
else
if ((Edit1->Text!="") && (Edit2->Text!="") && (Edit3->Text!="") && (Form6->DBLookupComboBox1->KeyValue!="") && (Form6->DBLookupComboBox2->KeyValue==-1) )
{
vid=Form6->DBLookupComboBox1->KeyValue;
org=Form6->DBLookupComboBox2->KeyValue;
ADOQuery3->Close();
ADOQuery3->SQL->Clear();
ADOQuery3->SQL->Add("Insert into sobitia (nazvanie_s,period_s,mesto_s, id_vid, id_org) Values ('" +Edit1->Text + "','" + Edit2->Text + "','" + Edit3->Text + "', '"+vid+"', '"+org+"' )"); //добавление информации о новом мероприятии
ADOQuery3->ExecSQL();
Form1->ADOQuery2->Requery();//обновлении запроса на заполнение таблицы о мероприятиях на главной форме вкладка «Мероприятия»
Form6->Edit1->Text="";
Form6->Edit2->Text="";
Form6->Edit3->Text="";
Form6->Edit4->Text="";
Form6->DBLookupComboBox1->KeyValue=-1;
Form6->DBLookupComboBox2->KeyValue=-1;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm6::N2Click(TObject *Sender)
{
Form8->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TForm6::Button2Click(TObject *Sender)
{
if (Edit4->Text!="") {
ADOQuery4->Close();
ADOQuery4->SQL->Clear();
ADOQuery4->SQL->Add("Insert into organizator (nazvanie_org)Values ('" +Edit4->Text + "')");//добавление нового организатора в базу данных
ADOQuery4->ExecSQL();
Form6->ADOQuery2->Requery();//обновление списка организаторов на форме добавления нового мероприятия
Edit4->Text="";
}
else
ShowMessage("Введите организатора для добавления");
}
//---------------------------------------------------------------------------
Рис. 3.2 Дерево меню подсистемы
