Показать сообщение отдельно
Старый 26.03.2010, 10:47   #1  
sag77rus is offline
sag77rus
Участник
Аватар для sag77rus
 
8 / 10 (1) +
Регистрация: 16.03.2009
:( Резервирование кодов записей
Всем привет! Пытался найти ответ на форуме, не нашел, может не так искал.
AX 3 Sp3 Sql2000
Использование стандартного Импорта/Экспорта данных
Вызывает интерес реализация сабджекта в классе SysDataImport метод calcRecordIdOffset, а именно
X++:
nextRecId = systemSequence.reserveValues(real2UnsignedInt(recIdMax-recIdMin+1));
Такое резервирование приводит к образованию "дыр" в последовательности RecId, пример: импортируем справочник, который реально содержит 1000 записей, но записи в справочник заносились не единовременно, т.е. RecId первой записи может на миллионы отличаться от recID последней и система спокойно отнимает в последовательности эти миллионы идентификаторов.
Собственно вопрос вот в чем: почему для резервирования не берут значение например из переменной recordCntTotal, которая вроде как содержит значение реального количество импортируемых строк (вернее строк содержащихся в файле импорта). Подскажите, в чем скрытый смысл стандартной реализации?
__________________
Кто хочет достичь цели, должен её знать