28.08.2021 Айдар Фархутдинов 45609
Генератор случайных значений в решениях 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С:Предприятие 8. ERP Управление предприятием 2

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

Апгрейд 1С:Бухгалтерия 8 ПРОФ (USB) до версии 1С:Бухгалтерия 8 КОРП (USB)
ООО «Ява Строй»

Отрасль:
Строительство

Внедренное типовое решение:
1С:Бухгалтерия 8 КОРП (USB)

- Создание чистых конфигураций. Внесение изменений в БД ЗУП и новая расчетна...

Автоматизация торговых операций на базе "1С:Управление торговлей" в ОАО "Авиазапчасть"
ОАО «Авиазапчасть»

Отрасль:
Авиационно-космическая промышленность

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

- Оптовая торговля;
- Оформление заказов покупателей;
- Планирование прод...

АО "Нижегородский водоканал"
АО "Нижегородский водоканал"

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

Внедренное типовое решение:
1С:Зарплата и управление персоналом 8. КОРП

-Кадровый учет
-Расчет зарплаты
-Регламентированная отчетность
-Подбор ...

Филиал ГлавУпДК при МИД России фирма «Инпредкадры»
Филиал ГлавУпДК при МИД России фирма «Инпредкадры»

Отрасль:
Государственное управление

Внедренное типовое решение:
1С:Бухгалтерия

- Расчеты с контрагентами;
- Управленческий учет;
- Формирование отраслев...

Автоматизация учета на базе ПП "1С:Комплексная автоматизация 8" в ЗАО "Крюгер-Гранд"
ЗАО «Крюгер-Гранд»

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

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

- Создание интерфейсов и наборов прав пользователей;
- Отражению временных ...

Внедрение ПП «1С:Предприятие 8. Аренда и управление недвижимостью на базе "1С:Бухгалтерия 8"» в компании «Бутово Молл»
ООО «Бутово Молл»

Отрасль:
Недвижимость

Внедренное типовое решение:
1С:Аренда и управление недвижимостью на базе «1С:Бухгалтерия 8»

Управление продажами, логистикой и транспортом (SFM, WMS, TMS):
- Оформление зак...

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

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

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

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

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

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

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

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

ООО «Аэроэкспресс»
ООО «Аэроэкспресс»

Отрасль:

Внедренное типовое решение:
1С:ERP. Управление холдингом

· Планирование закупок · Управление закупочными процедурами, включая 223 ФЗ ...

Внедрение ПП "1С:Бухгалтерия 8 ПРОФ" в ООО «Союз Три» (Кондитерский дом Renardi)
ООО «Союз Три»

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

Внедренное типовое решение:
1С:Бухгалтерия 8 ПРОФ

Бухгалтерский учет
- Банк и касса
- Расчеты с контрагентами
Налоговый ...

Доработка конфигурации Заказчика «1С:Управление строительной организацией»
ЗАО «Стройтрансгаз»

Отрасль:
Проектирование

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

Взаиморасчеты с поставщиками;
- Оформление заказов поставщикам;
- Склад ...

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

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

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

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