Как узнать когда был создан документ в 1С v8 без журнала регистрации

Иногда необходимо знать дату создания документа, ошибочно полагать, что поле «Дата» содержит именно дату создания, тут можно проанализировать идентификатор объекта:

Функция ДатаСозданияСсылки(Ссылка)
// любая ссылка хранит в себе уникальный идентификатор
ГУИД = Ссылка.УникальныйИдентификатор();
// идентфикатор хранит в себе дату и время создания
Строка16 = Сред(ГУИД, 16, 3) + Сред(ГУИД, 10, 4) + Сред(ГУИД, 1, 8);
Разрядность = СтрДлина(Строка16);
ЧислоСек = 0;
// время создания хранится в секундах 
// от 15 октября 1582 года 
// в шестнадцатиричной системе
Для Позиция = 1 По Разрядность Цикл
     ЧислоСек = ЧислоСек +
          Найти(«123456789abcdef»,Сред(Строка16Позиция1))*
          Pow(16Разрядность — Позиция);

КонецЦикла;
ЧислоСек = ЧислоСек / 10000000;
// вычисляем смещение от начальной точки
датаТ = Дата(1582, 10, 15, 04, 00, 00) + ЧислоСек;
// составляем только дату 
датаТ = Дата( Год(датаТ), Месяц(датаТ), День(датаТ), 00, 00, 00);
Возврат датаТ;

КонецФункции

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *