Главная страница
Навигация по странице:

  • КУРСОВАЯ РАБОТА По дисциплине «Высокоуровневые методы информатики и программирования»

  • Добавление поставщика

  • Добавление менеджера

  • Добавление нового товара

  • субд. Курсовая_по_ВМИП[1]. Курсовая работа по дисциплине Высокоуровневые методы информатики и программирования На тему создание информационноаналитической системы управления базой данных магазина электроники и бытовой техники


    Скачать 0.56 Mb.
    НазваниеКурсовая работа по дисциплине Высокоуровневые методы информатики и программирования На тему создание информационноаналитической системы управления базой данных магазина электроники и бытовой техники
    Дата03.06.2022
    Размер0.56 Mb.
    Формат файлаdoc
    Имя файлаКурсовая_по_ВМИП[1].doc
    ТипКурсовая
    #568451

    Министерство Образования и Науки Российской Федерации

    Федеральное Государственное Бюджетное Образовательное Учреждение

    Высшего Профессионального Образования

    «Камская государственная инженерно-экономическая академия» (ИНЭКА)

    Кафедра «ММИТЭ»

    КУРСОВАЯ РАБОТА
    По дисциплине «Высокоуровневые методы информатики и программирования»
    На тему «создание информационно-аналитической системы управления базой данных магазина электроники и бытовой техники»
    Выполнил:

    студент гр. хххх

    хххх

    № зачетной книжки: хххх
    Проверил:

    ст. преподаватель

    хххх

    Набережные Челны

    2011 год


    ОГЛАВЛЕНИЕ


    1.1 Характеристика входной и выходной информации 5

    1.2 Подготовка доступа к базе данных 5

    1.3 Организация доступа к таблицам базы данных 6

    2.1 Добавление данных 8

    2.2 Удаление записей 14

    2.3 Сортировка данных 14

    procedure TForm2.RadioButton2Click(Sender: TObject); 15

    begin 15

    datamodule3.adoquery1.Close; 15

    if CheckBox1.Checked then 15

    datamodule3.adoquery1.sql[7]:='ORDER BY description DESC' else 15

    datamodule3.adoquery1.sql[7]:= 'ORDER BY description ASC'; 15

    datamodule3.adoquery1.Open; 15

    end; 15

    procedure TForm2.RadioButton3Click(Sender: TObject); 15

    begin 15

    datamodule3.adoquery1.Close; 15

    if CheckBox1.Checked then 15

    datamodule3.adoquery1.sql[7]:='ORDER BY Поставщик DESC' else 15

    datamodule3.adoquery1.sql[7]:= 'ORDER BY Поставщик ASC'; 15

    datamodule3.adoquery1.Open; 15

    end; 15

    procedure TForm2.RadioButton4Click(Sender: TObject); 15

    begin 15

    datamodule3.adoquery1.Close; 15

    if CheckBox1.Checked then 15

    datamodule3.adoquery1.sql[7]:='ORDER BY saleprice DESC' else 15

    datamodule3.adoquery1.sql[7]:= 'ORDER BY saleprice ASC'; 15

    datamodule3.adoquery1.Open; 15

    end; 15

    2.4 Диаграмма 16

    2.5 Создание ведомостей или отчётов 16

    3. Проектирование интерфейса 18

    3.1 Заставка программы 18

    3.3 Вызов отчета по курсовой работе 20

    3.4 Выход 20

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



    Задание на курсовую работу



    Составить информационно - аналитическую систему управления базой данных магазина электроники и бытовой техники.

    Исходная информация содержится в девяти таблицах:


    Название таблицы

    Описание

    manager

    Содержит список менеджеров магазина

    sale

    Учет продаж

    saleitem

    Полные сведения о продаже

    wares

    Описание товаров

    discount

    Список скидок

    period

    Сроки поставок

    provider

    Список поставщиков и их представителей

    order

    Заказы на поставку товаров

    orderitem

    Описание заказов
    Краткое описание предметной области

    Предметная область содержит информацию о товарах (т. е. о электронике и бытовой технике), о поставщиках, сведения о цене игрушек, о продажах, о заказах, информация о скидках, о менеджерах и т.д..

    1. Проектирование данных

    1.1 Характеристика входной и выходной информации


    Входной информацией являются 9 таблиц которые реализованы в среде Microsoft SQL Server. Так же используются таблицы образованные представлениями.

    Выходной информацией являются различные выборки данных из таблиц: предоставление информации о конкретном товаре, получение подробной информации о поставщиках, о сроках поставки, различные запросы.

    1.2 Подготовка доступа к базе данных


    И меется заранее приготовленная на Microsoft SQL Server база данных «MEBT», которую присоединяем к серверу:

    1.3 Организация доступа к таблицам базы данных



    Доступ к таблицам осуществляется с помощью компонентов ADO Connection, ADO Table.

    Для всех таблиц и представлений вначале создается ADO Connection, в его свойстве Connection string записывается путь к базе данных. Далее для каждой таблицы создается ADO Table.

    На следующем этапе создаются элементы Data Source4, Data Source5 для каждой таблицы. В свойствах Data Set элементов выбираем нужный ADO Table. Для отображения данных в форме используются элементы (в свойстве Data Source выбираем Data Source4, Data Source5 соответственно).

    Так же, имеются элементы ADO Query, которые заменяет ADO Table, но при этом для них прописаны инструкции на языке sql, позволяющие реализовать выборку данных и прочие возможности. С помощью ADO Query возможно видоизменение вызываемого кода.

    2. Проектирование алгоритмов обработки информации



    Добавление и изменение данных возможно лишь после ввода пароля. Для этого на форме создается область для ввода пароля, на первой вкладке основного окна программы:


    procedure TForm2.BitBtn1Click(Sender: TObject);

    begin

    if labelededit1.Text='123' then

    begin

    labelededit1.Visible:=false;

    bitbtn1.Visible:=false;

    dbnavigator1.Visible:=true;

    n2.Visible:=true;

    n3.Visible:=true;

    n4.Visible:=true;

    button1.Visible:=true;

    button2.Visible:=true;

    button3.Visible:=true;

    dbgrid1.Options:=[dgEditing,dgTitles,dgIndicator,dgColumnResize,dgColLines,dgRowLines,dgTabs,dgConfirmDelete,dgCancelOnExit];

    end

    else

    begin

    showmessage(Не правильный пароль!');

    labelededit1.Text:='';

    end;

    end;

    После введения правильного пароля отображаются кнопки перехода на страницы изменения и добавления данных, а так же появляется меню управления таблицей:





    Т
    ак же после ввода правильного пароля вышейпомянутые страницы становятся доступными из меню сверху :

    2.1 Добавление данных



    При нажатии на кнопку «Добавление» в верхнем меню и на кнопку «Окно добавление» на первой вкладке программы, появляется форма «Добавление», на которой можно добавить данные нового поставщика, менеджера, добавить новый товар, а так же прикрепить товар к определенному поставщику. При добавлении нового товара выбирается уровень скидок из таблицы справа:



    Добавление поставщика:

    procedure TForm4.BitBtn1Click(Sender: TObject);

    if (labelededit1.Text='') or (labelededit2.Text='') or (labelededit3.Text='') then

    showmessage('Введены не все данные!') else

    begin

    datamodule3.ADOQuery2.Close;

    datamodule3.adoquery2.sql[1]:='';

    datamodule3.adoquery2.sql[1]:='VALUES ('''+labelededit1.Text+''', '''+labelededit2.Text+''', '''+labelededit3.Text+''')';

    datamodule3.ADOQuery2.ExecSQL;

    labelededit1.Text:=' ';

    labelededit2.Text:=' ';

    labelededit3.Text:=' ';

    end;

    Номер телефона вводится в формате х-ххх-ххх-хх-хх

    Добавление менеджера:

    procedure TForm4.BitBtn2Click(Sender: TObject);

    begin

    if (labelededit4.Text='') or (labelededit5.Text='') then

    showmessage('Введены не все данные!') else

    begin

    datamodule3.ADOQuery3.Close;

    datamodule3.adoquery3.sql[1]:='';

    datamodule3.adoquery3.sql[1]:='VALUES ('''+labelededit4.Text+''', '''+labelededit5.Text+''')';

    datamodule3.ADOQuery3.ExecSQL;

    labelededit4.Text:=' ';

    labelededit5.Text:=' ';

    end;

    end;Номер телефона вводится в формате х-ххх-ххх-хх-хх
    Добавление нового товара:

    procedure TForm4.BitBtn3Click(Sender: TObject);

    begin

    if (labelededit6.Text='') or (labelededit7.Text='') or (labelededit8.Text='') or (labelededit9.Text='') then

    showmessage('Введены не все данные!') else

    begin

    datamodule3.ADOQuery4.Close;

    datamodule3.adoquery4.sql[1]:='';

    datamodule3.adoquery4.sql[1]:='VALUES ('''+labelededit6.Text+''', '''+labelededit7.Text+''', '''+labelededit8.Text+''', '''+labelededit9.Text+''')';

    datamodule3.ADOQuery4.ExecSQL;

    labelededit6.Text:=' ';

    labelededit7.Text:=' ';

    labelededit8.Text:=' ';

    labelededit9.Text:=' ';

    end;

    end;

    Ч то бы прикрепить какой либо товар к фирме поставщика необходимо сначала кликнуть по кнопке «Выбрать товар» открывается форма с таблицей товаров.

    После выбора товара необходимо выполнить аналогичные действия для выбора фирмы поставщика.

    З атем следует установить срок поставки в днях, и остается нажать на кнопочку с галочкой.
    procedure TForm4.BitBtn4Click(Sender: TObject);

    begin

    if (dbtext1.caption ='') or (dbtext3.caption='') or (labelededit10.Text='') then

    showmessage('Введены не все данные ')

    else begin

    datamodule3.ADOQuery5.Close;

    datamodule3.adoquery5.sql[1]:='';

    datamodule3.adoquery5.sql[1]:='VALUES ('''+dbtext3.caption+''', '''+dbtext1.caption+''', '''+labelededit10.Text+''')';

    datamodule3.ADOQuery5.ExecSQL;

    dbtext1.caption:='';

    dbtext2.caption:='';

    dbtext3.caption:='';

    dbtext4.caption:='';

    labelededit10.Text:='';

    end; end;
    Добавление нового заказа.

    Ч то бы оформить новый заказ необходимо на главной вкладке кликнуть по кнопке «Оформить заказ», после чего откроется следующее окошко:

    Далее следует нажать на «Выбрать поставщика». После выбора пставшика в таблице справа появляется новый, только что созданный заказ, как правило он появляется внизу списка. Выбираем его, теперь следует указать к заказу товары. Кликаем по «Выбрать товар», в открывшемся окошке выбираем товар, затем указываем заказанное количество, жмем на кнопку с галочкой. Товар добавлен, для добавления еще товаров в данный заказ выбираем заново товар, указываем количество, и опять жмем на кнопочку.

    Б
    лагодаря созданию связей между элементами Ado table при выборе товара исключаются все товары, не поставляемые данным поставщиком.

    procedure TForm7.BitBtn2Click(Sender: TObject);

    begin

    if labelededit1.Text='' then

    showmessage('Введите количество!')

    else

    begin

    datamodule3.ADOQuery7.Close;

    datamodule3.adoquery7.sql[1]:='';

    datamodule3.adoquery7.sql[1]:='VALUES ('''+dbtext5.caption+''','''+dbtext4.caption+''','''+labelededit1.Text+''')';

    datamodule3.ADOQuery7.ExecSQL;

    labelededit1.Text:=' ';

    showmessage('Для добавления еще одного товара в заказ, выберите другой товар и введите заново количество.');

    end;

    end;
    Добавление продажи.

    Кликнув по кнопке «Оформить продажу» откроется окошко добавления данных о продажи. Данная процедура состоит из двух шагов.

    О ба шага выполняются в одном окне, путем скрывания областей.

    groupbox1.Visible:=false;

    groupbox2.Visible:=true;


    2.2 Удаление записей



    В
    контекстном меню есть кнопка «Удаление данных». В открывшемся окне доступно удаление данных из трех таблиц, из таблицы поставщики, менеджеры и товары, которые расположены на разных вкладках:

    2.3 Сортировка данных



    На главной странице имеется сортировка.

    procedure TForm2.CheckBox1Click(Sender: TObject);

    begin

    form2.RadioButton1.Checked:=false;

    form2.RadioButton2.Checked:=false;

    form2.RadioButton3.Checked:=false;

    form2.RadioButton4.Checked:=false;

    end;

    procedure TForm2.RadioButton1Click(Sender: TObject);

    begin

    datamodule3.adoquery1.Close;

    if CheckBox1.Checked then

    datamodule3.adoquery1.sql[7]:='ORDER BY Наименование DESC' else

    datamodule3.adoquery1.sql[7]:= 'ORDER BY Наименование ASC';

    datamodule3.adoquery1.Open;

    end;

    procedure TForm2.RadioButton2Click(Sender: TObject);

    begin

    datamodule3.adoquery1.Close;

    if CheckBox1.Checked then

    datamodule3.adoquery1.sql[7]:='ORDER BY description DESC' else

    datamodule3.adoquery1.sql[7]:= 'ORDER BY description ASC';

    datamodule3.adoquery1.Open;

    end;

    procedure TForm2.RadioButton3Click(Sender: TObject);

    begin

    datamodule3.adoquery1.Close;

    if CheckBox1.Checked then

    datamodule3.adoquery1.sql[7]:='ORDER BY Поставщик DESC' else

    datamodule3.adoquery1.sql[7]:= 'ORDER BY Поставщик ASC';

    datamodule3.adoquery1.Open;

    end;

    procedure TForm2.RadioButton4Click(Sender: TObject);

    begin

    datamodule3.adoquery1.Close;

    if CheckBox1.Checked then

    datamodule3.adoquery1.sql[7]:='ORDER BY saleprice DESC' else

    datamodule3.adoquery1.sql[7]:= 'ORDER BY saleprice ASC';

    datamodule3.adoquery1.Open;

    end;



    2.4 Диаграмма



    В
    программе имеются две диаграммы, на вкладке «История продаж» и «История заказов». На вкладке «История заказов» диаграмма отражает цены закупаемых товаров, на вкладке «История продаж» отражает количество проданных товаров.



    2.5 Создание ведомостей или отчётов


    На вкладке «Товары» нажать кнопку «Распечатать прайс». Затем программа предложит пользователю посмотреть на представленный отчет либо сразу распечатать его.

    Посмотрим что из себя представляет структура отчета:

    Ранее мной были созданы невизуальные компоненты:




    Первый, из которых , организует связь с таблицей, а второй с фалом формирующий отчет. Данные компоненты расположены на datamodule3.
    Отчет будет иметь вид:



    3. Проектирование интерфейса




    3.1 Заставка программы



    Заставка открывается только при запуске программы и является декоративным элементом. Так же со страницы заставки организована установка текущей даты для календарей расположенных в окнах программы.

    Код страницы:

    var

    Form1: TForm1;

    x:real;
    implementation
    uses Unit2, Unit4;
    {$R *.dfm}
    procedure TForm1.Timer1Timer(Sender: TObject);

    begin
    if x=1 then

    begin

    Form1.ProgressBar1.Position:=Form1.ProgressBar1.Position+10;

    if Form1.ProgressBar1.Position=100 then

    begin

    Form1.ProgressBar1.Position:=0;

    x:=2;

    end; end;
    if x=2 then

    begin

    Form1.ProgressBar1.Position:=Form1.ProgressBar1.Position+30;

    if Form1.ProgressBar1.Position=90 then

    begin

    Form1.ProgressBar1.Position:=0;

    x:=3;

    end;end;
    if x=3 then

    begin

    Form1.ProgressBar1.Position:=Form1.ProgressBar1.Position+2;

    if Form1.ProgressBar1.Position=90 then

    begin

    Form1.ProgressBar1.Position:=0;

    x:=4;

    end;end;
    if x=4 then

    begin

    Form1.ProgressBar1.Position:=Form1.ProgressBar1.Position+1;

    if Form1.ProgressBar1.Position=90 then

    begin

    Form1.ProgressBar1.Position:=0;

    x:=5;

    end;end;
    if x=5 then

    begin

    Form1.ProgressBar1.Position:=Form1.ProgressBar1.Position+5;

    if Form1.ProgressBar1.Position=100 then

    timer1.Enabled:=false;

    Form2.show;

    form2.MonthCalendar1.Date:=now();

    form4.MonthCalendar1.Date:=now();

    form1.hide;

    end;

    end;
    procedure TForm1.FormActivate(Sender: TObject);

    begin

    x:=1;

    timer1.Interval:=10;

    timer1.Enabled:=true;

    end;

    end.

    3.3 Вызов отчета по курсовой работе


    Подключаем модуль ShellApi, затем создаем в главном меню новую кнопку «Отчет» и пишем ей следующую команду:

    shellexecute(Handle, 'open', 'C:\MEBT\delphi\Курсовая по ВМИП.doc', nil, nil, SW_SHOWNORMAL);

    Данная команда открывает этот отчет о проделанной работе.

    3.4 Выход


    Главным окном программы является окно заставки, после выполнения своей роли заставка скрывается по команде form1.hide, соответственно до тех пор пока данное окно скрыто, программа будет считаться запущенной. Для устранения такой неприятности пропишем для окна где осуществляются все операции, а точнее для инструкции OnClose, следующий незамысловатый код: form1.close. Теперь после закрытия form2, по нажатию крестика в верхнем правом углу программа полностью закроется.

    Т ак же для выхода из программы в контекстном меню есть кнопка выхода:

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


    1. Лекции по дисциплине «Высокоуровневые методы информатики и программирования» Исавнина А.Г.

    2. Хузятов Ш.Ш. Delphi 7. основные компоненты и элементы языка программирования. Курс лекций. – Набережные Челны: Изд-во КамПИ, 2005.

    3. Работа сСУБД Microsoft Access и SQL Server в среде Delphi: Учебное пособие для специальностей 0811665 – «Математические методы в экономике» и 08080165 – «Прикладная информатика в экономике» дневной, заочной и дистанционной форм обучения / Составитель – А.Г. Исавнин. Набережные Челны: Изд-во ИНЭКА, 2008.

    4. Исавнин А.Г., Макарова И.В., Лысанов Д.М. Язык структурированных запросов, Учебное пособие. Набережные Челны: Изд-во КамПи, 2004.

    5. Исавнин А.Г., Макарова И.В., Лысанов Д.М. Инструментальные средства визуального создания запросов: Учебное пособие. Набережные Челны: Изд-во КамПи, 2004.

    6. Учебно-методический комплекс по дисциплине: «Высокоуровневые методы информатики и программирования» для студентов заочной и дистанционной форм обучения /Составители: Исавнин А.Г., Макарова И.В., Лысанов Д.М. – Набережнве Челны: Изд-во КамПи, 2005. – 31с.

    7. Создание отчетов с помощью RAVE-компонентов Delphi: Учебное пособие для студентов специальностей 08011665 – «Математические методы в экономике» и 08080165 – «Прикладная информатика в экономике» дневной, заочной и дистанционной форм обучения/ Составители: Исавнин А.Г., Фрикк В.С., Лысанов Д.М. Набережнве Челны: Изд-во ИНЭКА, 2006. – 39с.








    написать администратору сайта