Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Отчет АЙС.docx
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
820.26 Кб
Скачать

Государственное бюджетное образовательное учреждение среднего профессионального образования

Свердловской области

«Уральский радиотехнический колледж им. А.С. Попова» Полевской филиал

Отчёт по учебной практике «Разработка информационных систем»

Нормоконтролер

________ О.В. Вохмина

«__»________2013г.

Руководитель

__________ Д.В.Кузнецов

«__»________2013г.

Разработчик

___________ А.А.Говорухин

«__»________2013г.

2013

Содержани

Государственное бюджетное образовательное учреждение среднего профессионального образования 1

«Уральский радиотехнический колледж им. А.С. Попова» 1

Полевской филиал 1

Нормоконтролер 1

Руководитель 1

Введение 17

1 Назначение и область применения 18

1.1 Назначение применения 18

1.2 Область применения 18

2 Постановка задачи 19

3 Требования к структуре и функционированию системы 20

4 Системный проект 22

Для выполнения учебной практики, я выбрал язык программирования Object Pascal, потому что у меня есть познания в нем и код программы, написанный на этом языке интуитивно понятен. Несколько слов о Delphi: Delphi императивный, структурированный, объектно-ориентированный язык программирования, диалект Object Pascal. Начиная со среды разработки Delphi 7.0, в официальных документах Borland стала использовать название Delphi для обозначения языка Object Pascal. Начиная с 2007 года уже язык Delphi (производный от Object Pascal) начал жить своей самостоятельной жизнью и претерпевал различные изменения, связанные с современными тенденциями (например, с развитием платформы .NET) развития языков программирования: появились class helpers, перегрузки операторов и другое. 22

Средой разработки я выбрал Embarcadero Delphi, ранее Borland Delphi и CodeGear Delphi, — интегрированная среда разработки ПО для Microsoft Windows на языке Delphi (ранее носившем название Object Pascal), созданная первоначально фирмой Borland и на данный момент принадлежащая и разрабатываемая Embarcadero Technologies. Embarcadero Delphi является частью пакета Embarcadero RAD Studio и поставляется в четырёх редакциях: Starter, Professional, Enterprise и Architect. Координирующий офис Embarcadero ответственный за разработку Delphi находится в Торонто, тогда как сама разработка сконцентрирована главным образом в Румынии и России. В России Embarcadero представлена двумя офисами - в Санкт-Петербурге (разработка) и в Москве (маркетинг) 22

5 Технический проект 24

Процедуры главной формы: 24

1) procedure TFormMain.ButtonEditorClick – Показывается форма для редактирования. 24

2) procedure TFormMain.ButtonReportClick – Показывается форма для обзора. 24

3) procedure TFormMain.TimerTimer – Вывод текущего времени на экран. 24

4) procedure TFormMain.MenuHelpClick – Вывод данных о программе. 24

5) procedure TFormMain.MenuExitClick – Процедура выхода. 24

6) procedure TFormMain.MenuEditorClick – Вызов кнопки, при нажатии. 24

7) procedure TFormMain.MenuReportClick – Вызов кнопки, при нажатии. 24

Процедуры формы «Редактирование»: 24

1) procedure TFormEditor.ButtonFillClick – процедура для вывода данных в DbGrid. 24

2) procedure TFormEditor.MenuReportClick – Выводит на экран форму «Отчет». 24

3) procedure TFormEditor.N1Click – Закрывает приложение. 24

4) procedure TFormEditor.FormCreate – Задаем параметры соединения с базой данных и присваиваем имена таблиц к полям ComboBox. 24

5) procedure TFormEditor.Timer1Timer – Вывод времени. 24

6) procedure TFormEditor.MenuBackClick – Кнопка возврата на главную форму. 24

7) procedure TFormEditor.MenuExitClick – Кнопка выхода из приложения. 24

8) procedure TFormEditor.ButtonExpAddClick – Кнопка для расширения формы, и показа дополнитьных объектов, добавления информации. 24

9) procedure TFormEditor.ButtonHideClick – Кнопка для уменьшения формы, и скрытия доп. поля 24

10) procedure TFormEditor.ButtonAddClick – Кнопка для добавления данных в таблицу. 24

11) procedure TFormEditor.ButtonImageClick – Вносит картинку в поле таблицы. 24

12) procedure TFormEditor.ButtonPicClick – Кнопка увеличения формы и показа иллюстрации. 24

13) procedure TFormEditor.ButtonDelClick – кнопка удаления записи из таблицы, для удаления в поле DbEdit добавляется запись соответствующая выделенным данным, по которой осуществляется удаление. 25

14) procedure TFormEditor.N6Click – при нажатии этой кнопки дублируется процедура кнопки добавить. 25

15) procedure TFormEditor.N7Click – при нажатии этой кнопки дублируется процедура кнопки удалить. 25

Процедуры формы «Отчет»: 25

1) procedure TFormReport.Timer1Timer – Процедура вывода времени. 25

2) procedure TFormReport.MenuEditClick – Открытие формы «редактирование». 25

3) procedure TFormReport.MenuCloseClick – Процедура возврата на главную форму. 25

4) procedure TFormReport.MenuExitClick – Выход из приложения. 25

5) procedure TFormReport.ButtonPreviewClick – Кнопка для перехода в режим предварительного просмотра. 25

6) procedure TFormReport.MenuViewClick – дублер кнопки предварительного просмотра. 25

7) procedure TFormReport.ButtonPrintClick – Кнопка вывода на печать. 25

8) procedure TFormReport.MenuPrintClick – Кнопка дублер для печати. 25

9) procedure TFormReport.MenuAktClick – Процедура вывода запроса по таблице Актеры. 25

10) procedure TFormReport.MenuPredClick – Процедура вывода Актеров участвующих в спектаклях, их амплуа и т.д. 25

11) procedure TFormReport.MenuSpecClick – Вывод спектаклей по запросу. 25

12) procedure TFormReport.ButtonZapClick – Процедура для ввода собственного запроса. 25

13) procedure TFormReport.ButtonUslClick – Вывод всех актеров, участвующих в определенном спектакле. 25

6 Листинг 26

Главная форма. 26

unit Main; 26

interface 26

uses 26

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 26

Dialogs, Menus, ComCtrls, StdCtrls, XPMan, ExtCtrls; 26

type 26

TFormMain = class(TForm) 26

StatusBar: TStatusBar; 26

ButtonEditor: TButton; 26

ButtonReport: TButton; 26

XPManifest: TXPManifest; 26

Timer: TTimer; 26

MainMenu1: TMainMenu; 26

MenuFile: TMenuItem; 26

MenuEditor: TMenuItem; 26

MenuReport: TMenuItem; 26

MenuExit: TMenuItem; 26

MenuHelp: TMenuItem; 26

Bevel1: TBevel; 26

procedure ButtonEditorClick(Sender: TObject); 26

procedure TimerTimer(Sender: TObject); 26

procedure ButtonReportClick(Sender: TObject); 26

procedure MenuExitClick(Sender: TObject); 26

procedure MenuHelpClick(Sender: TObject); 26

procedure MenuEditorClick(Sender: TObject); 26

procedure MenuReportClick(Sender: TObject); 26

end; 26

var 26

FormMain: TFormMain; 27

implementation 27

uses Editor, Report, ShellAPI; 27

{$R *.dfm} 27

procedure TFormMain.ButtonEditorClick(Sender: TObject); 27

begin 27

FormEditor.Show; //Показ Формы Editor 27

end; 27

procedure TFormMain.ButtonReportClick(Sender: TObject); 27

begin 27

FormReport.Show; //Показ Формы Report 27

end; 27

procedure TFormMain.TimerTimer(Sender: TObject); 27

begin 27

StatusBar.SimpleText:=FormatDateTime('dd mmm yyyy г. Текущее время hh:mm:ss', Date+Time);//Вывод даты и времени на статус баре 27

end; 27

procedure TFormMain.MenuHelpClick(Sender: TObject); 27

begin 27

ShellAboutA(Handle, PChar(Caption), 'Copyright 2013 by Александр Говорухин', Application.Icon.Handle); //вывод справки 27

end; 27

procedure TFormMain.MenuExitClick(Sender: TObject); 27

begin 27

Application.Terminate; //Выход из приложения 27

end; 27

procedure TFormMain.MenuEditorClick(Sender: TObject); 27

begin 27

ButtonEditorClick(nil); //вызов действия кнопки 27

end; 27

procedure TFormMain.MenuReportClick(Sender: TObject); 28

begin 28

ButtonReportClick(nil); //вызов действия кнопки 28

end; 28

end. 28

Форма «Отчет» 28

unit Report; 28

interface 28

uses 28

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 28

Dialogs, ComCtrls, DBGridEhGrouping, ToolCtrlsEh, DBGridEhToolCtrls, 28

Menus, GridsEh, DBGridEh, ExtCtrls, PrnDbgeh, StdCtrls,PrViewEh, printers, 28

DB, ADODB; 28

type 28

TFormReport = class(TForm) 28

StatusBar1: TStatusBar; 28

DBGridReport: TDBGridEh; 28

MainMenu1: TMainMenu; 28

N1: TMenuItem; 28

MenuEdit: TMenuItem; 28

MenuPrint: TMenuItem; 28

MenuClose: TMenuItem; 28

MenuExit: TMenuItem; 28

Timer1: TTimer; 28

Panel1: TPanel; 28

PrintDBReport: TPrintDBGridEh; 28

MenuView: TMenuItem; 28

ButtonPrint: TButton; 28

ButtonPreview: TButton; 28

DataSource1: TDataSource; 28

ADOQuery1: TADOQuery; 29

MenuLook: TMenuItem; 29

MenuAkt: TMenuItem; 29

MenuSpec: TMenuItem; 29

MenuPred: TMenuItem; 29

EditZapros: TEdit; 29

LabelZap: TLabel; 29

ButtonZap: TButton; 29

ButtonUsl: TButton; 29

LabelUsl: TLabel; 29

ComboBoxZap: TComboBox; 29

procedure Timer1Timer(Sender: TObject); 29

procedure MenuEditClick(Sender: TObject); 29

procedure MenuCloseClick(Sender: TObject); 29

procedure MenuExitClick(Sender: TObject); 29

procedure ButtonPreviewClick(Sender: TObject); 29

procedure MenuViewClick(Sender: TObject); 29

procedure ButtonPrintClick(Sender: TObject); 29

procedure MenuPrintClick(Sender: TObject); 29

procedure MenuAktClick(Sender: TObject); 29

procedure MenuPredClick(Sender: TObject); 29

procedure MenuSpecClick(Sender: TObject); 29

procedure ButtonZapClick(Sender: TObject); 29

procedure ButtonUslClick(Sender: TObject); 29

private 29

{ Private declarations } 29

public 29

{ Public declarations } 29

end; 29

var 30

FormReport: TFormReport; 30

implementation 30

uses Main,Editor; 30

{$R *.dfm} 30

//Процедура отображения времени 30

procedure TFormReport.Timer1Timer(Sender: TObject); 30

begin 30

StatusBar1.SimpleText:=FormatDateTime('dd mmm yyyy г. Текущее время hh:mm:ss', Date+Time); 30

end; 30

procedure TFormReport.MenuEditClick(Sender: TObject); 30

begin 30

FormMain.ButtonEditor.Click; //Дублер открытия формы 30

end; 30

procedure TFormReport.MenuCloseClick(Sender: TObject); 30

begin 30

Close; //Закрытие 30

end; 30

procedure TFormReport.MenuExitClick(Sender: TObject); 30

begin 30

application.Terminate; //Завершение работы приложения 30

end; 30

//Процедура предварительного просмотра 31

procedure TFormReport.ButtonPreviewClick(Sender: TObject); 31

begin 31

PrinterPreview.Orientation := poLandscape; //ориентируем по горизонтали 31

PrintDBReport.Preview;//Предварительный просмотр 31

end; 31

procedure TFormReport.MenuViewClick(Sender: TObject); 31

begin 31

ButtonPreviewClick(nil); 31

end; 31

//Выводим на печать 31

procedure TFormReport.ButtonPrintClick(Sender: TObject); 31

begin 31

PrintDBReport.PrinterSetupDialog; 31

end; 31

procedure TFormReport.MenuPrintClick(Sender: TObject); 31

begin 31

ButtonPrintClick(nil); 31

end; 31

//Выводим актеров 31

procedure TFormReport.MenuAktClick(Sender: TObject); 31

var i:byte; 31

begin 31

AdoQuery1.Close; 31

AdoQuery1.SQL.Clear; 31

AdoQuery1.SQL.Add('select Актеры.Имя, Актеры.Фамилия, Звание.Название, Актеры.Предыдущие_роли '); 32

AdoQuery1.SQL.Add ('From Актеры inner join Звание on Актеры.id_zv=Звание.id_zv'); 32

AdoQuery1.open; 32

for i:=0 to DBGridReport.Columns.Count-1 do DBGridReport.Columns[i].OptimizeWidth; 32

end; 32

//Выводим актеров в спектаклях 32

procedure TFormReport.MenuPredClick(Sender: TObject); 32

var i:byte; 32

begin 32

AdoQuery1.Close; 32

AdoQuery1.SQL.Clear; 32

AdoQuery1.SQL.Add('select Актеры. Фамилия, Актеры.Имя, Спектакли. Наименование as ''Участие'', Представления.Amp as ''Амплуа'', Спектакли.Дата_проведения '); 32

AdoQuery1.SQL.Add('From Спектакли inner join Представления on Спектакли.id_sp = Представления.id_sp '); 32

AdoQuery1.SQL.Add('inner join Актеры on Представления.id_ak=Актеры.id_ak'); 32

AdoQuery1.open; 32

for i:=0 to DBGridReport.Columns.Count-1 do DBGridReport.Columns[i].OptimizeWidth; 32

end; 32

//Выводим информацию о Спектаклях 32

procedure TFormReport.MenuSpecClick(Sender: TObject); 32

var i:byte; 32

begin 32

AdoQuery1.Close; 33

AdoQuery1.SQL.Clear; 33

AdoQuery1.SQL.Add('Select Спектакли.Наименование, Спектакли.Дата_проведения, Спектакли.Описание'); 33

AdoQuery1.SQL.Add('From Спектакли'); 33

AdoQuery1.open; 33

for i:=0 to DBGridReport.Columns.Count-1 do DBGridReport.Columns[i].OptimizeWidth; 33

end; 33

//Прописываем собственный запрос в Edit 33

procedure TFormReport.ButtonZapClick(Sender: TObject); 33

var i:byte; 33

begin 33

ADOQuery1.Close; 33

AdoQuery1.SQL.Clear; 33

ADOQuery1.SQL.Text:=EditZapros.Text;//Присваиваем значение 33

ADOQuery1.Open; 33

for i:=0 to DBGridReport.Columns.Count-1 do DBGridReport.Columns[i].OptimizeWidth; 33

end; 33

//Выводим работу запроса по условию, указанному в ComboBox 33

procedure TFormReport.ButtonUslClick(Sender: TObject); 33

var i:byte; 33

Text:String; 33

begin 33

Text:=ComboBoxZap.Text; 33

AdoQuery1.Close; //Закрываем 33

AdoQuery1.SQL.Clear; //Очищаем Sql код 33

AdoQuery1.SQL.Add('Select Актеры.Фамилия,Актеры.Имя,Звание.Название as ''Звание'', Спектакли.Дата_проведения, Спектакли.Наименование '); //Добавляем код в Query 34

AdoQuery1.SQL.Add('from Актеры inner join Звание on Актеры.Id_zv = Звание.Id_zv '); 34

AdoQuery1.SQL.Add('inner join Представлления on Представления.id_ak = Актеры.id_ak '); 34

AdoQuery1.SQL.Add('inner Join Спектакли on Спектакли.id_sp = Представления.id_sp '); 34

AdoQuery1.SQL.Add('Where Спектакли.Наименование='+''''+Text+'''');//Добавляем условие к общему коду 34

AdoQuery1.Active:=true; //Активируем 34

for i:=0 to DBGridReport.Columns.Count-1 do DBGridReport.Columns[i].OptimizeWidth; 34

end; 34

end. 34

Форма «Редактирование» 34

unit Editor; 34

interface 34

uses 34

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 34

Dialogs, ToolCtrlsEh, StdCtrls, 34

Mask, DBCtrlsEh, GridsEh, DBGridEh, XPMan, DB, ADODB, ExtCtrls, Menus, 34

DBGridEhGrouping, DBGridEhToolCtrls, ComCtrls, ExtDlgs, DBCtrls; 34

type 34

TFormEditor = class(TForm) 34

ADOConnection: TADOConnection; 34

ADOTable: TADOTable; 34

DataSource: TDataSource; 34

PanelTop: TPanel; 35

ButtonFill: TButton; 35

ComboBoxTables: TComboBox; 35

Label1: TLabel; 35

Bevel1: TBevel; 35

DBGridEhMain: TDBGridEh; 35

Timer1: TTimer; 35

StatusBar1: TStatusBar; 35

ButtonExpAdd: TButton; 35

ButtonDel: TButton; 35

PanelADD: TPanel; 35

MainMenu1: TMainMenu; 35

N1: TMenuItem; 35

MenuReport: TMenuItem; 35

MenuBack: TMenuItem; 35

MenuExit: TMenuItem; 35

N5: TMenuItem; 35

N6: TMenuItem; 35

N7: TMenuItem; 35

ButtonAdd: TButton; 35

L1pole: TLabel; 35

L2pole: TLabel; 35

L3pole: TLabel; 35

L4pole: TLabel; 35

L5pole: TLabel; 35

Edit1: TEdit; 35

Edit2: TEdit; 35

Edit3: TEdit; 35

Edit4: TEdit; 35

Edit5: TEdit; 35

ButtonHide: TButton; 36

OpenPictureDialog1: TOpenPictureDialog; 36

PanelPic: TPanel; 36

ButtonImage: TButton; 36

DBImage1: TDBImage; 36

ButtonPic: TButton; 36

DBEditDel: TDBEdit; 36

ADOQuery1: TADOQuery; 36

procedure ButtonFillClick(Sender: TObject); 36

procedure MenuReportClick(Sender: TObject); 36

procedure N1Click(Sender: TObject); 36

procedure FormCreate(Sender: TObject); 36

procedure Timer1Timer(Sender: TObject); 36

procedure MenuBackClick(Sender: TObject); 36

procedure MenuExitClick(Sender: TObject); 36

procedure ButtonExpAddClick(Sender: TObject); 36

procedure ButtonHideClick(Sender: TObject); 36

procedure ButtonAddClick(Sender: TObject); 36

procedure ButtonImageClick(Sender: TObject); 36

procedure ButtonPicClick(Sender: TObject); 36

procedure ButtonDelClick(Sender: TObject); 36

procedure N6Click(Sender: TObject); 36

procedure N7Click(Sender: TObject); 36

private 36

{ Private declarations } 36

public 36

{ Public declarations } 36

end; 36

var 36

FormEditor: TFormEditor; 37

implementation 37

uses Main,Report; 37

{$R *.dfm} 37

//Процедура вывода данных на DbGrid 37

procedure TFormEditor.ButtonFillClick(Sender: TObject); 37

var i:byte; 37

begin 37

ButtonExpAdd.Enabled:=true; //Активируем кнопку 37

ButtonDel.Enabled:=true; // Активируем кнопку 37

ButtonHideClick(nil); //вызываем процедуру кнопки скрыть 37

dbimage1.DataField:=''; //Очищаем поле image 37

if ComboBoxTables.ItemIndex < 0 then //Проверяем содержимое ComboBox, Если пусто, выводим сообщение 37

begin 37

MessageBox(Handle, 'Даных нет', 'Продолжить', MB_ICONINFORMATION or MB_OK); 37

Exit; 37

end; 37

AdoTable.Close; 37

ADOTable.TableName:=ComboBoxTables.Text; //Задаем таблицу в AdoTable 37

if ADOTable.TableName='Актеры' then DbEditDel.DataField:='id_ak'; //Условие для отображения данных в Edit 37

if ADOTable.TableName='Звание' then DbEditDel.DataField:='id_zv'; 37

if ADOTable.TableName='Представление' then DbEditDel.DataField:='Amp'; 37

if ADOTable.TableName='Спектакли' then DbEditDel.DataField:='id_sp'; 37

ADOTable.Open; 37

for i:=0 to DBGridEhMain.Columns.Count-1 do DBGridEhMain.Columns[i].OptimizeWidth; //Оптимизируем ширину столбцов 38

if (ComboBoxTables.ItemIndex=0) or (ComboBoxTables.ItemIndex=3) then ButtonPic.Enabled:=true //Если поле ComboBox соответствует, разрешаем использование кнопки 38

else ButtonPic.Enabled:=false; //Если нет, запрещаем 38

end; 38

procedure TFormEditor.MenuReportClick(Sender: TObject); 38

begin 38

FormMain.ButtonReport.Click; 38

end; 38

procedure TFormEditor.N1Click(Sender: TObject); 38

begin 38

Application.Terminate; //Закрываем приложение 38

end; 38

//Процедура соединения с базой 38

procedure TFormEditor.FormCreate(Sender: TObject); 38

var DBName:string; 38

begin 38

DBName:=ExtractFilePath(ParamStr(0))+'Театры.mdF'; 38

ADOConnection.Close; 38

ADOConnection.ConnectionString:='Provider=SQLOLEDB.1;'+ 38

'Integrated Security=SSPI;'+ 38

'Persist Security Info=False;'+ 38

'Initial File Name='+DBName; 38

ADOConnection.Open; 38

ADOConnection.GetTableNames(ComboBoxTables.Items, False); //Задаем для ComboBox значение таблиц AdoConnect 39

if ComboBoxTables.Items.Count > 0 then ComboBoxTables.ItemIndex:=0; //Устанавливаем значение по умолчанию 39

end; 39

//Процедура вывода времени 39

procedure TFormEditor.Timer1Timer(Sender: TObject); 39

begin 39

StatusBar1.SimpleText:=FormatDateTime('dd mmm yyyy г. Текущее время hh:mm:ss', Date+Time); 39

end; 39

procedure TFormEditor.MenuBackClick(Sender: TObject); 39

begin 39

close; //Закрываем окно 39

end; 39

procedure TFormEditor.MenuExitClick(Sender: TObject); 39

begin 39

application.Terminate; //Завершаем работу 39

end; 39

//Процедура добавления данных 39

procedure TFormEditor.ButtonExpAddClick(Sender: TObject); 39

begin 39

FormEditor.ClientWidth:=1090; //Расширяем форму 39

PanelADD.Visible:=true; //Показываем панель 39

PanelPic.Visible:=False; //Скрываем 39

//Проверка значений ComboBox для заполнения соответствующими данными поля Label 40

case FormEditor.ComboBoxTables.ItemIndex of 40

0:Begin 40

L1pole.Visible:=true; L1pole.Caption:='id_ak'; 40

L2pole.Visible:=true; L2pole.Caption:='Имя'; 40

L3pole.Visible:=true; L3pole.Caption:='Фамилия'; 40

L4pole.Visible:=true; L4pole.Caption:='id_zv'; 40

L5pole.Visible:=true; L5pole.Caption:='Предыдущие роли'; 40

Edit1.Visible:=true; Edit2.Visible:=true; Edit3.Visible:=true; Edit4.Visible:=true; 40

Edit5.Visible:=true; 40

end; 40

1:Begin 40

L1pole.Visible:=true; L1pole.Caption:='id_zv'; 40

L2pole.Visible:=true; L2pole.Caption:='Название'; 40

L3pole.Visible:=False; 40

L4pole.Visible:=False; 40

L5pole.Visible:=False; 40

Edit1.Visible:=true; Edit2.Visible:=true;Edit3.Visible:=False; Edit4.Visible:=False; 40

Edit5.Visible:=False; 40

end; 40

2:Begin 40

L1pole.Visible:=true; L1pole.Caption:='id_sp'; 40

L2pole.Visible:=true; L2pole.Caption:='id_ak'; 40

L3pole.Visible:=true; L3pole.Caption:='Амплуа'; 40

L4pole.Visible:=False; 40

L5pole.Visible:=False; 40

Edit1.Visible:=true; Edit2.Visible:=true; Edit3.Visible:=true; Edit4.Visible:=False; 40

Edit5.Visible:=false; 40

end; 40

3:Begin 41

L1pole.Visible:=true; L1pole.Caption:='Id_sp'; 41

L2pole.Visible:=true; L2pole.Caption:='Название'; 41

L3pole.Visible:=true; L3pole.Caption:='Описание'; 41

L4pole.Visible:=true; L4pole.Caption:='Дата представления'; 41

L5pole.Visible:=False; 41

Edit1.Visible:=true; Edit2.Visible:=true; Edit3.Visible:=true; Edit4.Visible:=true; 41

Edit5.Visible:=false; 41

end; 41

end; 41

end; 41

//процедура для скрытия доп. блока 41

procedure TFormEditor.ButtonHideClick(Sender: TObject); 41

begin 41

FormEditor.ClientWidth:=728; //Изменяем размер 41

dbimage1.DataField:=''; 41

PanelPic.Visible:=False; 41

PanelAdd.Visible:=False; 41

end; 41

//Внесение данных в таблицу 41

procedure TFormEditor.ButtonAddClick(Sender: TObject); 41

begin 41

ADOTable.Insert; //Добавляем данные 41

case ComboBoxTables.ItemIndex of //Проверяем условие по выбранной таблице 41

0: Begin 41

if Edit1.text='' then begin ShowMessage('Введите данные'); exit; end; 41

if Edit2.text='' then Edit2.Text:='Нет данных'; 41

if Edit3.text='' then Edit3.Text:='Нет данных'; 41

if Edit4.text='' then Edit4.Text:='0'; 42

if Edit5.text='' then Edit5.Text:='Нет данных'; 42

ADOTable.Fields.Fields[0].AsInteger:=StrToInt(Edit1.Text); //присваиваем значения полям таблицы 42

ADOTable.Fields.Fields[1].AsString:=Edit2.Text; 42

ADOTable.Fields.Fields[2].AsString:=Edit3.Text; 42

ADOTable.Fields.Fields[3].AsInteger:=StrToInt(Edit4.Text); 42

ADOTable.Fields.Fields[4].AsString:=Edit5.Text; 42

end; 42

1: begin 42

if Edit1.text='' then begin ShowMessage('Введите данные'); exit; end; 42

if Edit2.text='' then Edit2.Text:= 'Нет данных'; 42

ADOTable.Fields.Fields[0].AsInteger:=StrToInt(Edit1.Text); 42

ADOTable.Fields.Fields[1].AsString:=Edit2.Text; 42

end; 42

2: begin 42

if Edit1.text='' then begin ShowMessage('Введите данные'); exit; end; 42

if Edit2.text='' then begin ShowMessage('Введите данные'); exit; end; 42

if Edit3.text='' then Edit3.Text:= 'Нет данных'; 42

ADOTable.Fields.Fields[0].AsInteger:=StrToInt(Edit1.Text); 42

ADOTable.Fields.Fields[1].AsInteger:=StrToInt(Edit2.Text); 42

ADOTable.Fields.Fields[2].AsString:=Edit3.Text; 42

end; 42

3: begin 42

if Edit1.text='' then begin ShowMessage('Введите данные'); exit; end; 42

if Edit2.text='' then Edit2.Text:= 'Нет данных'; 42

if Edit3.text='' then Edit3.Text:= 'Нет данных'; 42

if Edit4.text='' then Edit4.Text:= 'Нет данных'; 42

ADOTable.Fields.Fields[0].AsInteger:=StrToInt(Edit1.Text); 42

ADOTable.Fields.Fields[1].AsString:=Edit2.Text; 42

ADOTable.Fields.Fields[2].AsString:=Edit3.Text; 43

ADOTable.Fields.Fields[3].AsString:=Edit4.Text; 43

end; 43

end; 43

ADOTable.Post; 43

end; 43

//Кнопка добавления картинки 43

procedure TFormEditor.ButtonImageClick(Sender: TObject); 43

begin 43

if not OpenPictureDialog1.Execute then Exit; //Проверяем выполняется ли диалог 43

ADOTable.Edit; 43

TBLOBField(ADOTable.FieldByName('Фото')).LoadFromFile(OpenPictureDialog1.FileName); //Добавляем данные в таблицу 43

ADOTable.Post; 43

end; 43

//Кнопка, которая вызывает открытие доп. блока для просмотра иллюстрации 43

procedure TFormEditor.ButtonPicClick(Sender: TObject); 43

begin 43

FormEditor.ClientWidth:=1090; 43

PanelPic.Visible:=true; 43

PanelAdd.Visible:=false; 43

if (ComboboxTables.ItemIndex=0) or (ComboboxTables.ItemIndex=3) then dbimage1.DataField:='Фото' 43

else dbimage1.DataField:=''; 43

end; 43

//Кнопка удаления данных 43

procedure TFormEditor.ButtonDelClick(Sender: TObject); 43

Var 44

text: string; 44

Tabl:integer; 44

begin 44

if AdoTable.TableName='Актеры' then Tabl:=0; 44

if AdoTable.TableName='Звание' then Tabl:=1; 44

if AdoTable.TableName='Представление' then Tabl:=2; 44

if AdoTable.TableName='Спектакли' then Tabl:=3; 44

text:=DbeditDel.Text; 44

if Tabl<>ComboBoxTables.itemIndex then begin ButtonDel.Enabled:=false; exit; end; //если значение не соответсвует выбранной талице запрещаем использование кнопки 44

ADoQuery1.Close; 44

Case ComboBoxTables.ItemIndex of //Удаляем запись с помощью SQL кода 44

0: AdOQuery1.SQL.Text:='DELETE FROM Актеры WHERE id_ak= '+''''+Text+''''; 44

1: AdOQuery1.SQL.Text:='DELETE FROM Звание WHERE id_zv= '+''''+Text+''''; 44

2: AdOQuery1.SQL.Text:='DELETE FROM Представления WHERE Amp= '+''''+Text+''''; 44

3: AdOQuery1.SQL.Text:='DELETE FROM Спектакли WHERE id_sp= '+''''+Text+''''; 44

end; 44

AdoQuery1.ExecSQL; //Выполняем запрос 44

buttonFillClick(nil); 44

end; 44

procedure TFormEditor.N6Click(Sender: TObject); 44

begin 44

ButtonExpAddClick(nil);//Дублер меню 44

end; 44

procedure TFormEditor.N7Click(Sender: TObject); 45

begin 45

ButtonDelClick(nil);// Дублер меню 45

end; 45

end. 45

Заключение 54

Список использованных источников 55

Введение 3

1 Назначение и область применения 4

1.1 Назначение применения 4

1.2 Область применения 4

2 Постановка задачи 5

3 Инфологическая модель информационной системы 6

4 Проектирование АИС 7

5 Составление запросов по выборке информации из таблиц базы данных 10

6 Экспериментальная часть 14

Заключение 21

Список использованных источников 22