AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 30.12.2021, 10:40   #1  
oleggy is offline
oleggy
Участник
 
276 / 36 (2) +++
Регистрация: 03.12.2019
Адрес: Россия
Источник данных не входит в состав родительского источника данных
Всех с наступающим.

Подскажите, понять что не хватает системе. Проблема плевая кажется.
Источник данных не входит в состав родительского источника данных.

Есть форма с двумя вкладками.
На первой вкладке Grid c данными DS DirPartyRelationship (таб. DirPartyRelationship)
На второй вкладке Grid2 c данными DS ContactPersonParent (таб. ContactPerson) (JoinSource: DirPartyRelationship, LinkType: Delayed)

Плюс добавлен метод в DS ContactPersonParent:
X++:
public void init()
{
    super();

    this.query().dataSourceName(this.name()).clearDynalinks();
    this.query().dataSourceName(this.name()).clearLinks();

    this.query().dataSourceName(this.name()).addLink(fieldnum(DirPartyRelationship, ParentPartyId), fieldnum(ContactPerson, OrgPartyId)); // <-- ошибка на этом методе
    this.query().dataSourceName(this.name()).addRange(fieldnum(ContactPerson, LeftCompany)).value(int2str(NoYes::No));
}

Т.е. связь двух таблиц д.б. такая:
Цитата:
DirPartyRelationship.PartyId == contactPerson.OrgPartyId
contactPerson.LeftCompany == 0

Подскажите что не учел. Почему ошибка.

Последний раз редактировалось oleggy; 30.12.2021 в 10:48.
Старый 30.12.2021, 10:54   #2  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,440 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Если в свойствах дочернего источника данных указан тип связи Delayed, то вместо addLink нужно использовать addDynaLink
Старый 30.12.2021, 11:08   #3  
oleggy is offline
oleggy
Участник
 
276 / 36 (2) +++
Регистрация: 03.12.2019
Адрес: Россия
Исправил на:

X++:
this.query().dataSourceName(this.name()).addDynaLink(fieldnum(DirPartyRelationship, ParentPartyId), fieldnum(ContactPerson, OrgPartyId));

Ошибка компиляции: Аргумент "dynamicFile" несовместим с требуемым типом.
Старый 30.12.2021, 11:11   #4  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,440 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от oleggy Посмотреть сообщение
Ошибка компиляции: Аргумент "dynamicFile" несовместим с требуемым типом.
у метода addDynaLink три параметра и на втором месте должен быть курсор родительского источника данных. Поищите примеры использования и всё поймёте сами
Старый 30.12.2021, 11:26   #5  
oleggy is offline
oleggy
Участник
 
276 / 36 (2) +++
Регистрация: 03.12.2019
Адрес: Россия
Если я оставлю addLink но укажу тип связи Passive или Active все равно идет ошибка.

Последний раз редактировалось oleggy; 30.12.2021 в 11:32.
Старый 30.12.2021, 12:03   #6  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,440 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от oleggy Посмотреть сообщение
Если я оставлю addLink но укажу тип связи Passive или Active все равно идет ошибка.
Да. Эти виды связи тоже реализуются не одним запросом а разбиваются на два. И для них тоже нужно использовать AddDynaLink вместо addLink.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Получить номер источника данных по имени (ax 2009) SuperStar88 DAX: Программирование 3 22.06.2018 13:36
ListPage и TempDB в качестве источника данных Mila DAX: Программирование 1 16.11.2013 12:02
Как перекрыть метод для runtime источника данных формы? uchenik DAX: Программирование 1 06.06.2013 15:06
Введение в Аксапту Роман Кошелев DAX: Прочие вопросы 0 18.12.2001 14:00
Изменение свойств Grid с помощью метода источника данных displayOption Anton Sk. DAX: База знаний и проекты 0 03.12.2001 18:08

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 04:20.