Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Отчёт по лабораторным.docx
Скачиваний:
2
Добавлен:
18.11.2022
Размер:
1.41 Mб
Скачать

InitializeComponent();

}

private void Form5_Load(object sender, EventArgs e)

{

dataSet21.Clear();

sqlDataAdapter1.Fill(dataSet21.order);

}

private void button1_Click(object sender, EventArgs e)

{

try

{

sqlDataAdapter1.Update(dataSet21.order);

}

catch (System.Data.SqlClient.SqlException s1)

{

if (s1.ErrorCode == -2146232060)

{

MessageBox.Show("Редактирование записей невозможно. В таблице Клиент имеются связанные записи, код клиента должен быть уникальным", "Ошибка", MessageBoxButtons.OK);

dataSet21.Clear();

sqlDataAdapter1.Fill(dataSet21.order);

}

}

}

}

}

Контрольный пример:

Образец главной формы проекта:

Пример обработки исключения на форме Товары:

Пример обработки исключения на форме Компания:

Пример обработки исключения на форме Покупатель:

Пример обработки исключения на форме Заказы:

Лабораторная работа № 9 Создание отчётов с помощью программы Crystal Reports

Задание:

1. Добавить на главную форму проекта элемент управления MenuStrip с пунктом меню «Отчёты» и 5 подменю «Заказы покупателя», «Продажи товаров», «Выбор заказов покупателя», «Выбор заказов по объёму», «Выбор заказов по дате».

2. Добавить в проект 5 форм с названиями, соответствующими пунктам меню.

3. Обеспечить вызов форм через соответствующие пункты меню.

4. Добавить в проект отчёт CrystalReport1 с данными из таблиц order и client, а также отчёт CrystalReport2 с данными из таблиц product и order.

5. Отредактировать созданные отчёты, добавить в отчёт CrystalReport2 поле «Сумма заказа», в котором будет отображаться сумма каждого заказа, в отчёт CrystalReport1 добавить поле «Разница», в котором будет отображаться разница между количеством заказанного и проданного товара.

6. Отобразить на форме Заказы покупателя отчёт CrystalReport1, а на форме Продажи товаров отчёт CrystalReport2.

7. На форме Выбор заказов покупателя при помощи элементов Label и Combobox обеспечить отображение в отчёте CrystalReport1 заказов покупателя, выбранного в списке элемента Combobox.

8. На форме Выбор заказов по объёму при помощи элементов Label, Combobox, TextBox и Button обеспечить отображение в отчёте CrystalReport2 заказов, объём которых больше, меньше либо равно значению, введённому в элемент TextBox.

9. На форме Выбор заказов по объёму при помощи элементов Label, Combobox, MonthCalendar и Button обеспечить отображение в отчёте CrystalReport2 заказов до и после даты, введённой в элемент TextBox.

Текст программы:

Главная форма проекта:

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

namespace Проектирование_интерфейсов__8

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void заказыПокупателяToolStripMenuItem_Click(object sender, EventArgs e)

{

Form f2 = new Form2();

f2.Show();

}

private void продажиТоваровToolStripMenuItem_Click(object sender, EventArgs e)

{

Form f3 = new Form3();

f3.Show();

}

private void выборЗаказовПокупателяToolStripMenuItem_Click(object sender, EventArgs e)

{

Form f4 = new Form4();

f4.Show();

}

private void выборЗаказовПоОбъёмуToolStripMenuItem_Click(object sender, EventArgs e)

{

Form f5 = new Form5();

f5.Show();

}

private void выборЗаказовПоДатеToolStripMenuItem_Click(object sender, EventArgs e)

{

Form f6 = new Form6();

f6.Show();

}

}

}

Форма Заказы покупателя:

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

namespace Проектирование_интерфейсов__8

{

public partial class Form2 : Form

{

public Form2()

{