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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 19.05.2017, 12:06   #1  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,983 / 3273 (117) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Основная проблема как мне кажется - научить вьюху отбирать из InventSumDelta записи с нужным TTSid - актуальным для текущей сессии.

Можно в служебную табличку (XXServiceTable ) в начале транзакции (в методе application.ttsNotifyPostBegin писать соответствие ttsId и @@SPID - до конца транзакции ни ttsId ни @@SPID не поменяется. А за пределами транзакции для уже поюзанного номера ttsId выборка из InventSumDelta всегда пустая)
Ну а затем во вьюхе добавить условие - фильтровать InventSumDelta.TTsId по значению прописанного в вспомогательной табличке. Его легко достать через подзапрос
X++:
select ttsId from XXServiceTable where sid = @@SPID
.

По идее это все не должно утяжелить запрос. Данные в InvnetSumDelta игрушечные по сравнению с Inventsum. Она практически всегда пустая.

Последний раз редактировалось Logger; 19.05.2017 в 12:09.
Старый 22.05.2017, 22:26   #2  
Ярослав Щекин is offline
Ярослав Щекин
Участник
 
78 / 174 (6) ++++++
Регистрация: 16.03.2009
Цитата:
Сообщение от Logger Посмотреть сообщение
Основная проблема как мне кажется - научить вьюху отбирать из InventSumDelta записи с нужным TTSid - актуальным для текущей сессии.
Хмм... я правильно помню, что вне транзакции InventSumDelta всегда пустая, т.е. она всегда очищается по завершениии транзакции?
Далее, для запросов (без forupdate) в Ax2012 всё ещё используется Read Committed Snapshot Isolation?
Если всё это так, то "чужие" записи в ней просто невозможно увидеть, т.е. условие по ttsId, казалось бы, просто не нужно (оно лишь оптимизирует выборку)...
За это сообщение автора поблагодарили: Logger (3).
Теги
ax2012, inventsum, inventsumdelta

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Множественные запросы по DataArea и VirtualDataAreaList Dreadlock DAX: Программирование 11 24.07.2012 11:43
Channel9: Peter Villadsen and Gustavo Plancarte: X++ to MSIL Blog bot DAX Blogs 30 24.08.2010 17:11
Запросы / Итоги для ЗПР Prophetic DAX: Программирование 5 02.08.2010 15:13
Странный код в InventSum.update() и deadlocks Shannon DAX: Программирование 4 12.04.2010 15:36
Запросы к связанным таблицам Rect DAX: Программирование 14 05.06.2007 10:16

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

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

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