28.08.2021 Айдар Фархутдинов 41875
Генератор случайных значений в решениях 1С

Содержание:

1.       Как работает генератор случайных чисел?

2.       Генератор случайных чисел в 1С

3.       Пример генерации псевдослучайных чисел  


1.    Как работает генератор случайных чисел?


Коллеги, в данной статье мы поговорим о генераторе случайных чисел в программах 1С. Для начала выясним, что это вообще такое, где применяется и как работает генератор случайных чисел, а затем рассмотрим, как можно осуществить функцию генерации случайных чисел в системе 1С при помощи программного кода. Также будет приведён пример использования данного инструмента на практике.


Генератор случайных чисел (математики часто его называют генератором псевдослучайных чисел) – это специальный программный алгоритм, при помощи которого создаётся специальная последовательность чисел, в которой зависимость этих самых чисел друг от друга минимальна. При этом, в алгоритме используется, чаще всего, равномерное распределение.


В современном программировании метод генерации случайных чисел применяется очень широко. Например, данная функция применяется в методе моделирования Монте-Карло, в моделировании по имитациям, в криптографии и во многих других областях. При этом качество полученных случайных чисел существенно влияет на качество результата. На эту тему есть известное высказывание математика Роберта Кавью: «Генерация случайных чисел слишком важна, чтобы оставлять её на волю случая».


Также стоит отметить, что ни один алгоритм по взаимосвязям не может создать абсолютно случайный числа, так как такой алгоритм лишь аппроксимирует какие-то из их свойств.  


2.    Генератор случайных чисел в 1С


Рассмотрим генерацию случайных числа в программах 1С:Предприятие. Чтобы получить случайное число, или набор случайных чисел, не обязательно применять сторонние средства, так как в самой платформе 1С уже есть такой инструмент, как генератор случайных значений.


Чтобы сформировать случайные (псевдослучайные) числа в системе есть специальный объект – «ГенераторСлучайныхЧисел». Его можно сделать с помощью конструктора, как демонстрируется на примере программного кода ниже (данная формула является универсальной):



Рис. 1 Создание нового генератора случайных чисел в 1С

 

В данной формуле программы стоит обратить внимание на параметр «НачальноеЧисло». Это некоторая цифра, при помощи которой происходит инициализация функции генератора случайных чисел. Её указание не является обязательным требованием, однако если параметр «НачальноеЧисло» не будет указан, то генератор случайных чисел в 1С будет проходить инициализацию при помощи времени, которое работает операционная система с самого начального момента.


Замечание: для данного параметра также стоит отметить, что прогрессия из генератора случайных значений будет совпадать, если параметр «НачальноеЧисло» один и тот же.


Также объект «ГенераторСлучайныхЧисел» имеет один метод, который выглядит следующим образом:



Рис. 2 Метод генератора случайных чисел в 1С


Данный метод генерации случайных чисел служит для возвращения целого положительного (или нуля) числа, согласно заданному диапазону: от «НижняяГраница» до «ВерхняяГраница», включая и нижний, и верхний пороги. В случае, если параметры диапазона не будут указаны, то они будут установлены согласно стандартным настройкам: нижнее значение – 0, а верхнее – 4294967295.   


3.    Пример генерации псевдослучайных чисел


Рассмотрим программный код, указанный на скриншоте с примером ниже, в нём происходит формирование 10-ти случайных чисел, при помощи генератора случайных чисел в программе 1С, с диапазоном от 0 до 100:



Рис. 3 Пример генератора случайных значений


Замечание: функцией генератора случайных чисел можно пользоваться только в тонком клиенте, либо на серверной стороне, в иных случаях система 1С будет выводить ошибку.


В данной статье была рассмотрена функция для генерации псевдослучайных чисел в системе 1С, были заданы алгоритм и указан пример.


Специалист компании «Кодерлайн»

Айдар Фархутдинов

Наши проекты

Группа компаний ТМ «Дружба народов»
Группа компаний ТМ «Дружба народов»

Отрасль:
Пищевая промышленность

Внедренное типовое решение:
1С:ERP Управление предприятием 2.1

- Переход на новый релиз 2.1 программы «1С:ERP Управление предприятием»
- Разра...

ПЭК
ПЭК

Отрасль:
Грузоперевозки

Внедренное типовое решение:
1С:Зарплата и управление персоналом

- Перевод зарплатных баз с версии ЗУП 2.5 на версию ЗУП 3.1.
- Сопровождение в п...

Внедрение системы финансового учета БИТ:Финанс
ООО «Алькор и Ко» (Л’Этуаль)

Отрасль:
Торговля

Внедренное типовое решение:
БИТ.Финанс

- Финансовый учет;
- Поддержка проекта внедрения МСФО;
- Регламентные рабо...

ООО «Стейдж Энтертейнмент Россия»
ООО «Стейдж Энтертейнмент Россия»

Отрасль:
Театральная деятельность

Внедренное типовое решение:
Платформа 1С:Предприятие 8

Реализован процесс трансформации данных бухгалтерского учета по РСБУ в дан...

ЗАО «Ламбумиз»
ЗАО «Ламбумиз»

Отрасль:
Производство картонной упаковки

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

- Маркетинг;
- Продажи;
- Планирование закупок;
- Закупки;
- Регламенти...

Внедрение ПП "1С:CRM ПРОФ" в ООО «Торговый Дом Факел»
ООО «Торговый Дом Факел»

Отрасль:
Производство

Внедренное типовое решение:
1С:CRM ПРОФ

- Управление отношениями с клиентами (CRM) ...

МГК "Световые Технологии"
МГК "Световые Технологии"

Отрасль:

Внедренное типовое решение:
1С:Предприятие 8. ERP Управление предприятием 2

Специалисты "Кодерлайн" произвели доработки в системе 1С:ЕРП 2.4 с учетом треб...

Внедрение 1С:Управление торговлей в оптово-розничной компании «Ална-Байк»
ИП Титов Виктор Сергеевич «Ална-Байк»

Отрасль:
Торговля

Внедренное типовое решение:
1С:Управление торговлей

- Управление складами;
- Управление заказами поставщиков;
- Управление зак...

ООО "ОМЗ"
ООО "ОМЗ"

Отрасль:
Металлургическая промышленность, металлообработка

Внедренное типовое решение:
1С:Управление производственным предприятием

Автоматизация бизнес-процессов...

ЗАО «Инвестгеосервис»
ЗАО «Инвестгеосервис»

Отрасль:
Нефтесервис

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

Объемно-календарное планирование производства Автоматизация бизнес-проце...

Московский филиал ООО «Авиакомпания «Икар»
Московский филиал ООО «Авиакомпания «Икар»

Отрасль:
Авиаперевозки

Внедренное типовое решение:
1С:Зарплата и управление персоналом

Управление персоналом и кадровый учет (HRM) Кадровый учет Расчет зарплаты Рег...

ООО "РУКАРД-АУРА"
ООО "РУКАРД-АУРА"

Отрасль:
Профессиональные услуги

Внедренное типовое решение:
1С:Комплексная автоматизация

- Налоговый учет;...

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение