Книга знаний

1С:Предприятие / Общие вопросы / Архитектура

В 1С:Предприятие не может быть больше 2,17 млрд. идентификаторов

Автор статьи: romix | Редакторы:
Последняя редакция №3 от 23.01.07 | История
URL: http://kb.mista.ru/article.php?id=450

Проверяю функцию _IdToStr(число) - она возвращает 36-ое представление идентификатора. Эта функция не отслеживает "слишком большие" > 2176782335 (ZZZZZZ)  и отрицательные числа.

//*******************************************
Процедура Сформировать()
    для id=2176782333 по 2176782338 Цикл
        стр=_IdToStr(id);
        Сообщить("id="+id+"  стр="+стр);
    КонецЦикла;    
КонецПроцедуры


id=2176782333  стр=ZZZZZX
id=2176782334  стр=ZZZZZY
id=2176782335  стр=ZZZZZZ //предел - все 6 позиций Z
id=2176782336  стр=000000 //началось с нуля
id=2176782337  стр=000001
id=2176782338  стр=000002


Отрицательные числа:

id=-3  стр=Z141Z1
id=-2  стр=Z141Z2
id=-1  стр=Z141Z3
id=0  стр=     0
id=1  стр=     1
id=2  стр=     2



Функция _StrToId() начинает проглючивать со значения 2147483648 (ZIK0ZK).

    для id=2147483643 по 2147483653 Цикл
        стр=_IdToStr(id);
        id2=_StrToId(стр);
        Сообщить("id="+id+"  стр="+стр+" id2="+id2);
    КонецЦикла;    


id=2147483643  стр=ZIK0ZF id2=2147483643
id=2147483644  стр=ZIK0ZG id2=2147483644
id=2147483645  стр=ZIK0ZH id2=2147483645
id=2147483646  стр=ZIK0ZI id2=2147483646
id=2147483647  стр=ZIK0ZJ id2=2147483647
id=2147483648  стр=ZIK0ZK id2=-./,),(-*,(  //именно так и выводит
id=2147483649  стр=ZIK0ZL id2=-2147483647
id=2147483650  стр=ZIK0ZM id2=-2147483646
id=2147483651  стр=ZIK0ZN id2=-2147483645
id=2147483652  стр=ZIK0ZO id2=-2147483644
id=2147483653  стр=ZIK0ZP id2=-2147483643
Закладка

Описание | Рубрикатор | Поиск | ТелепатБот | Захваченные статьи | Установки | Форум
© Станислав Митичкин (Волшебник), 2005-2011 | Mista.ru

Яндекс.Метрика