Обработка отчета из 1с

Обновлено: 07.07.2024

Дополнительные отчеты и обработки — подсистема 1С БСП, предназначена для расширения функционала без изменения конфигурации.

Для более полного ознакомления можно развернуть демонстрационную конфигурацию по БСП. В ней есть необходимые примеры.

Что можно подключить

  • внешние обработки (файлы с расширением “epf”) ;
  • внешние отчеты (файлы с расширением «erf»).

Виды разработок

  • Дополнительная обработка.
  • Дополнительный отчет.
  • Заполнение объекта. Возможность установить свои кнопки по заполнению документа (ранее были только кнопки по заполнению табличной части).
  • Печатная форма. Дополнительная печатная форма. Добавляется кнопка «Дополнительные печатные формы».
  • Отчет. Прикрепляемый к справочникам и документам.
  • Создание связанных объектов. Свой ввод на основании. В пункт меню «Ввод на основании» добавляется кнопка «Создание связанных объектов…».

Возможности БСП:

  • В документах можно добавлять кнопки по заполнению всего документа, кнопки по вводу на основании.
  • Обработка может содержать несколько команд меню.
  • Вводить на основании и заполнять объекты сразу на основании нескольких объектов.
  • Задавать расписание выполнение серверных команд (на сервере).
  • Задавать режим «Безопасный» или «Небезопасный», т.е. запускать обработку с учетом ограничением прав или полные права
  • Задать режим использования: «Не использовать», «Отладка», «Использовать».
  • Включить использование в формах объекта и в форма списков
  • Привязать ко всем указанным объектам обработку или отчет.
  • Настроить быстрый доступ к определенным командам внешних обработок.
  • Возможность указать в каких разделах интерфейса должны появляться дополнительные обработки и отчеты.

Сведения о внешней обработке

Значение поле может принимать одно из значений, возвращаемых функциями: ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработки<Вид>().

Таблица. Поле «ВИД».

Строка. Подставляется в наименование при создании элемента справочника «Дополнительные отчеты и обработки». Если не заполнено, то используется синоним внешней обработки/отчета.

Таблица значений. Загружается в одноименную табличную часть элемента справочника «Дополнительные отчеты и обработки» при регистрации внешней обработки.

Эту табличную часть можно заполнить и вручную.

Колонки таблицы:

Идентификатор – строка (идентификатор команды).

Представление – описание команды.

ПоказыватьОповещение – окно оповещение будет появляться перед началом и после окончания выполнения (для команд клиентских и серверных без формы).

Использование – режим запуска обработки.

Наиболее часто используются процедуры Печать() и ВыполнитьКоманду(), а также открытие формы без обращения к методу.

Это поле может принимать одно из значений, возвращаемых функциями ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКоманды<Тип>(), например, ТипКомандыВызовСерверногоМетода().

Таблица. Возможные варианты использования в таблице.

Для типа команды ВызовКлиентскогоМетода необходимо создать форму в обработке, назначить ее основной и объявить экспортную процедуру.

«Версия БСП»

Строка, версия встроенной в конфигурации БСП. Необходима для поддержки совместимости. Можно не заполнять.

«Безопасный Режим»

Булево, отображает режим запуска обработка. В безопасном режиме недоступен привилегированный режим, COM-соединение, загрузка dll, доступ к файловой системе и интернету.

«Информация»

Строка, комментарий, который характеризует обработку.

«Версия»

Строка, версия обработки.

Подготовка разработки к подключению.

Для подключения разработки в базу необходимо задать параметры в экспортной функции модуля объекта «СведенияОВнешнейОбработке».

Пример

Подключение к базе.

Открываем справочник «Дополнительные отчеты и обработки». Кнопкой «Добавить» создаем элемент справочника. После чего система предложит прикрепить вашу разработку. Система автоматически заполнит поля формы функцией «СведенияОВнешнейОбработке.

Отладка

Единственный минус дополнительных отчетов и обработок заключается в том, что внутри них не работает встроенный в платформу отладчик.

Связано это в первую очередь с тем, что, запуская такую форму, система создает временный файл, и точки останова не срабатывают.



На уровне различия в структуре метаданных в отчётах дополнительно можно указать основную Схему Компоновки Данных (СКД) и настройки для сохранения параметров. Также здесь есть используемый в текущий момент компоновщик настроек. В обработках данные структуры не используются.

Указание в отчётах основной СКД является полезной функцией, т.к. при этом можно создать требуемый отчёт, не написав ни единой строчки кода в самом модуле отчёта, что ускоряет разработку и понимание принципов функционирования СКД для новичков.



Внешние отчёты и обработки 1C

В режиме конфигуратора 1С есть возможность создавать не только объекты внутри конфигурации (в дереве метаданных), но и создавать внешние объекты в виде отдельных файлов. Это касается, в том числе, отчётов и обработок. Преимуществом внешних объектов в том, что новые объекты не требуется каждый раз включать в состав конфигурации и, соответственно, обновлять при этом всю информационную базу 1С. Вместо этого можно использовать любые необходимые отчёты и обработки и изменять их без внесения изменений в метаданные базы 1С.

Внешние отчёты/обработки сохраняются в отдельные файлы и имеют следующие расширения:



Пример создания внешней обработки 1С

Создавать внешние объекты довольно просто. Функционал, закладываемый разработчиком в конкретную реализацию отчёта или обработки в 1С 8.3 или 8.2, индивидуален и зависит от решаемой задачи.

1. Выбираем информационную базу из списка, заходим в режим конфигуратора 1С.



2. В конфигураторе выбираем пункт меню Файл – Новый…



3. Выбираем из списка вид объекта – Внешняя обработка.



4. Задаём имя обработки. В данном случае имя нашей обработки будет «ПримерВнешнейОбработки».



5. Определяем структуру данных обработки. По условию нашей задачи в структуру реквизитов нужно добавить строковое поле «Вывести».







6. Создаём пользовательскую форму. Тип формы: Обычная.







7. Правой клавишей мыши вызываем контекстное меню. Определяем обработчик нажатия на кнопку «Выполнить».



8. Прописываем код обработки.



9. Сохраняем нашу обработку на диск. Заходим в режим предприятия 1С.





10. Выбираем пункт меню Файл – Открыть…



11. Выбираем созданную нами обработку и нажимаем «Открыть».







Созданную обработку можно скачать по ссылке ниже.

Дополнительные отчёты и обработки

В конфигурациях 1С существуют также подключаемые внешние отчёты и обработки. Чтобы включить в информационную базу 1С соответствующую обработку/отчёт нужно выполнить ряд действий:

1. Зайти в конфигурацию в режиме предприятия 1С

2. В главном меню выбрать Сервис – Дополнительные отчеты и обработки – Дополнительные внешние обработки



3. Открылся список внешних обработок, загруженных в информационную базу 1С. Нажимаем кнопку «Добавить».



4. Загружаем файл обработки.





5. Запускаем обработку двойным кликом мышки, чтобы проверить её работоспособность.



С помощью данного механизма дополнительных обработок можно также изменять стандартные печатные формы на собственные и добавлять новые. Любой пользователь, таким образом, может расширить функционал типовой конфигурации 1С.

В этой статье мы рассмотрели создание и использование внешних отчётов и обработок. Создание внешних обработок в режиме управляемого приложения более подробно будет рассмотрено в следующей статье.

Сначала получаем форму.

Если отчет хранится в базе тогда выполняем на клиенте код:

Далее получаем настройки:

Через серверный вызов получаем настройки и если нужно заполняем параметры Компоновщика в отдельной процедуре.

Загружаем измененные настройки в компоновщик

Код выполняется на клиенте, сначала мы формируем структуру с необходимыми параметрами формы, а потом вызываем процедуру открытия. Часто используемые параметры в данном случае это:

Сначала получаем схему компоновки данных. Схема может быть получена из разных источников: общий макет, макет прикладного объекта, такого как справочник или отчет, макет из внешней обработки.

Код выполняется на сервере.

Получение локального макета

Получение макета произвольного отчета

Получение макета во внешней обработке

Получение макета из внешней обработки или отчета

Далее мы получаем настройки. Настройки СКД могут быть взяты из разных источников. Мы можем их получить из самой СКД:

Мы можем создать новый компоновщик настроек на основе схемы и получить настройки из него.

Мы можем получить настройки с отдельного компоновщика настроек, добавленного на произвольную форму.

И когда будем формировать

Далее программно заполняем параметры Компоновщика. Об этом подробно в разделе 4 .

Объявляем создаем необходимые объекты:

Создаем макет компоновки с помощью компоновщика макета:

Если результат выполнения СКД нужно вывести в таблицу значений то соответствующий тип генератора нужно указать в параметрах:

Инициализируем процессор компоновки данных

Создаем процессор вывода:

Для вывода в таблицу значений используется другой процессор вывода:

Запускаем процесс вывода:

Теперь мы можем проводить нужные операции с полученными данными.

Если вывод в таблицу значений завершился ошибкой “Не поддерживается вывод таблиц и диаграмм в универсальную коллекцию значений” значит настройки СКД не подходят для такой выгрузки, и нужно их изменить, об этом ниже.

При программном формировании СКД как в пункте 2 у нас есть огромное количество возможностей по управлению отчетом. Опишем самые часто используемые из них.

Или если с добавлением нового параметра

Переменная Настройки содержит в себе всю палитру настроек которая доступна в редакторе СКД в разделе “Настройки”. Наиболее часто из них программно редактируются отборы, параметры и структура, в случае когда отчет с табличной структурой надо вывести в таблицу значений. Рассмотрим их подробнее.

Параметры

Все параметры создаются при создании исходного отчета, исключение если параметр был добавлен при редактировании запроса. Значение существующего параметра устанавливается следующим образом:

Добавление параметра делается следующим образом

Отбор

У отборов нет специальных функций по установке значений. Поэтому нужно перебирать коллекцию циклом.

Структура

Для адаптации отчета к выводу в таблицу значений нужно очистить структуру группировок отчета и создать поле группировки “Детальные записи”.

Программист может упростить работу пользователя по вводу параметров и отборов если есть некоторая закономерность в них, но они всё таки не фиксированы. К примеру, сравнительный отчет по продажам за этот месяц этого года и аналогичные месяца трех предыдущих годов.

Приведенные примеры кода были протестированы на платформе 1С:Предприятие 8.3 (8.3.13.1690).

Как сделать отчет в 1С

Научимся создавать отчеты в конфигураторе 1С. Для того, чтобы создать отчет, в конфигураторе необходимо выделить ветку Отчеты, вызвать правой клавишей мышки контекстное меню и выполнить команду Добавить.

Как сделать отчет в 1С

Как сделать отчет в 1С

На закладке Подсистемы редактора отчета можно указать подсистему, в которую будет входить отчет.

Подсистемы для отчета в 1С

А на закладке Права указать, у каких ролей будет право на использование и просмотр отчета.

Права на отчет в 1С

Если установить только право Использовать, то пользователь с этой ролью не сможет видеть отчет в интерфейсе, но сможет использовать обработки (или команды), в которых осуществляется программное обращение к этому отчету. Если необходимо, чтобы пользователь имел доступ к отчету через командный интерфейс, то нужно установить право Просмотр.

В этой статье я покажу пример создания простого отчета с помощью СКД.

Открыть схему компоновки данных 1С

Конструктор макета в 1С

Будет создана схема компоновки данных, в которой добавим набор данных Запрос.

Набор данных Запрос в СКД

Закончив работать с конструктором запроса, нажмем кнопку ОК, в результате добавятся поля из запроса в таблицу Поля схемы компоновки данных, и заполнится текст запроса в поле Запрос.

Схема компоновки данных в 1С

Осталось перейти в настройки, и создать группировку.

Настройки схема компоновки данных в 1С

В группировке выберем единственное поле.

Настройки схема компоновки данных в 1С

Выбранное поле появится в дереве Отчет закладки Настройка, и, в принципе, наш отчет будет готов.

Настройки схема компоновки данных в 1С

Заметьте, созданная схема компоновки появится в редакторе отчета на закладке Макеты.

Схема компоновки данных отчета в 1С

Наш отчет готов, осталось озаботиться тем, чтобы пользователь мог формировать этот отчет.

Вывести отчет в 1С

Проверим, сможет ли наш пользователь увидеть этот отчет.

Откроем командный интерфейс подсистемы, в которую включили отчет при его создании.

Открыть командный интерфейс 1С

Отчет должен быть в группе Панель Действий.Отчеты.

Отчет в командном интерфейсе 1С

Чтобы отчет был в этой группе, должно выполняться несколько условий.

Первое, в редакторе отчета на закладке Команды должен быть установлен флаг «Использовать стандартные команды».

Использовать стандартные команды отчета 1С

Второе, созданная схема компоновки данных должна быть указана в свойстве «Основная схема компоновки данных» .

Основная схема компоновки данных отчета 1С

Если все вышеуказанное настроено, а также у пользователя имеется роль с правом на просмотр этого отчета и подсистемы, в которую он входит, то сделанный отчет появится в группе отчеты нужной подсистемы.

Группа отчеты подсистемы 1С

И его можно будет сформировать.

Отчеты 1С

Внешний отчет 1С

Создать внешний отчет в 1С

Второй способ – сделать из существующего отчета в конфигураторе новый внешний отчет.

Для создания нового отчета, нужно нажать на кнопку «Новый документ» меню Стандартная конфигуратора.

Откроется окно «Выбор вида документа», в котором следует указать «Внешний отчет», а после нажать кнопку ОК.

Создать внешний отчет в 1С

Откроется знакомый нам редактор отчёта, с которым работаете так, как работаете с редактором обычного отчёта.

Редактор внешнего отчета в 1С

После того, как вы выполните все работы по созданию отчёта, следует его сохранить на жесткий диск. Для этого нужно или нажать на кнопку «Сохранить» панели «Стандартная», или выполнить команду «Сохранить» в меню Файл, или нажать комбинацию клавиш Ctrl + S. Как результат, откроется окно «Сохранить как…», в котором нужно выбрать место, где будет находиться файл вашего внешнего отчёта.

Сохранение внешнего отчета в 1С

Также, можно создать внешний отчет из отчета, который уже был разработан в конфигураторе. В этом случае, необходимо выделить нужный отчет в дереве метаданных, вызвать правой клавишей мышки контекстное меню, и выполнить команду «Сохранить как внешнюю обработку, отчет..» этого меню.

Сохранение внешнего отчета в 1С

В результате выполнения команды, будет открыто окно «Сохранить как…», в котором следует выбрать путь хранения нового отчета.

Сохранение внешнего отчета в 1С

Открыть внешний отчет в 1С

Для того, чтобы пользователь имел возможность открывать внешний отчет из клиентского приложения «1С: Предприятия 8.3», необходимо, чтобы у роли этого пользователя было включено право «Интерактивное открытие внешних отчетов».

Интерактивное открытие внешнего отчета 1С

Если это право включено, то внешний отчет в 1С можно открыть, используя команду «Открыть» подменю файл, которое находится в меню «Сервис и настройка» (начиная с версии платформы 1С 8.3.14).

Открыть внешний отчет в 1С

В окне «Открыть» нужно выбрать файл внешнего отчета (с расширением erf).

Открыть внешний отчет в 1С

Выйдет предупреждение безопасности.

Открыть внешний отчет в 1С

И если вы нажмете «Да», то откроется внешний отчет, с которым можно уже работать.

Открыть внешний отчет в 1С

Другие статьи по конфигурированию в 1С:

Программировать в 1С за 11 шагов

  1. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
  2. Научитесь понимать архитектуру 1С;
  3. Станете писать код на языке 1С;
  4. Освоите основные приемы программирования;
  5. Закрепите полученные знания при помощи задачника.

Отличное пособие по разработке в управляемом приложении 1С, как для начинающих разработчиков, так и для опытных программистов.

Основы разработки в 1С такси

  1. Очень доступный и понятный язык изложения
  2. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
  3. Поймете идеологию управляемого приложения 1С
  4. Узнаете, как разрабатывать управляемое приложение;
  5. Научитесь разрабатывать управляемые формы 1С;
  6. Сможете работать с основными и нужными элементами управляемых форм
  7. Программирование под управляемым приложением станет понятным

Эти книги, плюс книга по программированию оперативного учета имеются в едином комплекте: комплект книг по разработке в 1С.
Только для читателей моего блога,
промо-код на скидку в 300 рублей на весь комплект: blog


Если Вам понравился этот урок, был полезен или помог решить какую-нибудь проблему, то Вы можете поддержать мой проект, перечислив любую сумму
.

можно оплатить вручную:

Читайте также: