---
title: Дополнительные отчеты и обработки
slug: bsp/дополнительные-отчеты-и-обработки
---


## ПодключитьВнешнююОбработку
<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С:Предприятия действия:
//                                      COM;
//                                      загрузка внешних компонент;
//                                      запуск внешних приложений и команд операционной системы;
//                                      доступ к файловой системе, кроме временных файлов;
//                                      доступ к Интернету.
//                                    Необязательное свойство.
//
//       * Разрешения - Массив из ОбъектXDTO - дополнительные разрешения, необходимые внешней обработке при работе в
//                               безопасном режиме. Элемент массива - ОбъектXDTO - разрешение типа
//                               {HTTP://www.1c.ru/1cFresh/ApplicationExtensions/Permissions/a.b.c.d}PermissionBase.
//                               Для формирования описания разрешения рекомендуется использовать функции
//                               РаботаВБезопасномРежиме.Разрешение<ВидРазрешения>(<ПараметрыРазрешения>).
//                               Необязательное свойство.
//
//       * Информация - Строка - краткая информация о внешней обработке.
//                               В этом параметре для администратора рекомендуется дать описание ее возможностей.
//                               Если не заполнено, то берется комментарий объекта метаданных внешней обработки.
//
//       * ВерсияБСП - см. СтандартныеПодсистемыСервер.ВерсияБиблиотеки.
//
//       * ОпределитьНастройкиФормы - Булево - только для дополнительных отчетов, подключенных к общей форме ФормаОтчета.
//                                             Позволяет переопределять некоторые настройки общей формы отчета и
//                                             подписываться на ее события.
//                                             Если Истина, то в модуле объекта отчета следует определить процедуру по шаблону:
//
//       * НазначениеВариантаОтчета - ПеречислениеСсылка.НазначенияВариантовОтчетов - назначение варианта отчета
//										(ДляКомпьютеровИПланшетов, ДляСмартфонов, ДляЛюбыхУстройств).
//
//           // Задать настройки формы отчета.
//           //
//           // Параметры:
//           //   Форма - ФормаКлиентскогоПриложения, Неопределено
//           //   КлючВарианта - Строка, Неопределено
//           //   Настройки - см. ОтчетыКлиентСервер.НастройкиОтчетаПоУмолчанию
//           //
//           Процедура ОпределитьНастройкиФормы(Форма, КлючВарианта, Настройки) Экспорт
//           	// Код процедуры.
//           КонецПроцедуры
//
//           Подробнее см. в документации к подсистемам "Дополнительные отчеты и обработки" и "Варианты отчетов".
//           Необязательное свойство.
//
//       * Команды - ТаблицаЗначений - настройки команд, поставляемых внешней обработкой (необязательно для отчетов):
//           ** Идентификатор - Строка - внутреннее имя команды. Для внешних печатных форм (когда Вид = "ПечатнаяФорма"):
//                 Идентификатор может содержать имена одной или нескольких команд печати,
//                 разделенные запятыми. Подробнее см. описание колонки Идентификатор
//                 в функции УправлениеПечатью.СоздатьКоллекциюКомандПечати.
//           ** Представление - Строка - пользовательское представление команды.
//           ** Использование - Строка - тип команды:
//               "ВызовКлиентскогоМетода",
//               "ВызовСерверногоМетода",
//               "ЗаполнениеФормы",
//               "ОткрытиеФормы" или
//               "СценарийВБезопасномРежиме".
//               Для получения типов команд рекомендуется использовать функции
//               ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКоманды<ИмяТипа>.
//               В комментариях к этим функциям также даны шаблоны процедур-обработчиков команд.
//           ** ПоказыватьОповещение - Булево - если Истина, то при запуске команды выводится оповещение "Команда выполняется...".
//              Действует для всех типов команд, кроме команд по открытию формы (Использование = "ОткрытиеФормы").
//           ** Модификатор - Строка - дополнительная классификация команды.
//               Для внешних печатных форм (когда Вид = "ПечатнаяФорма"):
//                 "ПечатьMXL" - для печатных форм на основе табличных макетов.
//               Для загрузки данных из файла (когда Вид = "ПечатнаяФорма" и Использование = "ЗагрузкаДанныхИзФайла"):
//                 Модификатор является обязательным для заполнения
//                 и должен содержать полное имя объекта метаданных (справочника),
//                 для которого выполняется загрузка данных.
//           ** Скрыть - Булево - необязательный. Признак того, что это служебная команда.
//               Если установить в значение Истина, то команда скрывается в карточке дополнительного объекта.
//
Функция СведенияОВнешнейОбработке(ВерсияБСП = "") Экспорт
```

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

---
