Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Правила и порядок создания объектного документа

Читайте также:
  1. HTML. Структура документа.
  2. I. Порядок организации работ по выбору показателей химического состава питьевой воды
  3. II. Порядок ведения журнала поездных телефонограмм
  4. II. ПОРЯДОК ПРИМЕНЕНИЯ НАКОПИТЕЛЬНОЙ БАЛЛЬНО-РЕЙТИНГОВОЙ СИСТЕМЫ В УЧЕБНОМ ПРОЦЕССЕ
  5. II. Порядок составления рабочей программы производственного контроля качества питьевой воды
  6. III. Порядок действий при неисправностях автоблокировки
  7. III. Порядок допуска и сдачи экзаменов и зачетов
  1. Создайте стандартное приложение Delphi и сохраните проект.
  2. Установите в форму компонент ClientDataSet1.
  3. Выберите свойство FieldDefs компонента ClientDataSet1 (рис. 2).
Рис. 2 Выбор свойства FieldDefs

 

  1. Вызовите редактор определителя полей (рис. 3), выполнив щелчок мышкой по кнопке, расположенной справа от свойства FieldDefs (рис. 1).
Рис. 3 Вид редактора полей свойства FieldDefs

 

  1. Добавьте первое поле главного представления таблицы, выполнив команду Add New (Ins) в редакторе определителя полей.
  2. Измените в инспекторе объектов имя поля DataSet1Field1 на Facultet, в свойстве Data Type выберите значение ftString и в свойстве Size укажите размер = 25 (рис. 4 а, б).
Рис 4 а, б Изменение значений свойств в инспекторе объектов

 

  1. Добавьте второе поле главного представления таблицы, выполнив команду Add New (Ins) в редакторе полей. Данное поле будет являться полем связи с подчиненным представлением таблицы (Nested полем), поэтому в инспекторе объектов переименуйте его в Link и выберите значение fkDataSet в свойстве Data Type (рис. 5).
Рис 5 Установка значений свойств поля Link

 

  1. Для поля Link вызовите редактор вложенных полей, выполнив щелчок мышкой по кнопке свойства ChildDefs в инспекторе объектов (рис. 6).
Рис. 6 Вид редактора полей свойства FieldDefs и ChildDefs

 

  1. В редакторе дочерних полей добавьте первое поле вложенного представления таблицы, выполнив команду Add New (Ins) (рис. 7).
Рис. 7 Вид редактора полей свойства FieldDefs и ChildDefs после создания поля

 

  1. Измените в инспекторе объектов имя поля LinkField1 на Group, в свойстве Data Type выберите значение ftString и в свойстве Size укажите размер = 12 (рис. 8 а, б).
Рис 8 а, б Изменение значений свойств в инспекторе объектов

 

  1. После описания структуры документа необходимо создать DataSet для компонента ClientDataSet. Напомним, что для создания DataSet необходимо выбрать в форме компонент ClientDataSet1 и затем выполнить команду Create Data Set контекстного меню.
  2. Для передачи данных другим DataSet необходимо в редактор полей добавить поля все поля главного представления. Для этого достаточно выполнить двойной щелчок мышкой по компоненту ClientDataSet1 и затем выполнить команду Add All Fields контекстного меню.
  3. После создания DataSet сохраните созданную структуру в XML пакетном файле с именем Document, выполнив команду контекстного меню Save To Base XML table.
  4. Для того, что бы компонент ClientDataSet1 был связан с файлом документа необходимо подключить к нему созданный файл посредством свойства FileName.
  5. Для отображения вложенных свойств созданного объекта необходимо установить в форму второй компонент ClientDataSet2, который необходимо связать с компонентом ClientDataSet1 выбрав в свойстве DataSetField компонента ClientDataSet2 значение ClientDataSet1Link.
  6. После выполнения выше указанного действия необходимо добавить вложенные поля документа в ClientDataSet2, выполнив действия аналогичные описанным в пункте 12.
  7. Представление данных в элементах управления выполняется аналогично представлению данных в базах данных. Для представления данных достаточно установить в форму компоненты связи DataSource1 и DataSource2, которые соответственно связать с компонентами ClientDataSet1 и ClientDataSet2 посредством свойства DataSet. Далее установить в форму компоненты DBGrid1 и DBGrid2, которые соответственно связать с DataSource1 и DataSource2 посредством свойства DataSet. Для выполнения команд “Записать”, “Удалить”, “Переместить” и других достаточно установить в форму компоненты – навигаторы (DBNavigator1 и DBNavigator2) которые связать соответственно с компонентами DataSource1 и DataSource2.
  8. Особенностью модификации данных вложенных полей является необходимость выполнения модификации данных в главном представлении, т.е. выполнение команды редактирования данных главного свойства (поля) даже в случае отсутствия необходимости модификации иначе запись в файл не произойдет. В связи с этим фактом необходимо разработать собственный метод, напимер RD:
procedureTForm1.RD; var temp: string; begin temp:= ClientDataSet1Facultet.Value; ClientDataSet1.Edit; ClientDataSet1Facultet.Value:= '***'; ClientDataSet1.Post; ClientDataSet1.Edit; ClientDataSet1Facultet.Value:= temp; ClientDataSet1.Post; end;

 

который продекларировать в одном из разделов объявлений:

private { Private declarations } procedure RD;

 

  1. Для обеспечения корректной работы приложения управления документом вышеуказанный метод необходимо вызывать в обработчиках событий AfterDelete и AfterPost компонента ClientDataSet2.
procedure TForm1.ClientDataSet2AfterDelete(DataSet: TDataSet); begin RD; end;

 

procedure TForm1.ClientDataSet2AfterPost(DataSet: TDataSet); begin RD; end;

 

Создание правильного XML документа (пакета)

Следует отметить тот факт, что созданный нами пакетный файл полностью работоспособный и понятный ClientDataSet он является не плавильным с точки зрения DTD – определителя типа документа и будет непонятен Интернет экспловеру. Устранить этот недостаток возможно с помощью утилиты XML Mapper входящей в поставку Delphi 6,7 версий.

Утилита содержит три окна. В левом окне открывается XML документ. В правом окне открывается XML пакет. В центральном окне представляются атрибуты полей которые можно редактировать перед преобразованием.

Создание правильного пакета сводится к преобразованию пакетного файла в XML документ, определению значений атрибутов полей и обратному преобразованию XML документа в XML пакет.

Определим порядок действий:

  1. В правом окне DataPacket вызовем команду OpenDataPacket и откроем исходный пакет.
  2. Затем выполним команду Select All контекстного меню.
  3. Далее выполним команду XML from Data Packet главного меню Create, которая вызовет окно описания структуры пакета, в котором подтверждаем выполнение командной кнопкой Create. После выполнения данной команды структура пакета отобразится в левом окне утилиты.
  4. Далее удаляем из правого окна исходный документ, выполнив команду Clear контекстного меню.
  5. При необходимости структуру XML документа можно сохранить выполнив команду Save меню File.
  6. Создание XML пакета из XML документа выполняется в обратной последовательности.
  7. Первым действием выполняем команду Select ALL контекстного меню.
  8. Далее в окне Node Properties определяет значение атрибутов для каждого узла и поля. Обратите внимание на тот факт, что для узла Link (в нашем случае) необходимо выбрать значение Nested = true.
  9. После определения значений атрибутов всех полей выполняем команду Data Packet from XML меню Create, которая преобразует XML документ в XML пакет.
  10. После выполнения команды структура правильного XML пакета будет представлена в правом окне.
  11. Последним действием является сохранение файла пакета путем выполнения команды Save data Packet контекстного меню.

После выполнения указанных действий пакетный файл будет понятен как Интернет экспловеру, так и ClientDataSet.

 


Дата добавления: 2015-09-01; просмотров: 71 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Объектная модель документа, реализованная на TClientDataSet| Что вы имеете в виду под словом «нетрадиционные».

mybiblioteka.su - 2015-2024 год. (0.007 сек.)