---
title: Общего назначения БЗК
slug: zup/общего-назначения-бзк
---


## ДвиженияВСтруктуру
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

////////////////////////////////////////////////////////////////////////////////
// Функции для работы с прикладными типами и коллекциями значений.

// Преобразует коллекцию движений в структуру.
//
// Параметры:
//  Движения - КоллекцияДвижений, Структура - исходная коллекция движений документа.
//
// Возвращаемое значение:
//  Структура - движения в виде структуры.
//
Функция ДвиженияВСтруктуру(Движения) Экспорт
```

Пример вызова
```bsl
Результат = ОбщегоНазначенияБЗК.ДвиженияВСтруктуру(Движения) 
```
</details>

## ПеречислениеВМассив
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Помещает значения перечисления в массив.
//
// Параметры:
//  Перечисление     - ПеречислениеМенеджер        - исходное перечисление.
//	ИсключаяЗначения - Массив, ФиксированныйМассив - значения перечисления, не включаемые в результат.
//
// Возвращаемое значение:
//  Массив - массив элементов типа ПеречислениеСсылка.
//
Функция ПеречислениеВМассив(Перечисление, Знач ИсключаяЗначения = Неопределено) Экспорт
```

Пример вызова
```bsl
Результат = ОбщегоНазначенияБЗК.ПеречислениеВМассив(Перечисление, ИсключаяЗначения);
```
</details>

## ТаблицаЗначенийПоИмениРегистраНакопления
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Возвращает таблицу значений с колонками, соответствующими структуре регистра накопления
// Параметры
//		ИмяРегистра - Строка, имя регистра накопления.
//
// Возвращаемое значение:
//   Таблица значений
//
Функция ТаблицаЗначенийПоИмениРегистраНакопления(ИмяРегистра) Экспорт
```

Пример вызова
```bsl
Результат = ОбщегоНазначенияБЗК.ТаблицаЗначенийПоИмениРегистраНакопления(ИмяРегистра) 
```
</details>

## ТаблицаЗначенийПоИмениРегистраСведений
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Возвращает таблицу значений с колонками, соответствующими структуре регистра сведений
//
// Параметры:
//	ИмяРегистра - Строка, имя регистра сведений.
//
// Возвращаемое значение:
//   Таблица значений
//
Функция ТаблицаЗначенийПоИмениРегистраСведений(ИмяРегистра) Экспорт
```

Пример вызова
```bsl
Результат = ОбщегоНазначенияБЗК.ТаблицаЗначенийПоИмениРегистраСведений(ИмяРегистра) 
```
</details>

## ДобавитьИндексКоллекции
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Добавляет индекс таблицы значений, если такого индекса еще нет.
// см. также ТаблицаЗначений.Индексы.Добавить()
//
// Параметры:
//  Коллекция - ТаблицаЗначений - Коллекция, в которую будет добавлен индекс.
//	Колонки   - Строка          - Строковое описание колонок индекса в виде: "Колонка1, Колонка2...".
//
// Возвращаемое значение:
//  ИндексКоллекции - добавленный индекс. Если индекс не добавлялся - Неопределено.
//
Функция ДобавитьИндексКоллекции(Коллекция, Знач Колонки) Экспорт
```

Пример вызова
```bsl
Результат = ОбщегоНазначенияБЗК.ДобавитьИндексКоллекции(Коллекция, Колонки) 
```
</details>

## ЗаполнитьЗначения
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Заполняет все строки коллекции указанным значением.
// Доступна для коллекций, имеющих методы Выгрузить и ЗагрузитьКолонку.
//
// Параметры:
//  КоллекцияСтрок - ТабличнаяЧасть,
//                   РегистрСведенийНаборЗаписей,
//                   РегистрНакопленияНаборЗаписей,
//                   РегистрРасчетаНаборЗаписей  - коллекция, колонки которых нужно заполнить.
//                   А так же другие объекты, для которых доступны операции Выгрузить и ЗагрузитьКолонку.
//  Значение - Произвольный - значение, которым необходимо заполнить строки таблицы..
//  Колонки  - Строка       - список имен колонок, разделенных запятыми,
//                            по которым производится заполнение строк таблицы значений.
//
Процедура ЗаполнитьЗначения(КоллекцияСтрок, Знач Значение, Знач Колонки = Неопределено) Экспорт
```

Пример вызова
```bsl
ОбщегоНазначенияБЗК.ЗаполнитьЗначения(КоллекцияСтрок, Значение, Колонки);
```
</details>

## МенеджерОбъектаПоТипу
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

////////////////////////////////////////////////////////////////////////////////
// Функции для работы с типами, объектами метаданных и их строковыми представлениями.

// Возвращает менеджер объекта по типу.
// Ограничение: не обрабатываются точки маршрутов бизнес-процессов.
// См. так же МенеджерОбъектаПоПолномуИмени.
//
// Параметры:
//  Тип - Тип - тип объекта, менеджер которого требуется получить.
//
// Возвращаемое значение:
//  СправочникМенеджер, ДокументМенеджер, ОбработкаМенеджер, РегистрСведенийМенеджер - менеджер объекта.
//
// Пример:
//  МенеджерСправочника = ОбщегоНазначения.МенеджерОбъектаПоТипу(ТипЗнч(Ссылка));
//  ПустаяСсылка = МенеджерСправочника.ПустаяСсылка();
//
Функция МенеджерОбъектаПоТипу(Тип) Экспорт
```

Пример вызова
```bsl
Результат = ОбщегоНазначенияБЗК.МенеджерОбъектаПоТипу(Тип) 
```
</details>

## ОбъектыПоТипам
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Возвращает объекты, сгруппированные по их типам.
//
// Параметры:
//  Объекты - Массив - объекты, которые необходимо сгруппировать.
//
// Возвращаемое значение:
//  Соответствие - в ключе тип, в значении массив объектов этого типа.
//
Функция ОбъектыПоТипам(Объекты) Экспорт
```

Пример вызова
```bsl
Результат = ОбщегоНазначенияБЗК.ОбъектыПоТипам(Объекты) 
```
</details>

## ПараметрыТабличногоДокумента
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

////////////////////////////////////////////////////////////////////////////////
// Функции для работы с табличными документами.

// Возвращает структуру параметров табличного документа
//
// Параметры:
//  ТабличныйДокумент - ТабличныйДокумент - табличный документ, параметры которого будут получены.
//
// Возвращаемое значение:
//  Структура - ключ соответствует имени параметра, значение - Неопределено.
//
Функция ПараметрыТабличногоДокумента(ТабличныйДокумент) Экспорт
```

Пример вызова
```bsl
Результат = ОбщегоНазначенияБЗК.ПараметрыТабличногоДокумента(ТабличныйДокумент) 
```
</details>

## ИменаПараметровТабличногоДокумента
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Возвращает имена параметров табличного документа
//
// Параметры:
//  ТабличныйДокумент - ТабличныйДокумент - табличный документ, параметры которого будут получены.
//
// Возвращаемое значение:
//  Массив - имена параметров.
//
Функция ИменаПараметровТабличногоДокумента(ТабличныйДокумент) Экспорт
```

Пример вызова
```bsl
Результат = ОбщегоНазначенияБЗК.ИменаПараметровТабличногоДокумента(ТабличныйДокумент) 
```
</details>

## ОчиститьПараметрыТабличногоДокумента
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Очищает параметры табличного документа
//
// Параметры:
//  ТабличныйДокумент - ТабличныйДокумент - табличный документ, параметры которого будут очищены.
//
Процедура ОчиститьПараметрыТабличногоДокумента(ТабличныйДокумент) Экспорт
```

Пример вызова
```bsl
ОбщегоНазначенияБЗК.ОчиститьПараметрыТабличногоДокумента(ТабличныйДокумент) 
```
</details>

## ДополнитьСтраницуТабличногоДокумента
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Дополняет табличный документ переданной строкой до конца страницы так,
// чтобы на странице уместился указанный подвал.
//
// Параметры:
//  ТабДокумент - ТабличныйДокумент - дополняемый табличный документ.
//  Строка      - ТабличныйДокумент - строка, которой дополняется документ.
//  Подвал      - Массив, ТабличныйДокумент - подвал, которым должна закончиться страница.
//
// Возвращаемое значение:
//   Число   - количество добавленных строк.
//
Функция ДополнитьСтраницуТабличногоДокумента(ТабличныйДокумент, Строка, Подвал = Неопределено) Экспорт
```

Пример вызова
```bsl
Результат = ОбщегоНазначенияБЗК.ДополнитьСтраницуТабличногоДокумента(ТабличныйДокумент, Строка, Подвал);
```
</details>

## ДатаВИнтервале
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Проверяет вхождение даты в интервал
//
// Параметры:
// 	ПроверяемаяДата - Дата - проверяемая дата
// 	ДатаНачалаИнтервала - Дата - дата начала интервала
// 	ДатаОкончанияИнтервала - Дата - дата окончания интервала
// 	ВключатьГраницы - Булево - определят необходимость учета границ интервала при проверке
// Возвращаемое значение:
// 	Булево
//
Функция ДатаВИнтервале(ПроверяемаяДата, ДатаНачалаИнтервала, ДатаОкончанияИнтервала, ВключатьГраницы = Истина) Экспорт
```

Пример вызова
```bsl
Результат = ОбщегоНазначенияБЗК.ДатаВИнтервале(ПроверяемаяДата, ДатаНачалаИнтервала, ДатаОкончанияИнтервала, ВключатьГраницы);
```
</details>

## ВставитьСтрокуВТаблицу
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Вставляет элемент в заданную позицию таблицы.
//
// Параметры:
// 	Таблица - ТаблицаЗначений, ТабличнаяЧасть, ДанныеФормыКоллекция - любая таблица, имеющая методы Вставить и Добавить.
// 	ИндексСтроки     - Число        - Индекс вставляемой строки.
// 	                                  Необязательный. Если не указан, строка будет добавлена в конец таблицы.
// 	ШаблонЗаполнения - Произвольный - Значения свойств данного объекта будут установлены
// 	                                  в соответствующие свойства новой строки.
// 	                                  Значение данного параметра не может быть следующих типов:
// 	                                  Неопределено, Null, Число, Строка, Дата, Булево.
// Возвращаемое значение:
// 	СтрокаТаблицыЗначений, СтрокаТабличнойЧасти, ДанныеФормыЭлементКоллекции - добавленная строка таблицы.
//
Функция ВставитьСтрокуВТаблицу(Таблица, Индекс = Неопределено, ШаблонЗаполнения = Неопределено) Экспорт
```

Пример вызова
```bsl
Результат = ОбщегоНазначенияБЗК.ВставитьСтрокуВТаблицу(Таблица, Индекс, ШаблонЗаполнения);
```
</details>

## ЗначенияРеквизитовОбъектов
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Устарела. Следует использовать ОбщегоНазначения.ЗначенияРеквизитовОбъектов.
// Значения реквизитов, прочитанные из информационной базы для нескольких объектов.
//
//  Если необходимо зачитать реквизит независимо от прав текущего пользователя,
//  то следует использовать предварительный переход в привилегированный режим.
//
// Параметры:
//  Ссылки      - Массив - ссылки на объекты, значения реквизитов которых нужно получить.
//                         Если массив пуст, то результатом будет пустое соответствие.
//  Реквизиты   - Строка - имена реквизитов, перечисленные через запятую,
//                         в формате требований к свойствам структуры.
//                         Например, "Код, Наименование, Родитель".
//  Разрешенные - Булево - если Истина, то будут получены реквизиты объектов, доступные по правам пользователя;
//                       - если Ложь, то возникнет исключение при отсутствии прав на объект или реквизит.
//
// Возвращаемое значение:
//  Соответствие - список объектов и значений их реквизитов:
//   * Ключ - ЛюбаяСсылка - ссылка на объект;
//   * Значение - Структура - значения реквизитов:
//    ** Ключ - Строка - имя реквизита;
//    ** Значение - Произвольный - значение реквизита.
//
Функция ЗначенияРеквизитовОбъектов(Ссылки, Знач Реквизиты, Разрешенные = Ложь) Экспорт
```

Пример вызова
```bsl
Результат = ОбщегоНазначенияБЗК.ЗначенияРеквизитовОбъектов(Ссылки, Реквизиты, Разрешенные);
```
</details>

## ЗначениеРеквизитаОбъектов
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Устарела. Следует использовать ОбщегоНазначения.ЗначениеРеквизитаОбъектов.
// Значения реквизита, прочитанного из информационной базы для нескольких объектов.
//
//  Если необходимо зачитать реквизит независимо от прав текущего пользователя,
//  то следует использовать предварительный переход в привилегированный режим.
//
// Параметры:
//  Ссылки      - Массив - ссылки на объекты, значения реквизита которых нужно получить.
//                         Если массив пуст, то результатом будет пустое соответствие.
//  Реквизиты   - Строка - имя реквизита.
//  Разрешенные - Булево - если Истина, то будут получены реквизиты объектов, доступные по правам пользователя;
//                       - если Ложь, то возникнет исключение при отсутствии прав на объект или реквизит.
//
// Возвращаемое значение:
//  Соответствие - Ключ - ссылка на объект, Значение - значение прочитанного реквизита.
//      * Ключ     - ссылка на объект,
//      * Значение - значение прочитанного реквизита.
//
Функция ЗначениеРеквизитаОбъектов(Ссылки, Знач Реквизит, Разрешенные = Ложь) Экспорт
```

Пример вызова
```bsl
Результат = ОбщегоНазначенияБЗК.ЗначениеРеквизитаОбъектов(Ссылки, Реквизит, Разрешенные);
```
</details>

## ДобавитьЗначениеВМассив
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Добавляет значение в массив, если его нет в массиве
//
// Параметры:
//		Массив - Массив, в который требуется добавить значение
//		Значение - Значение, которое добавляется в массив
//
Процедура ДобавитьЗначениеВМассив(Массив, Значение) Экспорт
```

Пример вызова
```bsl
ОбщегоНазначенияБЗК.ДобавитьЗначениеВМассив(Массив, Значение) 
```
</details>

## ПериодПересеченияДвухИнтервалов
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Возвращает период пересечения
//
// Параметры:
//  ДатаНачалаПервогоИнтервала     - Дата  - дата начала первого интервала.
//  ДатаОкончанияПервогоИнтервала  - Дата  - дата окончания первого интервала.
//  ДатаНачалаВторогоИнтервала     - Дата  - дата начала второго интервала.
//  ДатаОкончанияВторогоИнтервала  - Дата  - дата окончания второго интервала.
//
// Возвращаемое значение:
//  Структура - структура с периодом пересечения двух периодов
//		* ДатаНачала     - Дата - начало периода пересечения.
//		* ДатаОкончания  - Дата - окончание периода пересечения.
//
Функция ПериодПересеченияДвухИнтервалов(ДатаНачалаПервогоИнтервала, ДатаОкончанияПервогоИнтервала, Экспорт
```

Пример вызова
```bsl
Результат = ОбщегоНазначенияБЗК.ПериодПересеченияДвухИнтервалов(ДатаНачалаПервогоИнтервала, ДатаОкончанияПервогоИнтервала, );
```
</details>

## ИнтервалыПересекаются
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Проверяет пересекаются ли интервалы
//
// Параметры:
//  ДатаНачалаПервогоИнтервала     - Дата  - дата начала первого интервала.
//  ДатаОкончанияПервогоИнтервала  - Дата  - дата окончания первого интервала.
//  ДатаНачалаВторогоИнтервала     - Дата  - дата начала второго интервала.
//  ДатаОкончанияВторогоИнтервала  - Дата  - дата окончания второго интервала.
//
// Возвращаемое значение:
//  Булево - истина, если интервалы пересекаются, ложь, если не пересекаются.
//
Функция ИнтервалыПересекаются(ДатаНачалаПервогоИнтервала, ДатаОкончанияПервогоИнтервала, Экспорт
```

Пример вызова
```bsl
Результат = ОбщегоНазначенияБЗК.ИнтервалыПересекаются(ДатаНачалаПервогоИнтервала, ДатаОкончанияПервогоИнтервала, );
```
</details>

---

© 2024, **ООО 1С-Софт**  
Все права защищены. Эта программа и сопроводительные материалы предоставляются  
в соответствии с условиями лицензии [Attribution 4.0 International (CC BY 4.0)](https://creativecommons.org/licenses/by/4.0/legalcode).

---
