Составить программу в которой будет реализована работа с таблицей по варианту

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

На неделе нужно было сделать два других варианта курсовых. Поэтому решил описать процесс создания программы, чтобы и следующие работы выполнить быстрее, и описать алгоритм и нюансы работы с базой MS Access на C#. Может быть этот материал будет полезен и Вам. Работы делал в MS Visual Studio 2010, т.к. в наших ВУЗах свежий актуальный софт редкость (да и у студентов тоже). Возможно некоторых проблем не возникнет в более новых версиях студии.

Так выглядит общее задание на разработку программы:

Задание

Функции программы:
— вывод меню функций, выполняемых программой,
— ввод, просмотр, редактирование данных в базе данных (БД), содержащей не менее двух взаимосвязанных таблиц,
— вычисление значений полей в запросах,

Word для начинающих. Работа с таблицей


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

И конкретное задание первого варианта:

Структура данных 1.
Абитуриенты по факультетам и специальностям
Фамилия | Экзаменационные оценки (Математика | Физика | Сочинение) | Сумма баллов
Специальности
Код специальности | Наименование | Факультет
Примечание: выполнить сортировку по убыванию суммы баллов с группировкой по факультетам и специальностям, вычислить количество абитуриентов по факультетам, специальностям, по вузу.

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

Полное задание на курсовой со всеми вариантами заданий: PPP_KP_2013.

Выполнение

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

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

Консолидация (сборка) данных из нескольких таблиц в Excel

Не смотря на то, что в MS Access можно давать имена объектам с пробелом. Делать этого не стоит, т.к. когда я дошел до создания отчетов с помощью компонента ReportViewer, возникли проблемы с полями в названии которых был пробел — имя поля обрезалось до первого слова, и поэтому не смог их использовать в отчетах. Возможно, что проблема есть только в Visual Studio 2010, и в более свежих версиях исправлена — не проверял. Когда с ней столкнулся, решения не нашел, и переделывал все под имена с символом подчеркивания вместо пробела.

Читайте также:
Как создать сценарий программы

Таблицы и формы

Итак проанализировал задание, создал таблицы и связи, заполнил их данными, создал запросы в MS Access. Для первого варианта у меня вышла следующая схема:

Создал интерфейс главной формы в соответствии с вариантом задания (могут быть кнопки, метки, меню, переключатели, вкладки), и остальные 7 форм. Подробно описывать все шаги нет смысла, т.к. код отображения форм, можно взять из любого готового проекта. А вот некоторые действия в визуальном редакторе Visual Studio стоит запомнить.

После добавления первого компонента DataGridView на форму, можно добавить источник данных проекта. В окне ниже обычно отвечал «Да», хотя это не принципиально.

вопрос 1

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

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

Для расположения элемента TabControl во всю ширину/высоту родительского окна необходимо задать свойство Dock.

Согласно моей схеме базы данных между Факультетами и Специальностями связь один-ко-многим (не наоборот!) поэтому сначала выбрал отображение информации о факультетах:

Затем сделал связь факультета со специальностями:
Связь один-ко-многим между Специальностями и Абитуриентами реализовал в приложении:

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

В данном варианте на второй вкладке решил отображать данные об абитуриентах, поскольку они наиболее интересны. Но видимо из-за связи на первой вкладке Абитуриентов со Специальностями , поле Код таблицы Абитуриенты не получилось скрыть — оно просто не реагировало на задание свойства Visible в false. Поматерился на эту фичу и задал минимально возможную ширину в 2px для этого поля.

Далее мне понадобилось вычисляемое поле «Сумма баллов». Его добавил непосредственно в наборе данных DataSet. Для таблицы Абитуриенты добавил новый столбец и определил его свойство Expression: Математика + Физика + Сочинение

Чтобы отобразить в Абитуриентах вместо id значение поля из связанной таблицы Специальности нужно добавить «Непривязанный столбец» в интерфейсе правки столбцов элемента DataGridView, заодно выбрав его тип ComboBox:

Чтобы поле выглядело как обычное текстовое нужно поменять DisplayStyle на Nothing. В списке выбора для этого поля нужно отобразить все данные из таблицы Специальности, поэтому в DataSourse выбираем её непосредственно из набора данных DataSet. Далее настраиваем связь данных: в DisplayMember выбираем поле с названиями для отображения (Специальности.Наименование), в ValueMember — поле с id (Специальности.Код), в DataPropertyName значение id соответствующее ValueMember (Абитуриенты.Специальность).

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

Читайте также:
Как выключить компьютер с сохранением открытых программ

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

Источник: dioved.ru

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

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

Для получения результатов подобрать исходные данные так, чтобы выполнялись все возможные ветви алгоритма. Перед выводом полученного результата должно выводиться сообщение о ветви, при прохождении которой он получен. При выполнении задания предусмотреть выбор вида функции f(x): cos (x), x 3 или e x .

Таблица 2.1 — Варианты индивидуальных заданий

№ варианта Вид функции
1. rez =
2. rez=
3. rez =
4. rez =
5. rez=
6. rez =
7. rez =
8. rez =
9. rez =
10. rez = .
11. rez =
12. rez =
13. rez =

Контрольные вопросы

1. Перечислить действия, реализуемые при выполнении условного оператора if.

2. Какие действия выполняются оператором break?

3. Как организовать разветвление вычислений:

4. Составить последовательность операторов для вычисления величины z =-10, если х ; z = 0, если — 10; z= 10, если х>=10.

5. Зачем необходимо при отладке программы тестировать все ветви алгоритма?

6. Придумайте свой пример использования оператора switch и объясните его работу.

Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:

Источник: studopedia.ru

Цель работы

Целью лабораторной работы является получение практических навыков применения в графическом интерфейсе пользователя шаблона проектирования Model-View-Controller.

Темы для предварительного изучения

• Использование ООП в Си++ • Создание графического интерфейса пользователя • Шаблон проектирования Model-View-Controller

Задание к выполнению

Составить программу, в которой будет реализована работа с таблицей по варианту. Для работы пользователя с таблицей будет использоваться графический интерфейс. При реализации интерфейса должен быть реализован подход Model-View-Controller. Рекомендуется использовать среду Qt.

Варианты индивидуальных заданий

Допускается вариант студента при условии его уникальности и достаточной сложности.

Вариант 1

Некоторые виды антилоп
Название Группа Место обитания Численность популяции
Джейран A Азия 30000
Гну B Африка 560000
Бейза H Африка 2500

Групи: А — настоящие антилопы, B — коровьи антилопы, H — лошадиные антилопи

Вариант 2

Фирмы — производители СКБД
Фирма Количество. продуктов Годовой объем продажи ($) Часть рынка (%)
Oracle 1 2488000000 31.1
IBM 3 2392000000 29.9
Microsoft 2 1048000000 13.1

Примечание: по данным Gartner Group за 1999г

Вариант 3

Отдел кадров
Фамилия Инициалы Год рожд Оклад
Иванов И.И. 1975 517.50
Петренко П.П. 1956 219.10
Паниковский М.С. 1967 300.00

Примечание: оклад установлен по состоянию на 1 января 2000 года

Вариант 4

Ведомость деталей
Наименование Тип Количество Вес 1 детали (г)
Фланец З 3 450
Переходник П 8 74
Станина О 1 117050
Примечание: принято такое кодирование типов: О — оригиналь-
ная, П — покупная, З — заимствованная

Вариант 5

Характеристики ПЭВМ
Процессор Частота (Mgz) RAM (Mb) Тип
Pentium-III 233 C
AMD-К6 166 C
PowerPC-620 2000 R
Тип: C — CISC-процессор, R — RISC-процессор

Вариант 6

Каталог библиотеки
Автор книги Название Год выпуска Группа
Сенкевич Потоп 1978 Х
Ландау Механика 1989 У
Дойль Сумчатые 1990 C
Примечание: Х — художественная литература; У — учебная ли-
тература; С — справочная литература

Вариант 7

Ведомость комплектующих
Обозначение Тип Номинал Количество
RT-11-24 R 100000 12
RT-11-24 R 50000 10
CGU-12K C 17.5 3
Примечание: R — резистор; C — конденсатор

Вариант 8

Проекты поиска внеземных сигналов
Год Научный руководитель Диаметр антенны (м) Рабочая частота (МГц)
1960 Дрейк 26 1420
1970 Троицкий 14 1875
1978 Хоровиц 300 1665
Примечание: наблюдались объекты от 2 звезд до нескольких галактик
Читайте также:
Как написать вопрос в программу что где когда

Вариант 9

Офисные пакеты
Наименование Производитель Количество сост.частей Цена ($)
Office Microsoft 4 870
SmartSute Lotus 5 1020
StarOffice Sun 4 9

Примечание: возможно бесплатно получить продукт StarOffice через Internet

Вариант 10

Сельскохозяйственные культуры
Наименование Тип Посевная площадь (га) Урожайность (ц/га)
Соя Б 13000 45
Чумиза З 8000 17
Рис З 25650 24
Примечание: З — зерновые, Б — бобовые

Вариант 11

Ведомость спортивних состязаний
Фамилия участника Код команды Количество балов Место в итоге
Баландин С 123.7 2
Шишков Ш 79.98 3
Кравченко Д 134.8 1
Примечание: Д — «Динамо», С — «Спартак», Ш — «Шахтер»

Вариант 12

Ведомость общественного транспорта
Вид транспорта № маршрута Протяженность маршрута (км) Время в дороге (мин)
Тр 12 27.55 75
Т-с 17 13.6 57
А 12а 57.3 117
Примечание: Тр — трамвай, Тс — троллейбус, А — автобус

Вариант 13

Приблизительное количество звезд разных спектральных классов в Галактике
Спектральный класс Приблизительная масса (отн.Солнца) Часть % Численность
O 32 0.00002 55000
F 1.25 2.9 12000000000
M 0.2 73.2 293000000000

Примечание: не показаны данные для классов: B, A, G, K

Вариант 14

Время выполнения некоторых программ, которые применяют параллельные алгоритмы

Название прграм- Количество строк Время исп. на SGI Callenge Время исп. на SGI Indy (cек)
мы кода (cек)
OCEAN 1917 8.70 18.2
DYFESM 3386 6.95 22
TRFD 417 1.05 2.98

Примечание: SGI Callenge — ЦП R1000 196 MHz, 1.024 MB RAM SGI Indy — ЦП MIPS R4600 134 MHz, 64 MB RAM

Вариант 15

Конфигурация програмных средств информационных систем
Операционная си- СУБД Мин.объем внеш- Мин.объем опера- Приблизительная цена
стема ней памяти (MB) тивной памяти (MB ($)
OS/2 DB2 130 22 3343
Windows/NT SQLServer 230 24 2685
SCO/Unix Oracle 110 48 3745

Примечание: принималась цена лицензии на 8 пользователей

Вариант 16

Сельскохозяйственные предприятия
Название Вид собственности Площадь земли (га) Кол. работников
Заря Д 300 120
Росинка К 174 27
Петренко Ч 56 6
Вид собственности: Д — государственная, Ч — частная, К — кооперативнfz

Вариант 17

Прайс-лист
Наименование товара Тип товара Цена за 1 шт (грн) Минимальное количество в пар-
тии
Папка К 4.75 4
Бумага К 13.90 10
Калькулятор О 411.00 1

Примечание: К — канцтовары, О — оргтехника

Вариант 18

Вязкость металлов в жидком состоянии
Вещество Атомный номер Температура (град.С) Вязкость (кг/м*сек)
Алюминий 13 700 2.90
Висмут 83 304 1.65
Свинец 82 441 2.11

Примечание: данные даны для температуры плавления

Вариант 19

Коэффициенты теплопроводимости материаллов

Вещество Тип Влажность (%) Коэффициент
Алюминий М 0-100 209.3
Стекловата Т 0-100 0.035
Глина Д 15-20 0.73

Примечание: М — металлы, Т — термоизоляционные материалы, Д — другие материалы

Вариант 20

Скорость звука в жидкостях
Вещество Тип Температура (град.С) Скорость (м/сек)
Анилин Ч 20 1656
Ртуть Ч 20 1451
Кедровое М 29 1406

Тип жидкости: Ч — чистое вещество, М — масло

Вариант 21

Температура перехода веществ в сверхпроводниковое состояние

Вещество Тип Температура
Zn М 0.8-0.8
Pb-Au П 2.0-7.3
NbC С 10.1-10.5

Тип вещества: М — металл, П — сплав, С — соединение

Источник: studfile.net

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru