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

- Бухгалтерский учет;
- Налоговый учет;
- МСФО (GAAP/управленческий учет);
- ...

МИР ХОББИ
МИР ХОББИ

Отрасль:
Торговля. Интернет магазин

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

Оформление заказов поставщикам
Взаиморасчеты с покупателями
Оформление...

ООО "АСТАРМЕДИКА КЛИНИКА МИКРОХИРУРГИИ ГЛАЗА"
ООО "АСТАРМЕДИКА КЛИНИКА МИКРОХИРУРГИИ ГЛАЗА"

Отрасль:
Деятельность больничных организаций

Внедренное типовое решение:
БИТ:Управление медицинским центром 8

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

ФГОУ ВПО «Горский государственный аграрный университет»
ФГОУ ВПО «Горский государственный аграрный университет»

Отрасль:
Образование

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

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

ПЭК
ПЭК

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

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

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

ЗАО «Многопрофильная формирующая авиагруппа» (ЗАО МФГ)
ЗАО «Многопрофильная формирующая авиагруппа» (ЗАО МФГ)

Отрасль:
Оптовая торговля транспортными средствами и оборудованием

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

- Финансы, управленческий учет, мониторинг показателей
- Бухгалтерский уче...

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

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

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

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

ФГУП «Почта России»
ФГУП «Почта России»

Отрасль:
Почта, доставка

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

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

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

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

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

Закупки (снабжение) и управление отношениями с поставщиками:
- Оформление ...

Автоматизация кадрового учета на базе ПП "1С:Зарплата и управление персоналом" в ТД НМК
ООО «Торговый дом Нальчикский молочный комбинат»

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

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

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

ОАО «Фаберлик»
ОАО «Фаберлик»

Отрасль:

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

- Регламентированный учет;
- Кадровый учет;...

ООО "СЖД"
ООО "СЖД"

Отрасль:
Торговля, склад, логистика, транспорт

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

Расчет зарплаты
Подбор кадров
Кадровый учет
Анализ кадрового состава...

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

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

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

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