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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 30.11.2010, 18:05   #1  
EfimV is offline
EfimV
Участник
 
30 / 22 (1) +++
Регистрация: 19.04.2008
Адрес: Москва
Таблица InventSumDeltaDim и индекс
DAX2009,ru5
В стандартной Аксапте индекс уже содержит 16 полей. У нас используются ещё своя складская аналитика. У SQL сервера ограничение на 16 полей в индексе. Значит уже любое новое поле в индексе непозволительно.

Если у индекса «удалить» кластерный и первичный, то вручную наше поле можно добавить в Included Columns для индекса. При синхронизации таблицы поле остаётся.

Интересно поведение SQL сервера. SQL2008 не позволяет добавить новое поле в индеек. SQL2005 позволяет добавить поле (нет сообщения об ошибке) но «в тихую» удаляет из индекса другое поле. В нашем случае wMSPalletId.

Вопрос.
Как правильно добавить в таблицу свою Аналитику?
Насколько критично снятие свойств индекса «кластерный» и «первичный»?
Старый 30.11.2010, 19:09   #2  
fed is offline
fed
Moderator
Аватар для fed
Ex AND Project
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
2,907 / 5717 (196) ++++++++++
Регистрация: 13.03.2002
Адрес: Hüfingen,DE
Критично свойство индекса под названием уникальность Если у вас 18 полей, а вы из них только 16 в индекс добавили, то вы не сможете уникальность индекса обеспечить (поскольку у вас надо проверять уникальность комбинации 18 полей, а в индексе их всего 16). Никакие included-колонки тут не помогут.
Единственное решение, которое я видел (хотя оно мне и не очень нравиться) - добавить в inventSumDeltaDim кроме нормальных аналитик еще и дополнительное новое поле (которое ни в каких группах полей не участвует), которое автоматически вычисляется как конкатенация 2-3-4 полей из складской аналитики. Дальше в вместо этих 2-3-4 полей добавляете в индекс новое поле.
За это сообщение автора поблагодарили: EfimV (1).
Старый 30.11.2010, 22:19   #3  
Wamr is offline
Wamr
----------------
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
 
1,737 / 858 (32) +++++++
Регистрация: 15.01.2002
Адрес: Москва
Записей в блоге: 7
у вас используются все аналитики?
если нет, то неиспользуемые либо совсем поотключать, либо просто из индексов убрать
За это сообщение автора поблагодарили: EfimV (1).
Теги
ax2009, sql server, индекс, складская аналитика

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Как работает индекс и кеш запросов? Didukh84 DAX: Программирование 19 02.06.2009 10:42
Не работает индекс в отчете dreamer DAX: Программирование 8 10.07.2008 16:00
Axapta 4.0 - InventSumDeltaDim и первичный ключ Sada DAX: Программирование 5 18.12.2007 13:28
select sum(amount) from временная таблица ATimTim DAX: Программирование 6 11.06.2004 14:16
Для чего нужно к каждому журналу еще таблица ХХХSalesLink? ArturK DAX: База знаний и проекты 1 15.04.2004 11:51

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

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

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