
- •Содержание
- •Введение
- •Цель лабораторной работы
- •Задачи лабораторной работы
- •Задание
- •Методика выполнения задания
- •Этап 1. Анализ требований к приложению и проектирование интерфейса
- •Информационная модель базы данных
- •Структура главного меню
- •Этап 2. Создание проекта
- •Этап 3. Подключение к базе данных
- •Выбор объектов базы данных
- •Этап 4. Создание представлений данных
- •Свойства TableAdapter
- •Этап 5. Создание запросов с параметрами
- •Ввод sql запроса
- •Этап 6. Отображение таблиц в приложении
- •Способ 1
- •Выбор источника данных
- •Способ 2
- •Панель инструментов BindingNavigator
- •Этап 7. Взаимодействие двух связанных таблиц в приложении
- •Этап 8. Связывание полей таблицы с элементами управления
- •Компонент NumericUpDown
- •Компонент DateTimePicker
- •Компонент ComboBox
- •Этап 9. Поиск (фильтрация данных)
- •Этап 10. Проверка введённых данных. Обработка ошибок
- •Этап 11. Создание форм справочников
- •Справочник клиентов Этап 12. Создание отчётов
- •Редактирование выражения для поля Text Box
- •Связь компонента ReportViewer с отчётом.
- •Форма с отчётом
- •Критерии результативности выполнения лабораторной работы
- •Контрольные вопросы
- •Список литературы
Структура главного меню
Приложение должно обеспечивать следующую функциональность:
ведение справочников товаров, категорий товаров, измерений количества товаров, поставщиков товаров, клиентов, категорий клиентов;
регистрацию поступления товаров на склад в виде приходных накладных,
регистрацию заказов покупателей, в том числе покупок, совершённых в рамках каждого заказа;
возможность заполнения родительских таблиц (справочников) через формы (окна) дочерних таблиц;
фильтрация (поиск) данных в таблицах по нескольким полям (где уместно);
все формы должны содержать кнопки «Выход» или кнопки «Готово»/«Отмена», если форма открывается для заполнения родительской таблицы (справочника);
вывод отчётов по деятельности магазина в готовом для печати виде.
Предполагается, что база данных уже разработана и хранится на работающем сервере СУБД Microsoft SQL Server (см. лабораторные работы № 1-4).
Главное окно готового рассматриваемого на примере приложения имеет следующий вид:
Главное окно приложения
Этап 2. Создание проекта
Для создания нового приложения запустите среду разработки Microsoft Visual Studio и вызовите пункт меню File->New->Project… .
В появившемся окне найдите Visual C#, выберите подпункт Windows. В открывшемся списке выберите Windows Forms Application, дайте имя проекту и нажмите «OK».
Создание нового проекта
Этап 3. Подключение к базе данных
Для подключения к источнику данных вызовите пункт меню «Data->Add new Data Source…» (Данные->Добавить новый источник данных).
Выбор типа источника данных
Выберите пункт «Database» (База данных) и нажмите «Next».
Выбор модели базы данных
Выберите пункт «Dataset» (Набор данных) и нажмите «Next».
Соединение с базой данных
Нажмите кнопку «New Connection…» (Новое подключение)
Новое подключение
Если в поле «Data Source» стоит значение, отличное от Microsoft SQL Server (SqlClient), нажмите кнопку «Change…» (Изменить). В появившемся диалоге выберите нужный пункт и нажмите «OK».
Выбор источника данных
Вернувшись в диалог «Add Connection» (рис. 8), укажите сервер, на котором находится СУБД. Если сервер СУБД находится на том же компьютере, на котором ведётся разработка и планируется дальнейшая работа приложения, достаточно написать localhost. Выберите тип аутентификации и нажмите кнопку «Test Connection» для проверки соединения. Из выпадающего списка выберите свою базу данных и нажмите «OK».
В мастере «Data Source Configuration Wizard» (Мастер настроек источника данных, рис. 10) выберите необходимые объекты (таблицы, представления, хранимые процедуры, функции) и нажмите кнопку «Finish».
Выбор объектов базы данных
После выполнения всех вышеописанных действий в приложение будет добавлен новый набор данных, который будет храниться в файле с расширением *.xsd (в нашем случае это shopDataSet.xsd). Если открыть этот файл в среде Visual Studio через всплывающее окно Solution Explorer, мы увидим схему тех объектов, которые мы добавили на этапе создания набора данных (рис. 11). В том случае, если кроме таблиц и представлений были добавлены функции и хранимые процедуры, для них будут сгенерированы соответствующие программные методы, которые позволят обращаться к ним как к обычным процедурам и функциям, используя типы данных C# для входных и выходных параметров. Здесь также можно создавать новые представления, которые будут доступны только нашему приложению (они не будут храниться на сервере БД).
Схема набора данных