powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / [игнор отключен] [закрыт для гостей] / Уникальный идентификатор на 10 символов
8 сообщений из 8, страница 1 из 1
Уникальный идентификатор на 10 символов
    #37760377
iLight
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет всем.

Заполняю из обработки 1с табличку фокспро. Разработчики оригинального фокспрошного софта подошли к генерации идентификаторов записей творчески и наваяли очень мудрёную функцию генерации, которая использует встроенные фокспрошные функции и прочую магию.
Думаю, у меня нет необходимости (и средств релизации) так извращаться, поэтому ищу какой-нибудь простой алгоритм генерации идентификатора на основе текущей даты, например. Но тут встаёт вопрос невозможности перевода даты в строку в 1с без костылей.
Как быть, что делать?
...
Рейтинг: 0 / 0
Уникальный идентификатор на 10 символов
    #37760603
DmitriyZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iLight, А что в 1С Строка(ТекущаяДата()) не строку возвращает? В чем конкретно проблема?
...
Рейтинг: 0 / 0
Уникальный идентификатор на 10 символов
    #37760606
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А открыть документацию слабо?

ГенераторСлучайныхЧисел (RandomNumberGenerator)
СлучайноеЧисло (RandomNumber)
Синтаксис:

СлучайноеЧисло(<НижнийДиапазон>, <ВерхнийДиапазон>)
Параметры:

<НижнийДиапазон> (необязательный)

Тип: Число.
Нижний диапазон. Задается целым числом и не может быть меньше 0.
Значение по умолчанию: 0
<ВерхнийДиапазон> (необязательный)

Тип: Число.
Верхний диапазон. Задается целым числом и не может быть больше 4294967295 (2^32 - 1), а также меньше значения параметра <НижнийДиапазон>.
Значение по умолчанию: 4294967295
Возвращаемое значение:

Тип: Число.

Описание:

Возвращает случайное целое число в заданном диапазоне. Нижний диапазон не может быть меньше 0, а верхний диапазон не может быть больше 2^32 - 1.

Доступность:

Тонкий клиент, сервер, толстый клиент, внешнее соединение.
Пример:

ГСЧ = Новый ГенераторСлучайныхЧисел(255);
ГСЧ.СлучайноеЧисло(0, 10000);
...
Рейтинг: 0 / 0
Уникальный идентификатор на 10 символов
    #37760609
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Во вторых автор видно хочет придумать велосипед, не понимая сложности генерации случайных чисел...
...
Рейтинг: 0 / 0
Уникальный идентификатор на 10 символов
    #37760757
iLight
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DmitriyZiLight, А что в 1С Строка(ТекущаяДата()) не строку возвращает? В чем конкретно проблема?Возвращает. Значит, запамятовал я в чём была проблема.
Идея разработчиков фокспрошной программы была в том, чтобы взять timestamp, который в фокспро, как я понимаю, включает в себя единицы времени меньше секунды, порезать его на байты, байты перевести в символы и сверху ещё поксорить всё днём рождения бабушки.

Программист 1сА открыть документацию слабо?Спасибо.
Нет, не слабо, про генератор случайных чисел я не забыл.
Вопрос в том, насколько хорошо этот способ подойдёт для генерации уникальных идентификаторов в табличке фокспро.
Или я зря беспокоюсь?

Программист 1сВо вторых автор видно хочет придумать велосипед, не понимая сложности генерации случайных чисел...Не придумать, а перенести из фокспро в 1с. Генератор СЧ в родном алгоритме, например, вообще не используется.
...
Рейтинг: 0 / 0
Уникальный идентификатор на 10 символов
    #37763645
Александр Пузаков
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
СтроковоеЗначение  = Формат(НужноеЧисло, "ЧЦ=10; ЧВН=");
СтрокаИз10Символов = СтрЗаменить(СтроковоеЗначение, Символы.НПП, "");
...
Рейтинг: 0 / 0
Уникальный идентификатор на 10 символов
    #37767452
iLight
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Александр Пузаков
Код: plaintext
1.
2.
СтроковоеЗначение  = Формат(НужноеЧисло, "ЧЦ=10; ЧВН=");
СтрокаИз10Символов = СтрЗаменить(СтроковоеЗначение, Символы.НПП, "");

Спасибо!

Сделал хэш по фио+табельный номер.
...
Рейтинг: 0 / 0
Уникальный идентификатор на 10 символов
    #37767835
Злой Бобр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iLight,

Можно из 1С выгружать ИД и добивать нулями (или чем там еще) до нужного количества знаков.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / Уникальный идентификатор на 10 символов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]