Разработка информационной системы по ведению учёта деятельности предприятия "Озеленение"

Технология разработки программного обеспечения. Контекстная диаграмма и стоимостной анализ функциональной модели. Требования к разрабатываемому ПО. Разработка логической модели данных. Архитектура программной системы: структурная и функциональная схемы.

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

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

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

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

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ

УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

«ВОСТОЧНО-СИБИРСКИЙ ГОСУДАРСТВЕННЫЙ

УНИВЕРСИТЕТ ТЕХНОЛОГИЙ И УПРАВЛЕНИЯ»

ЭЛЕКТРОТЕХНИЧЕСКИЙ ФАКУЛЬТЕТ

Кафедра систем информатики

Курсовой проект

по дисциплине «Технологии разработки программного обеспечения»

Тема: «Разработка информационной системы по ведению учёта деятельности предприятия "Озеленение"»

Выполнил:

студент гр. Б-651 Антонов А.В.

Руководитель:

доцент кафедры СИ Аюшеева Н.Н.

Нормоконтролер:

ст. преп. кафедры СИ Андреева Н.В.

Улан-Удэ

2015

ЗАДАНИЕ

на курсовой проект

Дисциплина: Технология разработки программного обеспечения

Тема: Разработка информационной системы по ведению учёта деятельности предприятия "Озеленение

Исполнитель(и): Антонов А.В.

Руководитель: Аюшеева Н.Н.

Краткое содержание проекта: Данный курсовой проект посвящен исследованию работы служащего предприятия "Озеленение" и реализации программы " Система по ведению учёта деятельности предприятия "Озеленение "

1. Теоретическая часть: анализ предметной области задачи

- исследование работы предприятия;

- изучение средств MSQLS 2008,предназначенных для работы с базами данных

- изучение средств MVS 2010, предназначенных для работы с базами данных

2. Практическая часть: Разработка базы данных, моделей UML, программного обеспечения для работы с базой данных

Сроки выполнения проекта по графику:

1. Теоретический раздел - 25% к 10 июня

2. Основной раздел. Проектирование - 50% к 17 июня

3. Основной раздел. Кодирование - 80% к 24 июня

4. Экспериментальный раздел - 95% к 1 июля

5. Защита - 100% 3 июля

Требования к оформлению:

1. Расчетно-пояснительная записка курсового проекта должна быть представлена в электронной и твердой копиях

2. Объем РПЗ должен быть не менее 20 машинописных страниц без учета приложений

3. РПЗ оформляется по ГОСТу 7.32-91 и подписывается у ответств. занорм контроль.

Руководитель проекта _____________________

Исполнитель _____________________

Дата выдачи "30 " июня 2014 г.

АННОТАЦИЯ

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

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

СОДЕРЖАНИЕ

Введение

1. Анализ требований

1.1 Описание предметной области

1.2 Технология разработки ПО

1.3 Описание ФМ "Как надо"

1.4 Техническое задание

1.5 Выводы по разделу

2. Проектирование

2.1 Разработка логической модели данных

3. Описание программного обеспечения

3.1 Архитектура программного обеспечения

3.2 Вывод по разделу

Заключение

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

Приложение 1. Код программы

ВВЕДЕНИЕ

В курсовом проекте рассмотрим современные технологии и инструментальные средства компании ComputerAssociations: BPWin4.0 для проектирования ИС, MicrosoftVisualStudio 2010, и среда SQL ServerManagementStudio.

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

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

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

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

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

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

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

Нормализация - представление сложных структур данных (документов) в виде двумерных таблиц (отношений).

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

Целостность свойство БД, при котором она удовлетворяет некоторым определенным ограничениям значений данных и сохраняет это свойство при всех модификациях (замена, добавление или удаление) данных.

1. АНАЛИЗ ТРЕБОВАНИЙ

1.1 Описание предметной области

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

В данном курсовом проекте требуется реализовать программу «Предприятие "Озеленитель"» в среде MicrosoftVisualStudio 2010. Предусмотреть хранение информации. Для выполнения задачи поставленной в курсовой работе применяются знания и умения, полученные в процессе изучения дисциплины «Технологии разработки программного обеспечения».

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

a) Компоненты для визуального представления данных в табличной форме;

b) Набор компонентов для добавления, изменения, удаления записей в базу данных и их применение;

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

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

2) для добавления, изменения, удаления, применения в базе данных использовать компонент button.

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

1.2 Технологии разработки ПО

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

Основные функции СУБД - это описание структуры базы данных, обработка данных и управление данными.

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

Любая СУБД позволяет выполнять четыре простейшие операции с данными:

- добавить в таблицу одну или несколько записей;

удалить из таблицы одну или несколько записей;

обновить значения некоторых полей в одной или нескольких записях;

найти одну или несколько записей, удовлетворяющих заданному условию.

Для выполнения этих операций используется механизм запросов. Результатом выполнения запросов является либо отобранное по определённым критериям множество записей, либо изменение в таблицах.

Для написания программы была выбрана также среда SQL ServerManagementStudio, являющаяся одной из самых распространенных средств создания приложений баз данных для корпоративных применений. Программы такого типа в настоящее время признаны в качестве стандарта, поскольку наиболее широко распространены, удобны для пользователей и не требуют долгого их обучения. Предпочтение было отдано Среда SQL ServerManagementStudio благодаря тому, что она позволяет программисту очень быстро, достаточно легко и удобно разрабатывать базу данных, строить запросы и создавать схему базы данных.

«BPWin» - инструмент моделирования, который используется для анализа, документирования и реорганизации сложных процессов, в том числе, бизнес-процессов. Модель, созданная средствами «BPWin», позволяет четко документировать различные аспекты деятельности - действия, которые необходимо предпринять, способы их осуществления, требующиеся для этого ресурсы и др. Таким образом, формируется целостная картина деятельности предприятия. «BPWin» совмещает в одном инструменте средства моделирования функций (IDEF0), потоков данных (DFD) и потоков работ (IDEF3).

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

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

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

1.3 Описание ФМ "Как надо"

Рисунок 1. - "Контекстная диаграмма функциональной модели «Как надо»

Предприятие "Озеленитель"

Описание контекстной диаграммы А-0 приведено в таблице 1.

Таблица 1. - Описание контекстной диаграммы

Наименование стрелки

Источник стрелки

Тип стрелки источника

Приемник стрелки

Тип стрелки приемника

kod tovara

Осуществляется быстрый доступ сотрудников по коду товара (Артикулу)

Механизм

Служит для быстрой связи между сотрудником интернет покупателем

Механизм

kolichestvo

Предоставление информации

для выбора объема продукции клиентом

Вход

Определение заказа в соответствии с запрашиваемым объемом продукции.

Вход

kod uslugi

Оформление квитанции о услуге (клиент)

Вход

Оформление квитанции о услуге (сотрудник)

Вход

kod sotrudnika

Рандомный выбор сотрудника не занятого в данный момент

Управление

Оформление заказа

Управление

Подготовка продукции

Управление

kod klienta

Для постоянных клиентов и оптовиков

Выход

Data zakaza

Занесение в базу для напоминания сотрудников о сроке заказа

Выход

Выдача квитанции

Вход

kod zakaza uslugi

Занесение всей информации под кодовый номер.

Выход

Выдача квитанции

Выход

Диаграмма детализации

Рисунок 2. - "Декомпозиция диаграммы "Озеленение"

Рисунок 3. - "Декомпозиция диаграммы Sotrudnik "Предоставление информации о сотруднике для внесения его в бонус систему по З/П "

Рисунок 4. - "Декомпозиция диаграммы Tovar "Формирование работы системы "

Рисунок 5. - "Декомпозиция диаграммы "Оформление документов на поставку тех средств что не производятся предприятием"

Стоимостный анализ функциональной модели

Таблица 2. - Отчет сгенерированный в BPWinс помощью ActivityCostReport

ActivityName

ActivityCost (Рубль)

CostCenter

CostCenterCost (Рубль)

Розничная продажа

383.875

Компоненты

Рабочая сила

Управление

64.450,00

262.525,00

56.900,00

Оформление документов "постоянного" покупателя

500,00

Рабочая сила

25,00

Заполнение бланка предзаказа

200,00-....

Рабочая сила

25,00

Распределение по торговым точкам

20,00

Офисная техника

Рабочая сила

10,00

10,00

Выдача квитанции

383.850,00

Компоненты

Рабочая сила

Управление

64.450,00

262.500,00

56.900,00

Квитанция издания

3.850,00

Компоненты

Рабочая сила

Управление

450,00

2500,00

900,00

Рисунок 6. - "Диаграмма Парето"

1.4 Техническое задание

Наименование программного средства - " Система по ведению учёта деятельности предприятия "Озеленение "

Программа предназначена к применению на предприятии "Озеленение", для учета товарооборота и более организованного обслуживания. Для обеспечения наиболее продуктивного труда служащего.

1. Основание для разработки

Задание на курсовой проект

2. Назначение для разработки

Функциональное назначение: автоматизация управления процессами р

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

3. Требование к составу выполняемых функций

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

1) ввод данных;

2) редактирование данных;

3) формирование заказов;

4) формирование отчета по поставщикам;

5) формирование отчета о прибыли за месяц, год;

6) формирование отчета о поступивших товарах в выбранный период;

7) поиск товаров по наименованию, поставщику;

8) печать документов;

9) сохранение отчетов на носитель;

10) сохранение существующего отчета с другим названием;

11) отображение названия программы, версии программы и комментариев разработчика.

4. Требования к организации входных данных

Входные данные программы должны быть в виде строк и целых чисел.

5. Требования к организации выходных данных

Выходные данные программы должны быть сформированы программными средствами автоматизированной системы "Учёт деятельности предприятия "Озеленение ".

6. Требования к надежности

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

1) организацией бесперебойного питания технических средств;

2) использованием лицензионного программного обеспечения;

3) регулярным выполнением рекомендаций Министерства труда и социального развития РФ, изложенных в Постановлении от 23 июля 1998 г. «Об утверждении межотраслевых типовых норм времени на работы по сервисному обслуживанию ПЭВМ и оргтехники и сопровождению программных средств»;

4) регулярным выполнением требований ГОСТ 51188-98. Защита информации. Испытания пpогpаммных средств на наличие компьютерных вирусов.

7. Время восстановления после отказа

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

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

8. Климатические условия эксплуатации

Программа будет работать от плюс 5 до плюс 35 °C при относительной влажности 90 % и атмосферном давлении 462 мм.рт.ст., поскольку такие условия приблизительно соответствуют условиям эксплуатации современных компьютеров непромышленного исполнения.

9. Требования к составу и параметрам технических средств

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

В состав технических средств должен входить IВМ-совместимый персональный компьютер (ПЭВМ), включающий в себя:

- операционную систему Windows 98,Windows 2000,Windows XP, Vista, Windows 7;

- процессор Intel Pentium-2.0Hz, не менее;

- оперативную память объемом, 1 Гигабайт, не менее;

- HDD, 40 Гигабайт, не менее;

- Microsoft SQL Server.

Также рабочее место должно быть оборудовано принтером любой конфигурации.

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

10. Требования к исходным кодам и языкам программирования

Программа должны быть написана на языке С++.

11. Требования к программным средствам, используемым программой

Системные программные средства, используемые программой, должны быть представлены лицензионной локализованной версией операционной системы Windows 2000, Windows XP, Windows 2003, WindowsVista, Windows 7.

12. Требования к защите информации и программ

Требования к защите информации и программ не предъявляются.

13. Предварительный состав программной документации

Состав программной документации должен включать в себя:

1) техническое задание;

2) программу и методику испытаний;

3) руководство пользователя.

14. Технико-экономические показатели

Ориентировочная экономическая эффективность не рассчитывается.

15. Стадии и этапы разработки

15.1 Стадии разработки

Разработка должна быть проведена в три стадии:

1) разработка технического задания;

2) рабочее проектирование;

3) передача программы.

15.2 Этапы разработки

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

На стадии рабочего проектирования должны быть выполнены перечисленные ниже этапы работ:

1) разработка программы разработка;

2) разработка программной документации;

3) испытания программы.

На стадии передачи программы должен быть выполнен этап подготовки и передачи программы.

15.3 Содержание работ по этапам

На этапе разработки технического задания должны быть выполнены перечисленные ниже работы:

1) постановка задачи;

2) определение и уточнение требований к техническим средствам;

3) определение требований к программе;

4) определение стадий, этапов и сроков разработки программы и документации на неё;

5) согласование и утверждение технического задания.

На этапе разработки программы должна быть выполнена работа по программированию (кодированию) и отладке программы.

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

На этапе испытаний программы должны быть выполнены перечисленные ниже виды работ:

1) разработка, согласование и утверждение и методики испытаний;

2) проведение приемо-сдаточных испытаний;

3) корректировка программы и программной документации по результатам испытаний.

На этапе подготовки и передачи программы должна быть выполнена работа по подготовке и передаче программного средства и программной документации в эксплуатацию.

16. Порядок контроля и приемки

16.1 Виды испытаний

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

Ход проведения приемо-сдаточных испытаний заказчик и исполнитель документируют в протоколе проведения испытаний.

16.2 Общие требования к приемке работы

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

1.5 Выводы по разделу

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

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

2. ПРОЕКТИРОВАНИЕ

2.1 Разработка логической модели данных

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

В результате получилась логическая модель данных:

Рисунок 7. - "Логическая модель данных информационной системы для предприятия "Озеленение" "

3. ОПИСАНИЕ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

3.1 Архитектура программного обеспечения

Структурная схема программной системы показывает наличие подсистем или других структурных компонентов.

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

Рисунок 8. - "Структурная схема"

Функциональная схема или схема данных (ГОСТ 19.701-90) - схема взаимодействия компонентов программного обеспечения с описанием информационных потоков, состава данных в потоках и указанием используемых файлов и устройств.

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

Рисунок 9. - "Функциональная схема "

3.2 Вывод по разделу

Тестирование программы "Система по ведению учёта деятельности предприятия "Озеленение"" показало, что она работает корректно. Выполняет функции согласно техническому заданию, и готова к использованию.

ЗАКЛЮЧЕНИЕ

В данной курсовом проекте был разработан программный продукт «Система по ведению учёта деятельности предприятия "Озеленение». В данном проекте представлена предметная область, логическое и физическое проектирование системы, созданы запросы по выборке данных, добавлению, удалению, применению и редактированию записей находящихся в базе данных. При создании программного проекта «Учёт деятельности предприятия "Озеленение"» я использовал программы: SQLServerManagementStudio - для создания базы данных «Kurs» и MicrosoftVisualStudio 2010 для подключения к базе данных, созданию и модификация данных таблицы и форм.

При построении модели деятельности «как есть» (AS-IS) на диаграммах просматривается полная деятельность организации, где видно, что на работников склада возлагаются дополнительные функции, которые усложняют процессы работы на складе, увеличивают риск возникновения недостач и недостоверности информации о наличии движения товара.

Рассмотрев и построив диаграммы модели деятельности «как должно быть» (TO-BE) видим, что в результате внедрения информационной системы «Система по ведению учёта деятельности предприятия "Озеленение» на склад, существенно сократится время оформления заказа клиента, что позволит обработать больше количества заказов, улучшить качество обслуживания клиентов, сократит недостачу, позволит более детально подавать сведения о наличии и движении товара на складе.

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

- в данном курсовом проекте решены следующие задачи;

- изучена предметная область предприятия;

- построена модель деятельности «как есть» (AS-IS);

- построена модель деятельности «как должно быть» (TO-BE);

- сформировано техническое задание на создание автоматизированной информационной системы.

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

Поставленная цель, создание программного обеспечения " Система по ведению учёта деятельности предприятия "Озеленение ", в процессе выполнения курсового проекта достигнута.

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

1. Вендров А.М. Проектирование программного обеспечения экономических информационных систем: Учебник. - 2-е изд., перераб. и доп.- М.: Финансы и статистика, 2006. - 544 с.

2. Маклаков С.В. BPwin и ERwin. CASE-средства разработки информационных систем. - М.: Диалог-МИФИ, 2007. - 304 с.

3. http://www.info-system.ru/designing/methodology/dfd/dfd_theory_dfd.html - Сайт «Проектирование и разработка автоматизированных, информационных и аналитических систем».

4. Файзрахманов Р. А., Селезнев К. А. Учебное пособие к практическим занятиям «Структурно функциональный подход к проектированию информационных технологий и автоматизированных систем с использованием CASE-средств» / Перм. гос. техн. ун-т. -Пермь, 2005. - 245 с.

5. Бойко В.В., Савинков В.М. Проектирование баз данных информационных систем. - М.: Финансы и статистика, 1989.

6. ГрадиБуч, Джеймс Рамбо, Ивар Якобсон. Язык UML Руководство пользователя второе издание. Перевод с английского Мухин Н.М.: ДМК Пресс, Москва 2006 год.

ПРИЛОЖЕНИЕ 1. КОД ПРОГРАММЫ

разработка программный обеспечение

Текст основного модуля

FORM 1

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

namespace Flore

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void выходToolStripMenuItem_Click(object sender, EventArgs e)

{

Application.Exit();

}

private void должностьToolStripMenuItem_Click(object sender, EventArgs e)

{

Form2 frm = new Form2();

frm.Show();

}

private void клиентToolStripMenuItem_Click(object sender, EventArgs e)

{

Form3 frm = new Form3();

frm.Show();

}

private void поставщикToolStripMenuItem_Click(object sender, EventArgs e)

{

Form4 frm = new Form4();

frm.Show();

}

private void Form1_Load(object sender, EventArgs e)

{

}

private void товарToolStripMenuItem_Click(object sender, EventArgs e)

{

Form5 frm = new Form5();

frm.Show();

}

private void услугиToolStripMenuItem_Click(object sender, EventArgs e)

{

Form6 frm = new Form6();

frm.Show();

}

private void сотрудникToolStripMenuItem_Click(object sender, EventArgs e)

{

Form7 frm = new Form7();

frm.Show();

}

private void поставкаToolStripMenuItem_Click(object sender, EventArgs e)

{

Form8 frm = new Form8();

frm.Show();

}

private void складToolStripMenuItem_Click(object sender, EventArgs e)

{

Form9 frm = new Form9();

frm.Show();

}

private void заказЦветовToolStripMenuItem_Click(object sender, EventArgs e)

{

Form10 frm = new Form10();

frm.Show();

}

private void заказУслугToolStripMenuItem_Click(object sender, EventArgs e)

{

Form11 frm = new Form11();

frm.Show();

}

private void toolStripMenuItem2_Click(object sender, EventArgs e)

{

Form12 frm = new Form12();

frm.Show();

}

private void отчетыToolStripMenuItem_Click(object sender, EventArgs e)

{

}

private void заказыНаУслугиToolStripMenuItem_Click(object sender, EventArgs e)

{

Form13 frm = new Form13();

frm.Show();

}

}

}

FORM 2

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

namespace Flore

{

public partial class Form2 : Form

{

public Form2()

{

InitializeComponent();

}

private void должностьBindingNavigatorSaveItem_Click(object sender, EventArgs e)

{

this.Validate();

this.должностьBindingSource.EndEdit();

this.tableAdapterManager.UpdateAll(this.floreDataSet);

}

private void Form2_Load(object sender, EventArgs e)

{

// TODO: данная строка кода позволяет загрузить данные в таблицу "floreDataSet.Должность". При необходимости она может быть перемещена или удалена.

this.должностьTableAdapter.Fill(this.floreDataSet.Должность);

}

private void должностьDataGridView_CellContentClick(object sender, DataGridViewCellEventArgs e)

{

}

}

}

FORM 3

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

namespace Flore

{

public partial class Form3 : Form

{

public Form3()

{

InitializeComponent();

}

private void клиентBindingNavigatorSaveItem_Click(object sender, EventArgs e)

{

this.Validate();

this.клиентBindingSource.EndEdit();

this.tableAdapterManager.UpdateAll(this.floreDataSet);

}

private void Form3_Load(object sender, EventArgs e)

{

// TODO: данная строка кода позволяет загрузить данные в таблицу "floreDataSet.Клиент". При необходимости она может быть перемещена или удалена.

this.клиентTableAdapter.Fill(this.floreDataSet.Клиент);

}

}

}

FORM 4

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

namespace Flore

{

public partial class Form4 : Form

{

public Form4()

{

InitializeComponent();

}

private void поставщикBindingNavigatorSaveItem_Click(object sender, EventArgs e)

{

this.Validate();

this.поставщикBindingSource.EndEdit();

this.tableAdapterManager.UpdateAll(this.floreDataSet);

}

private void Form4_Load(object sender, EventArgs e)

{

// TODO: данная строка кода позволяет загрузить данные в таблицу "floreDataSet.Поставщик". При необходимости она может быть перемещена или удалена.

this.поставщикTableAdapter.Fill(this.floreDataSet.Поставщик);

}

}

}

FORM 5

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

namespace Flore

{

public partial class Form5 : Form

{

public Form5()

{

InitializeComponent();

}

private void товарBindingNavigatorSaveItem_Click(object sender, EventArgs e)

{

this.Validate();

this.товарBindingSource.EndEdit();

this.tableAdapterManager.UpdateAll(this.floreDataSet);

}

private void Form5_Load(object sender, EventArgs e)

{

// TODO: данная строка кода позволяет загрузить данные в таблицу "floreDataSet.Товар". При необходимости она может быть перемещена или удалена.

this.товарTableAdapter.Fill(this.floreDataSet.Товар);

}

}

}

FORM 6

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

namespace Flore

{

public partial class Form6 : Form

{

public Form6()

{

InitializeComponent();

}

private void услугиBindingNavigatorSaveItem_Click(object sender, EventArgs e)

{

this.Validate();

this.услугиBindingSource.EndEdit();

this.tableAdapterManager.UpdateAll(this.floreDataSet);

}

private void Form6_Load(object sender, EventArgs e)

{

// TODO: данная строка кода позволяет загрузить данные в таблицу "floreDataSet.Услуги". При необходимости она может быть перемещена или удалена.

this.услугиTableAdapter.Fill(this.floreDataSet.Услуги);

}

}

}

FORM 7

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.SqlClient;

namespace Flore

{

public partial class Form7 : Form

{

public Form7()

{

InitializeComponent();

}

private void Form7_Load(object sender, EventArgs e)

{

// TODO: данная строка кода позволяет загрузить данные в таблицу "floreDataSet.Сотрудник". При необходимости она может быть перемещена или удалена.

this.сотрудникTableAdapter.Fill(this.floreDataSet.Сотрудник);

// TODO: данная строка кода позволяет загрузить данные в таблицу "floreDataSet.Должность". При необходимости она может быть перемещена или удалена.

this.должностьTableAdapter.Fill(this.floreDataSet.Должность);

}

private void button1_Click(object sender, EventArgs e)

{

DataSet dset = new DataSet(); //Создание нового экземпляра класса для связи с БД

SqlConnection con = new SqlConnection("Data Source=Taz-ПК\\SQLSERVER2008;Initial Catalog=flore;Integrated Security=True");

//Подключение к БД, кэширование данных

con.Open(); // Открывается подключение

SqlCommand task = new SqlCommand("Insert into Сотрудник(Фио,Код_должности,Контактные_данные,Паспортные_данные) Values(@b, @c, @d,@e)", con);

// Создается инструкция Transact-SQL для добавления

task.Parameters.Add("@b", SqlDbType.Char);

task.Parameters.Add("@c", SqlDbType.Int);

task.Parameters.Add("@d", SqlDbType.Text);

task.Parameters.Add("@e", SqlDbType.Text);

// Создание переменных

task.Parameters["@b"].Value = Convert.ToString(textBox2.Text);

task.Parameters["@c"].Value = comboBox1.SelectedValue;

task.Parameters["@d"].Value = Convert.ToString(textBox3.Text);

task.Parameters["@e"].Value = Convert.ToString(textBox4.Text);

// Присваивание этим переменным значения

task.ExecuteNonQuery(); // Выполнение запроса

con.Close();//Закрывается соединение

textBox2.Text = "";

textBox3.Text = "";

textBox4.Text = "";

// Присваиваем полям пустые значения для очистки

}

}

}

FORM 8

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.SqlClient;

namespace Flore

{

public partial class Form8 : Form

{

public Form8()

{

InitializeComponent();

}

private void Form8_Load(object sender, EventArgs e)

{

// TODO: данная строка кода позволяет загрузить данные в таблицу "floreDataSet.Поставка". При необходимости она может быть перемещена или удалена.

this.поставкаTableAdapter.Fill(this.floreDataSet.Поставка);

// TODO: данная строка кода позволяет загрузить данные в таблицу "floreDataSet.Товар". При необходимости она может быть перемещена или удалена.

this.товарTableAdapter.Fill(this.floreDataSet.Товар);

// TODO: данная строка кода позволяет загрузить данные в таблицу "floreDataSet.Поставщик". При необходимости она может быть перемещена или удалена.

this.поставщикTableAdapter.Fill(this.floreDataSet.Поставщик);

}

private void button1_Click(object sender, EventArgs e)

{

DataSet dset = new DataSet(); //Создание нового экземпляра класса для связи с БД

SqlConnection con = new SqlConnection("Data Source=Taz-ПК\\SQLSERVER2008;Initial Catalog=flore;Integrated Security=True");

//Подключение к БД, кэширование данных

con.Open(); // Открывается подключение

SqlCommand task = new SqlCommand("Insert into Поставка(Код_поставщика,Код_товара,Количество,Дата_поставки) Values(@a, @b, @c, @d) Update dbo.Склад Set dbo.Склад.Количество = dbo.Склад.Количество + @c Where dbo.Склад.Код_товара = @b", con);

// Создается инструкция Transact-SQL для добавления

task.Parameters.Add("@a", SqlDbType.Int);

task.Parameters.Add("@b", SqlDbType.Int);

task.Parameters.Add("@c", SqlDbType.Int);

task.Parameters.Add("@d", SqlDbType.DateTime);

// Создание переменных

task.Parameters["@a"].Value = comboBox1.SelectedValue;

task.Parameters["@b"].Value = comboBox2.SelectedValue;

task.Parameters["@c"].Value = Convert.ToInt32(textBox1.Text);

task.Parameters["@d"].Value = dateTimePicker1.Value;

// Присваивание этим переменным значения

// SqlCommand tasks = new SqlCommand("SELECT (dbo.Склад.Количество + dbo.Поставка.Количество) AS dbo.Склад.Количество FROM dbo.Склад, dbo.Поставка WHERE dbo.Склад.Код_товара=dbo.Поставка.Код_товара", con);

task.ExecuteNonQuery(); // Выполнение запроса

con.Close();//Закрывается соединение

textBox1.Text = "";

// Присваиваем полям пустые значения для очистки

// SqlCommand task = new SqlCommand ("SELECT (dbo.Склад.Количество + dbo.Поставка.Количество) AS dbo.Склад.Количество FROM dbo.Склад, dbo.Поставка WHERE dbo.Склад.Код_товара=dbo.Поставка.Код_товара", con); // Запрос для заполнения DataSet с фильтрацией

}

}

}

FORM 9

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.SqlClient;

namespace Flore

{

public partial class Form9 : Form

{

public Form9()

{

InitializeComponent();

}

private void Form9_Load(object sender, EventArgs e)

{

// TODO: данная строка кода позволяет загрузить данные в таблицу "floreDataSet.Склад". При необходимости она может быть перемещена или удалена.

this.складTableAdapter.Fill(this.floreDataSet.Склад);

// TODO: данная строка кода позволяет загрузить данные в таблицу "floreDataSet.Товар". При необходимости она может быть перемещена или удалена.

this.товарTableAdapter.Fill(this.floreDataSet.Товар);

}

private void button1_Click(object sender, EventArgs e)

{

DataSet dset = new DataSet(); //Создание нового экземпляра класса для связи с БД

SqlConnection con = new SqlConnection("Data Source=Taz-ПК\\SQLSERVER2008;Initial Catalog=flore;Integrated Security=True");

//Подключение к БД, кэширование данных

con.Open(); // Открывается подключение

SqlCommand task = new SqlCommand("Insert into Склад(Код_товара, Количество) Values(@a, @b)", con);

// Создается инструкция Transact-SQL для добавления

task.Parameters.Add("@a", SqlDbType.Int);

task.Parameters.Add("@b", SqlDbType.Int);

// Создание переменных

task.Parameters["@a"].Value = comboBox1.SelectedValue;

task.Parameters["@b"].Value = Convert.ToInt32(textBox1.Text);

// Присваивание этим переменным значения

task.ExecuteNonQuery(); // Выполнение запроса

con.Close();//Закрывается соединение

textBox1.Text = "";

// Присваиваем полям пустые значения для очистки

}

private void button2_Click(object sender, EventArgs e)

{

SqlCommandBuilder comb; // Для генерирования однотабличных команд создается компонент

DataSet dset = new DataSet();

DataTable dt = new DataTable();

SqlConnection con = new SqlConnection("Data Source=TAZ-ПК\\SQLSERVER2008;Initial Catalog=flore;Integrated Security=True");

con.Open();

SqlDataAdapter da = new SqlDataAdapter("SELECT dbo.Товар.Наименование AS Наименование, dbo.Товар.Стоимость_за_ед AS Стоимость_за_ед, dbo.Склад.Количество AS Количество FROM dbo.Склад INNER JOIN dbo.Товар ON dbo.Товар.Код_товара = dbo.Склад.Код_товара GROUP BY Наименование, Количество, Стоимость_за_ед ORDER BY Наименование", con); // Запрос для заполнения DataSet с фильтрацией

comb = new SqlCommandBuilder(da); // Инициализация экземпляра класса для построения команд

da.Fill(dt); // Загрузка данных в DataSet

dataGridView1.DataSource = dt;

con.Close();

}

}

}

FORM 10

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.SqlClient;

namespace Flore

{

public partial class Form10 : Form

{

public Form10()

{

InitializeComponent();

}

private void Form10_Load(object sender, EventArgs e)

{

// TODO: данная строка кода позволяет загрузить данные в таблицу "floreDataSet.Заказ_цветов". При необходимости она может быть перемещена или удалена.

this.заказ_цветовTableAdapter.Fill(this.floreDataSet.Заказ_цветов);

// TODO: данная строка кода позволяет загрузить данные в таблицу "floreDataSet.Клиент". При необходимости она может быть перемещена или удалена.

this.клиентTableAdapter.Fill(this.floreDataSet.Клиент);

// TODO: данная строка кода позволяет загрузить данные в таблицу "floreDataSet.Сотрудник". При необходимости она может быть перемещена или удалена.

this.сотрудникTableAdapter.Fill(this.floreDataSet.Сотрудник);

// TODO: данная строка кода позволяет загрузить данные в таблицу "floreDataSet.Товар". При необходимости она может быть перемещена или удалена.

this.товарTableAdapter.Fill(this.floreDataSet.Товар);

}

private void button2_Click(object sender, EventArgs e)

{

SqlCommandBuilder comb; // Для генерирования однотабличных команд создается компонент

DataSet dset = new DataSet();

DataTable dt = new DataTable();

SqlConnection con = new SqlConnection("Data Source=TAZ-ПК\\SQLSERVER2008;Initial Catalog=flore;Integrated Security=True");

con.Open();

SqlDataAdapter da = new SqlDataAdapter("SELECT dbo.Товар.Наименование AS Наименование, dbo.Товар.Стоимость_за_ед AS Стоимость_за_ед, dbo.Склад.Количество AS Количество FROM dbo.Склад INNER JOIN dbo.Товар ON dbo.Товар.Код_товара = dbo.Склад.Код_товара GROUP BY Наименование, Количество, Стоимость_за_ед ORDER BY Наименование", con); // Запрос для заполнения DataSet с фильтрацией

comb = new SqlCommandBuilder(da); // Инициализация экземпляра класса для построения команд

da.Fill(dt); // Загрузка данных в DataSet

dataGridView1.DataSource = dt;

con.Close();

}

private void button1_Click(object sender, EventArgs e)

{

DataSet dset = new DataSet(); //Создание нового экземпляра класса для связи с БД

SqlConnection con = new SqlConnection("Data Source=Taz-ПК\\SQLSERVER2008;Initial Catalog=flore;Integrated Security=True");

//Подключение к БД, кэширование данных

con.Open(); // Открывается подключение

SqlCommand task = new SqlCommand("Insert into Заказ_цветов(Код_товара,Код_сотрудника,Код_клиента,Дата_заказа,Количество) Values(@b, @c, @d, @e,@f) Update dbo.Склад Set dbo.Склад.Количество = dbo.Склад.Количество - @f Where dbo.Склад.Код_товара = @b", con);

// Создается инструкция Transact-SQL для добавления

task.Parameters.Add("@b", SqlDbType.Int);

task.Parameters.Add("@c", SqlDbType.Int);

task.Parameters.Add("@d", SqlDbType.Int);

task.Parameters.Add("@e", SqlDbType.DateTime);

task.Parameters.Add("@f", SqlDbType.Int);

// Создание переменных

task.Parameters["@b"].Value = comboBox1.SelectedValue;

task.Parameters["@c"].Value = comboBox2.SelectedValue;

task.Parameters["@d"].Value = comboBox3.SelectedValue;

task.Parameters["@e"].Value = dateTimePicker1.Value;

task.Parameters["@f"].Value = Convert.ToInt32(textBox2.Text);

// Присваивание этим переменным значения

task.ExecuteNonQuery(); // Выполнение запроса

con.Close();//Закрывается соединение

textBox2.Text = "";

// Присваиваем полям пустые значения для очистки

}

}

}

FORM 11

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.SqlClient;

namespace Flore

{

public partial class Form11 : Form

{

public Form11()

{

InitializeComponent();

}

private void Form11_Load(object sender, EventArgs e)

{

// TODO: данная строка кода позволяет загрузить данные в таблицу "floreDataSet.Товар". При необходимости она может быть перемещена или удалена.

this.товарTableAdapter.Fill(this.floreDataSet.Товар);

// TODO: данная строка кода позволяет загрузить данные в таблицу "floreDataSet.Заказ_услуг". При необходимости она может быть перемещена или удалена.

this.заказ_услугTableAdapter.Fill(this.floreDataSet.Заказ_услуг);

// TODO: данная строка кода позволяет загрузить данные в таблицу "floreDataSet.Клиент". При необходимости она может быть перемещена или удалена.

this.клиентTableAdapter.Fill(this.floreDataSet.Клиент);

// TODO: данная строка кода позволяет загрузить данные в таблицу "floreDataSet.Сотрудник". При необходимости она может быть перемещена или удалена.

this.сотрудникTableAdapter.Fill(this.floreDataSet.Сотрудник);

// TODO: данная строка кода позволяет загрузить данные в таблицу "floreDataSet.Услуги". При необходимости она может быть перемещена или удалена.

this.услугиTableAdapter.Fill(this.floreDataSet.Услуги);

}

private void button1_Click(object sender, EventArgs e)

{

DataSet dset = new DataSet(); //Создание нового экземпляра класса для связи с БД

SqlConnection con = new SqlConnection("Data Source=Taz-ПК\\SQLSERVER2008;Initial Catalog=flore;Integrated Security=True");

//Подключение к БД, кэширование данных

con.Open(); // Открывается подключение

SqlCommand task = new SqlCommand("Insert into Заказ_услуг(Код_товара,Код_услуги,Количество,Код_сотрудника,Код_клиента,Дата_заказа) Values(@a, @b, @c, @d, @e,@f)", con);

// Создается инструкция Transact-SQL для добавления

task.Parameters.Add("@a", SqlDbType.Int);

task.Parameters.Add("@b", SqlDbType.Int);

task.Parameters.Add("@c", SqlDbType.Int);

task.Parameters.Add("@d", SqlDbType.Int);

task.Parameters.Add("@e", SqlDbType.Int);

task.Parameters.Add("@f", SqlDbType.DateTime);

// Создание переменных

task.Parameters["@a"].Value = comboBox4.SelectedValue;

task.Parameters["@b"].Value = comboBox1.SelectedValue;

task.Parameters["@c"].Value = Convert.ToInt32(textBox2.Text);

task.Parameters["@d"].Value = comboBox2.SelectedValue;

task.Parameters["@e"].Value = comboBox3.SelectedValue;

task.Parameters["@f"].Value = dateTimePicker1.Value;

// Присваивание этим переменным значения

task.ExecuteNonQuery(); // Выполнение запроса

con.Close();//Закрывается соединение

textBox2.Text = "";

// Присваиваем полям пустые значения для очистки

}

private void textBox2_TextChanged(object sender, EventArgs e)

{

}

}

}

FORM 12

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.SqlClient;

namespace Flore

{

public partial class Form12 : Form

{

public Form12()

{

InitializeComponent();

}

private void Form12_Load(object sender, EventArgs e)

{

// TODO: данная строка кода позволяет загрузить данные в таблицу "floreDataSet.Клиент". При необходимости она может быть перемещена или удалена.

this.клиентTableAdapter.Fill(this.floreDataSet.Клиент);

}

private void button1_Click(object sender, EventArgs e)

{

SqlCommandBuilder comb; // Для генерирования однотабличных команд создается компонент

DataSet dset = new DataSet(); //Создание нового экземпляра класса для связи с БД

DataTable dt = new DataTable(); //для отображения таблицы

SqlConnection con = new SqlConnection("Data Source=TAZ-ПК\\SQLSERVER2008;Initial Catalog=flore;Integrated Security=True");

con.Open(); // Открывается подключение

SqlDataAdapter da = new SqlDataAdapter("SELECT SUM(dbo.Заказ_цветов.Количество * dbo.Товар.Стоимость_за_ед) AS Стоимость FROM dbo.Товар INNER JOIN dbo.Заказ_цветов ON dbo.Заказ_цветов.Код_товара = dbo.Товар.Код_товара INNER JOIN dbo.Сотрудник ON dbo.Заказ_цветов.Код_сотрудника = dbo.Сотрудник.Код_сотрудника INNER JOIN dbo.Клиент ON dbo.Заказ_цветов.Код_Клиента = dbo.Клиент.Код_клиента WHERE dbo.Заказ_цветов.Дата_заказа between '" + dateTimePicker1.Value.Date + "' and '" + dateTimePicker1.Value.Date.AddHours(23).AddMinutes(59).AddSeconds(59) + "' and dbo.Заказ_цветов.Код_клиента = '" + comboBox1.SelectedValue + "' ORDER BY Стоимость", con); // Запрос для заполнения DataSet

comb = new SqlCommandBuilder(da); // Инициализация экземпляра класса для построения команд

da.Fill(dset, "Заказ"); // Загрузка данных в DataSet

dataGridView1.DataSource = dset.Tables[0]; // Привязка к источнику данных

con.Close();//Закрывается соединение }

}

private void button2_Click(object sender, EventArgs e)

{

SqlCommandBuilder comb; // Для генерирования однотабличных команд создается компонент

DataSet dset = new DataSet(); //Создание нового экземпляра класса для связи с БД

DataTable dt = new DataTable(); //для отображения таблицы

SqlConnection con = new SqlConnection("Data Source=TAZ-ПК\\SQLSERVER2008;Initial Catalog=flore;Integrated Security=True");

con.Open(); // Открывается подключение

SqlDataAdapter da = new SqlDataAdapter("SELECT dbo.Товар.Наименование AS Наименование, dbo.Товар.Стоимость_за_ед AS Стоимость_за_ед, dbo.Заказ_цветов.Количество AS Количество, SUM(dbo.Заказ_цветов.Количество * dbo.Товар.Стоимость_за_ед) AS Стоимость, dbo.Заказ_цветов.Дата_заказа AS Дата_заказа, dbo.Сотрудник.ФИО AS ФИО_Сотрудника, dbo.Клиент.ФИО AS ФИО_Клиента FROM dbo.Товар INNER JOIN dbo.Заказ_цветов ON dbo.Заказ_цветов.Код_товара = dbo.Товар.Код_товара INNER JOIN dbo.Сотрудник ON dbo.Заказ_цветов.Код_сотрудника = dbo.Сотрудник.Код_сотрудника INNER JOIN dbo.Клиент ON dbo.Заказ_цветов.Код_Клиента = dbo.Клиент.Код_клиента GROUP BY Наименование, Стоимость_за_ед, Количество, Дата_заказа, dbo.Сотрудник.ФИО, dbo.Клиент.ФИО ORDER BY Дата_заказа", con); // Запрос для заполнения DataSet

comb = new SqlCommandBuilder(da); // Инициализация экземпляра класса для построения команд

da.Fill(dset, "Заказ"); // Загрузка данных в DataSet

dataGridView1.DataSource = dset.Tables[0]; // Привязка к источнику данных

con.Close();//Закрывается соединение }

}

private void button3_Click(object sender, EventArgs e)

{

SqlCommandBuilder comb; // Для генерирования однотабличных команд создается компонент

DataSet dset = new DataSet(); //Создание нового экземпляра класса для связи с БД

DataTable dt = new DataTable(); //для отображения таблицы

SqlConnection con = new SqlConnection("Data Source=TAZ-ПК\\SQLSERVER2008;Initial Catalog=flore;Integrated Security=True");

con.Open(); // Открывается подключение

SqlDataAdapter da = new SqlDataAdapter("SELECT dbo.Товар.Наименование AS Наименование, dbo.Товар.Стоимость_за_ед AS Стоимость_за_ед, dbo.Заказ_цветов.Количество AS Количество, SUM(dbo.Заказ_цветов.Количество * dbo.Товар.Стоимость_за_ед) AS Стоимость, dbo.Заказ_цветов.Дата_заказа AS Дата_заказа, dbo.Сотрудник.ФИО AS ФИО_Сотрудника, dbo.Клиент.ФИО AS ФИО_Клиента FROM dbo.Товар INNER JOIN dbo.Заказ_цветов ON dbo.Заказ_цветов.Код_товара = dbo.Товар.Код_товара INNER JOIN dbo.Сотрудник ON dbo.Заказ_цветов.Код_сотрудника = dbo.Сотрудник.Код_сотрудника INNER JOIN dbo.Клиент ON dbo.Заказ_цветов.Код_Клиента = dbo.Клиент.Код_клиента WHERE dbo.Заказ_цветов.Дата_заказа between '" + dateTimePicker1.Value.Date + "' and '" + dateTimePicker1.Value.Date.AddHours(23).AddMinutes(59).AddSeconds(59) + "' and dbo.Заказ_цветов.Код_клиента = '" + comboBox1.SelectedValue + "' GROUP BY Наименование, Стоимость_за_ед, Количество, Дата_заказа, dbo.Сотрудник.ФИО, dbo.Клиент.ФИО ORDER BY Дата_заказа", con); // Запрос для заполнения DataSet

comb = new SqlCommandBuilder(da); // Инициализация экземпляра класса для построения команд

...

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

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