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

Результаты опроса: Как лучше хранить ссылки на записи - (RefTableId, Company, RefRecId)
myTempTable - временная таблица 4 21.05%
recordLinkList 2 10.53%
map(DataAreaId, recordLinkList) 0 0%
set([refTableId, refRecId, refCompanyId]) 3 15.79%
map([refTableId, refCompanyId], set(refRecId)) 2 10.53%
map(refTableId, map(refCompanyId, set(refRecId))) 1 5.26%
другое - написал сообщение в теме 5 26.32%
не знаю/мне все равно 2 10.53%
Голосовавшие: 19. Вы ещё не голосовали в этом опросе

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 05.07.2011, 23:52   #1  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,283 / 3491 (123) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Я за вариант 8.
Цитата:
Сообщение от fed Посмотреть сообщение
8. Забыл про квазивременную таблицу. То есть - обычную таблицу в БД с полями RefTableId,refRecId,refCompanyId, в которую добавлен, например id сессии или просто GUID-какой-то. По завершении процедуры просто тупо оттуда удаляем записи по условию.
Цитата:
Сообщение от mazzy Посмотреть сообщение
Ой... вариант конечно.
но на нее будет тратится recid. надо будет не забывать ее чистить... в общем, куча гемора.
Да, будут тратиться. А сильно жалко?
А с очисткой как раз все просто. Нужно просто только на какой-то момент иметь завершенную работу этой утилитки (как вариант - остановка АОС). И тогда Truncate Table отрабатывает быстро и на ура. Можно туда добавить поле, аналог кода сессии - типа утилитка отработала один раз - все записи отметились одним кодом. Утилитка отработала второй раз - новые записи отметились другим кодом и т.д. По этому коду сделать индекс и чистить по индексу. Это если хочется чистить сразу. А можно этим и не заморачиваться - а дождаться возможности выполнить Truncate Table

Конечно остановка АОС - решение радикальное ... Но тут все зависит от того будут ли перерывы у утилитки, насколько сильно она будет увеличивать кол-во записей в этой таблице.

Пример 1. InventSumLogTTS. Ее можно честно чистить после остановке АОСа.
Пример 2. Batch. Там хранится туева хуча мусора, и в нее постоянно складываются записи. Раз в некий период (когда ну очень хочется уменьшить место, занимаемое базой) нужные записи переливаются в копию Batch, исходная таблица грохается, а копия выдается за оригинал.
__________________
Возможно сделать все. Вопрос времени
Теги
recid, запись, как правильно, ссылки

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
emeadaxsupport: Long running process switches from one company to another company Blog bot DAX Blogs 0 27.01.2010 20:05
dynamicsaxtraining: Create new company. Demo data Blog bot DAX Blogs 0 19.11.2009 14:05
emeadaxsupport: Query execution failed for data set 'Company' Blog bot DAX Blogs 0 28.10.2009 00:06
Создание company, domain, virtual company из X++ DmitrySincerity DAX: Программирование 9 16.01.2009 18:17
Автоматическое увеличение значения поля при создании новой записи. sguryev DAX: Программирование 3 06.02.2003 14:00

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 21:09.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.