Построение базы данных "Абитуриент" для учебного заведения

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



лу и его имя}: Integer; {Глобальная переменная, содержит индекс записи}: array of TAbiturientRecord; {Массив в котором будет храниться все записи нашей базы данных абитуриентов для быстрой обработки хи программой}: array of Integer; {Массив в котором будет храниться порядковый номер записи в файле}: array of TPoint; {Массив в котором будет храниться порядковый номер записей отображаемых в таблице}: Boolean; {Флаг (переменная) отвечающий за редактирование либо новвый ввод записи в базу данных об абитуриентах}: Integer; {переменная в которой будет храниться выделенный индекс строки таблицы}Unit2, Unit3;

{$R *. dfm}TForm1. SortTable; {Сортировка данных по Сумме баллов методом пузырька, абитуриенты с наиболее высокой суммой постепенно перемещаются в начало таблицы}i,TempIndex: Integer;: Boolean;: TAbiturientRecord;Length (FTableRecords) >1 then: =True;a do: =False;i: =0 to Length (FTableRecords) - 2 do(FTableRecords [i]. AScore1+FTableRecords [i]. AScore2+FTableRecords [i]. AScore3) =SpinEdit1. Value) then: =1 else b: =0;b=1 then inc (c);(FTempIndexs,a);[a-1]: =Point (i,b);;a=0 then. RowCount: =2;i: =0 to StringGrid1. ColCount-1 do StringGrid1. Cells [i,1]: ='';else StringGrid1. RowCount: =a+1;. Caption: ='Всего абитуриентов поступающих на выбранный факультет: '+Inttostr (a) +' из них прошли на бюджет: '+Inttostr (c);;TForm1. btn5Click (Sender: TObject);; {Закрываем приложение};TForm1. FormCreate (Sender: TObject); {Действия при создании формы}i: Integer;: =Tform3. Create (Self); {Создаем и отображаем титульный экран с названием курсовой работы}. Showmodal;. Free;

{устанавливаем значения глобальным переменным}: ='AbiturientsBase. dat';(F,FFileName);: =-1;: =False;: =-1;not FileExists (FFileName) then {Проверяем существование файла с базой данных}

{Выводим предупреждение и создаем чистую базу}('Файла с базой данных абитуриентов не существует, Будет создана чистая база');(F,FFileName);(F);; {В случае ошибки создания закрываем файл и прекращаем работу программы};else Reset (F);(FTableRecords,FileSize (F)); {Создание Массива который будет хранить все записи об абитуриентах}(FRecordIndexs,FileSize (F)); {Создание Массива который будет порядковый номер записи в файле об абитуриентах}Length (FTableRecords) >0 then {Заполнение массива данными из файла с базой данных}i: =0 to Length (FTableRecords) - 1 do(F, i);(F,FTableRecords [i]);[i]: =i;;;(F);i: =0 to 5 do cbb1. Items. Add (ASpecialnost [i]); {Заполняем список факультетов}. ItemIndex: =0; {выбираем первый факультет из списка}; {Заполняем таблицу};TForm1. cbb1Change (Sender: TObject);; {Обновляем таблицу с учетом вновь выбранного факультета};TForm1. btn1Click (Sender: TObject);: =False; {Меняем атрибут редактирования записи в состояние Неактивен, т. к мы будем обавлять новую запись, а не редактировать старую}: =TForm2. Create (Self); {Создаем форму для добавления новой записи}. Showmodal; {показываем форму}. Free; {уничтожаем после её закрытия}; {Обновляем таблицу с абитуриентами};TForm1. btn2Click (Sender: TObject);FilePosition<>-1 then {если индекс редактируемой записи существует, то меняем атрибут редактирования на активно и создаем форму редактирования и показываем её,

а потом уничтожаем и обновляем таблицу абитуриентов}: =True;: =TForm2. Create (Self);. Showmodal;. Free;;;: =-1;: =False;;TForm1. StringGrid1MouseDown (Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);a,b: Integer;: =-1;. MouseToCell (X,Y,A,B);(B>0) and (Length (FTempIndexs) >B-1) then {получаем индекс строки в таблице, если он существует, то присваеваем его глобальной переменной FilePosition, делаем доступной кнопку редактировать}: =FTempIndexs [B-1]. X;. Enabled: =True;: =B;else btn2. Enabled: =False;. Repaint;;TForm1. BitBtn1Click (Sender: TObject);FileExists (FFileName) then {Проверяем существование файла с базой данных}(f); {удаляем файл, потом создаем новый, закрываем файл и запускаем процедуру FormCreate (Self), которая происходит при запуске программы, чтобы обновить все переменные и тд}(f);(f);(Self);('База абитуриентов очищена! '); {выводим сообщение, что база очищена };;TForm1. StringGrid1DrawCell (Sender: TObject; ACol, ARow: Integer; ARect: TRect; State: TGridDrawState); {отрисовываем таблицу вручную, чтобы}ARow of {в зависимости от номера строки выбираем нужный нам цвет, серый, белый}

: StringGrid1. Canvas. Brush. Color: =clBtnFace;StringGrid1. Canvas. Brush. Color: =clWhite;;(Length (FTempIndexs) >=ARow) and (ARow>0) then {отрисовываем поступивших на Бюджет, зеленым}FTempIndexs [ARow-1]. Y=1 then StringGrid1. Canvas. Brush. Color: =$0000BF00;(ARow=SelectROW) and (SelectROW>0) then StringGrid1. Canvas. Brush. Color: =$00FFCCCC;. Canvas. FillRect (Arect); {закрашиваем ячейку таблицы в ранее определенный цвет}(Acol=0) or (Acol=1) or (Acol=4) or (Acol=13) or (Acol=14) then {выводим текст в таблицу, в зависимости от столбца либо по центру либо слева на право}. Canvas. TextOut (ARect. Left+1,ARect. Top+ ( ( (ARect. Bottom-ARect. Top) - StringGrid1. Canvas. TextHeight (StringGrid1. Cells [Acol,ARow])) div 2),StringGrid1. Cells [Acol,ARow]) else. Canvas. TextOut (ARect. Left+ ( ( (ARect. Right-ARect. Left) - StringGrid1. Canvas. TextWidth (Str