---
title: Планирование
slug: erp-uh/планирование
---


## ПолучитьСценарийПоУмолчанию
<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

// Процедура подготавливает таблицу периодов для заполнения по формулам
//
// Параметры:
//  Параметры - Структура - параметры заполнения.
//
Процедура ПодготовитьТаблицуПериодовПередЗаполнением(Параметры) Экспорт
```

Пример вызова
```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

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

Пример вызова
```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

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

Пример вызова
```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

// Возвращаемое значение:
// 	Структура - Описание:
// * Заголовок - Строка -
// * КолонкаЗначения - Строка -
Функция СтруктураДопПоля() Экспорт
```

Пример вызова
```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>

## ДополнитьНастройкиДляЦенообразования25
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

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

```bsl

Процедура ДополнитьНастройкиДляЦенообразования25(СКД_Преобразование, ЗаполняемаяТЧ) Экспорт
```

Пример вызова
```bsl
Планирование.ДополнитьНастройкиДляЦенообразования25(СКД_Преобразование, ЗаполняемаяТЧ));
```
</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
// Возвращаемое значение:
// 	ТаблицаЗначений - Описание:
//    * Период - Дата -
//    * ПериодСостава - Дата -
//    * LineNumber - Число
//
Функция ТаблицаРезультата() Экспорт
```

Пример вызова
```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

// Возвращает +1,-1 или 0 - знак корректировки планируемого дефицита который сделает текущий план.
//
// Параметры:
// Форма             - РасширениеУправляемойФормыДляДокумента - Форма документа плана:
// * Объект - ДокументОбъект -
//
// Возвращаемое значение:
//  Число - +1,0-1
Функция ПолучитьЗнакКорректировки(Форма) Экспорт
```

Пример вызова
```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

// Скопирована из ОбщегоНазначенияКлиентСервер, отличается тем, что в последнем периоде тоже округляет данные.
// Выполняет пропорциональное распределение суммы в соответствии
// с заданными коэффициентами распределения.
//
// Параметры:
//  РаспределяемаяСумма - Число - сумма, которую надо распределить;
//  Коэффициенты - Массив - коэффициенты распределения;
//  Точность - Число - точность округления при распределении. Необязателен.
//
// Возвращаемое значение:
//  Массив - массив размерностью равный массиву коэффициентов, содержит
//           суммы в соответствии с весом коэффициента (из массива коэффициентов).
//           В случае если распределить не удалось (сумма = 0, кол-во коэффициентов = 0,
//           или суммарный вес коэффициентов = 0), тогда возвращается значение Неопределено.
//
Функция РаспределитьСуммуПропорциональноКоэффициентам(Знач РаспределяемаяСумма, Коэффициенты, Знач Точность = 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

// Процедура обновляет гиперссылку переходу к замещенным и замещающим планам
//
// Параметры:
//	Форма - РасширениеУправляемойФормыДляДокумента - Форма документа плана:
// * Объект - ДокументОбъект -
//
Процедура ОбновитьГиперссылкуЗамещение(Форма) Экспорт
```

Пример вызова
```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).

---
