---
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>

---

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

---
