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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 19.04.2011, 01:01   #1  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от Geo Посмотреть сообщение
Мне казалось, в описываемых на форуме задачах как правило обращались к гриду, не рассматривая маркировку...
нет. не надо обращаться "к гриду".
грид живет на клиенте. данные живут на сервере.
со всеми вытекающими последствиями для трафика и производительности
вам уже об этом говорили.

===============
по поводу "выделенных строк" см axaptapedia: Tutorial Form MultiSelectCheckBox
но обратите внимание, что "выделенные строки" и "отфильтрованные строки" - разные вещи.
__________________
полезное на axForum, github, vk, coub.
Старый 19.04.2011, 10:09   #2  
pitersky is offline
pitersky
северный Будда
Аватар для pitersky
Ex AND Project
Соотечественники
 
1,514 / 435 (18) +++++++
Регистрация: 26.09.2007
Адрес: Солнечная система
Цитата:
Сообщение от mazzy Посмотреть сообщение
нет. не надо обращаться "к гриду".
грид живет на клиенте. данные живут на сервере
...
но обратите внимание, что "выделенные строки" и "отфильтрованные строки" - разные вещи.
Именно поэтому в общем случае не обойтись без клиент-серверного трафика. Одно дело, когда мы запускаем обработку по записям с объективным уровнем общности (одинаковые значения полей, на которые можно наложить фильтр), и совсем другое - если пользователь хочет обработать произвольный набор записей, ничем не объединённый (кроме его доброй воли).

И кстати говоря - не стал бы я так уж хаять механизм селектов. Достаточно много есть задач, где нужна жёсткая выборка с простейшим суммированием, типа
X++:
while select sum(Qty)
from MyTable
group by ItemId
{...}
Разворачивать здесь Query ИМХО = стрелять из пушки по воробьям. Т.е. можно, но зачем?
__________________
С уважением,
Вячеслав

Последний раз редактировалось pitersky; 19.04.2011 в 10:14.
Старый 19.04.2011, 10:41   #3  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от pitersky Посмотреть сообщение
Одно дело, когда мы запускаем обработку по записям с объективным уровнем общности (одинаковые значения полей, на которые можно наложить фильтр), и совсем другое - если пользователь хочет обработать произвольный набор записей, ничем не объединённый (кроме его доброй воли).
да, но исходная тема совсем о другом
напомню

Цитата:
Сообщение от Geo Посмотреть сообщение
Потребовалось запускать этот метод для обработки записей, выводящихся на гриде, то есть с учетом установленных фильтров.
Цитата:
Сообщение от pitersky Посмотреть сообщение
И кстати говоря - не стал бы я так уж хаять механизм селектов. Достаточно много есть задач, где нужна жёсткая выборка с простейшим суммированием, типа
X++:
while select sum(Qty)
from MyTable
group by ItemId
{...}
Разворачивать здесь Query ИМХО = стрелять из пушки по воробьям. Т.е. можно, но зачем?
А я бы стал хаять даже для таких "простейших" случаев.
хотя бы потому что в myTable может быть много миллионов записей.

попытка сделать одновременно два алгоритма - один для малого количества записей, другой для большого количества записей - приведет к неоправданному усложнению. и к принципиально спорной задаче - какое количество является малым.

еще раз посмотрите на исследование axaptapedia: Tutorial Form MultiSelectCheckBox

====================
и еще раз напомню, что первоначальный вопрос был о записях, которые попали в грид, а не о записях выбранных пользователем.
__________________
полезное на axForum, github, vk, coub.
Старый 19.04.2011, 11:06   #4  
pitersky is offline
pitersky
северный Будда
Аватар для pitersky
Ex AND Project
Соотечественники
 
1,514 / 435 (18) +++++++
Регистрация: 26.09.2007
Адрес: Солнечная система
Цитата:
Сообщение от mazzy Посмотреть сообщение
А я бы стал хаять даже для таких "простейших" случаев.
хотя бы потому что в myTable может быть много миллионов записей.
попытка сделать одновременно два алгоритма - один для малого количества записей, другой для большого количества записей - приведет к неоправданному усложнению. и к принципиально спорной задаче - какое количество является малым.
а зачем делать два алгоритма??? у нас есть, условно говоря, газонокосилка и электробритва. В зависимости от ситуации пользуемся чем-то одним. Но это же не значит, что надо от электробритвы отказываться

Цитата:
Сообщение от mazzy Посмотреть сообщение
и еще раз напомню, что первоначальный вопрос был о записях, которые попали в грид, а не о записях выбранных пользователем.
Изначальный вопрос состоял в обработке набора записей в таблице, без уточнения способа отбора. Я вполне могу себе представить ситуацию, когда пользователь хочет обработать две-три отдельные строки, а не всё, что относится к фильтрованной выборке. Если принято решение, что такого быть не должно - тогда да, нам грид не нужен, достаточно серверной Query
__________________
С уважением,
Вячеслав

Последний раз редактировалось pitersky; 19.04.2011 в 11:09.
Старый 19.04.2011, 11:11   #5  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от George Nordic Посмотреть сообщение
Да ну?

QueryRun.query().dataSourceNo(1).toString();

С Уважением,
Георгий
ну да.
to string - это строка, а не "select в коде".
с этим toString ты ничего не сможешь сделать. только вывести и посмотреть на него. даже в runbuf не засунешь.

Цитата:
Сообщение от pitersky Посмотреть сообщение
а зачем делать два алгоритма??? у нас есть, условно говоря, газонокосилка и электробритва. В зависимости от ситуации пользуемся чем-то одним. Но это же не значит, что надо прям сразу от электробритвы отказываться
как-то идет плавный дрейф в понятиях.
выборка -> грид -> хаять -> отказываться.

я и не говорил про "отказываться".
я говорил про "хаять".


Изначальный вопрос состоял в обработке набора записей в таблице, без уточнения способа отбора. Я вполне могу себе представить ситуацию, когда пользователь хочет обработать две-три отдельные строки, а не всё, что относится к фильтрованной выборке. Если принято решение, что такого быть не должно - тогда да, нам грид не нужен, достаточно серверной Query[/QUOTE]
__________________
полезное на axForum, github, vk, coub.
Теги
grid, query, датасорс (datasource), табличный курсор, фильтр

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
jinx: Dynamics AX – Query-Ranges und Filtereinstellungen des Benutzers Blog bot DAX auf Deutsch 0 04.02.2010 00:05
Query на Datasource в LookUp-форме. dynamax DAX: Программирование 26 09.10.2009 15:58
Как удалить DataSource из Query??? Maxim Gorbunov DAX: Программирование 17 01.09.2008 14:00
axcoder: Tabax 0.2.14: View query of the active datasource Blog bot DAX Blogs 2 02.02.2007 12:10
How do I delete a datasource from a query ? (by stelsig) Maxim Gorbunov DAX in English 0 22.03.2006 12:21

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

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

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