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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 31.01.2012, 16:00   #1  
alvares is offline
alvares
Участник
 
45 / 12 (1) ++
Регистрация: 27.10.2011
2 queryRun на форме
AX2009 RU7
Столкнулся с тем что на форме нельзя разместить 2 и более queryRun, посему вопрос - как показать на форме 2 грида, где источники данных с группировками?

Какие возможные варианты без использования временных таблиц и view?
View неинтересно использовать, т.к. хочется фильтровать по тем полям которых нет в group by.
Может есть где поглядеть?
Старый 31.01.2012, 16:22   #2  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,429 / 1772 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Разберитесь с терминологией. QueryRun - это не визуальный элемент, его в принципе нельзя "показать" на форме.

Цитата:
Сообщение от alvares Посмотреть сообщение
вопрос - как показать на форме 2 грида, где источники данных с группировками?
Вам нужно отобразить одни и теже данные (из одной и тойже таблицы) только с разной группировкой одновременно на двух гридах одной формы?
Если так то вам нужно создать на форме два источника данных (узел "Data Sources") ссылающиеся на одну и ту же таблицу. У вас это не получается? На всякий случай скажу, что имя датасурса не обязано совпадать с именем таблицы, если проблема в этом.
Старый 31.01.2012, 21:20   #3  
alvares is offline
alvares
Участник
 
45 / 12 (1) ++
Регистрация: 27.10.2011
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
Разберитесь с терминологией. QueryRun - это не визуальный элемент, его в принципе нельзя "показать" на форме.
...
Возможно я не верно выразился. Задача такая (слегка упростил): сделать запросную форму с 2-мя гридами, отображающими данные:
1-й грид - по закупкам. Поля: номер док-та, дата, сумма по документу.
2-й грид - по отгрузкам. Поля: номер док-та, дата, сумма по документу.

На форме имеются фильтры по номенклатуре и различным классификаторам номенклатур, ссылки на которые находятся в PurchLine и SalesLine. Т.е. эти поля не выводятся в грид.

Изначально хотел сделать 2 QueryRun в АОТ и использовать их как источники для каждого грида свой, с
группировкой и ренжами (с блэкджеком и ...). При установки фильтров устанавливать ренжи и все гуд. С одним гридом все нормально, но надо 2 грида...
Старый 31.01.2012, 22:48   #4  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,429 / 1772 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Всё равно не понимаю о чём речь

Давайте на примере, что ли. Вот вы говорите:
Цитата:
Сообщение от alvares Посмотреть сообщение
С одним гридом все нормально, но надо 2 грида...
Опишите последовательно, что вы делаете для одного грида, и что не удаётся сделать для двух. Из чего вы сделали вывод что то что вы хотите сделать - сделать нельзя? Конкретику пожалуйста. Система выдала вам какую-то ошибку?
Старый 01.02.2012, 00:06   #5  
alvares is offline
alvares
Участник
 
45 / 12 (1) ++
Регистрация: 27.10.2011
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
Всё равно не понимаю о чём речь

Давайте на примере, что ли. Вот вы говорите:

Опишите последовательно, что вы делаете для одного грида, и что не удаётся сделать для двух. Из чего вы сделали вывод что то что вы хотите сделать - сделать нельзя? Конкретику пожалуйста. Система выдала вам какую-то ошибку?
Нет ошибки нет. Фактически не могу добавить на форму в АОТ 2 разных query.
Последовательно делаю так:
Создаю квери в АОТ. Добавляю в датасорс PurchTable, в него добавляю PurchLine, релейшены, все дела, удаляю лишние поля. Выбираю группировку по PurchID и DeliveryDate, суммирую поле LineAmount в PurchLine, добавляю ренж по ItemId в PurchLine.
Создаю такой же второй query в АОТ, только по отгрузкам (SalesTable), группирую, суммирую в SalesLine поле lineAmount.
Теперь задача - добавить эти 2 квери на форму в датасорс, чтобы использовать их в 2-х разных гридах как источники данных. При добавлении 2-й квери, первая удаляется.
Старый 01.02.2012, 01:34   #6  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от alvares Посмотреть сообщение
AX2009 RU7
Столкнулся с тем что на форме нельзя разместить 2 и более queryRun
Цитата:
Сообщение от alvares Посмотреть сообщение
Фактически не могу добавить на форму в АОТ 2 разных query.
а про какую версию вы говорите?
вроде на форму никогда нельзя было добавить query.

при помощи хитрого программирования можно затолкать queryRun.
но похоже это не ваш случай.

запрос(ы) на форме задаются при помощи датасорсов.
автоматически - при помощи линка датасорсов.
вручную - объявляйте датасорс пассивным и вручную программируйте его запрос в init и exequteQuery

пример запросов с разными группировками на одной форме - создание строк
__________________
полезное на axForum, github, vk, coub.
Старый 01.02.2012, 02:00   #7  
DSPIC is offline
DSPIC
Боец
 
1,077 / 1234 (44) ++++++++
Регистрация: 11.04.2008
Цитата:
Сообщение от mazzy Посмотреть сообщение
а про какую версию вы говорите?
вроде на форму никогда нельзя было добавить query.
В 2009 можно. Можно мышкой затащить кверю из аот прямо на форму. Она будет использоваться как датасорс.

Alvares, сделайте две view основе 2-х ваших квери (кверю из АОТ можно точно также перетащить мышкой в датасорс вьюхи), затем затащите вьюхи на форму. Все, ваша задача вроде решается мышкой

Вообще, в 2009 аксапте возможность тащить query во вьюху/на форму просто уникальна. Ведь в query существует возможность связать датасорсы разными типами связки, добавить группировки, суммирования - и все это перетянуть на форму/вьюху без программирования. Ранее, все датасорсы вьюхи можно было вязать только по innerjoin и без агрегации

Последний раз редактировалось DSPIC; 01.02.2012 в 02:16.
За это сообщение автора поблагодарили: mazzy (2), lev (2), S.Kuskov (2).
Старый 01.02.2012, 08:06   #8  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,429 / 1772 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Ах вот вы про что. Да возможность такая появилась в AX2009. Просто в стандарте её как-то очень избранно используют. Так что сразу и не понятно о чём речь.
Цитата:
Сообщение от alvares Посмотреть сообщение
не могу добавить на форму в АОТ 2 разных query.
Я думаю вам нужно создать не два query, а один, но большой. На одном уровне query можно параллельно разместить два датасурса, каждый со своими подчинёнными таблицами.

Цитата:
Сообщение от DSPIC Посмотреть сообщение
Вообще, в 2009 аксапте возможность тащить query во вьюху/на форму просто уникальна. Ведь в query существует возможность связать датасорсы разными типами связки, добавить группировки, суммирования - и все это перетянуть на форму/вьюху без программирования. Ранее, все датасорсы вьюхи можно было вязать только по innerjoin и без агрегации
Тоже был восхищён этим нововведением. Экспериментируя, получилось отобразить на форме даже UNION! Интересно в AX2012 этот механизм применяется более маштабно чем в AX2009?
gatesasbait: Improved AOT Queries in Ax2009

Последний раз редактировалось S.Kuskov; 01.02.2012 в 08:14.
За это сообщение автора поблагодарили: Pustik (2), alvares (1).
Старый 01.02.2012, 14:44   #9  
alvares is offline
alvares
Участник
 
45 / 12 (1) ++
Регистрация: 27.10.2011
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
Я думаю вам нужно создать не два query, а один, но большой. На одном уровне query можно параллельно разместить два датасурса, каждый со своими подчинёнными таблицами.
Да, насчет 2-х источников на одном уровне в query не додумался, получилось, спасибо.

Этот вариант хорош тем что позволяет добавлять ренжи по полям которых нет в fields и group by секциях и делать нужному ds ресерч;
Теги
ax2009, query, форма

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
queryRun метод get SHiSHok DAX: Программирование 6 08.07.2011 16:46
Непонятное подвисание queryRun.next() GBH DAX: Программирование 7 15.11.2010 11:16
Как правильно связать таблицы в форме? Как показать параметры партии? mazzy DAX: Программирование 10 27.10.2010 15:56
OZKA's DAX Journal: Join между временной и постоянной таблицей через QueryRun. Blog bot DAX Blogs 12 14.01.2009 17:34
Данные из Tmp таблицы в QueryRun на форме Berty Wooster DAX: Программирование 1 23.09.2003 10:10

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 05:01.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.