8.х Формат/правила формирования GUID

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Itsys, 20 сен 2010.

  1. TopicStarter Overlay
    Itsys
    Offline

    Itsys Опытный в 1С

    Регистрация:
    3 янв 2010
    Сообщения:
    1.394
    Симпатии:
    0
    Баллы:
    26
    Не могу найти, где спрашивали об информации о даты и времени создания ссылки, но по GUID можно определить время и дату.
    Создание GUID выполняется согласно http://tools.ietf.org/rfc/rfc4122.txt
    Код:
    Функция ДатаСозданияСсылки(Ссылка)
    ГУИД = Ссылка.УникальныйИдентификатор();
    Строка16 = Сред(ГУИД, 16, 3) + Сред(ГУИД, 10, 4) + Сред(ГУИД, 1, 8);
    Разрядность = СтрДлина(Строка16);
    ЧислоСек = 0;
    Для Позиция = 1 По Разрядность Цикл
    ЧислоСек = ЧислоСек + Найти("123456789abcdef",Сред(Строка16,Позиция,1))*Pow(16,Разрядность - Позиция);
    КонецЦикла;
    ЧислоСек = ЧислоСек / 10000000;
    Возврат Дата(1582, 10, 15, 04, 00, 00) + ЧислоСек;
    КонецФункции
    
    
    Вообще, закладываться на ГУИД для регулярного использования -- довольно скользкий путь. В долговременной перспективе мало ли что может измениться. Да и в кратковременной -- возможность ручного указания ГУИДа (с помощью УстановитьСсылкуНового() и Новый УникальныйДентификатор(ПроизвольныйГУИД)) на корню убивает идею что-то анализировать.

    Созданные платформой объекты справочника имеют красивые ГУИДы:
    dbf5aa40-c478-11df-b2e9-0016e64c529b
    a9680bb4-c48d-11df-b2e9-0016e64c529b

    Но тут же можно программно создать элемент справочника с ГУИДом хоть из Синтакс-Помощника
    a763cfbb-f94f-4c67-8e13-0e96a3a7f353
    и всё, прощай какая-то система -- ничего общего.

    То есть резюме такое -- не пытайтесь :) или -- на свой страх и риск и под свою ответственность и без каких-либо гарантий (иногда может есть смысл, для разовых действий с гарантированным набором данных).
  2. mialord
    Offline

    mialord Модераторы Команда форума Модератор

    Регистрация:
    31 июл 2009
    Сообщения:
    5.400
    Симпатии:
    40
    Баллы:
    54
    А гуиды и не должны нести какого-либо смысла, и что - либо на основании их реализовывать очень нехорошая практика. Задача гуида это идентификация объекта, и уникальность, на этом всё.
  3. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Itsys,
    если я правильно понимаю, то на партнерском уже разобрали эту проблему, не так ли? :)
  4. TopicStarter Overlay
    Itsys
    Offline

    Itsys Опытный в 1С

    Регистрация:
    3 янв 2010
    Сообщения:
    1.394
    Симпатии:
    0
    Баллы:
    26
    С него и копировал, не у всех есть доступ к партнерскому, а вдруг кому понадобится...
    Проблемы собственно говоря не было, просто разместил для информации :)
  5. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    [off]Ну, там вообще мегаветку подняли. Подобный вопрос каждый год появляется :)[/off]
  6. TopicStarter Overlay
    Itsys
    Offline

    Itsys Опытный в 1С

    Регистрация:
    3 янв 2010
    Сообщения:
    1.394
    Симпатии:
    0
    Баллы:
    26
    [off]
    Была тема здесь про определение даты создания ссылки, вот и попалась на глаза, раньше наверно меня это не очень интересовало :)
    [/off]

Поделиться этой страницей