Лабораторная работа
Разработка фрагмента ИС
ЦЕЛЬ РАБОТЫ: научиться разрабатывать фрагмент информационной системы.
Для выполнения работы необходимо знать структуру информационных систем; необходимо уметь выделять компоненты информационной системы.
Выполнение данной практической работы способствует формированию профессиональной компетенции
ПК 1.1. Собирать данные для анализа использования и функционирования информационной системы, участвовать в составлении отчетной документации, принимать участие в разработке проектной документации на модификацию информационной системы.
ПК 1.4. Участвовать в экспериментальном тестировании информационной системы на этапе опытной эксплуатации, фиксировать выявленные ошибки кодирования в разрабатываемых модулях информационной системы.
ОБОРУДОВАНИЕ И МАТЕРИАЛЫ: ПК, ПО Windows, СУБД MS Access, Delphi7, проектор, методические указания для выполнения практической работы.
ВРЕМЯ ВЫПОЛНЕНИЯ: 90 минут
КРАТКАЯ ТЕОРИЯ И МЕТОДИЧЕСКИЕ РЕКОМЕНДАЦИИ:
TDBGrid находиться на вкладке DataControls, предназначен для отображения данных БД в нашей программе (приложении)
TDataSource находится на вкладке Data Access, предназначен для связи нашей сетки отображения данных, с самой БД
TADOConnection находится на вкладке ADO, предназначен для подключения нашей БД по определенному провайдеру
TADOQuery находится также на вкладке ADO, предназначен для получение нужных результатов из нашей БД.
DBGrid и DBEdit находится во вкладке DataControls
ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ И ФОРМА ОТЧЕТНОСТИ:
Для начала запустим Delphi. Создадим новое приложение File-New-Application, думаю здесь объяснять долго ничего не надо. Что делаем далее, на нашу главную форму «ставим» следующие компоненты
TDBGrid TDataSource TADOConnection TADOQuery
Нам необходимо создать Базу данных в MS Access. А как же без нее, думаю как создать примитивную БД в MS Access труда не составит, я создам БД и таблицу с полями
Гос. №: Марка: Модель: Тип кузова: Цвет кузова: Дата регистрации: Ф.И.О.: Паспорт: Адрес Улица: Дом: Квартира:
И назову ее Student, сохраним нашу БД в нужное место и продолжим дальше, ах да ну и заполните вашу таблицу какими-нибудь данными. А теперь мы «свяжим» все необходимые компоненты, которые находятся на нашей главной форме
Form1
TADOQuery в свойстве Connection я «связываю» с TADOConnection из выпадающего списка я выбираю имя данного компонента.
TDataSource в свойстве DataSet я «связываю» с TADOQuery из выпадающего списка я выбираю имя данного компонента
TDBGrid в свойстве DataSource я «связываю» с TDatasource из выпадающего списка я выбираю имя данного компонента.
Далее выделяем компонент TADOConnection и в свойстве LoginPromt ставим на False. Это делаем для того, чтобы при подключении к БД у нас не запрашивался пароль, дальше в свойстве ConnectionString нажимаем на кнопку с «…» и появляется окно следующего вида:
В данном окне нажимаем на кнопку «Build…» и появляется коно следующего вида:
В данном окне мы выбираем провайдера, а именно Microsoft Jet 4.0 OLE DB Provaider и нажимаем кнопку «Далее«.
В данном окне мы указываем путь к нашей БД и имя пользователя по умолчанию Admin. Если ваша БД находится в корневом каталоге с программой, то в данном поле достаточно указать ее имя с расширением: База гбдд.mdb
Почти все закончили осталось только нажать кнопку «Ок»
Щелкаем на DBGrid - DataSourse - выбираем DS1
Написать в Adoquery1 - SQL - (Tstrings) Select * from Таблица1
Adoquery1 - Active - true
В DBDrid появится наша таблица
Добавим кнопки как на форме и остальные элементы (label, Dbedit из datacontrols).
Добавить
procedure TForm1.Button1Click(Sender: TObject);
begin
form2.show;
form2.button1.Visible:=true;
form2.button2.Visible:=true;
form2.btn1.Visible:=False;
Form1.ADOQuery1.insert;
end;
Изменить
procedure TForm1.Button2Click(Sender: TObject);
begin
Form2.show;
form2.button1.Visible:=true;
form2.button2.Visible:=true;
form2.btn1.Visible:=False;
end;
Удалить
procedure TForm1.Button3Click(Sender: TObject);
begin
ADOQuery1.Delete;
end;
сброс поиска
procedure TForm1.Button6Click(Sender: TObject);
begin
dbEditeh4.text:='';
dbEditeh5.text:='';
dbEditeh6.text:='';
Button4Click(Sender);
DBGrideh1.Columns[0].Visible := False;
DBGrideh1.Columns[1].Visible := true;
DBGrideh1.Columns[2].Visible := true;
DBGrideh1.Columns[3].Visible := true;
DBGrideh1.Columns[4].Visible := true;
DBGrideh1.Columns[5].Visible := true;
DBGrideh1.Columns[6].Visible := true;
DBGrideh1.Columns[7].Visible := true;
DBGrideh1.Columns[8].Visible := true;
end;
поиск
procedure TForm1.Button4Click(Sender: TObject);
begin
ADOQuery1.Active := False;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('SELECT *');
ADOQuery1.SQL.Add('FROM таблица1');
ADOQuery1.SQL.Add('WHERE Гос№ LIKE' + #39 + dbEditeh4.Text + '%' + #39 +' AND ');
ADOQuery1.SQL.Add('фамилия LIKE' + #39 + dbEditeh5.Text + '%' + #39 +' AND ');
ADOQuery1.SQL.Add('паспорт LIKE' + #39 + dbEditeh6.Text + '%' + #39);
ADOQuery1.Active := True;
end;
сведения о тс
procedure TForm1.btn1Click(Sender: TObject);
begin
form2.show;
form2.button1.Visible:=False;
form2.button2.Visible:=False;
form2.btn1.Visible:=true;
end;
form2
OK
procedure TForm2.Button1Click(Sender: TObject);
begin
Form1.ADOQuery1.Post;
close;
end;
отмена
procedure TForm2.Button2Click(Sender: TObject);
begin
Form2.hide;
end;
To excel
procedure TForm2.btn1Click(Sender: TObject);
var
Excel:variant;
begin
Excel := CreateOleObject('Excel.Application');
Excel.Workbooks.Open(GetCurrentDir() + '\blank.xlsx');
Excel.sheets.item['лист1'].activate;
Excel.Range['b3']:='';
Excel.Range['b4']:='';
Excel.Range['b5']:='';
Excel.Range['b6']:='';
Excel.Range['b7']:='';
Excel.Range['b8']:='';
Excel.Range['b11']:='';
Excel.Range['c11']:='';
Excel.Range['d11']:='';
Excel.Range['b12']:='';
Excel.Range['b14']:='';
Excel.Range['b15']:='';
Excel.Range['b16']:='';
Excel.Range['b3']:=dbedt1.Text;
Excel.Range['b4']:=dbedt2.Text;
Excel.Range['b5']:=dbedt3.Text;
Excel.Range['b6']:=dbedt4.Text;
Excel.Range['b7']:=dbedt5.Text;
Excel.Range['b8']:=dbedt6.Text;
Excel.Range['b11']:=dbedt7.Text;
Excel.Range['c11']:=dbedt8.Text;
Excel.Range['d11']:=dbedt9.Text;
Excel.Range['b12']:=dbedt10.Text;
Excel.Range['b14']:=dbedt11.Text;
Excel.Range['b15']:=dbedt12.Text;
Excel.Range['b16']:=dbedt13.Text;
Excel.save;
Excel.ActiveWorkbook.Close;
Excel.Application.Quit;
end;
Литература:
Семакин И.Г. Основы алгоритмизации и программирования: учебник для студ.сред.проф.образования / И.Г. Семакин, А.П.Шестаков. - М.: Издательский центр «Академия», 2008. - 400 с.
Ресурсы Интернет:
http://www.delphiplus.org/programirovanie-baz-dannih-v-delphi/praktika-raboti-s-bd-ms-access-iz-delphi.html (Практика работы с БД MS Access из Delphi);
http://afishy.narod.ru/delphi/other.html (Уроки по Делфи).
Видеоуроки:
«База данных в delphi7», «База данных ADO Delphi», «Использование AdoTable AdoQuery в Delphi», «Delphi, подключение БД», «Урок №1. Создание базы данных и отображение данных», «Урок №3. Поиск и сортировка данных».