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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 22.11.2007, 15:23   #1  
PODOL is offline
PODOL
Участник
 
44 / 16 (1) ++
Регистрация: 20.07.2006
Почему незаполнен PrimeryIndex ?
Таблицы CustTrans, InventTrans, CustInvoiceJour etc имеют штук по 5 индексов.
Есть среди них и уникальные, например, в InventTrans это RecId и TransIdIdx.
Почему в св-вах таблицы не указан PrimeryIndex ?
Чем грозит заполнение?
(Ax 3.0 SP3)
Старый 22.11.2007, 17:26   #2  
IvanOFF is offline
IvanOFF
MCTS
MCBMSS
 
65 / 87 (3) ++++
Регистрация: 22.09.2005
Адрес: Москва
Рискну предположить, что PrimaryIndex указывается для работы механизма кэширования. Цитата из Developer's Guide:

"The enabling of caching on a table is dependent on the existence of a unique index. The caching key is determined either by the primaryIndex in the table, if one exists, or the first unique index."

Поэтому указание PrimaryIndex без указания способа кэширования, как я понимаю, ничем не грозит.
Старый 22.11.2007, 18:29   #3  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5798 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Цитата:
Сообщение от PODOL Посмотреть сообщение
Таблицы CustTrans, InventTrans, CustInvoiceJour etc имеют штук по 5 индексов. Есть среди них и уникальные, например, в InventTrans это RecId и TransIdIdx. Почему в св-вах таблицы не указан PrimeryIndex? Чем грозит заполнение?
Помимо изменения индекса, используемого для кэширования, заполнение свойства PrimaryIndex приведет к тому, что в БД на таблице будет добавлен constrain primary key; у таблиц с незаполненным PrimaryIndex таких constrain'ов в БД нет.
Старый 24.11.2007, 13:45   #4  
PODOL is offline
PODOL
Участник
 
44 / 16 (1) ++
Регистрация: 20.07.2006
вот тут http://blogs.msdn.com/aeremenk/archi...5/3699503.aspx
сказано следующее:
Для создания репликации требуется первичный ключ (primary key) по таблице; таким образом, для таблиц безпервичного ключа необходимо изменить один из уникальных индексов и установить его как основной в параметрах таблицы в Репозитарии прикладных объектов (AOT) Microsoft Dynamics AX. После чего процесс синхронизации изменит структуру этих таблиц; однако синхронизация может занять достаточно большое количество времени в зависимости от размера таблицы и имеющегося оборудования сервера базы данных.
Итак...я выставляю PrimaryIndex и не указываю тип кеширования.
А если на таблице стоят ключи, среди них, нет уникальных...св-во allowDuplicates = Yes
тогда как?...Выставлять RecId в качестве уникального индекса?
каким боком оно может вылезти...
(база Аксапты небольшая... за года работы кол-во строк в InvenTrans 400 000)
Теги
ax3.0

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Почему loka DAX: Программирование 2 01.12.2005 17:36
Почему суммируется только последнее значение? vesna DAX: Программирование 14 03.08.2005 17:47
Почему такое расхождение в скорости выполнения Владимир Максимов DAX: Программирование 28 11.09.2004 12:44
почему форма сразу закрывается ? puz DAX: Программирование 3 09.09.2003 11:56
Почему у меня ДВА модуля "Основные средства" dmit2604 DAX: Функционал 7 31.08.2002 11:46

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

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

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