Показать сообщение отдельно
Старый 22.07.2014, 08:31   #6  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,444 / 1781 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от kitty Посмотреть сообщение
Какая-то ерундень из-за View!

Я пытаюсь даже явно добавить addLink между Header и записями из View в init() датасоурса формы.
Когда делаю addLink в init() View, то получаю "The data source is not embedded within a (parent) data source "
Все правильно вам аксапта пишет. Потому что в этом случае не addLink нужно использовать а addDynaLink. Разница в типе связи между двумя датасорсами. Одно дело, когда соединяемые источники данных образуют единый запрос (тип связи join, exists, outer) а другое - два самостоятельных запроса связь между которыми пересчитывается при изменении позиции активной строки главной таблицы (delayed)

Цитата:
Сообщение от VORP Посмотреть сообщение
Попробуйте не relation link прописывать, а в executeQuery на View добавить range:
с помощью функции findOrCreateRange_W например с фильтром по полю по которому идёт джойн. Ведь там же джойнмод стоит active или delayed, потому оно и не даёт link добавить, ведь датасорс View не заджойнен к MyTable по настоящему.
Тогда значение этого Range прийдется поддерживать и менять на актуальный при каждом изменении позиции активной строки главного датасурса. Чтобы не заставлять программиста этим заниматься в системе и реализован механизм Dynalink, который ровно это и делает.

Последний раз редактировалось S.Kuskov; 22.07.2014 в 08:35.