7.6. TssJoinDataSet

Предки: TssDataSet.

Цель данного класса – предоставить для отображения результат объединения данных из нескольких источников, согласно указанным правилам. Источники данных находятся в свойстве JoinSources типа TssJoinSources. Правила их объединения – в свойстве FromLSQL типа string. Подробности описаны в разделе, посвящённом классу TssJoinDataProducer.

Особенности реализации свойств и полей класса TssJoinDataSet:

ИмяТипОписание
* FSourceDataProducerИмеет тип TssJoinDataProducer
* KeyFieldЕсли не назначен явно, то берется из FSourceDataProducer.KeyField
* StreamNameБерется из FSourceDataProducer. poMasterJoinSource.StreamName
+ JoinSourcesTssJoinSourcesСписок источников с исходными данными
+ MasterJoinSourceStringПсевдоним источника, куда будут сохраняться измененные данные
+ FromLSQLStringОписание правил объединения данных

Особенности реализации некоторых действий:

  1. Дополнительные действия при Post при CachedUpdate = False.

    1. Данные из кэша данного DataSet помещаются в кэш MasterDataSet.

    2. Кэш данного DataSet очищается.

    3. Если MasterDataSet не в режиме CachedUpdate, то у MasterDataSet вызывается метод ApplyUpdates.

  2. Выполнение ApplyUpdates.

    1. Для каждого непосредственно подчиненного DataSet’а данные из кэша подчиненного DataSet’а помещаются в кэш данного DataSet’а. Кэш подчиненного DataSet’а при этом очищается.

    2. Выполняются действия из п.1.