Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...
Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...
Топ:
Комплексной системы оценки состояния охраны труда на производственном объекте (КСОТ-П): Цели и задачи Комплексной системы оценки состояния охраны труда и определению факторов рисков по охране труда...
Характеристика АТП и сварочно-жестяницкого участка: Транспорт в настоящее время является одной из важнейших отраслей народного хозяйства...
Интересное:
Финансовый рынок и его значение в управлении денежными потоками на современном этапе: любому предприятию для расширения производства и увеличения прибыли нужны...
Берегоукрепление оползневых склонов: На прибрежных склонах основной причиной развития оползневых процессов является подмыв водами рек естественных склонов...
Лечение прогрессирующих форм рака: Одним из наиболее важных достижений экспериментальной химиотерапии опухолей, начатой в 60-х и реализованной в 70-х годах, является...
Дисциплины:
2020-06-05 | 92 |
5.00
из
|
Заказать работу |
|
|
При написании проекта использовалось язык: Object Pascal (среда Delphi 7).
Delphi 7 является системой визуального проектирования языка Object Pascal. Выбрана классическая версия программного продукта 7.0. Среда может оперировать с некоторыми типами данных.
Таблица 3.2.1 Таблица типов данных в среде Delphi 7.0
Тип | Предел значений | Размерность (байт) | Название типа |
Integer | -2147483648 до 2147483647 | 4 | Целое число |
Real | 2,9е -39 до 1,7е 38 | 6 | Вещественное число |
String | - | 4 Гб | Текстовая переменная |
Variant | - | - | Переходный тип |
В программировании на данном языке используются логические и циклические блоки.
Циклы бывают итерационными (построенными на приближении) и арифметическими (циклами со счетчиком).
Итерационный цикл с предпроверкой условия:
While <условие> do
begin
<операторы цикла>
end;
Данный цикл завершает свое выполнение при наступлении неверности условия.
Итерационный цикл с постпроверкой условия:
Repeat
<операторы цикла>
Until <условие>;
Данный цикл завершает свое выполнение при наступлении верности условия.
Арифметический цикл:
For <переменная>:= <начальное значение> to
<конечное значение> do
begin
<операторы цикла>
end;
Этот цикл выполняется определенное количество раз но <переменная> в данном цикле не должна принимать значения вне счетчика.
К операторам условия относится “If”:
If <условие> then
begin
<операторы при истинности условия>
end
else
begin
<операторы при ложности условия>
end;
Операторы могут объединяться в блоки. Такой блок объявляется служебным словом “Begin” и завершается “End;”. Блоки используются в циклах, операторах условия и некоторых других конструкциях.
Процедуры и функции являются подпрограммами, т.е. относительно независимыми частями программы.
|
При объявлении процедуры указывается служебное слово
Procedure <имя процедуры> (<параметр1>:<тип>; <параметр2>:<тип>);
Например:
Procedure Koren(Index:integer;chislo:real);
принаписании процедуры указывается заголовок и операторы выполняемые данной процедурой.
Procedure Koren(Index:integer;chislo:real);
var e:real;
begin
<операторы>
end;
Процедура, в отличие от функции не может возвращать значение.
Примером функции может послужить оператор COS. Описание функций не отличается от описания процедуры. Разница заключается только в том, что после описания заголовка указывается тип функции и в теле функции нужно присвоить переменной Result значение, которое и вернет процедура в основную программу.
Краткая характеристика других использованных средств
При разработке программного проекта использовался текстовый процессор Ms Office профессиональный 2013 Exel. Пакет office в общем. Дополнительные настройки не требуются и достаточны для нормального функционирования и разработки программы.
4.ЭКСПЛУАТАЦИЯ
Требования к аппаратному обеспечению
При работе с программой аппаратные средства должны характеризоваться следующими параметрами:
ОС Windows XP/7/8
ОП 512 Mb
CPU 2.8 Ghz
HDD 100 Mb + Размерность базы
Поддержка Paradox
Ms office 2003-2013
Инструкция пользователю
Курсовой проект представляет собой работа с база данных фильмов.Пользователю при запуске программы будет предложенно зарегистрироваться.После регистрации пользователь переходит на главную форму,где находится список фильмов.Этот список можно сортировать,фильтровать,а также по нему выполнять поиск(открывая дополнительные окна).В окне справка можно просмотреть студию,жанр,а также описание фильма.Также на окне справка можно просмотреть трейлер фильма и при желании заказать его.Если же заходить со стороны администрации,нужно будет вести уже существующий логин и пороль.В режиме администрации добавляется новое окно – редактирование.Внём можно записать новый фильм,а также редактировать старые.Также можно просмотреть все учётные записи и заказы.
|
Рисунок 4.2.1 Авторизация пользователя
Рисунок 4.2.2 Главная форма
Рисунок 4.2.3 Окно редактирования
Рисунок 4.2.4 Список заказов
Инструкции программисту
Программа не требует особых параметров конфигурации компьютера.
Размер дискового пространства для размещения программного продукта составляет 100 мбт.
Коды модулей приложения приводятся в конце пояснительной записки.
Модули: unitdate, Unit2, UnitPril,UnitEdit;
Unitdata служит для размещения таких компонентов как: Table, Datasource, Database, Query.
UnitPril – это основное окно приложение на котором расположен список фильмов.
UnitEdit служит для редактирование основной таблицы и учётных записей.
Unit2 – это список заказов пользователя.
5. ЗАКЛЮЧЕНИЕ
В процессе разработки и внедрения программы приходим к выводам, что поставленная задача нашла реализацию в данном проекте. Данные программы используют наиболее часто используемые методы и формы передачи данных, используемые в электронных вариантах АС. Программа позволяет объединить подобные программы сторонних разработчиков.
Программа является примером подобных решений и не является идеальной. При последующей доработке программы требуется расширить возможности поиска данных,сортировку, фильтрацию а также базу фильмов.
Проект был реализован и дополнен в течении 2 месяцев. В процессе работы я столкнулся с проблемами SQL запроса,фильтарции,а также связывание таблиц. Проект несёт в себе функцию просмотра и заказа,существующих фильмов.
Алгоритм составления и сопровождение постоянно изменялись в ходе рабочего и технического проектирования. Наша автоматизированная система с продуманными функциями и приятным интерфейсом поможет вам выбрть и заказать фильм быстро и легко.
СПИСОК ИСПОЛЬЗОВАнной лИТературы
1) “Охрана труда ” -М.;1989
2) DelphiWorld http://www.delphiworld.narod.ru (форум по delphi)
3) БорисовЕ.Ф..“Основы экономической теории”,
4) Закон Республики Казахстан от 22 января 1993 г. № 1914
5) Зубов А. Программирование на Delphi. Трюки и эффекты. – СПб.: Питер,2005. –396с.
6) Новиков А. Руководство по PHP http://www.ru.php.net/manual/manual.php3 (электронный учебник)
7) Райзберг Б.А., Лозовский Л.Ш., Стародубцев Е.Б. “Современный экономический словарь”
|
8) Сергеев И.В.“Экономика предприятия”
9) Скала В.И. “Охрана труда и техника безопасности”, – Алматы: «LEM», 2002. –276с
10) Фаронов В. Искусство создания компонентов Delphi. Библиотека программиста. – СПб.: Питер,2005. – 463с.
11) Фленов М. Программирование в Delphi глазами хакера. – СПб.: БХВ-Петербург,2003. – 368с.
12) ХомоненкоА., Гофман В. Самоучитель Delphi. – СПб.: БХВ-Петербург,2005. – 576с.
ПРИЛОЖЕНИЯ |
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
if Panel1.Visible=false then
begin
Panel1.Visible:=true;
end
else
Panel1.Visible:=false;
end;
procedure TForm1.BitBtn2Click(Sender: TObject);
begin
dm.N20.Click;
end;
procedure TForm1.DBGrid1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
{if ShowScrollBar(DBGrid1.Handle, SB_VERT, True)then
ShowScrollBar(DBGrid1.Handle, SB_VERT, False)
else
ShowScrollBar(DBGrid1.Handle, SB_VERT, False)}
end;
procedure TForm1.DBGrid1CellClick(Column: TColumn);
var s:shortstring;
begin
try
s:=getcurrentdir+'\img\'+dm.Tfilm.fieldbyname('image_name').Value;
Image3.Picture.LoadFromFile(s);
except
s:='img\noimg.jpg';
Image3.Picture.LoadFromFile(s);
end;
end;
procedure TForm1.DBGrid1DblClick(Sender: TObject);
begin
if Panel2.Visible=false then
begin
Panel2.Visible:=true;
end
else
Panel2.Visible:=false;
end;
procedure TForm1.BitBtn6Click(Sender: TObject);
var s:shortstring;
begin
if Panel2.Visible=false then
begin
Panel2.Visible:=true;
DBGrid1.Visible:=true;
end
else
Panel2.Visible:=false;
DBGrid1.Visible:=true;
try
s:=getcurrentdir+'\img\'+dm.Tfilm.fieldbyname('image_name').Value;
Image3.Picture.LoadFromFile(s);
except
s:='img\noimg.jpg';
Image3.Picture.LoadFromFile(s);
end;
end;
procedure TForm1.Image4Click(Sender: TObject);
begin
Panel2.Visible:=false;
end;
procedure TForm1.BitBtn11Click(Sender: TObject);
var p: Pchar;
ch: array[1..100] of char;
s: shortstring;
i:integer;
begin
try
s:='d:\mp4\'+dm.TFilm.fieldByname('Treler').Value;
//showmessage(s);
for i:=1 to length(s) do
ch[i]:=s[i];
p:=@ch;
ShellExecute(0,'open',p,'','',Sw_ShowNormal);
except
ShellExecute(0,'open','notr.mp4','','',Sw_ShowNormal);
end;
end;
procedure TForm1.BitBtn7Click(Sender: TObject);
begin
form4.ShowModal;
end;
procedure TForm1.BitBtn13Click(Sender: TObject);
begin
if (Edit1.Text = 'admin') and (MaskEdit1.Text = 'admin') then
begin
label4.Caption:='';
ToolBar1.Visible:=true;
Image8.Visible:=true;
Panel3.Color:=clLime;
Panel4.Visible:=false;
DBText4.Visible:=true;
dm.N1.Enabled:=true;
dm.N2.Enabled:=true;
dm.N7.Enabled:=true;
Panel7.Visible:=true;
end
else
begin
label4.caption:='Логин пороль не верны!';
end;
end;
procedure TForm1.Image6Click(Sender: TObject);
begin
dm.N1.Enabled:=false;
dm.N2.Enabled:=false;
dm.N7.Enabled:=false;
DBText4.Visible:=False;
ToolBar1.Visible:=False;
Image8.Visible:=False;
Panel3.Color:=clred;
Panel4.Visible:=True;
Panel5.Visible:=True;
edit1.Text:='';
MaskEdit1.Text:='*****';
Panel1.Visible:=false;
Panel2.Visible:=false;
DBGrid1.Visible:=false;
panel6.Visible:=false;
|
panel8.Visible:=false;
panel9.Visible:=false;
Panel7.Visible:=False;
end;
procedure TForm1.Image7Click(Sender: TObject);
begin
image7.Visible:=false;
panel5.Visible:=false;
//dbtext4.Visible:=true;
//label6.Visible:=false;
end;
procedure TForm1.Image5Click(Sender: TObject);
begin
image7.Visible:=true;
panel5.Visible:=true;
//dbtext4.Visible:=false;
//label6.Visible:=true;
end;
procedure TForm1.BitBtn14Click(Sender: TObject);
var s:string;
begin
s:=edit2.Text;
dm.TPokupateli.IndexName:='fio_I';
if dm.TPokupateli.FindKey([edit2.Text]) then begin
DBText4.Visible:=true;
label2.Caption:='';
label3.Caption:='';
ToolBar1.Visible:=true;
Panel3.Color:=clLime;
Panel4.Visible:=false;
panel5.Visible:=false;
dm.N1.Enabled:=true;
dm.N2.Enabled:=true;
dm.N7.Enabled:=true;
Panel7.Visible:=true;
showmessage('Добро пожаловать '+s);
end
else begin
if (edit2.Text='') and (edit3.Text='') then begin
showmessage('Поле пустое');
end
else begin
If MessageDlg('Вы хотите Создать учетную запесь',mtConfirmation,[mbYes,mbNo],0)=mrYes then
begin
DBText4.Visible:=true;
dm.TPokupateli.Insert;
dm.TPokupateli.FieldByName('FIO').Value:=Edit2.Text;
dm.TPokupateli.FieldByName('Telefon').Value:=Edit3.Text;
dm.TPokupateli.Post;
label2.Caption:='';
label3.Caption:='';
ToolBar1.Visible:=true;
Panel3.Color:=clLime;
Panel4.Visible:=false;
panel5.Visible:=false;
end;
end;
end;
end;
procedure TForm1.BitBtn15Click(Sender: TObject);
begin
dm.N14.Click;
end;
procedure TForm1.BitBtn16Click(Sender: TObject);
begin
dm.N12.Click;
end;
procedure TForm1.BitBtn17Click(Sender: TObject);
begin
dm.N13.Click;
end;
procedure TForm1.BitBtn3Click(Sender: TObject);
begin
if Panel6.Visible=false then
begin
Panel6.Visible:=true;
end
else
Panel6.Visible:=false;
end;
procedure TForm1.BitBtn4Click(Sender: TObject);
begin
if Panel8.Visible=false then
begin
Panel8.Visible:=true;
end
else
Panel8.Visible:=false;
end;
procedure TForm1.BitBtn5Click(Sender: TObject);
begin
if Panel9.Visible=false then
begin
Panel9.Visible:=true;
end
else
Panel9.Visible:=false;
end;
procedure TForm1.BitBtn8Click(Sender: TObject);
begin
panel2.Visible:=false;
if DBGrid1.Visible=false then
begin
DBGrid1.Visible:=true;
end
else
DBGrid1.Visible:=false;
end;
procedure TForm1.BitBtn12Click(Sender: TObject);
var s:string;
begin
s:=dm.TPokupateli.FieldByname('FIO').Value;
dm.TPokup.Insert;
dm.TPokup.FieldByName('name').Value:=dm.TPokupateli.FieldByname('FIO').Value;
dm.TPokup.FieldByName('Id_film').Value:=dm.TFilm.FieldByname('index_film').Value;
dm.TPokup.FieldByName('zalog').Value:='5000тг';
dm.TPokup.FieldByName('Return').Value:=FormatDateTime('dd.mm.yyyy''-''hh:nn',Now);
showmessage('Спасибо за заказ '+s);
dm.TPokup.Post;
end;
procedure TForm1.Edit4Change(Sender: TObject);
var s:shortstring;
begin
dm.TFilm.FindNearest([Edit4.Text]);
try
s:=getcurrentdir+'\img\'+dm.Tfilm.fieldbyname('image_name').Value;
Image3.Picture.LoadFromFile(s);
except
s:='img\noimg.jpg';
Image3.Picture.LoadFromFile(s);
end;
end;
procedure TForm1.Edit4Click(Sender: TObject);
begin
Form1.DBGrid1.Visible:=true;
end;
procedure TForm1.ComboBox1CloseUp(Sender: TObject);
begin
if combobox1.ItemIndex=0 then
begin
label6.Caption:='Поиск по названию';
end;
if combobox1.ItemIndex=1 then
begin
label6.Caption:='Поиск по годам';
end;
if not CheckBox2.Checked then
begin messagebox(handle, 'Ты что нажми на вкл/выкл', 'error', mb_iconwarning);
end;
if CheckBox2.Checked then
begin
case Combobox1.ItemIndex of
0: dm.Tfilm.IndexName:='nazvanie_film_i';
1: dm.Tfilm.IndexName:='God_i';
else
dm.Tfilm.IndexName:='';
end;
end;
end;
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
If checkBox1.Checked then begin
dm.Query1.Active:=false;
dm.Query1.ParamByName('par1').Value:=Edit5.Text+'%';
dm.Query1.ParamByName('par2').Value:=Edit6.Text+'%';
dm.Query1.Active:=true;
end;
end;
procedure TForm1.BitBtn18Click(Sender: TObject);
var i,j,k: integer;
begin
// Соединение с сервером автоматизации
AppProgID:= 'Excel.Application';
ServerIsRunning:= false;
Resultw:= GetActiveObject(ProgIDToClassID(AppProgID),nil,Unknown);
if(Resultw = MK_E_UNAVAILABLE) then
App:= CreateOleObject(AppProgID)
|
else
begin
App:= GetActiveOleObject(AppProgID);
ServerIsRunning:= true;
end;
// App:= CreateOleObject('ExcelApplication');
// Добавить новую книгу
App.WorkBooks.Add(-4167);
ExcelOtch:=extractFilePath(Application.ExeName)+
'Отчет Список фильмов.xlsx';
Ke:=App.WorkBooks[1];
Abc:= Ke.WorkSheets[1];
Abc.Name:='ОтчетВП';// имя страницы
dm.Query1.First;
i:=4;
j:=1;
While not dm.Query1.Eof do begin
Abc.Cells[i,1]:=j;
Abc.Cells[i,2]:=dm.Query1['Nazvanie_film'];
Abc.Cells[i,3]:=dm.Query1['God_vipuska'];
Abc.Cells[i,4]:=dm.Query1['Janr'];
Abc.Cells[i,5]:=dm.Query1['Study'];
inc(i);
inc(j);
dm.Query1.Next;
end;
k:=i-1; // Запоминаем число строк в отчете
// Объединение ячеек для заголовка
Abc.Range['A1:D1'].Merge;
Abc.Cells[1,1]:='Список фильмов';
Abc.Cells[1,1].Font.Bold:=True;
Abc.Cells[1,1].Font.Size:=14;
Abc.Cells[1,1].HorizontalAlignment:=3;
// Задаем ширину колонок
Abc.Cells[3,1].ColumnWidth:=3;
Abc.Cells[3,2].ColumnWidth:=36.29;
Abc.Cells[3,3].ColumnWidth:=6;
Abc.Cells[3,4].ColumnWidth:=20.27;
Abc.Cells[3,5].ColumnWidth:=30;
// Заголовки колонок
Abc.Cells[3,1]:= '№';
Abc.Cells[3,2]:= 'Название Фильма';
Abc.Cells[3,3]:= 'Год В.';
Abc.Cells[3,4]:= 'Жанр';
Abc.Cells[3,5]:= 'Студия';
For j:=1 to 4 do
Abc.Cells[3,j].HorizontalAlignment:=3;
// Обрисовываем таблицу
App.WorkBooks[1].Worksheets[1].Range['A3:'+'E'+inttostr(k)].Borders.LineStyle:=1;
App.DisplayAlerts:= false;
App.ActiveWorkBook.SaveAs(ExcelOtch);
if not ServerIsRunning then App.Quit;
App.Quit;
App:= UnAssigned;
end;
|
|
Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...
Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...
Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...
Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначенные для поддерживания проводов на необходимой высоте над землей, водой...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!