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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 14.09.2007, 20:03   #4  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
raz, спасибо за интересную тему для размышлений.

Вам стоило указать, что вы писали про 3.0 под MS SQL (я слыхал, что в Oracle считать в другой сессии незакомиченные данные невозможно).

Чтобы подобного рода ситуации для вас не были неожиданностью, рекомендую вам для прочтения параграф "Transaction Semantics" из книжки Inside Microsoft Dynamics™ AX 4.0. Он находится в 12-й главе третьей части.

Там также очень интересное приложение В (касаемо 4.0 и различных СУБД).

http://safari.oreilly.com/9780735622579/app02#app02

Надеюсь, что это постоянная ссылка.

Получается, что если в 3.0 на MS SQL Аксапта норовила почти везде прикрутить к запросу NOLOCK (в запросах из форм, отчетов, в запросе из кода не внутри транзакции), то в 4.0 запросы идут с READ COMMITTED (даже из форм, отчетов, обозревателя таблицы). Так, в 3.0 можно было открыть форму, и увидеть в ней строчку, которая еще не закомичена. В 4.0 в такой ситуации клиент подвисает до тех пор, пока транзакция не закроется или не откатится.

Другими словами желаемый вами эффект READ COMMITTED достигается без транзакции. Хотя если вы хотите еще и от блокировок избавиться, то ваше решение остается в силе (мне удалось заставить работать .readPast(true) только внутри транзакции).

А вот у меня возник такой вопрос. Каким образом из Аксапты 4.0 можно отправить запрос на MS SQL 2005, чтобы в нем таки был хинт NOLOCK? И как отправить запрос, чтобы он отработал при уровне изоляции транзакции SNAPSHOT, если таковой режим включен для БД? Я пытался на ощупь, но не смог пока добиться такого эффекта. Поиск также не помог мне найти ответ на вопрос. Может быть кто-то сможет подсказать?
__________________
С уважением,
glibs®
За это сообщение автора поблагодарили: Logger (3), iCloud (2).
Теги
программно, транзакции

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Неверный откат сопоставленных транзакций sgt.Pepper DAX: Программирование 4 17.01.2008 09:16
Чтение данных за пределами файла, временная таблица zemlyn DAX: Программирование 0 05.12.2005 18:32
IMTS (Система множественных складских транзакций) yuranio DAX: Функционал 7 04.03.2005 17:56
Хочу видеть только итоги AKIS DAX: Функционал 1 19.08.2002 11:49

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

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

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