Предки: TssCustomLinkedDataSet -> TssDataSet.
Цель данного класса – предоставлять дополнительный слой для отображения и редактирования текущего потока вышестоящего DataSet’а.
Особенности реализации свойств и полей данного класса:
| Имя | Тип | Описание |
|---|---|---|
* FSourceDataProducer | Имеет тип TssDataProcessor | |
* KeyField | Если не назначен явно, то берется из MasterDataSet | |
* StreamName | Берется из MasterDataSet | |
+ Mode | TssLinkedDataSetMode | Указание на DataProducer у MasterDataSet, из которого брать исходные данные. |
+ ManualSourceLSQL | String | FSourceDataProducer.LSQL (если Mode = ldmManual) |
+ MasterDataSet | TssDataSet | Вышестоящий DataSet, чьи данные предоставляет данный DataSet. |
Особенности реализации некоторых действий:
Дополнительные действия при Post при CachedUpdate = False.
Данные из кэша данного DataSet помещаются в кэш MasterDataSet.
Кэш данного DataSet очищается.
Если MasterDataSet не в режиме CachedUpdate, то у MasterDataSet вызывается метод ApplyUpdates.
Выполнение ApplyUpdates.
Если в режиме редактирования, то вызов Post.
Если в предыдущем пункте не было передачи данных в MasterDataSet, то передаем данные в MasterDataSet:
Данные из кэша данного DataSet помещаются в кэш MasterDataSet.
Кэш данного DataSet очищается.
У MasterDataSet вызывается метод ApplyUpdates.