1с внешний отчет расширение
Дополнительные отчеты и обработки — подсистема 1С БСП, предназначена для расширения функционала без изменения конфигурации.
Для более полного ознакомления можно развернуть демонстрационную конфигурацию по БСП. В ней есть необходимые примеры.
Что можно подключить
- внешние обработки (файлы с расширением “epf”) ;
- внешние отчеты (файлы с расширением «erf»).
Виды разработок
- Дополнительная обработка.
- Дополнительный отчет.
- Заполнение объекта. Возможность установить свои кнопки по заполнению документа (ранее были только кнопки по заполнению табличной части).
- Печатная форма. Дополнительная печатная форма. Добавляется кнопка «Дополнительные печатные формы».
- Отчет. Прикрепляемый к справочникам и документам.
- Создание связанных объектов. Свой ввод на основании. В пункт меню «Ввод на основании» добавляется кнопка «Создание связанных объектов…».
Возможности БСП:
- В документах можно добавлять кнопки по заполнению всего документа, кнопки по вводу на основании.
- Обработка может содержать несколько команд меню.
- Вводить на основании и заполнять объекты сразу на основании нескольких объектов.
- Задавать расписание выполнение серверных команд (на сервере).
- Задавать режим «Безопасный» или «Небезопасный», т.е. запускать обработку с учетом ограничением прав или полные права
- Задать режим использования: «Не использовать», «Отладка», «Использовать».
- Включить использование в формах объекта и в форма списков
- Привязать ко всем указанным объектам обработку или отчет.
- Настроить быстрый доступ к определенным командам внешних обработок.
- Возможность указать в каких разделах интерфейса должны появляться дополнительные обработки и отчеты.
Сведения о внешней обработке
«Вид»
Минимальным условием для регистрации разработки является заполнение поля «Вид».
Значение поле может принимать одно из значений, возвращаемых функциями: ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработки().
Таблица. Поле «ВИД».
«Назначение»
Содержит массив объектов конфигурации в формате «.», для которых будет назначен внешний отчет/обработка.
«Наименование»
Строка. Подставляется в наименование при создании элемента справочника «Дополнительные отчеты и обработки». Если не заполнено, то используется синоним внешней обработки/отчета.
«Команды»
Таблица значений. Загружается в одноименную табличную часть элемента справочника «Дополнительные отчеты и обработки» при регистрации внешней обработки.
Эту табличную часть можно заполнить и вручную.
Колонки таблицы:
Идентификатор – строка (идентификатор команды).
Представление – описание команды.
Модификатор — строка (используется для дополнительных печатных форм).
ПоказыватьОповещение – окно оповещение будет появляться перед началом и после окончания выполнения (для команд клиентских и серверных без формы).
Использование – режим запуска обработки.
В колонке «Использование» указывается тип вызываемой команды. По сочетанию Вид-Тип команды система определяет какая предопределенная процедура будет вызвана из внешней обработки/отчета, и где она будет объявлена — на клиенте или на сервере.
Наиболее часто используются процедуры Печать() и ВыполнитьКоманду(), а также открытие формы без обращения к методу.
Это поле может принимать одно из значений, возвращаемых функциями ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКоманды(), например, ТипКомандыВызовСерверногоМетода().
Таблица. Возможные варианты использования в таблице.
Тип команды | Значение поля «Вид» | Вызываемая экспортная процедура |
ВызовСерверногоМетода | ПечатнаяФорма | Печать( МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) |
ДополнительнаяОбработка ДополнительныйОтчет Отчет | ВыполнитьКоманду( ИдентификаторКоманды, ПараметрыВыполнения) | |
СозданиеСвязанныхОбъектов | ВыполнитьКоманду( ИдентификаторКоманды, ОбъектыНазначения, СозданныеОбъекты, ПараметрыВыполнения) | |
ЗаполнениеОбъекта | ВыполнитьКоманду( ИдентификаторКоманды, ОбъектыНазначения, ПараметрыВыполнения) | |
ВызовКлиентскогоМетода | ПечатнаяФорма | &НаКлиенте Печать( ИдентификаторКоманды, ОбъектыНазначенияМассив) |
ДополнительнаяОбработка ДополнительныйОтчет | &НаКлиенте ВыполнитьКоманду( ИдентификаторКоманды) | |
СозданиеСвязанныхОбъектов | &НаКлиенте ВыполнитьКоманду( ИдентификаторКоманды, ОбъектыНазначенияМассив, СозданныеОбъекты) | |
ЗаполнениеОбъекта Отчет | &НаКлиенте ВыполнитьКоманду( ИдентификаторКоманды, ОбъектыНазначенияМассив) | |
Для всех видов | в форму передается параметр ДополнительнаяОбработкаСсылка | |
ОткрытиеФормы | СозданиеСвязанныхОбъектов ЗаполнениеОбъекта Отчет | в форму передается дополнительный параметр ОбъектыНазначения |
Для всех видов | в форму передаются параметры ИдентификаторКоманды ДополнительнаяОбработкаСсылка ИмяФормы | |
Отчет | Отчет с макетом СКД может не иметь форму, тогда будет использована общая форма для отчетов по умолчанию | |
ЗаполнениеФормы | ЗаполнениеОбъекта | ВыполнитьКоманду( ИдентификаторКоманды, ОбъектыНазначения, ПараметрыВыполнения) |
СценарийВБезопасномРежиме | Для всех видов | см. описание в комментарии к функции ДополнительныеОтчетыИОбработкиКлиентСервер .ТипКомандыСценарийВБезопасномРежиме() |
ЗагрузкаДанныхИзФайла | ДополнительнаяОбработка | см. описание в комментарии к функции ДополнительныеОтчетыИОбработкиКлиентСервер .ТипКомандыЗагрузкаДанныхИзФайла() |
Для типа команды ВызовКлиентскогоМетода необходимо создать форму в обработке, назначить ее основной и объявить экспортную процедуру.
«Версия БСП»
Строка, версия встроенной в конфигурации БСП. Необходима для поддержки совместимости. Можно не заполнять.
«Безопасный Режим»
Булево, отображает режим запуска обработка. В безопасном режиме недоступен привилегированный режим, COM-соединение, загрузка dll, доступ к файловой системе и интернету.
«Информация»
Строка, комментарий, который характеризует обработку.
«Версия»
Строка, версия обработки.
Подготовка разработки к подключению.
Для подключения разработки в базу необходимо задать параметры в экспортной функции модуля объекта «СведенияОВнешнейОбработке».
Пример
Подключение к базе.
Открываем справочник «Дополнительные отчеты и обработки». Кнопкой «Добавить» создаем элемент справочника. После чего система предложит прикрепить вашу разработку. Система автоматически заполнит поля формы функцией «СведенияОВнешнейОбработке.
Отладка
Единственный минус дополнительных отчетов и обработок заключается в том, что внутри них не работает встроенный в платформу отладчик.
Связано это в первую очередь с тем, что, запуская такую форму, система создает временный файл, и точки останова не срабатывают.
Часто приходится сталкиваться с тем, что необходимо внести изменения в типовую конфигурацию, но очень не хочется снимать её с поддержки. Для этого в 1С существует ряд инструментов. Эта короткая статья посвящена тому, как подучить возможность подключения внешних отчетов к объекту конфигурации при помощи расширения на примере 1С:ERP Управление предприятием 2 (проверено на 1С:ERP Управление предприятием 2 (2.4.6.230)).
Часто приходится сталкиваться с тем, что необходимо внести изменения в типовую конфигурацию, но очень не хочется снимать её с поддержки. Для этого в 1С существует ряд инструментов. Эта короткая статья посвящена тому, как подучить возможность подключения внешних отчетов к объекту конфигурации при помощи расширения на примере 1С:ERP Управление предприятием 2.
Допустим, стоит задача добавить объекту конфигурации справочник - "ВариантыКомплектацииНоменклатуры" возможность заполнения табличной части из файла эксель. Самый простой вариант это создать внешнюю обработку, которая будет читать данные из файла, обрабатывать их нужным образом и заполнять таблицу на форме или записывать в ссылку на объект. Но при попытке подключить созданную обработку к объекту конфигурации справочник - "ВариантыКомплектацииНоменклатуры" типовым методом через обработку подключения внешних отчетов и обработок мы увидим что в списке объектов размещения данный справочник отсутствует. Однако не стоит отчаиваться.
Для добавления возможности подключения внешних отчетов и обработок к объектам конфигурации в 1С:ERP Управление предприятием 2 в общем модуле «ДополнительныеОтчетыИОбработки» в функции «ПодключенныеОбъектыМетаданных» достаточно в возвращаемую таблицу достаточно добавить строку с нужным объектом метаданных.
Для этого в расширение добавляем функцию «ПодключенныеОбъектыМетаданных» из общего модуля «ДополнительныеОтчетыИОбработки». В расширении в функции «ПодключенныеОбъектыМетаданных» общего модуля «ДополнительныеОтчетыИОбработки» создаем функцию
Теперь наш справочник доступен в списке объектов размещения, остается только добавить в расширение нужную форму объекта метаданных. В расширении для добавленного объекта метаданных в модуле формы создаем процедуру «ПриСозданииНаСервереПосле» и переносим из любого подходящего объекта метаданных процедуры отвечающие за подключаемые команды. Например:
Расширение конфигурации на Управляемых формах, помогающее использовать отладчик для внешнего отчета или обработки в режиме, когда обработка загружена в конфигурацию и вызывается штатно (например, печатная форма через кнопку Печать), а отлаживаем локальную копию на диске.
В связи с необходимостью часто отлаживать внешние отчеты, обработки и т.д. стал искать решение для оптимизации данной задачи.
Существует, например, способ путем небольших изменений в конфигурации подключать отчет из файла на диске, и решил приспособить для этой цели расширение. Источник идеи здесь
Специальные предложения
Просмотры 7296
Загрузки 21
Рейтинг 9
Создание 14.03.18 10:27
Обновление 14.03.18 10:27
№ Публикации 798784
Тип файла Расширение (cfe)
Конфигурация Конфигурации 1cv8
Операционная система Не имеет значения
Вид учета Не имеет значения
Доступ к файлу Абонемент ($m)
Код открыт Да
Изучаем новую область через практику, ВАВОК, системную инженерию, под руководством опытного аналитика Ирины Гертовской
См. также
Навигатор по конфигурации базы 1С 8.3 Промо
Универсальная внешняя обработка для просмотра метаданных конфигураций баз 1С 8.3. Отображает свойства и реквизиты объектов конфигурации, их количество, основные права доступа и т.д. Отображаемые характеристики объектов: свойства, реквизиты, стандартные рекизиты, реквизиты табличных частей, предопределенные данные, регистраторы для регистров, движения для документов, команды, чужие команды, подписки на события, подсистемы. Отображает структуру хранения объектов базы данных, для регистров доступен сервис "Управление итогами". Платформа 8.3, управляемые формы. Версия 1.1.0.87 от 02.12.2021
3 стартмани
28.10.2018 49681 448 ROL32 72
Сравнение реквизитов двух объектов (УФ)
Сравнивает реквизиты двух однотипных объектов (например, 2 расходные накладные, 2 типа цен), подсвечивает различия.
1 стартмани
01.04.2022 866 3 serko8547 11
Структура таблиц ИБД с генератором view для MS SQL
Структура таблиц ИБД с генератором view для MS SQL. Подходит для любой конфигурации с режимом управляемого приложения. Вишенка на торте: view перечисления содержит имя и синоним.
1 стартмани
30.12.2021 2004 17 vladimirkr 5
Запуск в фоне процедуры модуля внешней обработки на управляемых формах без БСП
Пример самописной конфигурации без БСП с запуском в фоне процедуры из модуля внешней обработки и индикатором выполнения на управляемых формах.
1 стартмани
20.09.2021 2397 9 user1472448 0
Консоль запросов с графом (Анализатор сложных запросов) Промо
Консоль запросов для анализа запросов с большим количеством временных таблиц и вложенных запросов. Отображает структуру взаимосвязей временных таблиц в виде графа. Позволяет быстро передвигаться по тексту запроса и получать результат выполнения подзапросов. Единственная консоль запросов, которая позволяет выводить результат выполнения вложенных запросов и любой части объединения запроса. Удобное получение данных запроса из отладчика включая временные таблицы. Текст запроса в структурированном виде (можно свернуть, развернуть текст подзапроса). И еще много другого, чего вы не найдете в других консолях запросов. Поддержка УФ и ОФ. Версия 0.9.1 от 18.10.2019 (поддержка WebKit).
10 стартмани
03.05.2017 109392 513 manuel 294
Выборочная очистка кеша
Очистка кеша выбранных информационных баз
1 стартмани
13.09.2021 2258 11 QZet 3
Шаблоны кода (управляемые формы)
Шаблоны кода на управляемых формах.
1 стартмани
22.05.2021 6284 17 Rustig 21
Вспомогательный инструмент для быстрого просмотра объектов метаданных и ролей
Просмотр содержимого объектов, движений, регистров, констант и прочего. Анализ роли по объектам доступа и наоборот объекта по ролям доступа. Интуитивно понятный интерфейс, универсальный (под любую, даже самописную базу), под обычные и управляемые приложения.
1 стартмани
22.04.2021 4778 13 user802597 1
Markdown-editor в 1С (с сохранением в HTML) Промо
В этой обработке вы пишете свой текст, используя синтаксис Markdown, а на выходе получаете чистый HTML-код, избавленный от JS-библиотеки, которая его сформировала. Совместим с Webkit и IE.
1 стартмани
04.07.2019 15006 23 riposte 6
Свойства общих модулей
Надоело каждый раз искать, какие общие модули глобальные? какие повторно используемые? хочется взглянуть на все контексты выполнения?
1 стартмани
14.04.2021 4129 4 kuzyara 5
Автоматизированная очистка нетиповой конфигурации от //
1 стартмани
02.02.2021 4295 2 nemec 0
Консоль текстов модулей для управляемых форм
Обработка предназначена для выполнения произвольного кода в режиме 1С:Предприятие для управляемых форм. Поддерживаются: конструктор запросов, расцветка кода, синтаксические подсказки, параметры, дерево текстов и запись в файл. Минимальная версия платформы - 8.3.14.1565.
1 стартмани
26.01.2021 5863 24 Reaper_1C 2
Управляемая консоль запросов, отчетов 3.8.9 (расширение, внешняя обработка) Промо
Работа с запросом и СКД, Полная поддержка пакетных запросов, временных таблиц, Сравнение результатов, текстов, Разбор структуры запроса в виде дерева, Анализ плана запроса, Групповая обработка
5 стартмани
14.08.2018 135468 3171 Evg-Lylyk 771
Сравнение функций/процедур из расширения с функциями/процедурами из конфигурации
Обработка облегчает обновление функций/процедур в расширении, которые используют аннотацию &Вместо.
1 стартмани
18.01.2021 3890 5 Wilka 1
Консоль заданий с диаграммой Ганта (управляемые формы)
Консоль позволяет администратору оценить загруженность (или наоборот недогруженность) задания, визуально оценив время его выполнения. Оптимально подобрать период выполнения заданий.
1 стартмани
15.12.2020 3070 17 Victor29reg 3
Работа с сериализатором XDTO
Отладочное расширение для просмотра объектов, преобразованных в XML, с помощью сериализатора XDTO, а также для выгрузки в xml.
1 стартмани
06.12.2020 4512 4 simon_sidoruk 5
Заполняем по шаблону (по умолчанию) Промо
Простой в подключении, универсальный и достаточно удобный механизм заполнения реквизитов произвольных документов/справочников значениями по умолчанию. Реализован в расширении, но может быть и непосредственно включен практически в любую конфигурацию на управляемых формах простым копированием одной формы и двух команд. Весь код в статье.
1 стартмани
08.02.2018 37929 21 mvxyz 17
История данных (Версионирование данных). Обычные и управляемые формы. Механизм платформы 1С
История данных - специальный механизм платформы 1С, который позволяет хранить в базе данных данные объектов конфигурации.
1 стартмани
30.09.2020 7824 60 yuryshestakov 2
Отладчик запроса 1С 8.3 (управляемые формы), бета-версия
По просьбам некоторых своих коллег и пользователей Инфостарта, выкладываю первую версию обработки "Отладчик запросов by Акулов А.С.", переделанной под управляемые формы. Реализованы почти все возможности из отладчика запросов, которые присутствовали в версии под обычные формы, а также добавлено немного нового.
Доработка типового отчета на СКД в БП 3.0 с помощью расширения конфигурации. Пример, как можно внести изменения в типовой отчет "Бухгалтерии предприятия" 3.0 без снятия конфигурации с поддержки. Описан пошаговый алгоритм действий и способы решения возникающих при этом проблем.
Итак, что мы имеем? Поставлена задача доработать типовой отчет "Продажи" в конфигурации "Бухгалтерия предприятия 3.0".
Необходимо сделать так, чтобы этот отчет выводил помимо двух показателей "Количество" и "Сумма" третий показатель - "Вес".
Разработка и тестирование производились на релизе На релизе 3.0.99.21 конфигурации "Бухгалтерия предприятия".
Что нам для этого нужно? С чего начать?
Прежде всего начнем с того что не требует программирования - добавим дополнительный реквизит "Вес" в справочник "Номенклатура". Процедура стандартная, и думаю, всем знакомая. Поэтому останавливаться на этом не буду.
Идем дальше. Добавляем в конфигурацию расширение. Меню -Конфигурация - Расширение конфигурации.
Назовем его "АдаптацияОтчетаПродажи". Префикс - "Старт_". Назначение - "Адаптация".
Снимем признак "Безопасный режим" в расширении.
Найдем в конфигурации нужный нам отчет "Продажи" и добавим его в расширение.
Также нам необходимо заимствовать в расширение следующие реквизиты отчета:
НачалоПериода, КонецПериода, Периодичность, РазмещениеДополнительныхПолей, ПоказательКоличество, ПоказательСумма.
Последние два реквизита - это признаки включения в отчет соответствующих показателей.
Поскольку нам необходимо добавить в отчет вывод нашего показателя "Вес", добавим еще один реквизит - ПоказательВес.
Добавим также еще один очень важный реквизит - ТекущаяСхемаКомпоновкиДанных. Тип реквизита Строка(80).
Комментарий "Наименование текущей используемой схемы компоновки данных".
Этот реквизит присутствует в некоторых других отчетах конфигурации, но в отчете "Продажи" его нет.
Зачем он нужен? Расскажу позже.
Также необходимо заимствовать в отчет табличные части Группировка и ДополнительныеПоля, а также их реквизиты Использование, Представление, ТипГруппировки.
Кроме этого, заимствуем форму отчета. Нам понадобится ее изменить.
Также добавляем макет - Схему компоновки данных. Для этого просто копируем в расширение макет "СхемаКомпоновкиДанных" типового отчета "Прдажи", и даем ему имя Старт_СхемаКомпоновкиДанных.
Почему мы именно копируем макет СКД, а не заимствуем его из отчета конфигурации?
Потому что расширения в 1С пока не умеют работать с заимствованной схемой компоновки.
Что делаем дальше? Подправим немного нашу заимствованную форму отчета.
Находим в элементах формы группу "ГруппаПоказатели". Видим что в этой группе есть элементы ПоказательКоличество и ПоказательСумма. Нам нужно здесь же разместить элемент ПоказательВес, связанный с добавленным нами ранее реквизитом отчета.
В правом верхнем окне формы раскрываем ветку реквизита Отчет, и. очень удивляемся.
Мы не видим там наш добавленный ранее реквизит отчета ПоказательВес. Что же делать?
Многих новичков, только начинающих работать с расширениями, этот вопрос ставит в тупик.
Для того чтобы наш реквизит появился, необходимо в правом верхнем окне формы выбрать реквизит Отчет и нажать на нем правой кнопкой мыши. В появившемся контекстном меню выбрать пункт "Добавить в расширение".
После этого мы сможем вывести наш добавленный реквизит на форму.
Добавим обработчик события "ПриИзменении" для элемента ПоказательВес.
Также нам нужно будет внести некоторые изменения в модуль типовой формы отчета.
Для этого откроем форму отчета, найдем процедуру УстановитьНастройкиПоУмолчанию() и нажмем правую кнопку мыши на ее заголовке. Из контекстного меню выберем "Добавить в расширение".
В открывшемся окне "Тип вызова" выбираем "Вызывать вместо (с контролем)".
Итак, измененный код процедуры УстановитьНастройкиПоУмолчанию() будет выглядеть следующим образом:
Также нам потребуется внести изменения в функцию ПодготовитьПараметрыОтчетаНаСервере() модуля формы.
Делаем это также как и в предыдущем случае. Измененный код функции будет выглядеть следующим образом:
Понадобятся еще некоторые изменения в модуле отчета и в модуле менеджера отчета, но о них расскажу позже.
А сейчас перейдем к самому главному: модификации Схемы компоновки отчета.
Что нам рекомендует фирма 1С при доработке типовых отчетов на СКД через расширения?
Она предлагает два варианта:
- Заимствовать отчет и создать для него собственную схему компоновки данных.
- Доработать исходную схему компоновки данных отчета. Для этого ее нужно скопировать (не заимствовать!) из конфигурации, назначить основной для заимствованного отчета и изменить так, как вам нужно.
Первый вариант отпадает. Собственная СКД нам не нужна. Нам достаточно доработать исходную СКД отчета.
Пойдем по второму варианту, но назначать схему основной для заимствованного отчета не будем, это все равно бесполезно.
Потом вы узнаете почему.
Фирма 1С не рассмотрела третий возможный вариант доработки типового отчета на СКД с помощью расширений.
Третий вариант представлен в следующей публикации: "Пример доработки типового отчета в БП 3.0".
Его суть заключается в программной модификации СКД.
Мы начинаем модифицировать нашу Схему компоновки и сразу же натыкаемся на множество ошибок, пути исправления которых не всегда очевидны. Эти ошибки связаны с тем что в нашем расширении не хватает некоторых объектов метаданных расширяемой конфигурации на которые есть ссылки в схеме компоновки отчета.
Эти ошибки не критичны, и в общем-то даже не являются ошибками. В режиме 1С:Предприятия наш доработанный отчет будет "видеть" все эти отсутствующие объекты метаданных конфигурации, и будет нормально работать.
Но если вы хотите чтобы "все было красиво" еще на этапе разработки расширения, то придется немного повозиться для исправления этих ошибок.
Ну, тут как бы все очевидно. необходимо заимствовать в расширение справочник НоменклатурныеГруппы.
Также нам понадобится заимствовать в расширение справочники Номенклатура и некоторые другие объекты метаданных чтобы не было подобных ошибок.
С чем она связана? Ну, видимо с тем что мы заимствовали в расширение регистр бухгалтерии Хозрасчетный, но не заимствовали его ресурс Сумма. Также нужно заимствовать ресурс Количество.
Необходимо также позаимствовать измерения Организация и Подразделение.
Для исправления этой ошибки и других подобных ошибок нам нужно предпринять сразу несколько действий.
- Заимствовать в расширение следующие объекты:
план видов характеристик ВидыСубконтоХозрасчетные, план счетов Хозрасчетный. - Для плана видов характеристик назначить типы как на скриншоте ниже.
- Для плана счетов указать виды субконто и их количество как на скриншоте ниже.
- Для регистра бухгалтерии Хозрасчетный указать план счетов Хозрасчетный.
Для устранения этой ошибки установим в свойствах регистра бухгалтерии Хозрасчетный признак "Корреспонденция".
Ну что же, все ошибки побороли. Теперь займемся модификацией нашей Схемы компоновки.
Модификация совсем несложная. Добавим вычисляемое поле Вес.
В выражении поля пропишем следующее:
УправлениеСвойствами.ЗначениеСвойства(Номенклатура, "Вес_1e023769e20845f7836529edef6a3da9")*Количество
Где "Вес_1e023769e20845f7836529edef6a3da9" - это идентификатор нашего дополнительного реквизита Вес.
Затем добавляем наше вычисляемое поле в ресурсы:
Далее для каждого варианта отчета добавляем наш ресурс Вес в выбранные поля группировки Таблица.
И еще один очень важный момент. Для того чтобы у нас корректно выводился отчет в разных комбинациях показателей Количество, Сумма и Вес, нам необходимо доработать макет отчета.
Здесь у нас первые четыре макета - из типового отчета. Все следующие добавлены.
Что еще остается сделать? Осталось внести некоторые изменения в модуль отчета и в модуль менеджера отчета.
В модуле отчета меняем процедуру ОпределитьНастройкиФормы()
Здесь мы подменяем типовую схему компоновки отчета на нашу собственную.
Но эта подмена не сработала бы если бы мы ранее не добавили в наш отчет реквизит ТекущаяСхемаКомпоновкиДанных.
Именно по наличию этого реквизита в модуле БухгалтерскиеОтчетыКлиентСервер проверяется необходимость подмены схемы компоновки отчета:
Теперь нам осталось поменять некоторые процедуры и функции в модуле менеджера отчета. Займемся этим.
На уровне различия в структуре метаданных в отчётах дополнительно можно указать основную Схему Компоновки Данных (СКД) и настройки для сохранения параметров. Также здесь есть используемый в текущий момент компоновщик настроек. В обработках данные структуры не используются.
Указание в отчётах основной СКД является полезной функцией, т.к. при этом можно создать требуемый отчёт, не написав ни единой строчки кода в самом модуле отчёта, что ускоряет разработку и понимание принципов функционирования СКД для новичков.
Внешние отчёты и обработки 1C
В режиме конфигуратора 1С есть возможность создавать не только объекты внутри конфигурации (в дереве метаданных), но и создавать внешние объекты в виде отдельных файлов. Это касается, в том числе, отчётов и обработок. Преимуществом внешних объектов в том, что новые объекты не требуется каждый раз включать в состав конфигурации и, соответственно, обновлять при этом всю информационную базу 1С. Вместо этого можно использовать любые необходимые отчёты и обработки и изменять их без внесения изменений в метаданные базы 1С.
Внешние отчёты/обработки сохраняются в отдельные файлы и имеют следующие расширения:
- Внешний отчёт – *.erf
- Внешняя обработка – *.epf
Пример создания внешней обработки 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С.
В этой статье мы рассмотрели создание и использование внешних отчётов и обработок. Создание внешних обработок в режиме управляемого приложения более подробно будет рассмотрено в следующей статье.
Читайте также: