Комплексная информатизация системы образования
Содержание и анализ статистической информации в сфере образования, классификация применяемых информационно-аналитических систем. Разработка модели программы. Проведение технико-экономического обоснования разработки и внедрения программного средства.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 06.09.2014 |
Размер файла | 143,0 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
SportTabSheet: TTabSheet;
VneklassTabSheet: TTabSheet;
SredstvaUPTabSheet: TTabSheet;
UchitelDataSource: TDataSource;
UchitelDBGrid: TDBGrid;
UchitelDBNavigator: TDBNavigator;
UchitelADOTable: TADOTable;
PredmetDataSource: TDataSource;
PredmetDBGrid: TDBGrid;
PredmetDBNavigator: TDBNavigator;
PredmetADOTable: TADOTable;
OlimpDBGrid: TDBGrid;
OlimpDBNavigator: TDBNavigator;
SportDBGrid: TDBGrid;
SportDBNavigator: TDBNavigator;
VneklassDBGrid: TDBGrid;
VneklassDBNavigator: TDBNavigator;
SredstvaUPDBGrid: TDBGrid;
SredstvaUPDBNavigator: TDBNavigator;
OlimpADOTable: TADOTable;
SportADOTable: TADOTable;
VneklassADOTable: TADOTable;
OlimpDataSource: TDataSource;
SportDataSource: TDataSource;
VneklassDataSource: TDataSource;
SredstvaUPDataSource: TDataSource;
SredstvaUPADOTable: TADOTable;
MainMenu1: TMainMenu;
N1: TMenuItem;
CloseMnu: TMenuItem;
N2: TMenuItem;
FindMnu: TMenuItem;
ShowAllMnu: TMenuItem;
procedure FormActivate (Sender: TObject);
procedure FormClose (Sender: TObject; var Action: TCloseAction);
procedure CloseMnuClick (Sender: TObject);
procedure FindMnuClick (Sender: TObject);
procedure ShowAllMnuClick (Sender: TObject);
private procedure CreateCaption();
{Private declarations}
public
{Public declarations}
end;
var
DataForm: TDataForm;
implementation
uses
SearchForm;
{$R *.dfm}
// начало работы программы
procedure TDataForm. FindMnuClick (Sender: TObject);
begin
SearchFrm. ShowModal();
// если ввели услови для поиска и нажали «Найти»
if SearchFrm. ModalResult = mrOk
then begin
// фильтр
UchenADOTable. Filtered:= false;
UchenADOTable. Filter:= 'FOI_uchenika Like «%' + SearchFrm. Edit1. Text + ' % ''';
UchenADOTable. Filtered:= true;
// если не найдено записей, удовлетворяющих условию поиска
if UchenADOTable. RecordCount < 1
then begin
UchenADOTable. Filtered:= false;
ShowMessage ('В таблице нет записей, удовлетворяющих условию!!!');
end;
end;
end;
procedure TDataForm. FormActivate (Sender: TObject);
begin
try
DBADOConnection. Open;
UOADOTable. Open;
UchenADOTable. Open;
UchitelADOTable. Open;
PredmetADOTable. Open;
OlimpADOTable. Open;
SportADOTable. Open;
VneklassADOTable. Open;
SredstvaUPADOTable. Open;
Self. CreateCaption();
except
on e: Exception do begin
UODBGrid. Enabled:= False;
UchenDBGrid. Enabled:= False;
UchitelDBGrid. Enabled:= False;
PredmetDBGrid. Enabled:= False;
OlimpDBGrid. Enabled:= False;
SportDBGrid. Enabled:= False;
VneklassDBGrid. Enabled:= False;
SredstvaUPDBGrid. Enabled:= False;
MessageDlg ('Ошибка доступа к файлу базы данных!!!', mtError, [mbOk], 0);
end;
end;
end;
// первоначальная настройка пдписей столбцов
procedure TDataForm. CloseMnuClick (Sender: TObject);
begin
Self. Close();
end;
procedure TDataForm. CreateCaption();
begin
UODBGrid. Columns[0].Title. Caption:= 'ID УО';
UODBGrid. Columns[0].Title. Alignment:= taCenter;
UODBGrid. Columns[1].Title. Caption:= 'Наименование';
UODBGrid. Columns[1].Title. Alignment:= taCenter;
UODBGrid. Columns[2].Title. Caption:= 'Адрес';
UODBGrid. Columns[2].Title. Alignment:= taCenter;
UchenDBGrid. Columns[0].Title. Caption:= 'ID УО';
UchenDBGrid. Columns[0].Title. Alignment:= taCenter;
UchenDBGrid. Columns[1].Title. Caption:= 'ID ученика';
UchenDBGrid. Columns[1].Title. Alignment:= taCenter;
UchenDBGrid. Columns[2].Title. Caption:= 'Класс';
UchenDBGrid. Columns[2].Title. Alignment:= taCenter;
UchenDBGrid. Columns[3].Title. Caption:= 'ФИО ученика';
UchenDBGrid. Columns[3].Title. Alignment:= taCenter;
UchenDBGrid. Columns[4].Title. Caption:= 'Дата рождения';
UchenDBGrid. Columns[4].Title. Alignment:= taCenter;
UchenDBGrid. Columns[5].Title. Caption:= 'ФИО матери';
UchenDBGrid. Columns[5].Title. Alignment:= taCenter;
UchenDBGrid. Columns[6].Title. Caption:= 'ФИО отца';
UchenDBGrid. Columns[6].Title. Alignment:= taCenter;
UchitelDBGrid. Columns[0].Title. Caption:= 'ID УО';
UchitelDBGrid. Columns[0].Title. Alignment:= taCenter;
UchitelDBGrid. Columns[1].Title. Caption:= 'ID учителя';
UchitelDBGrid. Columns[1].Title. Alignment:= taCenter;
UchitelDBGrid. Columns[2].Title. Caption:= 'ФИО учителя';
UchitelDBGrid. Columns[2].Title. Alignment:= taCenter;
UchitelDBGrid. Columns[3].Title. Caption:= 'Пед. категория';
UchitelDBGrid. Columns[3].Title. Alignment:= taCenter;
UchitelDBGrid. Columns[4].Title. Caption:= 'Образование';
UchitelDBGrid. Columns[4].Title. Alignment:= taCenter;
PredmetDBGrid. Columns[0].Title. Caption:= 'ID предмета';
PredmetDBGrid. Columns[0].Title. Alignment:= taCenter;
PredmetDBGrid. Columns[1].Title. Caption:= 'Наименование предмета';
PredmetDBGrid. Columns[1].Title. Alignment:= taCenter;
OlimpDBGrid. Columns[0].Title. Caption:= 'ID УО';
OlimpDBGrid. Columns[0].Title. Alignment:= taCenter;
OlimpDBGrid. Columns[1].Title. Caption:= 'ID предмета';
OlimpDBGrid. Columns[1].Title. Alignment:= taCenter;
OlimpDBGrid. Columns[2].Title. Caption:= 'Этап олимпиады';
OlimpDBGrid. Columns[2].Title. Alignment:= taCenter;
OlimpDBGrid. Columns[3].Title. Caption:= 'ID ученика-победителя';
OlimpDBGrid. Columns[3].Title. Alignment:= taCenter;
OlimpDBGrid. Columns[4].Title. Caption:= 'Занятое место';
OlimpDBGrid. Columns[4].Title. Alignment:= taCenter;
SportDBGrid. Columns[0].Title. Caption:= 'ID УО';
SportDBGrid. Columns[0].Title. Alignment:= taCenter;
SportDBGrid. Columns[1].Title. Caption:= 'Наименование мероприятия';
SportDBGrid. Columns[1].Title. Alignment:= taCenter;
SportDBGrid. Columns[2].Title. Caption:= 'ID ученика-победителя';
SportDBGrid. Columns[2].Title. Alignment:= taCenter;
SportDBGrid. Columns[3].Title. Caption:= 'Занятое место';
SportDBGrid. Columns[3].Title. Alignment:= taCenter;
VneklassDBGrid. Columns[0].Title. Caption:= 'ID УО';
VneklassDBGrid. Columns[0].Title. Alignment:= taCenter;
VneklassDBGrid. Columns[1].Title. Caption:= 'Вид работы';
VneklassDBGrid. Columns[1].Title. Alignment:= taCenter;
VneklassDBGrid. Columns[2].Title. Caption:= 'Результат';
VneklassDBGrid. Columns[2].Title. Alignment:= taCenter;
SredstvaUPDBGrid. Columns[0].Title. Caption:= 'ID УО';
SredstvaUPDBGrid. Columns[0].Title. Alignment:= taCenter;
SredstvaUPDBGrid. Columns[1].Title. Caption:= 'Наименование средства';
SredstvaUPDBGrid. Columns[1].Title. Alignment:= taCenter;
SredstvaUPDBGrid. Columns[2].Title. Caption:= 'Количество';
SredstvaUPDBGrid. Columns[2].Title. Alignment:= taCenter;
end;
// завершение работы программы
procedure TDataForm. FormClose (Sender: TObject; var Action: TCloseAction);
begin
// пользователь не завершил редактирование
// записать редактируемую запись
if (UODBGrid. EditorMode)
then UOADOTable. UpdateBatch(arCurrent);
if (UchenDBGrid. EditorMode)
then UchenADOTable. UpdateBatch(arCurrent);
if (UchitelDBGrid. EditorMode)
then UchitelADOTable. UpdateBatch(arCurrent);
if (PredmetDBGrid. EditorMode)
then PredmetADOTable. UpdateBatch(arCurrent);
if (OlimpDBGrid. EditorMode)
then OlimpADOTable. UpdateBatch(arCurrent);
if (SportDBGrid. EditorMode)
then SportADOTable. UpdateBatch(arCurrent);
if (VneklassDBGrid. EditorMode)
then VneklassADOTable. UpdateBatch(arCurrent);
if (SredstvaUPDBGrid. EditorMode)
then SredstvaUPADOTable. UpdateBatch(arCurrent);
end;
procedure TDataForm. ShowAllMnuClick (Sender: TObject);
begin
self. UchenADOTable. Filtered:= false;
end;
end.
procedure TDBNavigator. InitButtons;
var
I: TNavigateBtn;
Btn: TNavButton;
X: Integer;
ResName: string;
begin
MinBtnSize:= Point (20, 18);
X:= 0;
for I:= Low(Buttons) to High(Buttons) do
begin
Btn:= TNavButton. Create (Self);
Btn. Flat:= Flat;
Btn. Index:= I;
Btn. Visible:= I in FVisibleButtons;
Btn. Enabled:= True;
Btn. SetBounds (X, 0, MinBtnSize.X, MinBtnSize.Y);
FmtStr (ResName, 'dbn_%s', [BtnTypeName[I]]);
Btn. Glyph. LoadFromResourceName (HInstance, ResName);
Btn. NumGlyphs:= 2;
Btn. Enabled:= False;
Btn. Enabled:= True;
Btn. OnClick:= ClickHandler;
Btn. OnMouseDown:= BtnMouseDown;
Btn. Parent:= Self;
Buttons[I]:= Btn;
X:= X + MinBtnSize.X;
end;
Buttons[nbPrior].NavStyle:= Buttons[nbPrior].NavStyle + [nsAllowTimer];
Buttons[nbNext].NavStyle:= Buttons[nbNext].NavStyle + [nsAllowTimer];
end;
procedure TDBNavigator. InitHints;
var
I: Integer;
J: TNavigateBtn;
begin
if not Assigned(FDefHints) then
begin
FDefHints:= TStringList. Create;
for J:= Low(Buttons) to High(Buttons) do
FDefHints. Add (LoadResString(BtnHintId[J]));
end;
for J:= Low(Buttons) to High(Buttons) do
Buttons[J].Hint:= FDefHints [Ord(J)];
J:= Low(Buttons);
for I:= 0 to (FHints. Count - 1) do
begin
if FHints. Strings[I] <> '' then Buttons[J].Hint:= FHints. Strings[I];
if J = High(Buttons) then Exit;
Inc(J);
end;
end;
procedure TDBNavigator. HintsChanged (Sender: TObject);
begin
InitHints;
end;
procedure TDBNavigator. SetFlat (Value: Boolean);
var
I: TNavigateBtn;
begin
if FFlat <> Value then
begin
FFlat:= Value;
for I:= Low(Buttons) to High(Buttons) do
Buttons[I].Flat:= Value;
end;
end;
procedure TDBNavigator. SetHints (Value: TStrings);
begin
if Value. Text = FDefHints. Text then
FHints. Clear else
FHints. Assign(Value);
end;
function TDBNavigator. GetHints: TStrings;
begin
if (csDesigning in ComponentState) and not (csWriting in ComponentState) and
not (csReading in ComponentState) and (FHints. Count = 0) then
Result:= FDefHints else
Result:= FHints;
end;
procedure TDBNavigator. GetChildren (Proc: TGetChildProc; Root: TComponent);
begin
end;
procedure TDBNavigator. Notification (AComponent: TComponent;
Operation: TOperation);
begin
inherited Notification (AComponent, Operation);
if (Operation = opRemove) and (FDataLink <> nil) and
(AComponent = DataSource) then DataSource:= nil;
end;
procedure TDBNavigator. SetVisible (Value: TNavButtonSet);
var
I: TNavigateBtn;
W, H: Integer;
begin
W:= Width;
H:= Height;
FVisibleButtons:= Value;
for I:= Low(Buttons) to High(Buttons) do
Buttons[I].Visible:= I in FVisibleButtons;
SetSize (W, H);
if (W <> Width) or (H <> Height) then
inherited SetBounds (Left, Top, W, H);
Invalidate;
end;
procedure TDBNavigator. CalcMinSize (var W, H: Integer);
var
Count: Integer;
I: TNavigateBtn;
begin
if (csLoading in ComponentState) then Exit;
if Buttons[nbFirst] = nil then Exit;
Count:= 0;
for I:= Low(Buttons) to High(Buttons) do
if Buttons[I].Visible then
Inc(Count);
if Count = 0 then Inc(Count);
W:= Max (W, Count * MinBtnSize.X);
H:= Max (H, MinBtnSize.Y);
if Align = alNone then W:= (W div Count) * Count;
end;
procedure TDBNavigator. SetSize (var W: Integer; var H: Integer);
var
Count: Integer;
I: TNavigateBtn;
Space, Temp, Remain: Integer;
X: Integer;
begin
if (csLoading in ComponentState) then Exit;
if Buttons[nbFirst] = nil then Exit;
CalcMinSize (W, H);
Count:= 0;
for I:= Low(Buttons) to High(Buttons) do
if Buttons[I].Visible then
Inc(Count);
if Count = 0 then Inc(Count);
ButtonWidth:= W div Count;
Temp:= Count * ButtonWidth;
if Align = alNone then W:= Temp;
X:= 0;
Remain:= W - Temp;
Temp:= Count div 2;
for I:= Low(Buttons) to High(Buttons) do
begin
if Buttons[I].Visible then
begin
Space:= 0;
if Remain <> 0 then
begin
Dec (Temp, Remain);
if Temp < 0 then
begin
Inc (Temp, Count);
Space:= 1;
end;
end;
Buttons[I].SetBounds (X, 0, ButtonWidth + Space, Height);
Inc (X, ButtonWidth + Space);
end
else
Buttons[I].SetBounds (Width + 1, 0, ButtonWidth, Height);
end;
end;
procedure TDBNavigator. SetBounds (ALeft, ATop, AWidth, AHeight: Integer);
var
W, H: Integer;
begin
W:= AWidth;
H:= AHeight;
if not HandleAllocated then SetSize (W, H);
inherited SetBounds (ALeft, ATop, W, H);
end;
procedure TDBNavigator.WMSize (var Message: TWMSize);
var
W, H: Integer;
begin
inherited;
W:= Width;
H:= Height;
SetSize (W, H);
end;
procedure TDBNavigator.WMWindowPosChanging (var Message: TWMWindowPosChanging);
begin
inherited;
if (SWP_NOSIZE and Message. WindowPos. Flags) = 0 then
CalcMinSize (Message. WindowPos.cx, Message. WindowPos.cy);
end;
procedure TDBNavigator. ClickHandler (Sender: TObject);
begin
BtnClick (TNavButton (Sender).Index);
end;
procedure TDBNavigator. BtnMouseDown (Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var
OldFocus: TNavigateBtn;
begin
OldFocus:= FocusedButton;
FocusedButton:= TNavButton (Sender).Index;
if TabStop and (GetFocus <> Handle) and CanFocus then
begin
SetFocus;
if (GetFocus <> Handle) then
Exit;
end
else if TabStop and (GetFocus = Handle) and (OldFocus <> FocusedButton) then
begin
Buttons[OldFocus].Invalidate;
Buttons[FocusedButton].Invalidate;
end;
end;
procedure TDBNavigator. BtnClick (Index: TNavigateBtn);
begin
if (DataSource <> nil) and (DataSource. State <> dsInactive) then
begin
if not (csDesigning in ComponentState) and Assigned(FBeforeAction) then
FBeforeAction (Self, Index);
with DataSource. DataSet do
begin
case Index of
nbPrior: Prior;
nbNext: Next;
nbFirst: First;
nbLast: Last;
nbInsert: Insert;
nbEdit: Edit;
nbCancel: Cancel;
nbPost: Post;
nbRefresh: Refresh;
nbDelete:
if not FConfirmDelete or
(MessageDlg (SDeleteRecordQuestion, mtConfirmation,
mbOKCancel, 0) <> idCancel) then Delete;
end;
end;
end;
if not (csDesigning in ComponentState) and Assigned(FOnNavClick) then
FOnNavClick (Self, Index);
end;
procedure TDBNavigator.WMSetFocus (var Message: TWMSetFocus);
begin
Buttons[FocusedButton].Invalidate;
end;
procedure TDBNavigator.WMKillFocus (var Message: TWMKillFocus);
begin
Buttons[FocusedButton].Invalidate;
end;
procedure TDBNavigator. KeyDown (var Key: Word; Shift: TShiftState);
var
NewFocus: TNavigateBtn;
OldFocus: TNavigateBtn;
begin
OldFocus:= FocusedButton;
case Key of
VK_RIGHT:
begin
if OldFocus < High(Buttons) then
begin
NewFocus:= OldFocus;
repeat
NewFocus:= Succ(NewFocus);
until (NewFocus = High(Buttons)) or (Buttons[NewFocus].Visible);
if Buttons[NewFocus].Visible then
begin
FocusedButton:= NewFocus;
Buttons[OldFocus].Invalidate;
Buttons[NewFocus].Invalidate;
end;
end;
end;
VK_LEFT:
begin
NewFocus:= FocusedButton;
repeat
if NewFocus > Low(Buttons) then
NewFocus:= Pred(NewFocus);
until (NewFocus = Low(Buttons)) or (Buttons[NewFocus].Visible);
if NewFocus <> FocusedButton then
begin
FocusedButton:= NewFocus;
Buttons[OldFocus].Invalidate;
Buttons[FocusedButton].Invalidate;
end;
end;
VK_SPACE:
begin
if Buttons[FocusedButton].Enabled then
Buttons[FocusedButton].Click;
end;
end;
end;
procedure TDBNavigator.WMGetDlgCode (var Message: TWMGetDlgCode);
begin
Message. Result:= DLGC_WANTARROWS;
end;
procedure TDBNavigator. DataChanged;
var
UpEnable, DnEnable: Boolean;
begin
UpEnable:= Enabled and FDataLink. Active and not FDataLink. DataSet.BOF;
DnEnable:= Enabled and FDataLink. Active and not FDataLink. DataSet.EOF;
Buttons[nbFirst].Enabled:= UpEnable;
Buttons[nbPrior].Enabled:= UpEnable;
Buttons[nbNext].Enabled:= DnEnable;
Buttons[nbLast].Enabled:= DnEnable;
Buttons[nbDelete].Enabled:= Enabled and FDataLink. Active and
FDataLink. DataSet. CanModify and
not (FDataLink. DataSet.BOF and FDataLink. DataSet.EOF);
end;
procedure TDBNavigator. EditingChanged;
var
CanModify: Boolean;
begin
CanModify:= Enabled and FDataLink. Active and FDataLink. DataSet. CanModify;
Buttons[nbInsert].Enabled:= CanModify;
Buttons[nbEdit].Enabled:= CanModify and not FDataLink. Editing;
Buttons[nbPost].Enabled:= CanModify and FDataLink. Editing;
Buttons[nbCancel].Enabled:= CanModify and FDataLink. Editing;
Buttons[nbRefresh].Enabled:= CanModify;
end;
procedure TDBNavigator. ActiveChanged;
var
I: TNavigateBtn;
begin
if not (Enabled and FDataLink. Active) then
for I:= Low(Buttons) to High(Buttons) do
Buttons[I].Enabled:= False
else
begin
DataChanged;
EditingChanged;
end;
end;
procedure TDBNavigator.CMEnabledChanged (var Message: TMessage);
begin
inherited;
if not (csLoading in ComponentState) then
ActiveChanged;
end;
procedure TDBNavigator. SetDataSource (Value: TDataSource);
begin
FDataLink. DataSource:= Value;
if not (csLoading in ComponentState) then
ActiveChanged;
if Value <> nil then Value. FreeNotification(Self);
end;
function TDBNavigator. GetDataSource: TDataSource;
begin
Result:= FDataLink. DataSource;
end;
procedure TDBNavigator. Loaded;
var
W, H: Integer;
begin
inherited Loaded;
W:= Width;
H:= Height;
SetSize (W, H);
if (W <> Width) or (H <> Height) then
inherited SetBounds (Left, Top, W, H);
InitHints;
ActiveChanged;
end;
{TNavButton}
destructor TNavButton. Destroy;
begin
if FRepeatTimer <> nil then
FRepeatTimer. Free;
inherited Destroy;
end;
Размещено на Allbest.ru
Подобные документы
Разработка научно-методических основ управления качеством в жизненном цикле информационно-программных средств. Отраслевая система их сертификации и внедрение результатов в сфере многоуровневого образования. Информатизация вузов и пути решения этой задачи.
реферат [20,5 K], добавлен 26.12.2009Внедрение информационных технологий в различные области современной системы образования. Исследование основных средств информатизации образования. Особенности осуществления контроля знаний учащихся в системе Moodle. Информатизация образования в России.
реферат [21,0 K], добавлен 03.10.2014Назначение и архитектура экспертных систем, их применение в сфере образования. Экспертные системы тестирования, принципы их функционирования. Инструментальные средства создания приложения и разработка программы тестирования. Описание программы, листинг.
дипломная работа [706,4 K], добавлен 07.05.2012Изучение понятия, типов и возможностей педагогического программного средства. Технология проектирования программно-методического обеспечения. Классификация образовательных сайтов. Средства разработки электронного образовательного ресурса учреждения.
курсовая работа [1,6 M], добавлен 10.01.2015Содержание термина "планирование эксперимента". Сущность метода наименьших квадратов. Разработка программы анализа статистической оценки качества проектируемой системы: составление и графическое представление алгоритма решения, листинг программы.
курсовая работа [4,1 M], добавлен 16.09.2011Правовые основы аренды в Республике Казахстан. Обзор существующего программного обеспечения по работе агентств недвижимости. Выбор и проектирование инфологической модели базы данных. Организация технологии сбора, передачи, обработки и выдачи информации.
дипломная работа [1,3 M], добавлен 02.11.2015- Разработка информационной системы института заочного и дополнительного профессионального образования
Информационная система и ее виды. Общие понятия реляционного подхода к организации баз данных. Функциональное описание разрабатываемого программного обеспечения "База ИДПО". Определение стоимости и трудоёмкости разработки данного программного средства.
дипломная работа [2,1 M], добавлен 15.06.2013 Рассмотрение приемов разработки программных средств для автоматизированных систем обработки информации и управления. Разработка программного продукта, предназначенного для автоматизации работы заместителя директора по учебно-воспитательной работе.
дипломная работа [1,7 M], добавлен 27.02.2015Анализ и разработка информационной системы, структура сети предприятия. Описание процесса разработки конфигураций и выявление потребностей в автоматизации функций. Средства разработки проектирования и архитектура базы данных. Разработка модели угроз.
дипломная работа [1,4 M], добавлен 13.07.2011Понятие и специфика автоматизированных систем. Описание методики разработки программы для автоматизации. Ее тестирование и отладка. Внедрение АС в работу предприятия. Расчет экономического эффекта от разработки и реализации программного продукта.
дипломная работа [1,4 M], добавлен 23.06.2015