
- •Государственное бюджетное образовательное учреждение среднего профессионального образования
- •«Уральский радиотехнический колледж им. А.С. Попова» Полевской филиал
- •Введение
- •1 Назначение и область применения
- •1.1 Назначение применения
- •1.2 Область применения
- •2 Постановка задачи
- •3 Требования к структуре и функционированию системы
- •4 Системный проект
- •5 Технический проект
- •6 Листинг
- •6 Экспериментальная часть
- •Заключение
- •Список использованных источников
Государственное бюджетное образовательное учреждение среднего профессионального образования
Свердловской области
«Уральский радиотехнический колледж им. А.С. Попова» Полевской филиал
Отчёт по учебной практике «Разработка информационных систем»
Нормоконтролер ________ О.В. Вохмина «__»________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