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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 28.09.2010, 12:58   #14  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от petr Посмотреть сообщение
Посмотрите в таблицы LedgerBalance(Dim)Trans, там несколько записей на одну дату и (комбинацию аналитик).
Да. Денис (fed) как раз и пишет, что появилось поле Variant со значениями 1..20
при помощи этого поля попытались уменьшить вероятность блокировок.

раньше, чтобы найти промежуточную сумму, нужно было сделать find.
теперь - нужно сделать sum() с разными Variant.

Но фундаментальный механизм работы с промежуточными финансовыми итогами не изменился.
1. программист говорит - вставь запись (ключевые-поля, изменения-сумм)
2. поскольку у сумм установлено свойство relative
2.1. система ищет существующую запись с этими ключевыми полями
2.2. если находит, то выполняет update полей со свойством relative (со всеми полагающимися блокировками)
2.3. если не находит, то выполняет insert

разница между старыми и новыми версиями только в случайном параметре Variant.
Этот параметр уменьшает вероятность попадания на шаг 2.2. Но ни в коем случае не исключает этот шаг.

Цитата:
Сообщение от petr Посмотреть сообщение
P.S. я имею в виду опрацию из ГК-переодические операции-пересчет промежуточных сальдо (или как там она по-русски называется)
Да. Я понял что имеется в виду.
Но эта операция - очень тяжелая. Она блокирует все и надолго.
Она скорее призвана исправить ситуации, нежели является регламентной.

Промежуточные итоги могут содержать неактуальные значения в двух случаях:
1. программист использовал doUpdate, doInsert, doDelete вместо нормальных Update, Insert, Delete на таблице LedgerTrans
2. программист изменял записи в LedgerTrans прямыми запросами в SQL.

Если выполняется нормальная и штатная работа с LedgerTrans, то система всегда держит промежуточные итоги актуальными.

Цитата:
Сообщение от fed Посмотреть сообщение
Насколько я помню, fieldUpdate==relative работает только в том случае если выполняется команда: UPDATE. команде INSERT на этот relative глубоко безразлично. Я НИ ОДНОГО UPDATE в системе по ledgerBalances* не нашел.
relative работает при любой операции write.
write - это тоже наследие конкорда.

ты попробуй

Цитата:
Сообщение от fed Посмотреть сообщение
Есть шансы что этот relative просто незаметили и он там остался еще со времен Конкорда.
без relative работать не будет.
попробуй. создай свою табличку и изнасилуй ее

Цитата:
Сообщение от fed Посмотреть сообщение
Вообще - похоже что petr прав. Авторы предполагали что балансы периодически пересчитываются и упаковываются. Вот это надо будет написать отдельной записью в блоге...
хм... нет.
при таком подходе получается, что у системы никогда балансы неактуальны.
не думаю, что на такое пошли бы.


Цитата:
Сообщение от fed Посмотреть сообщение
Кстати - а зачем тогда авторы добавили recId в конец вроде бы уникального от природы индекса по значимым полям ?
У меня попытка удалить из индекса recId с сохранением уникальности - жостко обломалась...
не знаю.
__________________
полезное на axForum, github, vk, coub.
Теги
ledgerbalance, ledgerbalancesdimtrans, ledgerbalancestrans, главная книга, итоги, сальдо, crm2011

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
fed: History of inventory locking in DAX Blog bot DAX Blogs 0 28.09.2009 16:05
Microsoft DAX Dev Center Headlines: New Ledger Posting White Paper Released Blog bot DAX Blogs 0 23.11.2008 12:05
axStart: Change data on a data source on a Form Blog bot DAX Blogs 0 04.09.2008 15:05
Microsoft Dynamics CRM Team Blog: Data Migration Manager Tips and Tricks Blog bot Dynamics CRM: Blogs 0 02.09.2008 22:05
Пустые названия системных таблиц в report data range (DAX 4.0) Qaz Qwerty DAX: Функционал 3 06.08.2008 00:05

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

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

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