
- •2 Частина
- •3 Частина
- •1 Частина
- •1 Частина
- •2 Частина
- •1 Частина
- •2 Частина
- •3 Частина
- •4 Частина
- •1 Частина
- •2 Частина
- •3 Частина
- •4 Частина
- •1 Частина
- •2 Частина
- •3 Частина
- •4 Частина
- •Приложение
- •Агент сервера sql Server Compact Edition
- •Часть 1
- •Часть 2
- •Часть 2
- •Часть 3
- •1 Частина
- •2 Частина
- •3 Частина
- •4 Частина
Часть 2
Далее добавляем в проект еще одну форму для отображения данных из второго запроса, добавляем на форму сетку данных, выбираем источник данных, изменяем вид сетки
На главную форму в главное меню добавляем пункт "Результаты запроса", подключаем форму, пишем обработчик событий аналогично предыдущему
Запускаем приложение и просматриваем результаты запроса.
Мы получили приложение, в котором можем просматривать и корректировать информацию. Организуем фильтрацию данных в запросе.
Произведем фильтрацию по содержимому коробки. В текстовое поле будем вводить данные, по нажатию кнопки "Выполнить фильтрацию" будем отображать соответствующие данные в сетке данных, по нажатию кнопки "Отменить фильтрацию" будем отображать полные данные запроса.
Подключим необходимый ресурс
using System::String;
Пропишем следующие обработчики событий по нажатию кнопки "Выполнить фильтрацию"
String^ expression;
expression = "Soder="+"'"+this->textBox1->Text+"'";
this->tt1BindingSource->Filter=expression;
по нажатию кнопки "Отменить фильтрацию"
String^ expression;
expression = "";
this->tt1BindingSource->Filter=expression;
Запустим программу. Проверим работоспособность.
В данный запрос невозможно добавить данные, так как в запрос выбираются данные из двух таблиц. Для того, чтобы добавлять данные в запрос выполним следующие действия.
Добавим на схему данных адаптер таблицы для отображения данных таблицы "Содержимое коробки".
Затем поработаем с представлением на схеме данных, укажем первичный ключ автоинкрементным, укажем с какого значения начинать генерацию первичного ключа. После этого добавим на форму компоненты для работы с представлением, укажем источник данных - новый адаптер таблицы.
Для удобства добавления записей добавим следующие компоненты на форму.
Для ComboBox зададим свойства
Форма примет следующий вид.
Для кнопки "Добавить запись в БД" создадим следующий обработчик событий:
private: System::Void button4_Click(System::Object^ sender, System::EventArgs^ e)
{
DataTable^ sk=this->Pr9DataSet->Sodkor1;
DataRow^ wr = sk->NewRow();
wr["uk_k"]=this->comboBox1->SelectedValue;
wr["Soder"]=(String^)this->textBox2->Text;
wr["Opis"]=(String^)this->textBox3->Text;
wr["Kol"]=int::Parse(this->textBox4->Text);
sk->Rows->Add(wr);
this->Sodkor1TableAdapter->Update(this->Pr9DataSet->Sodkor1);
this->tt1TableAdapter->Fill(this->Pr9DataSet->tt1);
}
Часть 3
Создаем отчет. В Обозревателе решений добавляем новую форму, на форму кладем соответствующий компонент
Выбираем для него пункт Design a new Report
С панели инструментов выбираем компонент Таблица, перетаскиваем во 2 строку таблицы нужные поля из запроса
Если нужно просуммировать значения какого-то поля, то перетаскиваем это поле в 3 строку таблицы
Если вместо суммы нужно создать другую функцию, то кликаем правой кнопкой на ячейке и выбираем построитель функций
Возвращаемся в форму для отчета, выбираем элемент для отображения отчета и нажимая стрелку в углу, как для сетки данных, выбираем файл отчета и источники данных. Получаем следующую форму
Чтобы наш отчет отображался при запуске
добавляем нужный ресурс
using Microsoft::Reporting::WinForms::ReportDataSource;
на открытие формы прописываем код
// TODO: Данная строка кода позволяет загрузить данные в таблицу "Pr9DataSet.tt1". При необходимости она может быть перемещена или удалена.
this->tt1TableAdapter->Fill(this->Pr9DataSet->tt1);
this->reportViewer1->LocalReport->ReportPath = "Report1.rdlc";
ReportDataSource^ ds = gcnew ReportDataSource();
ds->Name = "Pr9DataSet_tt1";
ds->Value = tt1BindingSource;
reportViewer1->LocalReport->DataSources->Add(ds);
this->reportViewer1->RefreshReport();
На форму с запросом добавляем кнопку для просмотра отчета, подключаем форму с отчетом, добавляем обработчик событий для открытия формы с отчетом, как делали это раньше.
Запускаем программу
Практическая работа выполнена.
Задание:
На "3" : Создать приложение для работы с созданной БД для связи главная-детальная, организовать фильтрацию данных.
На "4" : Создать приложение для работы с созданной БД для запроса из двух таблиц и связи главная-детальная, организовать фильтрацию данных.
На "5" : приложение для работы с созданной БД для запроса из двух таблиц и связи главная-детальная, организовать фильтрацию данных, уметь создавать отчет, использовать агрегирующую функцию.
Контрольные вопросы:
Как организовать просмотр и корректировку данных в приложении?
Как организовать запись вносимых изменений в БД на сервере?
Как организовать отображение данных из подчиненной таблицы?
Как создать фильтр?
Какие создать отчет по таблице?
действий при создании приложения для работы с БД?
Практична робота №12
Тема: Розробка інтерфейсу користувача
Мета: Навчитися використанню перевірки даних, що вводяться, відображенням форми, роботі із мультимедіа
Хід роботи: