Вывод информации из файла в таблицу интерфейса пользователя.

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

  1. Создания объекта DataGridView. Для этого необходимо в дизайнере рабочей формы «WorkForm», из набора основных компонентов перенести компонент DataGridView. При переносе данного объекта на форму откроется окно, где необходимо отключить галочки в соответствии с рисунком. Рис 1.

Вывод информации из файла в таблицу интерфейса пользователя. - student2.ru рис 1.

Также необходимо изменить свойства DataGridView в соответствии с данными в таблице.

Название свойства Заначение
(Name) WorkDataGridView
Dock Fill
  1. В событие рабочей формы «Activated» необходимо добавить следующий код. Для того чтобы в момент когда форма станет активной произошло чтение данных из файла и заполнение объекта DataTable.
private void WorkForm_Activated(object sender, EventArgs e) { try { Program._MainForm.ToolBT_Add.Enabled = _IDocuments.bAdd; … // Подключение хранилища WorkDataGridView.DataSource = _IDocuments.RefreshData(); // Определение Таблицы WorkDataGridView.DataMember = _IDocuments.sTableName;     } catch(Exception ex) { Program._MainForm.ToolBT_Add.Enabled = false; … } }

После того как выполнены данные действия запустим нашу программу и выберем в дереве справочник №1. Должна открыться рабочая форма и отобразиться данные как на рис. 2.

Вывод информации из файла в таблицу интерфейса пользователя. - student2.ru

Рис 2.

Самостоятельно:

11. По аналогии со справочником №1 создать справочник №2.

Файл данных должен быть следующего формата.

Название столбца Заначение
id Уникальный ключ строки
NameOBJ Наименование объекта
Adress Адресс
Telefon Телефон
Fax Факс
Mail Почта

Лабораторная работа №5

Цель: Обеспечить вывод информации для входного документа.

Для выполнения лабораторной работы №5 необходимо выполнить все шаги предыдущих лабораторных работ.

Создание файла с данными.

Для работы с входным документом сделаем файл, в том же хранилище где и файлы справочников, с именем InDoc.dat, структура файла должна выглядеть следующим образом.

id ID_SPR1 DateInCome Count
01.01.2008
01.02.2008
01.03.2008
01.04.2008
01.05.2008
01.06.2008

Разделитель между колонками такой же, как и в справочниках «^».

Таблицы, представления и ключи.

Перед переходом к следующим действиям необходимо разобраться с четырьмя понятиями, которыми в дальнейшем будем использовать.

Таблица – хранилище данных в нашем случае это данные из файлов.

Представление – данные представленные определенным образом. При работе с представлениями данные берутся из различных таблиц и связываются при помощи определенных ключей. Различают два вида ключей первичные и внешние.

Первичный ключ – уникальный номер строки, при котором можно однозначно идентифицировать запись.

Внешний ключ – поле в таблице, при помощи которого, обеспечиваться связь с данными из другой таблицы.

Теперь для построения представления первого входного документа нам понадобиться две таблицы, Spr1.dat и InDoc1.dat. Эти две таблицы связываются между собой при помощи первичного и внешнего ключа. Пирвичный ключ из таблицы Spr1.dat «id» и внешний ключ из таблицы InDoc1.dat «id_spr1». Наше создаваемое представление будет иметь следующий вид.

id NameSP1 WidthSP1 HeightSP1 DateInCome Count
           

Перед выводом данных и построения представления необходимо проделать определенные действия.

Добавление свойств.

Добавим в класс существующих справочников переменную

Вывод информации из файла в таблицу интерфейса пользователя. - student2.ru

Создадим в этих же класса свойство, определяющее имя представления.

Вывод информации из файла в таблицу интерфейса пользователя. - student2.ru

В интерфейсе IDocuments подключим наше свойство, чтоб к нему был доступ.

Вывод информации из файла в таблицу интерфейса пользователя. - student2.ru

В созданную переменную мы запишем имя таблицы, так как для справочников представление создавать мы не будем. В конструкторе каждого класса справочника присвоим значение переменных. Для справочника 1 это

Вывод информации из файла в таблицу интерфейса пользователя. - student2.ru

Для справочника 2 соответствующие данные.

После этого необходимо изменить код события активации формы для рабочей формы. Для этого перейдем в файл реализации WorkForm в событие Activated и изменим, параметр для выводимого объекта из DataSet в GridView, для этого поменяем следующую строку.

Вывод информации из файла в таблицу интерфейса пользователя. - student2.ru

Запустим нашу программу, все функции для справочников, которые мы создали до этого, должны работать.

Класс входного документа.

Так как класс входного документа наследуется от интерфейса IDocuments, в нем должны быть описаны все необходимые переменные и свойства, также необходимо снять комментарий с описания класса (описание конструкора измениться далее по тексту) заказа памяти и секции в событии компонента MainTreeView для класса TInDoc1. При формировании представления для входного документа нам понадобятся данные из справочника 1, для удобства работы с этими данными нам понадобиться передать в класс TInDoc1 ссылку на класс TSpr1.

В файле входного документа подключим два необходимых пространства имен System.IO и System.Data. Создадим все необходимые переменные для класса TInDoc1 по аналогии с представленным далее кодом.

Вывод информации из файла в таблицу интерфейса пользователя. - student2.ru

Далее в этом же классе опишем все необходимые свойства.

Вывод информации из файла в таблицу интерфейса пользователя. - student2.ru

Конструктор класса TInDoc1 должен выглядеть следующим образом.

Вывод информации из файла в таблицу интерфейса пользователя. - student2.ru

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

Вывод информации из файла в таблицу интерфейса пользователя. - student2.ru

Теперь в эту же функцию добавим описание представления для первого входного документа.

Вывод информации из файла в таблицу интерфейса пользователя. - student2.ru

Вывод информации из файла в таблицу интерфейса пользователя. - student2.ru

Вывод информации из файла в таблицу интерфейса пользователя. - student2.ru

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

Для этого сделаем следующую функцию

Вывод информации из файла в таблицу интерфейса пользователя. - student2.ru

Вывод информации из файла в таблицу интерфейса пользователя. - student2.ru

Вывод информации из файла в таблицу интерфейса пользователя. - student2.ru

Вывод информации из файла в таблицу интерфейса пользователя. - student2.ru

Теперь для работы с нашим входным документом необходимо в конструкторе главной формы, где мы заказываем память для классов, указать следующий код для заказа памяти класса TInDoc1.

Вывод информации из файла в таблицу интерфейса пользователя. - student2.ru

После этого запустим программу и вызовем первый входной документ. Должно получиться нечто следующее. Рис 1.

Вывод информации из файла в таблицу интерфейса пользователя. - student2.ru

Рис 1.

Самостоятельно:

Создать второй входной документ, который будет связан с двумя справочниками.

Spr2.dat

id NameOBJ Adress Telefon Fax Mail
Объект 1 Москва ул. дм. 1 123-45-76 123-45-77 [email protected]
Объект 2 Москва ул. дм. 2 123-55-76 123-55-75 [email protected]
Объект 3 Москва ул. дм. 3 123-45-36 123-45-37 [email protected]

InDoc2.dat

id ID_SPR1 ID_SPR2 DateOutCome Count
03.01.2008
03.02.2008
03.03.2008
03.04.2008
03.05.2008
03.06.2008

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

id NameSP1 WidthSP1 HeightSP1 NameOBJ Adress DateOutCome Count
               

Лабораторная работа №6

Наши рекомендации