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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 08.09.2021, 11:41   #1  
Ace of Database is offline
Ace of Database
Участник
Аватар для Ace of Database
 
870 / 637 (23) +++++++
Регистрация: 14.10.2004
У меня в подписи ссылка на мультипаспорт. Он такие вещи умеет делать. Например, сначала стандартным способом пользователь через CTRL + F3 может отфильтровать заказы по конкретному клиенту, в строках которого есть конкретная номенклатура .
А потом запустить мультипаспорт, поставить в нем галку "Выполнить для всех записей, отображаемых на форме". Встать на поле "Цена" и поставить для всех строк всех выбранных заказов одинаковую цену 100 рублей. Правда он поставит цену 100 рублей для всех строк выбранных заказов, а не только в той, для которой задали фильтр по коду номенклатуры. Но это только потому, что сама Аксапта выбирает такие строки через Exists Join. Сама Аксапта тоже показывает на форме все строки заказов. Но шапки заказов фильтрует только те, в которых есть хотя бы одна строка с заданной номенклатурой.
И мультипаспорт генерирует запросы вида SELECT * FROM SalesTable WHERE ((CustAccount = 54321)) EXISTS JOIN * FROM SalesLine WHERE SalesTable.SalesId = SalesLine.SalesId AND ((ItemId = 12345))
Я этим мультипаспортом пользуюсь активно, и несмотря на некоторые глюки, он мне сильно облегчает жизнь. Правда опасно ошибаться.
__________________
Мои утилиты для Аксапты версий 3.0-2012: http://aceofdatabase.blogspot.com/

Последний раз редактировалось Ace of Database; 08.09.2021 в 11:44.
За это сообщение автора поблагодарили: mazzy (2).
Старый 08.09.2021, 11:58   #2  
Ace of Database is offline
Ace of Database
Участник
Аватар для Ace of Database
 
870 / 637 (23) +++++++
Регистрация: 14.10.2004
Вот такой страшный запрос мультипаспорт генерирует для формы EсoResProductDetailsExtended в AX2012
Я иногда копи-пастю такие запросы для всяких нужд.

SELECT * FROM InventTable(InventTable) OUTER JOIN * FROM S_InventTable(S_InventTable) ON InventTable.RecId = S_InventTable.RefRecId OUTER JOIN * FROM InventModelGroupItem(InventModelGroupItem) ON InventTable.dataAreaId = InventModelGroupItem.ItemDataAreaId AND InventTable.ItemId = InventModelGroupItem.ItemId OUTER JOIN * FROM InventItemGroupItem(InventItemGroupItem) ON InventTable.dataAreaId = InventItemGroupItem.ItemDataAreaId AND InventTable.ItemId = InventItemGroupItem.ItemId OUTER JOIN * FROM EcoResTrackingDimensionGroupItem(EcoResTrackingDimensionGroupItem) ON InventTable.dataAreaId = EcoResTrackingDimensionGroupItem.ItemDataAreaId AND InventTable.ItemId = EcoResTrackingDimensionGroupItem.ItemId OUTER JOIN * FROM EcoResStorageDimensionGroupItem(EcoResStorageDimensionGroupItem) ON InventTable.dataAreaId = EcoResStorageDimensionGroupItem.ItemDataAreaId AND InventTable.ItemId = EcoResStorageDimensionGroupItem.ItemId JOIN * FROM EcoResProduct(EcoResProduct) ON InventTable.Product = EcoResProduct.RecId OUTER JOIN * FROM EcoResProductDimensionGroupProduct(EcoResProductDimensionGroupProduct) ON EcoResProductMaster.RecId = EcoResProductDimensionGroupProduct.Product OUTER JOIN * FROM EcoResProductTranslation(EcoResProductTranslation) ON EcoResProduct.RecId = EcoResProductTranslation.Product AND ((LanguageId = N'ru') OR (LanguageId = N'ru')) OUTER JOIN * FROM EcoResProductMasterModelingPolicy(EcoResProductMasterModelingPolicy) ON EcoResProductMaster.RecId = EcoResProductMasterModelingPolicy.ProductMaster JOIN * FROM InventTableModule(Purch) ON InventTable.ItemId = InventTableModule.ItemId AND ((ModuleType = 1)) JOIN * FROM InventTableModule(Invent) ON InventTable.ItemId = InventTableModule.ItemId AND ((ModuleType = 0)) JOIN * FROM InventTableModule(Sales) ON InventTable.ItemId = InventTableModule.ItemId AND ((ModuleType = 2)) JOIN * FROM InventItemLocation(InventItemLocation) ON InventTable.ItemId = InventItemLocation.ItemId AND ((inventDimId = N'AllBlank')) WHERE ((InventModelGroupItem(InventModelGroupItem).)) AND ((InventItemGroupItem(InventItemGroupItem).))
__________________
Мои утилиты для Аксапты версий 3.0-2012: http://aceofdatabase.blogspot.com/
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Получить query на базе view?? MironovI DAX: Программирование 0 11.08.2005 19:51
Как получить параметры в класс из формы, созданной классом. BEPECK DAX: Программирование 9 07.02.2005 14:14
QueryRun, Query ald DAX: Программирование 3 10.02.2004 21:59
Как же все-таки организованиы Query и QueryRun? VIS DAX: Программирование 4 03.07.2003 15:22
Как получить доступ к текущей строке в DataSource формы Maxim Gorbunov DAX: База знаний и проекты 0 28.11.2001 13:46

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

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

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