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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 05.05.2011, 19:13   #1  
Poleax is offline
Poleax
Модератор
Аватар для Poleax
MCP
MCBMSS
Злыдни
 
1,353 / 595 (22) +++++++
Регистрация: 17.02.2005
Адрес: msk
Записей в блоге: 34
Цитата:
Сообщение от mazzy Посмотреть сообщение
но почему дошло до максимума - загадка.
http://erpkb.com/Axapta/RecId
Цитата:
«Кстати, насчет дырок. Одна из причин их появления – каждый AOS (а так же тольстый клиент и клиент в 2-х звенке) резервирует под себя определенное кол-во recId (для уменьшения обращений к б/д при добавлении новых записей). При его перезагрузке это резервирование сбрасывается и выбирается новый диапазон при загрузке.»
.....................
Работает AXAPTA с этой таблицей следующим образом:
При вставке первой записи в новую компанию система AXAPTA добавляет в таблицу System Sequences? запись. В поле DATAAREAID устанавливается значение равное идентификатору компании, а в поля MINVAL и NEXVAL записывается единица.
Сразу после этого система AXAPTA берет лот номеров (лот в данном случае это – несколько подряд идущих номеров, AXAPTA берет 25). И записывает в поле NEXTVAL следующий свободный номер – 26.
Заносит в таблицу, с которой все началось запись с RECID равным 1 и DATAAREAID равным идентификатору компании.
После того как номера в лоте заканчиваются, система AXAPTA снова читает таблицу System Sequences?, берет оттуда NEXTVAL как первый номер следующего лота. А в таблицу System Sequences? записывает значение NEXTVAL+25.

Таким образом AXAPTA решает две проблемы – каждый пользователь ведет свой лот номеров RECID и значения этого поля не пересекаются, второе – пользователь (вернее его приложение) обращается к таблице System Sequences? один раз на 25 операций вставки и таким образом не возникает ожидания из-за обращения всех к этой таблице.
Это конечно про старые версии Аксапты, но "мыслится", что импорте через группу определения резервируется диапазон довольно большой, и при последующих импортах часть зарезервированны RecID теряется. И так далее и далее, в итоге упираемся в MAXVAL таблицы [SYSTEMSEQUENCES]

Посморел
PHP код:
select RECID from CUSTTABLE
order by RECID desc 
Диапазоны забавные RecID

1680993290137317294 - 1678119797343299707 (2 шт.)
5746991225213500 - 5746991225213520 (~ 200 шт.)
2873498431195913-2969044981147155 (~ 2000 шт. )
95552187129564- 95552187129568 (5 шт.)
132356740849-132356740883 (~ 100 шт.)
12486884666 - 12486884676 (10 шт.)
7349605052 (1 шт.)
5637145098 - 6207987332 (~ 15 шт.)

Записей в CUSTTABLE всего 17 146 шт.

Каком образом выбирается диапазон RecId, ну просто
__________________

This posting is provided "AS IS" with no warranties, and confers no rights.
Старый 05.05.2011, 20:05   #2  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от Poleax Посмотреть сообщение
Это конечно про старые версии Аксапты, но "мыслится", что импорте через группу определения резервируется диапазон довольно большой
но не квинтилионы же...
__________________
полезное на axForum, github, vk, coub.
Старый 06.05.2011, 09:14   #3  
Poleax is offline
Poleax
Модератор
Аватар для Poleax
MCP
MCBMSS
Злыдни
 
1,353 / 595 (22) +++++++
Регистрация: 17.02.2005
Адрес: msk
Записей в блоге: 34
:)
Цитата:
Сообщение от mazzy Посмотреть сообщение
но не квинтилионы же...
конечно, конечно
Миниатюры
Нажмите на изображение для увеличения
Название: Recid2.png
Просмотров: 483
Размер:	13.9 Кб
ID:	6848  
__________________

This posting is provided "AS IS" with no warranties, and confers no rights.
Теги
ax2009, recid, systemsequences

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Ошибка при выделении RecId KiselevSA DAX: Администрирование 3 02.12.2010 16:30
Ошибка при синхронизации таблицы Eldar9x DAX: Программирование 2 27.02.2009 15:19
Произошла ошибка связи с Microsoft Axapta Debugger. vasiliy DAX: Программирование 4 22.10.2007 07:18
Два RecId у одной записи таблицы sparur DAX: Программирование 33 18.12.2006 15:56
Русская локализация Axapta 3 ? SlavaK DAX: Администрирование 59 01.07.2003 22:38

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

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

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