Информационная система "Сеть магазинов"

Создание информационную систему "Сеть магазинов" в виде реляционной базы данных и операциями над ней. Создание базы данных в СУБД DB2. Описание и обоснование выбора состава технических и программных средств. Разработка пользовательского приложения.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 19.05.2013
Размер файла 1,1 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru

Содержание

Введение

1. Постановка задачи

2. Назначение и область применения

3. Анализ предметной области

4. Создание базы данных в СУБД Db2

5. Входные данные

6. Выходные данные

7. Описание и обоснование выбора состава технических и программных средств

8. Разработка пользовательского приложения

9. Требования к оборудованию

10. Ожидаемые технико-экономические результаты

Вывод

Список использованной литературы

Приложение

  • Введение

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

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

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

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

1. Постановка задания

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

Программа должна обеспечивать:

1. Ввод, удаление, добавление и изменение данных, используя удобные экранные формы;

2. Программную поддержку целостности данных;

3. Быстрый поиск данных по заданным пользователем ИС ключам;

4. Подготовка отчетов и выдачу их на принтер;

5. Реализацию на SQL следующих типичных запросов, использующих:

· только выборку и проекцию,

· соединение, выборку и проекцию,

· группировку с условием и без условия,

· агрегирующие функции во фразах SELECT и HAVING,

· пересечение, объединение, разность, деление.

6. Безопасность данных в БД (введение пароля).

2. Назначение и область применения

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

3. Анализ предметной области

Реляционная модель данных

Информационная система «Сеть магазинов» является реляционной системой, т.е. основана на реляционной модели данных (РМД). Использование РМД обусловлено тем, что в настоящее время РМД является доминирующей в индустриальном и академическом мире.

РМД основана на двух математических теориях: теории множеств и исчислении предикатов 1-го порядка, и касается трех аспектов данных:

1) структурный аспект. Данные в базе воспринимаются пользователем как таблицы (отношения), кортежи (строки таблицы), атрибуты (столбцы таблицы), домены (совокупность значений, из которых выбираются значения атрибутов).

2) аспект целостности данных -- наличие первичных и внешних ключей организующих связь между таблицами.

3) манипулирование данными. Существует две системы манипулирования данными:

a) система обновления данных команды обновления, удаления и модификации структуры отношения.

b) системы запросов -- операции над отношениями, дающие другие отношения.

Принципы РМД были изначально заложены в 1969 и 1970 годах Е.Ф. Коддом.

Логическое проектирование

Логическое проектирование не зависит от программных и технических средств и состоит из трех этапов:

· анализ требований и потребностей;

· выявление информационных объектов и связей между ними;

· проектирование концептуальной схемы.

Цель логического проектирования -- обеспечение наиболее естественных для человека способов сбора и представления той информации, которую предполагается хранить в создаваемой БД. В логическом проектировании используется метод «Сущность-связь».

Сущность -- любо различимый объект реального мира, информацию о котором необходимо хранить в БД. Сущность имеет поименованную характеристику -- атрибут сущности. Наименование атрибута должно быть уникальным для конкретного типа сущности, но может быть одинаковым для сущности разных типов.

Связь -- ассоциирование двух или более сущностей, если бы назначением БД было только хранение отдельных, не связанных между собой данных, то ее структура могла бы быть очень простой. Но одно из основных требований к организации баз данных -- это обеспечение возможности отыскания одних сущностей по значениям других, для чего необходимо установить между ними определенные связи.

Метод «Сущность-связь» заключается в выявлении сущностей и установления связей между ними. Каждая сущность имеет идентификатор, который полностью определяет экземпляр сущности и ее характеристики. Связь также может иметь характеристики.

Существуют следующие типы связей:

· один к одному (связь, в которой существование одной сущности на одной стороне связи зависит от существования одной сущности на другой стороне связи);

· один ко многим (связь, в которой существование n - сущностей на одной стороне связи зависит от существования одной сущности на другой стороне связи);

· многие ко многим (связь, в которой существование n - сущностей на одной стороне связи зависит от существования n - сущностей на другой стороне связи);

При анализе предметной области были выделены следующие сущности

1. Владельцы

2. Супермаркет

3. Размещение

4. Вид собственности

5. Доля

6. Поставщики

7. Количество поставки в магазин

8. Продукты

9. Тип продукта

10. Цены

11. Поставки

· каждая сущность становится отношением. Идентификатор сущности -- первичным ключом отношения, а его характеристики -- атрибутами.

· связь типа один ко многим (отец-сын) не образует отношения, но идентификатор сущности отца становится внешним ключом отношения для сущности сына.

· связь типа многие ко многим становится отношением. Идентификаторы связываемых сущностей становятся составным первичным ключом отношения для связей, а характеристики связей, если они есть, становятся атрибутами отношения для связей.

Преобразование идентификаторов сущности в первичные ключи объекта осуществляется по правилу целостности сущности.

· никакой атрибут, входящий в состав первичного ключа не может иметь неопределенного значения;

· если отношение r2 имеет внешний ключ Fk по отношению к r1 с первичным ключом Рk , то каждому значению Fk из r1 должно:

a) либо быть равно значение Рk из некоторого кортежа r1;

b) либо быть не определено. r1 и r2 необязательно разные.

Отношения, полученные в результате логического проектирования:

Владельцы -- код владельца, фамилия, имя, отчество, дата рождения, адрес, город, телефон, капитал.

Супермаркет -- код супермаркета, название, телефон, код вида собственности, код размещения.

Размещение -- код размещения, город.

Вид собственности -- код вида собственности, название.

Доля -- код владельца, код супермаркета, доля.

Поставщики -- код поставщика, фамилия, имя, отчество ,адрес, телефон,капитал.

Количество поставки в магазин -- код супермаркета, код продукта, количество партий.

Продукты-- код продукта, название, код типа.

Тип продукта--код типа, тип.

Цены -- код продукта, объявленная цена, минимальная цена, дата введения цены, дата отмены цены.

Поставки-- код_поставщика, код продукта, количество партий.

Концептуальная схема полученной базы данных

4. Создание базы данных в СУБД

Для создания базы данных выбрана СУБД DB2. К основным характеристикам этой СУБД можно отнести поддержку реляционных и комплексных данных через объектные расширения, возможность работы на мультипроцессорных платформах, поддержку кластеров, 64-битную архитектуру памяти и распараллеливание запросов, возможность создания Web-приложений (поддерживаются такие технологии, как Java, JDBC, SQLJ, XML) и наличие средства для гетерогенного администрирования и обработки данных.

Семейство DB2 функционионирует на системах AS/400 и RISC System/6000, мэйнфреймах IBM, машинах от Hewlett-Packard и Sun Microsystems и на таких операционных системах, как Windows NT и Windows 95/98, OS/2, AIX, HP-UX, SCO UnixWare, Linux, NUMA-Q и Sun Solaris, и сейчас поддерживает портативные устройства под управлением Windows CE и Palm OS.

В СУБД DB2 выполнила следующие скрипты для создания базы данных и таблиц:

CREATE DATABASE NET1 user RITA using 1313;

CREATE TABLE ВЛАДЕЛЬЦЫ (

Код_владельца SMALLINT NOT NULL PRIMARY KEY,

Фамилия VARCHAR(15) NOT NULL,

Имя VARCHAR(15) NOT NULL,

Отчество VARCHAR(30) NOT NULL,

Дата_рождения DATE,

Адрес VARCHAR(20),

Город VARCHAR(20),

Телефон INTEGER NOT NULL,

Капитал FLOAT NOT NULL );

CREATE TABLE СУПЕРМАРКЕТ (

Код_супермаркета SMALLINT NOT NULL PRIMARY KEY,

Название VARCHAR(15) NOT NULL,

Телефон INTEGER NOT NULL,

Код_вида_собственности SMALLINT NOT NULL

REFERENCES ВИД_СОБСТВЕННОСТИ(Код_вида_собственности)

ON DELETE CASCADE ON UPDATE NO ACTION,

Код_размещения SMALLINT NOT NULL

REFERENCES РАЗМЕЩЕНИЕ(Код_размещения)

ON DELETE CASCADE ON UPDATE NO ACTION);

CREATE TABLE РАЗМЕЩЕНИЕ (

Код_размещения SMALLINT NOT NULL PRIMARY KEY,

Город VARCHAR(20) NOT NULL);

CREATE TABLE ВИД_СОБСТВЕННОСТИ (

Код_вида_собственности SMALLINT NOT NULL PRIMARY KEY,

Название VARCHAR(15) NOT NULL );

CREATE TABLE ДОЛЯ (

Код_владельца SMALLINT NOT NULL

REFERENCES ВЛАДЕЛЬЦы(Код_владельца)

ON DELETE CASCADE ON UPDATE NO ACTION,

Код_супермаркета SMALLINT NOT NULL

REFERENCES СУПЕРМАРКЕТ(Код_супермаркета)

ON DELETE CASCADE ON UPDATE NO ACTION,

Доля FLOAT NOT NULL,

PRIMARY KEY(Код_владельца,Код_супермаркета));

CREATE TABLE ПОСТАВЩИКИ (

Код_поставщика INTEGER NOT NULL PRIMARY KEY,

Фамилия VARCHAR(15) NOT NULL,

Имя VARCHAR(15) NOT NULL,

Отчество VARCHAR(15) NOT NULL,

Адрес VARCHAR(30),

Телефон INTEGER NOT NULL,

Капитал FLOAT NOT NULL);

CREATE TABLE КОЛИЧЕСТВО_ПОСТАВКИ_В_МАГАЗИН (

Код_супермаркета SMALLINT NOT NULL

REFERENCES СУПЕРМАРКЕТ(Код_супермаркета)

ON DELETE CASCADE ON UPDATE NO ACTION,

Код_продукта INTEGER NOT NULL

REFERENCES ПРОДУКТЫ(Код_продукта)

ON DELETE CASCADE ON UPDATE NO ACTION,

Количество_партий INTEGER,

PRIMARY KEY(Код_супермаркета,Код_продукта));

CREATE TABLE ПРОДУКТЫ (

Код_продукта INTEGER NOT NULL PRIMARY KEY,

Название VARCHAR(30) NOT NULL,

Код_типа SMALLINT NOT NULL

REFERENCES ТИП_ПРОДУКТА(Код_типа)

ON DELETE CASCADE ON UPDATE NO ACTION);

CREATE TABLE ТИП_ПРОДУКТА (

Код_типа SMALLINT NOT NULL PRIMARY KEY,

Тип VARCHAR(30) NOT NULL );

CREATE TABLE ЦЕНЫ (

Код_продукта INTEGER NOT NULL

REFERENCES ПРОДУКТЫ(Код_продукта)

ON DELETE CASCADE ON UPDATE NO ACTION,

Объявленная_цена NUMERIC(6,2),

Минимальная_цена NUMERIC(6,2),

Дата_введения_цены DATE NOT NULL,

Дата_отмены_цены DATE,

PRIMARY KEY (Код_продукта,Дата_введения_цены) );

CREATE TABLE ПОСТАВКИ (

Код_поставщика INTEGER NOT NULL

REFERENCES ПОСТАВЩИКИ(Код_поставщика)

ON DELETE CASCADE ON UPDATE NO ACTION,

Код_продукта INTEGER NOT NULL

REFERENCES ПРОДУКТЫ(Код_продукта)

ON DELETE CASCADE ON UPDATE NO ACTION,

Количество_партий INTEGER,

PRIMARY KEY(Код_поставщика,Код_продукта));

Заполнение базы данных выполнила с помощью скриптов. Рассмотрим пример заполнения на примере таблицы ПРОДУКТЫ:

INSERT INTO ПРОДУКТЫ VALUES(100860,'Говядина',35);

INSERT INTO ПРОДУКТЫ VALUES(100861,'Свинина',35);

INSERT INTO ПРОДУКТЫ VALUES(100870,'Индюшатина',3);

INSERT INTO ПРОДУКТЫ VALUES(100871,'Курица',3);

INSERT INTO ПРОДУКТЫ VALUES(100890,'Яйца',3);

INSERT INTO ПРОДУКТЫ VALUES(101860,'Сельдь',12);

INSERT INTO ПРОДУКТЫ VALUES(101863,'Окунь',12);

INSERT INTO ПРОДУКТЫ VALUES(102130,'Семга',12);

INSERT INTO ПРОДУКТЫ VALUES(200376,'Треска',12);

INSERT INTO ПРОДУКТЫ VALUES(200380,'Скумбрия',12);

INSERT INTO ПРОДУКТЫ VALUES(103120,'Вобла',12);

INSERT INTO ПРОДУКТЫ VALUES(103121,'Щука',12);

INSERT INTO ПРОДУКТЫ VALUES(103130,'Карамель',7);

INSERT INTO ПРОДУКТЫ VALUES(103131,'Конфеты',7);

Аналогично заполнены остальные таблицы.

5. Входные данные

Входными данными являются заполненные таблицы «Владельцы», «Супермаркет», «Размещение», «Вид_собственности», «Доля», «Количество_поставки_в_магазин», «Продукты», «Тип_продукта», «Цены», «Поставки», «Поставщики». А также возможность редактирования таблиц из формы. информационный система база данные

6. Выходные данные

Выходными данными являются отчеты и запросы, представляемые в виде выводимых данных:

1. В текстовый файл;

2. На экран в виде таблицы или отчета

3. В файл веб-страницы;

4. На принтер.

5. В файл отчета

7. Описание и обоснование выбора состава технических и программных средств

Программа написана на языке C++Builder. Выбор основан на том, что C++Builder - одна из самых мощных систем, позволяющих на самом современном уровне создавать как отдельные прикладные программы Windows, так и разветвленные комплексы, предназначенные для работы в корпоративных сетях и в Интернет. Это мощная система визуального объектно-ориентированного программирования, позволяющая решать множество задач, в частности:

· Создавать законченные приложения для Windows самой различной направленности

· Быстро создавать профессионально выглядящий оконный интерфейс для любых приложений, написанных на любом языке. Интерфейс удовлетворяет всем требованиям Windows и автоматически настраивается на ту систему, которая установлена на компьютере пользователя, поскольку использует многие функции, процедуры, библиотеки Windows

· Создавать мощные системы работы с локальными и удаленными базами данных любых типов. При этом имеются средства автономной отладки приложений с последующим выходом в сеть

· Создавать многозвенные распределенные приложения, основанные на различных технологиях

· Создавать приложения, которые управляют другими приложениями, в частности, такими программами как Word, Excel и другие

· Создавать профессиональные программы установки для приложений Windows, учитывающие специфику и все требования Windows.

8. Разработка пользовательского приложения

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

1. Главная форма -- служит для выбора таблицы, выбора запроса, просмотра отчета и диаграммы по базе данных.

2. При выборе таблицы открывается форма, в которой можно просмотреть таблицу, найти, удалить, изменить и добавить запись. А также можно сделать расширенный поиск по нескольким таблицам.

Рассмотрим это на примере таблицы СУПЕРМАРКЕТ.

3. При выборе запроса открывается форма, в которой можно выполнить запрос, просмотреть текст запроса на языке SQL, а также сохранить текст запроса в файле с различными расширениями.

Рассмотрим это на примере запроса с делением.

Тексты запросов:

1) Выборка

2) Проекция

3) Соединение, выборка и проекция

4) Группировка без условия

5) Группировка с условием

6) Агрегирующие функции во фразах Select и Having

7) Пересечение

8) Объединение

9) Разность

10) Деление

4. Форма отчета служит для предварительного просмотра отчета по базе данных и отправки его на печать.

5. Форма диаграммы -- показывает долю владения каждым супермаркетом каждым из владельцев. Супермаркет пользователь может выбрать из списка.

9. Требования к оборудованию

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

· Монитор, поддерживающий разрешение 800х600 (рекомендуется 1024х768) и цветовую палитру HighColor (16 бит) или лучше;

· процессор Pentium 600 MHz или выше;

· оперативная память 32 Мбайта и выше;

· объем свободного пространства на диске не менее 5 Мб;

· клавиатура;

· манипулятор Мышь;

· принтер.

10. Ожидаемые технико-экономические результаты

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

Выводы

При выполнении курсового проекта были приобретены навыки в создании системы «приложение-база данных», проектировании баз данных и визуальном программировании. А именно, была разработана информационно - поисковая система «Сеть магазинов». Данный продукт очень востребован в нынешний век информационных технологий, а значит имеет смысл в создании и дальнейшем развитии.

Список использованной литературы

1. Дейт К. Дж. Введение в системы баз данных, 7-е издание.: Пер. с англ. - М.: М.: Издательский дом «Вильямс», 1072. - 928 с.: ил. - Парал. Тит. англ.

2. Культин Н. Б. C++ Builder в задачах и примерах. Петербург, 2005. -- 336 с: ил .

3. Культин Н. Б. К90 Самоучитель C++ Builder. - СПб.: БХВ-Петербург, 2004. - 320 с.: ил.

Приложение

Текст программного кода некоторых форм.

Главная форма

#include <vcl.h>

#pragma hdrstop

#include "kurs1.h"

#include "Unit2.h"

#include "Unit3.h"

#include "Unit4.h"

#include "Unit5.h"

#include "Unit6.h"

#include "Unit7.h"

#include "Unit8.h"

#include "Unit9.h"

#include "Unit10.h"

#include "Unit11.h"

#include "Unit12.h"

#include "Unit13.h"

#include "Unit14.h"

#include "Unit15.h"

#include "Unit16.h"

#include "Unit17.h"

#include "Unit18.h"

#include "Unit19.h"

#include "Unit20.h"

#include "Unit21.h"

#include "Unit22.h"

#include "Unit23.h"

#include "Unit24.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm1 *Form1;

//---------------------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner)

{

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)

{

if((RadioButton1->Checked==true)|| (RadioButton2->Checked==true)||

(RadioButton3->Checked==true)||(RadioButton4->Checked==true)||

(RadioButton5->Checked==true)||(RadioButton6->Checked==true)||

(RadioButton7->Checked==true)||(RadioButton8->Checked==true)||

(RadioButton9->Checked==true)||(RadioButton10->Checked==true)||

(RadioButton11->Checked==true)){

if(RadioButton1->Checked==true)

VS->Show();

else if(RadioButton2->Checked==true)

Raz->Show();

else if(RadioButton3->Checked==true)

SUP->Show();

else if(RadioButton4->Checked==true)

Vlad->Show();

else if(RadioButton5->Checked==true)

Dol->Show();

else if(RadioButton6->Checked==true)

T_PR->Show();

else if(RadioButton7->Checked==true)

PR->Show();

else if(RadioButton8->Checked==true)

Kol->Show();

else if(RadioButton9->Checked==true)

Cenu->Show();

else if(RadioButton10->Checked==true)

Post->Show();

else if(RadioButton11->Checked==true)

Postch->Show();

}

else

{

ShowMessage("Выберите таблицу!");

return;

}

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)

{

if((RadioButton12->Checked==true)|| (RadioButton13->Checked==true)||

(RadioButton14->Checked==true)||(RadioButton15->Checked==true)||

(RadioButton16->Checked==true)||(RadioButton17->Checked==true)||

(RadioButton18->Checked==true)||(RadioButton19->Checked==true)||

(RadioButton20->Checked==true)||(RadioButton21->Checked==true))

{

if(RadioButton12->Checked==true)

vub->ShowModal();

else if(RadioButton13->Checked==true)

proec->ShowModal();

else if(RadioButton14->Checked==true)

SVP->ShowModal();

else if(RadioButton15->Checked==true)

GBY->ShowModal();

else if(RadioButton16->Checked==true)

GSY->ShowModal();

else if(RadioButton17->Checked==true)

AF_SH->ShowModal();

else if(RadioButton18->Checked==true)

Per->ShowModal();

else if(RadioButton19->Checked==true)

Ob->ShowModal();

else if(RadioButton20->Checked==true)

Diff->ShowModal();

else if(RadioButton21->Checked==true)

Div->ShowModal();

}

else

{

ShowMessage("Выберите запрос!");

return;

}

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button3Click(TObject *Sender)

{

Form1->Close();

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button4Click(TObject *Sender)

{

otch->Show();

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button5Click(TObject *Sender)

{

otch1->Show();

}

//---------------------------------------------------------------------------

Форма таблицы «Поставщики»

#include <vcl.h>

#pragma hdrstop

#include "Unit12.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TPostch *Postch;

//---------------------------------------------------------------------------

__fastcall TPostch::TPostch(TComponent* Owner)

: TForm(Owner)

{

}

//---------------------------------------------------------------------------

void __fastcall TPostch::Button1Click(TObject *Sender)

{

Query1->Close();

if(!Query1->Prepared)

Query1->Prepare();

Query1->ParamByName("p")->AsFloat=StrToFloat(ListBox1->Items->Strings[ListBox1->ItemIndex]);

Query1->Open();

if(Query1->Eof)

{

ShowMessage("Запись не найдена!");

return;

}

}

//---------------------------------------------------------------------------

void __fastcall TPostch::FormClose(TObject *Sender, TCloseAction &Action)

{

DBEdit1->Clear();

DBEdit2->Clear();

DBEdit3->Clear();

DBEdit4->Clear();

DBEdit5->Clear();

DBEdit6->Clear();

DBEdit7->Clear();

Edit2->Clear();

Edit3->Clear();

Edit4->Clear();

Edit5->Clear();

Edit6->Clear();

Edit7->Clear();

Edit8->Clear();

Query4->Close();

}

//---------------------------------------------------------------------------

void __fastcall TPostch::Button2Click(TObject *Sender)

{

Query2->Close();

if((DBEdit1->Text!="")&&(DBEdit2->Text!=""))

{

if(!Query2->Prepared)

Query2->Prepare();

Query2->ParamByName("p")->AsFloat=StrToFloat(DBEdit1->Text);

Query2->ExecSQL();

Table1->Active=false;

Table1->Active=true;

DBEdit1->Clear();

DBEdit2->Clear();

DBEdit3->Clear();

DBEdit4->Clear();

DBEdit5->Clear();

DBEdit6->Clear();

DBEdit7->Clear();

Query5->Close();

Query5->Open();

ListBox1->Items->Clear();

Query5->First();

while (!(Query5->Eof))

{

ListBox1->Items->Add(Query5->FieldByName("код_поставщика ")->AsString);

Query5->Next();

}

Query6->Close();

Query6->Open();

ListBox2->Items->Clear();

Query6->First();

while (!(Query6->Eof))

{

ListBox2->Items->Add(Query6->FieldByName("код_поставщика ")->AsString);

Query6->Next();

}

}

else

{

ShowMessage("Запись не найдена!");

return;

}

}

//---------------------------------------------------------------------------

void __fastcall TPostch::Button3Click(TObject *Sender)

{

Query3->Close();

if((Edit2->Text!="")&&(Edit3->Text!=""))

{

if(!Query3->Prepared)

Query3->Prepare();

Query3->ParamByName("p")->AsFloat=StrToFloat(Edit2->Text);

Query3->ParamByName("p1")->AsString=Edit3->Text;

Query3->ParamByName("p2")->AsString=Edit4->Text;

Query3->ParamByName("p3")->AsString=Edit5->Text;

Query3->ParamByName("p4")->AsString=Edit6->Text;

Query3->ParamByName("p5")->AsFloat=StrToFloat(Edit7->Text);

Query3->ParamByName("p6")->AsFloat=StrToFloat(Edit8->Text);

Query3->ExecSQL();

Table1->Active=false;

Table1->Active=true;

Edit2->Clear();

Edit3->Clear();

Edit4->Clear();

Edit5->Clear();

Edit6->Clear();

Edit7->Clear();

Edit8->Clear();

Query5->Close();

Query5->Open();

ListBox1->Items->Clear();

Query5->First();

while (!(Query5->Eof))

{

ListBox1->Items->Add(Query5->FieldByName("код_поставщика ")->AsString);

Query5->Next(); }

}

Query6->Close();

Query6->Open();

ListBox2->Items->Clear();

Query6->First();

while (!(Query6->Eof))

{

ListBox2->Items->Add(Query6->FieldByName("код_поставщика ")->AsString);

Query6->Next();

}

}

//---------------------------------------------------------------------------

void __fastcall TPostch::Button4Click(TObject *Sender)

{

Query4->Close();

if(!Query4->Prepared)

Query4->Prepare();

Query4->ParamByName("p")->AsFloat=StrToFloat(ListBox2->Items->Strings[ListBox2->ItemIndex]);

Query4->Open();

if(Query4->Eof)

{

ShowMessage("Запись не найдена!");

return;

}

}

//---------------------------------------------------------------------------

void __fastcall TPostch::Button5Click(TObject *Sender)

{

Postch->Close();

}

//---------------------------------------------------------------------------

void __fastcall TPostch::FormCreate(TObject *Sender)

{

Query5->First();

while (!(Query5->Eof))

{

ListBox1->Items->Add(Query5->FieldByName("код_поставщика ")->AsString);

Query5->Next(); }

Query6->First();

while (!(Query6->Eof))

{

ListBox2->Items->Add(Query6->FieldByName("код_поставщика")->AsString);

Query6->Next(); }

}

//---------------------------------------------------------------------------

Форма запроса Деление

#include <vcl.h>

#pragma hdrstop

#include "Unit22.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TDiv *Div;

//---------------------------------------------------------------------------

__fastcall TDiv::TDiv(TComponent* Owner)

: TForm(Owner)

{

}

//---------------------------------------------------------------------------

void __fastcall TDiv::Button1Click(TObject *Sender)

{

Query1->Open();

}

//---------------------------------------------------------------------------

void __fastcall TDiv::Button2Click(TObject *Sender)

{

Memo1->Visible=true;

}

//---------------------------------------------------------------------------

void __fastcall TDiv::FormClose(TObject *Sender, TCloseAction &Action)

{

Query1->Close();

Memo1->Visible=false;

}

//---------------------------------------------------------------------------

void __fastcall TDiv::Button3Click(TObject *Sender)

{

Div->Close();

}

//---------------------------------------------------------------------------

void __fastcall TDiv::Button4Click(TObject *Sender)

{

if(SaveDialog1->Execute()){

Memo1->Lines->SaveToFile(SaveDialog1->FileName);

ShowMessage("Сохранение прошло успешно!");

}

}

//---------------------------------------------------------------------------

Форма отчета

#include <vcl.h>

#pragma hdrstop

#include "Unit23.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

Totch *otch;

//---------------------------------------------------------------------------

__fastcall Totch::Totch(TComponent* Owner)

: TForm(Owner)

{

}

//---------------------------------------------------------------------------

void __fastcall Totch::Button1Click(TObject *Sender)

{

QuickRep1->Preview();

}

//---------------------------------------------------------------------------

void __fastcall Totch::Button2Click(TObject *Sender)

{

otch->Close();

}

Форма диаграммы

#include <vcl.h>

#pragma hdrstop

#include "Unit24.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

Totch1 *otch1;

//---------------------------------------------------------------------------

__fastcall Totch1::Totch1(TComponent* Owner)

: TForm(Owner)

{

}

//---------------------------------------------------------------------------

void __fastcall Totch1::Button1Click(TObject *Sender)

{

Query1->Close();

if(!Query1->Prepared)

Query1->Prepare();

Query1->ParamByName("p")->AsString=ListBox1->Items->Strings[ListBox1->ItemIndex];

Query1->Open();

if(Query1->Eof)

{

ShowMessage("Нет данных!");

return;

}

}

//---------------------------------------------------------------------------

void __fastcall Totch1::FormCreate(TObject *Sender)

{

Query2->First();

while (!(Query2->Eof))

{

ListBox1->Items->Add(Query2->FieldByName("название")->AsString);

Query2->Next(); }

}

Размещено на Allbest.ru


Подобные документы

  • Создание концептуальной модели информационной системы, включающей в себя данные по магазинам, персоналу, владельцу и поставщикам - "Сеть магазинов". Выбор системы управления базами данных. Разработка клиентского приложения и интерфейса пользователя.

    курсовая работа [525,9 K], добавлен 12.04.2015

  • Создание реляционной базы данных "Деканат ВУЗа", средствами СУБД MS SQL Server 2000. Разработка клиентского приложения с удобным пользовательским интерфейсом (сопровождающегося меню и справочной системой). Описание связей между таблицами базы данных.

    курсовая работа [3,0 M], добавлен 06.12.2014

  • Разработка логической схемы базы данных автомобилестроительного предприятия. Инфологическое моделирование системы. Создание графического интерфейса пользователя для базы данных средствами языка программирования Java. Тестирование программных средств.

    курсовая работа [2,3 M], добавлен 16.12.2013

  • Возможности извлечения информации из баз данных. Программы для создания и обработки базы данных и создания пользовательского интерфейса. Обоснование выбора программных средств для реализации. Создание базы данных, интерфейса и базы данных к интерфейсу.

    курсовая работа [2,9 M], добавлен 24.03.2023

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

    курсовая работа [3,0 M], добавлен 22.12.2014

  • Разработка структуры реляционной базы данных, предназначенной для отслеживания финансовой стороны работы компании. Требования к составу и параметрам технических средств. Нормализация информационных объектов. Физическая модель базы данных приложения.

    курсовая работа [1,4 M], добавлен 11.11.2014

  • Разработка базы данных средней сложности с типовым пользовательским интерфейсом, а в частности, разработка базы данных СНАБЖЕНИЕ МАГАЗИНОВ на основе реляционной системы управления базами данных Microsoft Access, входящей в комплект Microsoft Office.

    курсовая работа [2,1 M], добавлен 02.12.2012

  • Разработка пользовательского интерфейса и создание базы данных на основе реляционной СУБД Microsoft Access. Процедуры для ввода, корректировки, просмотра входных данных, их обработка и анализ. Формирование запросов и отчетов, их вывод на экран монитора.

    курсовая работа [2,7 M], добавлен 03.05.2014

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

    курсовая работа [2,1 M], добавлен 16.02.2015

  • Требования к составу и параметрам технических средств. Инфологическая (концептуальная) модель предметной области. Физическая и логическая модель базы данных. Создание структуры БД в СУБД MS ACCESS. Программирование приложения. Описание работы с системой.

    курсовая работа [572,2 K], добавлен 17.11.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.