Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
TP_DB.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
295.42 Кб
Скачать

If (f is Form2)

f2 = (f as Form2);

if (add)

th.sotrudnikiBindingSource.AddNew();

f2.sotrudnikiBindingSource.DataSource = th.sotrudnikiBindingSource;

f2.sotrudnikiBindingSource.Position = th.sotrudnikiBindingSource.Position;

f2.sotrudnikiTableAdapter.Fill(f2.myDBDataSet.Sotrudniki);

if(f2.ShowDialog() == System.Windows.Forms.DialogResult.OK)

th.sotrudnikiTableAdapter.Update(th.myDBDataSet.Sotrudniki);

}

}

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

public void getpodchin(Kontr h, Form4 th)

{

if (h == Kontr.sotrudnik)

{

MyDBDataSet.SotrudnikiRow r = (MyDBDataSet.SotrudnikiRow)((DataRowView)th.sotrudnikiBindingSource.Current).Row;

th.kontrBindingSource.Filter = "name = '" + r.id.ToString() + "'";

}

}

Для того чтобы отключить подчинение необходимо написать:

th.kontrBindingSource.Filter = string.Empty;

Рассмотрим метод для получения связанных данных:

public void getKey(Kontr h,Form1 th,string val)

{

if (h == Kontr.kontr)

{

MyDBDataSet.KontrRow r = (MyDBDataSet.KontrRow)((DataRowView)th.kontrBindingSource.Current).Row;

r.Name = val;

th.kontrBindingSource.EndEdit();

th.kontrTableAdapter.Update(th.myDBDataSet.Kontr);

}

}

И метод для получения отчета:

public void Report(Kontr h, Form1 th,string[] param)

{

if (h==Kontr.kontr)

th.kontrTableAdapter.FillByName(th.myDBDataSet.Kontr, param[0]);

}

Объект управляющего класса объявим как статическое поле в классе Program, чтобы он был доступен из всех форм программы.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]