30.01.2018, 16:16 | #1 |
Модератор
|
AX 2012 - custom financial dimension value
Имеем на входе: AX 2012 R2, accounting structure с 12 аналитиками, из которых 5 - custom (те что не entity backed). Распределение неравномерное - большинство аналитик имеют от 10-20 до пары сотен значений, одна - 18000 (зачем - тема отдельного разговора, клиент сделал "потому что мог"). Также имеем advanced rules по большинству custom аналитик
На выходе имеем: при лукапе по аналитике в строке журнала ГК запрос с join-ом из 26 таблиц (DIMENSIONFINANCIALTAG -> DIMENSIONCONSTRAINTTREE -> FINANCIALTAGCATEGORY -> DIMENSIONCONSTRAINTNODE -> DIMENSIONCONSTRAINTNODECRITERIA -> DIMENSIONCONSTRAINTNODE -> DIMENSIONCONSTRAINTNODECRITERIA и т.д. и как вишенка на торте, join с DIMENSIONATTRIBUTEDIRCATEGORY с фильтром выбираемому атрибуту (DIMENSIONATTRIBUTEDIRCATEGORY.DIMENSIONATTRIBUTE) и, соответственно, тормоза при лукапе по "большой" аналитике в \Classes\LedgerDimensionController\getAutoCompleteDataFromDatabase() В процессе разбора задался вопросом - а зачем спрашивается такая диковинная связь между значениями custom аналитики и собственно атрибутом ( DIMENSIONFINANCIALTAG -> FINANCIALTAGCATEGORY <- DIMENSIONATTRIBUTEDIRCATEGORY <- DIMENSIONATTRIBUTE ) ? Почему DIMENSIONFINANCIALTAG не связали с DIMENSIONATTRIBUTE напрямую (DIMENSIONFINANCIALTAG.DIMENSIONATTRIBUTE) ? Какой сценарий моделируется с помощью DIMENSIONATTRIBUTEDIRCATEGORY ? Что это дало ?
__________________
-ТСЯ или -ТЬСЯ ? Последний раз редактировалось Vadik; 31.01.2018 в 09:25. |
|
|
За это сообщение автора поблагодарили: mazzy (5), S.Kuskov (2). |
31.01.2018, 12:46 | #2 |
Злыдни
|
В FINANCIALTAGCATEGORY есть настройка, которая отвечает за "валидность" данной категории в компании (Значения финансовых аналитик). Т.е. можно настроить, что значения для аналитики действительны только для определенной компании. А все таблицы в связке хранятся в разделе partition (общие для всех компаний). Может из-за этого добавлена куча связок, которые и "усекают" лукап?
__________________
люди...считают, что если техника не ломается, то ее не нужно ремонтировать. Инженеры считают, что если она не ломается, то нуждается в совершенствовании. |
|