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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 15.02.2007, 10:55   #1  
cherv is offline
cherv
MCTS
MCBMSS
1C
 
88 / 25 (1) +++
Регистрация: 24.05.2006
Данные в Grid из таблиц, связанных по Outer Join
Доброе время суток!
Возникли сложности с решением следующей задачи: на Grid (в моем случае, WebGrid, но, возможно, что подход может быть общим) необходимо вывести данные из таблицы с несколькими присоединенными по Outer Join полями из других таблиц. Конкретный пример: из таблицы smmActivities (Деятельности) на Grid необходимо вытянуть несколько полей плюс вывести имя ответственного сотрудника (связывание с таблицей EmplTable), название типа деятельности (связывание с таблицей smmActivityTypeGroup) и название цели (связывание с таблицей CACPurpose). С реализацией связи по Inner Join проблем не возникает (все отлично связывается в макете формы в разделе Data Sources), но проблема в отм, что поля для данных связей могут быть не заполнены (не являются обязательными). Как связать несколько дочерних таблиц с родительской по Outer Join, нашел в http://www.axforum.info/forums/showthread.php?t=8357 (смысл в добавлении фиктивной связи между дочерними таблицами), но тогда возникает проблема с тем, как передать значение выводимому в Grid полю. То есть, в методе executeQuery можно прописать программное связывание с дочерними таблицами по Outer Join, но как тогда, например, полю в Grid с именем сотрудника указать, что его значение должно браться из дочерней таблицы EmplTable, если связь прописана программно, а не в макете? Есть ли вообще способ этого добиться (указывать значение для поля на форме из поля data source, не входящего в макет, либо в запросе из метода executeQuery указать, что конкретный присоединенный Data Source является Data Sourc’ом из макета)? Возможно немного запутанно, но если есть у кого-нибудь мысли по этому поводу, буду очень признателен!
Старый 15.02.2007, 12:32   #2  
cherv is offline
cherv
MCTS
MCBMSS
1C
 
88 / 25 (1) +++
Регистрация: 24.05.2006
Вот пример того, как это все должно выглядеть. Может, так понятнее будет.
Изображения
Тип файла: bmp Example.bmp (31.6 Кб, 549 просмотров)
Старый 17.02.2007, 01:36   #3  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5798 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Цитата:
Сообщение от cherv Посмотреть сообщение
необходимо вывести данные из таблицы с несколькими присоединенными по Outer Join полями из других таблиц. возникает проблема с тем, как передать значение выводимому в Grid полю. То есть, в методе executeQuery можно прописать программное связывание с дочерними таблицами по Outer Join, но как тогда, например, полю в Grid с именем сотрудника указать, что его значение должно браться из дочерней таблицы EmplTable, если связь прописана программно, а не в макете?
Насколько я понимаю, связываемые по outer join DS'ы, откуда будут браться данные, должны присутствовать в дизайне формы, тогда нужному полю Grid просто указывает такой DS и поле из него (скажем, имя сотрудника). Связь по фиктивному полю, наверно, имеет смысл прописывать в init() такого DS, а не в executeQuery(), и, вероятно, еще имеет смысл для таких DS поставить fetchMode one2one.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Двойной Outer Join в Query LTA DAX: Программирование 2 21.01.2020 09:28
Несколько outer join в запросе _scorp_ DAX: Программирование 2 11.04.2008 10:56
2 и более OUTER JOIN к одному паренту Ronin DAX: Программирование 21 19.12.2005 13:42
outer join для трех таблиц r25 DAX: Программирование 4 29.04.2004 15:42
поля из связанных таблиц в Grid listener DAX: Программирование 2 17.09.2003 18:38

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

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

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