Вход

Разработка приложения для работы с базой данных

Рекомендуемая категория для самостоятельной подготовки:
Курсовая работа*
Код 187779
Дата создания 2015
Страниц 39
Источников 8
Мы сможем обработать ваш заказ (!) 19 апреля в 12:00 [мск]
Файлы будут доступны для скачивания только после обработки заказа.
1 970руб.
КУПИТЬ

Содержание

Введение 2
Глава 1. Проектирование базы данных 3
1.1. Описание предметной области. Постановка задачи. 3
1.2. Построение концептуальной модели предметной области. 8
1.3. Проектирование логической структуры базы данных. 16
1.4. Проектирование физической структуры базы данных. 18
Глава 2. Реализация проекта в среде конкретной СУБД 19
2.1. Организация хранения данных в БД. 19
2.2. Организация корректировки БД. 25
2.3. Разработка запросов. 25
Глава 3. Разработка приложения в Borland С Builder . 32
3.1 Проектирование интерфейса программы 32
3.2 Описание структуры программы 33
3.3 Чтение данных из файла и сохранение их в файл 33
3.4 Описание применения программы 36
Заключение 38
Библиографический список 39

Фрагмент работы для ознакомления

KodMat,Q.NaimMat,Q.Tsena,H.NaimEdIzm,T.DataAS,P.NaimPred,P.INN,P.KPP,P.RS,P.AdrPred,P.TelPred,P.RukPred,P.GBuhPred,P.BIK,P.KS;
Запрос «Выбор материала».
SELECT Temp,KodMat,NaimMat,Tsena
FROM Materialy;
Запрос «Выбор помеченного материала».
UPDATE Materialy SET Temp=25 WHERE KodMat=14;
SELECT Temp,KodMat
FROM Materialy
WHERE Temp<>0 AND Temp<>NULL;
Запрос «Добавление к Принято».
INSERT INTO Prihod(KodZakup,KodMat,KolMNetto,KodSkl,StavNDS,MBrutto,KolMest)
SELECT Temp,KodMat,1100,5,18,NULL,3
FROM Materialy
WHERE Temp<>0 AND Temp<>NULL;
Запрос «Очистка выбора материала».
UPDATE Materialy SET Temp=0 WHERE Temp<>0;

Простые запросы
Вывести всю информацию, где код материала равен 17
SELECT * FROM Materialy WHERE KodMat=17;
Вывести всю информацию, где цена материала больше или равна 500
SELECT * FROM Materialy WHERE Tsena>=500;
Вывести список материалов, которые поступили в период с 23.11.13 по 30.12.13.
SELECT Q.KodMat,Q.NaimMat,Q.Tsena,H.NaimEdIzm,S.KolMNetto,W.DataPrihOr,T.KodZakup
FROM Materialy Q,Prihod S,Zakupki T,PrihodnyeOrdery W,EdinitsyIsmereniya H
WHERE Q.KodMat=S.KodMat AND Q.KodEdIzm=H.KodEdIzm AND S.KodZakup=T.KodZakup AND W.NomPrihOr=T.NomPrihOr AND W.DataPrihOr BETWEEN '23-11-2013' AND '30-12-2013'
GROUP BY Q.KodMat,Q.NaimMat,Q.Tsena,H.NaimEdIzm,S.KolMNetto,W.DataPrihOr,T.KodZakup;
Вывести перечень шурупов и гвоздей.
SELECT * FROM Materialy WHERE NaimMat LIKE 'Шурупы%' OR NaimMat LIKE 'Гвозди%';
5.Перечень поставщики «РемКреп» и «Крепиз».
SELECT * FROM Postavshiki WHERE NaimOrg IN ('ООО "РемКреп"','ООО "Крепиз"');
6.Вычислить сумму и количество поступившего материала в период с 25.10.13 по 28.12.13.
SELECT Sum(S.KolMNetto) AS [Kol-vo],Sum(S.KolMNetto*Q.Tsena) AS [Summa]
FROM Materialy Q,Prihod S,Zakupki T,PrihodnyeOrdery W
WHERE Q.KodMat=S.KodMat AND S.KodZakup=T.KodZakup AND W.NomPrihOr=T.NomPrihOr AND W.DataPrihOr BETWEEN '25-10-2013' AND '28-12-2013';
7. Вычислить сумму и количество поступившего материала, который не входит в период с 25.10.13 по 29.12.13.
SELECT Sum(S.KolMNetto) AS [Kol-vo],Sum(S.KolMNetto*Q.Tsena) AS [Summa]
FROM Materialy Q,Prihod S,Zakupki T,PrihodnyeOrdery W
WHERE Q.KodMat=S.KodMat AND S.KodZakup=T.KodZakup AND W.NomPrihOr=T.NomPrihOr AND W.DataPrihOr NOT BETWEEN '25-10-2013' AND '29-12-2013';
8.Вывести список материалов, которые были списаны в период с 15.10.13 по 27.11.13.
SELECT Q.KodMat,Q.NaimMat,Q.Tsena,H.NaimEdIzm,S.KolMNetto,W.DataAS,T.KodS
FROM Materialy Q,Rashod S,Spisanie T,AktyNaSpisanie W,EdinitsyIsmereniya H
WHERE Q.KodMat=S.KodMat AND Q.KodEdIzm=H.KodEdIzm AND S.KodS=T.KodS AND W.NomerAS=T.NomerAS AND W.DataAS BETWEEN '15-10-2013' AND '27-11-2013'
GROUP BY Q.KodMat,Q.NaimMat,Q.Tsena,H.NaimEdIzm,S.KolMNetto,W.DataAS,T.KodS;
Глава 3. Разработка приложения в Borland С++ Builder .
3.1 Проектирование интерфейса программы
Спроектируем интерфейс программы. В С++ Builder это делается при помощи форм. Форма представляет собой экранный объект, обычно прямоугольной формы, который можно применять для предоставления информации пользователю и для обработки ввода информации от пользователя. Именно на ней будем располагать все остальные элементы интерфейса программы.
Чтобы придать приложению удобный интерфейс создадим меню, так как оно являются важной частью большинства приложений Windows. Главное меню представлено компонентом MainMenu. В нем будет отражен список операций, доступных пользователю. Главное меню представляет собой строку, содержащую основные операции.
С помощью компонента ToolBar создадим панель инструментов. Панель инструментов позволяет осуществить более быстрый доступ к основным операциям посредством нажатия на соответствующие кнопки.
Так же следует предусмотреть возможность размещения иконок на каждой кнопке панели инструментов. Для этого разместим на форме компонент Images.
Определим, куда будет выводиться информация из файла для просмотра. Наиболее подходящим для отображения и обработки записей базы данных является компонент StringGrid, который представляет собой таблицу с правом доступа к отдельным ячейкам. Использование StringGrid позволяет отображать информацию в удобном для пользователя виде.
Для доступа к текстовым файлам используются объекты OpenDialog и SaveDialog. Посредством OpenDialog можно открыть файл, а SaveDialog – сохранить. Главным плюсом использования этих компонентов является то, что можно задать фильтр, благодаря которому диалоговое окно открытия и сохранения будет отражать файлы заданного формата.
Для вывода на экран результатов используем компонент Memo. Компонент Memo представляет собой многострочный текстовый редактор, позволяющий редактировать текст окна, в которое можно вводить множество строк.
3.2 Описание структуры программы
Код программы состоит из нескольких вполне логически законченных частей, которые условно можно разделить на следующие группы:
1. код формы, который включает описание таких операций, как
инициализация таблицы;
открытие файла для считывания;
сохранение внесённых изменений в открытый файл;
сохранение файла под новым именем (Сохранить как);
очистка;
удаление;
вызов форм, связанных с главной формой;
2. код форм, связанных с главной формой, в которых содержится описание такой операции, как вызов справки.
Весь код приложения располагается в 2 Unit’ах. Каждый Unit содержит код обработки событий компонентов, располагающихся на соответствующих формах (Form), то есть Unit1 соответствует Form1, Unit2 – Form2. Таким образом, структура программы состоит из 2 логически законченных частей, которые отвечают за выполнение всех вышеперечисленных действий.
3.3 Чтение данных из файла и сохранение их в файл
На начальном этапе программирования необходимо инициализировать главную форму, непосредственно с которой пользователь будет общаться на протяжении всей работы с данным программным продуктом. Инициализация главной формы осуществляется при запуске программного продукта, отвечает за обработку этого события функция void __fastcall TForm1::FormActivate(TObject *Sender).
Для открытия уже существующего на диске файла используется метод void __fastcall TForm1::N2Click(TObject *Sender).
Для открытия файла воспользуемся компонентом OpenDialog1, если значение, возвращаемое методом Execute() этого объекта равно true, то выполняем следующие действия:
Присваиваем переменной типа AnsiString file_name значение OpenDialog1->FileName;
Создаем объект класса ifstream, передавая ему в качестве параметра имя файла: ifstream file (file_name.c_str(),ios_base::in|ios_base::binary)
Далее в цикле мы считываем в структуру sotrud записи из файла с помощью метода read класса ifstream и присваиваем ячейкам StringGrid’а соответсвующие значения полей структуры;
При сохранении данных в файл используем метод void __fastcall TForm1::N4Click(TObject *Sender).
Сохранение данных происходит следующим образом:
проверяем равно ли true значение SaveDialog1->Execute();
если да, то:
Присваиваем переменной типа AnsiString file_name значение SaveDialog1->FileName+".dat"
Создаем объект класса ofstream – file: ofstream file(file_name.c_str(),ios_base::out|ios_base::trunc|ios_base::binary)
Если вышеперечисленные операции выполнены успешно, то в цикле от 1 до количества сохраняемых записей (StringGrid1->RowCount) построчно копируем содержимое сохраняемых ячеек таблицы просмотра StringGrid1 в соответствующие записи структуры sotrud.
Затем записи структуры candidat последовательно записываем в выбранный файл, с помощью метода write класса ofstream: file.write((char*)&candidat,sizeof sotrud)
Выводим сообщение, что информация сохранена.
void __fastcall TForm1::N3Click(TObject *Sender) – функция Сохранить предоставляет возможность сохранить изменения в записях (информации), сделанных в процессе пользования программой в тот текстовый файл, с которым данный программный продукт уже работал после его запуска.
Кроме операций Открыть, Сохранить и Сохранить как в пункте Файл размещен подпункт Выход, который осуществляется функцией void __fastcall TForm1::N5Click(TObject *Sender). Выход из программы можно также осуществить нажатием кнопки «Выход», расположенной в нижнем правом углу. За выполнение этой операции отвечает функция void __fastcall TForm1::BitBtn1Click(TObject *Sender).
Перед завершением программы выводится сообщение с предложением сохранить изменения работы в файл. Сохранение изменение перед завершением работы программы осуществляется функцией void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action).
В программе реализованы следующие функции для обработки информации: добавление записей, удаление записей и редактирование записей. Раздел меню «Редактирование» представлен следующими функциями:
void __fastcall TForm1::N6Click(TObject *Sender) - добавить запись. Добавление новой записи осуществляется следующим образом: в конец таблицы просмотра добавляется чистая строка, куда можно вводить новые данные.
void __fastcall TForm1::N8Click(TObject *Sender) - удалить запись. Вызов этой функции осуществляет удаление из таблицы строки, на которой в текущий момент находится курсор. Нижеописанный алгоритм удаляет выделенную строку StringGrid’а, номер которой возвращает метод Row:
Сохраняем в переменную r типа int значение StringGrid1->Row;
Уменьшаем количество строк таблицы на одну;
В цикле от r до количества строк сдвигаем все ячейки вверх, тем самым «затирая» удаляемую ячейку;
Уменьшаем значение Height таблицы.
void __fastcall TForm1::N10Click(TObject *Sender) – очистить таблицу. Этот метод производит удаление всех записей из таблицы.
void __fastcall TForm1::N13Click(TObject *Sender) – редактирование записи. При вызове этой функции на экран выводится информационное сообщение, в котором описывается, как пользователь может осуществлять редактирование записей с помощью мыши.
3.4 Описание применения программы
Установка программы производиться путем копирования папки с исполняемым файлом программы и файлами, содержащими записи базы данных.
Программный продукт, написанный в среде Borland C++ Builder с использованием визуальных компонентов не требователен к ресурсам системы. Для успешной работы программы персональный компьютер должен соответствовать следующим минимальным требованиям:
-процессор Intel Pentium;
-128 Мб оперативной памяти;
-10 MБ свободного пространства на жестком диске для самой исполняемой программы;
-видеокарта на 512 МБ;
-монитор работающий в VGA режиме для лучшего восприятия глазом отображаемой информации;
-операционная система Microsoft( Windows( 2000/XP/7.
Соблюдение вышесказанных системных требований приведет к оптимальной и полноценной работе программы, не влияя на работу других приложений.

При загрузке программы появляется главный экран.
Рисунок 5 Главная форма приложения
Заключение
В ходе курсовой работы была разработана база данных для автоматизации учета движения материалов на предприятии: поступлении, списании и отпуске на производство.
Для реализации этой задачи был рассмотрен документооборот, происходящий на предприятии ООО «Оптима-Мебель».
На основе данных документов и деятельности, связанной с ними, были выявлены 20 сущностей, связанных между собой. На их основе были составлены запросы к базе данных и отчетные документы.
Для реализации базы данных в физической модели была выбрана СУБД MS SQL SERVER 2012. С её помощью были созданы таблицы, аналогичные сущностям.
Для работы с базой данных использована система визуального программирования Borland C++ Builder.
Были созданы учетные записи и соответствующие пользователи для работников бухгалтерии и директора предприятия.
Были созданы многотабличные запросы для выборки данных, на которых основаны отчеты. Также были созданы запросы с подзапросами, служебные и статистические запросы. Создано 6 отчетов.
Библиографический список
Агальцов, В.П. Базы данных в 2 кн. Кн. 1 Локальные базы данных: учебник / В.П. Агальцов. – М.: Форум, 2009.
Агальцов, В.П. Базы данных в 2 кн. Кн. 2 Распределенные и удаленные базы данных: учебник / В.П. Агальцов. – М.: Форум, 2009.
Хомоненко, А.Д. Базы данных: учебник / А.Д. Хомоненко, В.М. Цыганков, М.Г. Мальцев. - 6-е изд. - М.: Бином-Пресс: КОРОНА-Век, 2007.
Кренке Д. Теория и практика построения баз данных. - 8-е изд. - СПб.: Питер, 2003.
Кузнецов С.Д. SQL: Язык реляционных баз данных / С.Д. Кузнецов. - М., 2001.
Кузнецов С.Д. Базы данных. Модели и языки: учеб. пособие / С.Д. Кузнецов. - М.: БИНОМ, 2008.
Роб П. Системы баз данных: проектирование, реализация и управление. - СПб.: БХВ-Петербург, 2004.
Макарова Н. В. Информатика. Учебник для студ. вузов/ М.: ФиС, 2000.
39
Платежные поручения
Закупки
Счета
Счет-фактуры
Накладные
Платежное поручение
Сведения о поставщиках
Приход материалов
Поставщики
Наше предприятие
Материалы
Отчеты
База Данных
Информационная система «Учет движения материалов»
Приход
Склады
Расход материалов
Расход
Списание
Акты на списание
Лимитно-заборные карты
Подразделения
Статьи затрат
Акт на списание материалов
Измерено
[Поставщики]
КодПостав
НаимОрг
ИНН
КПП
БИК
АдрОрг
ТелОрг
ФаксОрг
РукОрг
ГБухОрг
ОКПО
Р/С
[Банки]
БИК
НаимБанк
ГорБанк
К/С
[Единицы измерения]
НаимЕдИзм
М
М
М
1
1
[Счета]
НомСчет
ДатаСчет
[Наше предприятие]
НаимПред
ИНН
КПП
БИК
АдрПред
ТелПред
ФаксПред
РукПред
ГБухПред
ОКПО
Р/С
БИК; НаимБанк
ГорБанк; К/С
[Закупки]
КодЗакуп
НомСчет
НомПоруч
НомСчетФ
НомНакл
КодНПред
КодПостав
[Материалы]
КодЕдИзм
НаимМат
Цена
ВидУпак
КолВМест
[Приход]
КодМат
КолМест
МБрутто
КолМНетто
СтавНДС
[Платежные поручения]
ВидПоруч
ДатаПоруч
[Счет-Фактуры]
НомСчетФ
ДатаСчетФ
[Накладные]
НомНакл
ДатаНакл
1
1
1
1
1
М
М
М
М
М
М
1
1
1
М
КодСкл
[Приходные ордеры]
НомПрихОр
ДатаПрихОр
[Акты о приемке]
НомАП
ДатаАП
НомПрихОр
НомАП
1
1
М
М
[Склады]
КодСкл
НаимСкл
1
М
[Расход]
КодС
КодМат
КолМНетто
КодСкл
КолМест
МБрутто
М
1
[Списание]
КодС
НомерЛЗК
Подразделение
Статья затрат
НомерАС
1
М
М
1
[Акты на списание]
НомерАС
ДатаАС
[Лимитно-заборные карты]
НомерЛЗК
ДатаЛЗК
М
М
1
1
[Подразделения]
КодПод
НаимПод
[Статьи затрат]
КодСЗ
НаимСЗ
1
М
РукПод
1
М
Принято
Списано
Поступило
Изъято
Направлено
Лимит

Список литературы [ всего 8]

1 Агальцов, В.П. Базы данных в 2 кн. Кн. 1 Локальные базы данных: учебник / В.П. Агальцов. – М.: Форум, 2009.
2 Агальцов, В.П. Базы данных в 2 кн. Кн. 2 Распределенные и удаленные базы данных: учебник / В.П. Агальцов. – М.: Форум, 2009.
3 Хомоненко, А.Д. Базы данных: учебник / А.Д. Хомоненко, В.М. Цыганков, М.Г. Мальцев. - 6-е изд. - М.: Бином-Пресс: КОРОНА-Век, 2007.
4 Кренке Д. Теория и практика построения баз данных. - 8-е изд. - СПб.: Питер, 2003.
5 Кузнецов С.Д. SQL: Язык реляционных баз данных / С.Д. Кузнецов. - М., 2001.
6 Кузнецов С.Д. Базы данных. Модели и языки: учеб. пособие / С.Д. Кузнецов. - М.: БИНОМ, 2008.
7 Роб П. Системы баз данных: проектирование, реализация и управление. - СПб.: БХВ-Петербург, 2004.
8 Макарова Н. В. Информатика. Учебник для студ. вузов/ М.: ФиС, 2000.
Очень похожие работы
Пожалуйста, внимательно изучайте содержание и фрагменты работы. Деньги за приобретённые готовые работы по причине несоответствия данной работы вашим требованиям или её уникальности не возвращаются.
* Категория работы носит оценочный характер в соответствии с качественными и количественными параметрами предоставляемого материала. Данный материал ни целиком, ни любая из его частей не является готовым научным трудом, выпускной квалификационной работой, научным докладом или иной работой, предусмотренной государственной системой научной аттестации или необходимой для прохождения промежуточной или итоговой аттестации. Данный материал представляет собой субъективный результат обработки, структурирования и форматирования собранной его автором информации и предназначен, прежде всего, для использования в качестве источника для самостоятельной подготовки работы указанной тематики.
bmt: 0.00465
© Рефератбанк, 2002 - 2024