1с как добавить внешний отчет в конфигурацию
(1) fromon, добавляй внешний отчет в конфигурацию, в раздел отчеты. При редактировании перейди на вкладку подсистемы, отметь галочками нужное место. Запускай и увидишь отчет.
(0) Снова: "Телепаты в студию!"
Ищите где? Конфигурация? .
зачем же вносить изменения в конфигурацию. отчет то и создается внешним для того что бы не менять ни чего в конфигураторе.
В меню Сервис, далее Дополнительные отчеты и обработки, там выбираете Дополнительный внешний отчет, добавить новый и указываете путь к своей разработке. вот как то так.
Администрирование-Печатные формы, отчёты и обработки-Дополнительные отчёты и обработки-Создать. как-то так
В модуле объекта обязательно должно быть:
//ПОДГОТОВКА РЕГИСТРАЦИИ ГЛОБАЛЬНОГО ОТЧЕТА
Функция СведенияОВнешнейОбработке() Экспорт
ПараметрыРегистрации = Новый Структура;
ПараметрыРегистрации.Вставить("Вид", "ДополнительныйОтчет"); //Варианты: "ДополнительнаяОбработка", "ДополнительныйОтчет", "ЗаполнениеОбъекта", "Отчет", "ПечатнаяФорма", "СозданиеСвязанныхОбъектов"
ПараметрыРегистрации.Вставить("Наименование", "");
ПараметрыРегистрации.Вставить("Версия", ""); //"1.0"
ПараметрыРегистрации.Вставить("БезопасныйРежим", Истина); //Варианты: Истина, Ложь
ПараметрыРегистрации.Вставить("Информация", "");
ДобавитьКоманду(ТаблицаКоманд,
"",
"",
"ОткрытиеФормы", //Использование. Варианты: "ОткрытиеФормы", "ВызовКлиентскогоМетода", "ВызовСерверногоМетода"
Ложь,//Показывать оповещение. Варианты Истина, Ложь
"");//Модификатор
Команды = Новый ТаблицаЗначений;
Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка"));
Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка"));
Команды.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка"));
Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево"));
Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка"));
Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = "")
НоваяКоманда = ТаблицаКоманд.Добавить();
НоваяКоманда.Представление = Представление;
НоваяКоманда.Идентификатор = Идентификатор;
НоваяКоманда.Использование = Использование;
НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
НоваяКоманда.Модификатор = Модификатор;
PhoenixAOD; griff19; makarovy; Dinchic; alex_ram87; Korolev; Natali307192013; wiseowl; sanches; w3bstr; Rainger; toxicoff; smooth; IvanKh; johntish; zala; margo2007; UsachevDima; xzorkiix; nick_krsk; fromon; + 21 – Ответить
Речь пойдет об отчетах, созданных на базе СКД (на всякий случай пишу, если еще остались люди, которые делают отчеты не на СКД).
Добавить отчет в типовую конфигурацию 1С, построенную на базе БСП, можно одним из следующих способов:
Добавляемый отчет может быть:
Вроде все должно быть просто и интуитивно понятно, но есть нюансы, и в каждом случае добавление происходит по разному. В общем, разработчики БСП и других типовых продуктов не дают соскучиться J .
Варианты отчетов
Прежде чем приступить к описанию добавления отчетов, хочется сказать несколько слов о вариантах.
Варианты отчетов - это встроенный механизм СКД, который позволяет создавать для отчета произвольное количество предопределенных и пользовательских вариантов. По своей сути варианты – это отдельные отчеты, созданные на базе одной и той же системы компоновки данных.
Существует отдельная подсистема БСП, для управления вариантами отчетов, которая встроена во все типовые конфигурации. Подсистема предоставляет общее хранилище вариантов, общие формы для вывода и настройки отчетов, механизмы для отображения отчетов – формирование специальных панелей для каждого раздела системы. Пользователь может управлять настройками предопределенных вариантов отчетов, создавать и настраивать собственные варианты в режиме 1С Предприятие. Также подсистема позволяет создавать контекстные отчеты, привязанные к определенным объектам метаданных.
Для каждого отчета существует основной предопределенный вариант. В дальнейшем, говоря об отчете, я буду подразумевать именно его основной вариант.
Общая сравнительная таблица:
Тип добавления
В основную конфигурацию
В расширение конфигурации
В качестве внешнего отчета
Обновление вспомогательных данных (идентификаторы объектов)
Обновление вспомогательных данных (варианты отчетов)
Предопределенные настройки вариантов
Общий модуль: ВариантыОтчетовПереопределяемый
Модуль менеджера отчета
Возможность добавление обработчиков событий формы
Указывается в общем модуле: ВариантыОтчетовПереопределяемый
Указывается в модуле менеджера отчета:
ПриОпределенииНастроек
Доступна по умолчанию
Описание назначения для контекстного отчета
Модуль менеджера отчета, модуль менеджера объекта назначения
Модуль менеджера отчета
Модель объекта отчета
Описание основного варианта (по умолчанию)
Свойство отчета «Пояснение»
Добавление пользовательских вариантов отчета
Добавление нового отчета в основную конфигурацию
Рассмотрим добавление отчета в основную конфигурацию. В более старых конфигурациях типа УТ 10.3, УПП все было предельно просто. Добавляешь отчет, выводишь его в меню интерфейса или на панели быстрого доступа, и все работает.
В новых все несколько сложнее, и есть свои нюансы.
Для того, чтобы отчет выводился в основном окне раздела в группе «Отчеты», достаточно просто включить отчет в необходимую подсистему.
Однако, в этом случае, отчет не будет виден на специальной панели отчетов, которую предоставляет БСП. Панель открывается при переходе по ссылке «Отчеты по » из каждого раздела системы:
Отчеты выводятся с разбивкой по подгруппам согласно иерархии подсистем, и имеют описания. Причем , могут быть выведены несколько вариантов одного и того же отчета. Если просто добавить отчет в конфигурацию и включить в нужную подсистему, отчет не будет виден в указанной панели. Отчет будет доступен только в группе «Отчеты» основного окна раздела. Кстати, не так давно, он бы даже не работал, пока не будут обновлены идентификаторы объектов метаданных.
Обновить идентификаторы можно одним из трех способов:
- Запустить 1С Предприятие в режиме обновления ИБ, задав параметр запуска: «ЗапуститьОбновлениеИнформационнойБазы»:
- Увеличить номер версии конфигурации.
- Воспользоваться обработкой из состава БСП: «Обновление вспомогательных данных»
В текущих версиях, идентификаторы обновляются при запуске 1С в пользовательском режиме автоматически . Наконец-то разработчики сделали это, слава богам!
Однако, для того, чтобы отчет, добавленный в основную конфигурацию появился на панели отчетов, все же необходимо обновить вспомогательные данные вручную, выбрав пункт «Варианты отчетов»:
После выполнения этих действия, отчет будет добавлен в специальные справочники: «Варианты отчетов» и «Предопределенные варианты отчетов», и его основной вариант будет виден в панелях отчетов согласно указанной подсистемы.
Конечно, все дальнейшие настройки, такие как добавление описания, вывод отчета или других его вариантов в другие подразделы или панели отчетов, можно выполнить непосредственно в пользовательском режиме, перейдя по ссылке «Все отчеты»:
Но, более правильно указать основные (предопределенные) настройки в конфигурации. Тем более, что некоторые виды настроек, например видимость варианта отчета в зависимости от функциональных опций, нельзя настроить в пользовательском режиме.
Настройки вариантов отчетов задаются в процедуре общего модуля: «ВариантыОтчетовПереопределяемый >> НастроитьВариантыОтчетов». Здесь описаны все типовые отчеты и их варианты. Все настройки необходимо создавать для двух объектов: «Описание отчета» и «Описание варианта», которые можно получить из общего списка настроек, переданных в процедуру:
Объект «ОписаниеОтчета» имеет следующие свойства:
Включен - если свойство имеет значение «ложь», отчет не регистрируется в справочнике «Варианты отчетов».
ОпределитьНастройкиФормы – свойство определяет наличие в модуле объекта отчета экспортной процедуры « ОпределитьНастройкиФормы ». В данной процедуре указывается наличие дополнительных обработчиков для событий модуля формы отчета, которые также должны присутствовать в модуле объекта отчета:
Объект «ОписаниеВарианта» имеет следующие свойства:
Описание - Описание варианта отчета, которое выводится на панели отчетов.
ВидимостьПоУмолчанию - если свойство имеет значение «ложь», вариант не виден по умолчанию в панели отчетов, но в справочнике «Варианты отчетов» он регистрируется.
Размещение – настройка размещения отчета. По умолчанию, коллекция содержит все подсистемы, выбранные для отчета. Можно добавить новые подсистемы для размещения или удалить существующие. Дополнительно, можно указать важность размещения: «Важный» или «СмТакже»:
ФункциональныеОпции – подключенные к команде вывода варианта отчета функциональные опции:
НастройкиДляПоиска – дополнительные сведения для поиска варианта отчета
Для вступления настроек в силу, требуется обновить вспомогательные данные, выбрав пункт «Варианты отчетов».
В пользовательском режиме, можно переопределить эти настройки для текущего пользователя или всех пользователей системы. Тем не менее, всегда остается возможность вернуться к предопределенным настройкам, заданным в конфигурации:
Добавление нового отчета в расширение конфигурации
На первый взгляд, добавление отчета в расширении не должно отличаться от его добавления в основную конфигурацию, но это не так.
Во-первых, для того, чтобы отчет был виден на панели отчетов, не нужно выполнять обновление вспомогательных данных. Необходимая информация в справочники: «Варианты отчетов» и «Предопределенные варианты отчетов» добавляется автоматически, при начале работы системы. Я думаю логика разработчиков следующая: расширение может подключить обычный пользователь в режиме 1С Предприятия. И он не должен знать о необходимости обновлении вспомогательных данных.
Для отчетов, добавленных в расширениях, также существует возможность описания предопределенных настроек: описание, подсистемы, функциональные опции. Однако, эти настройки выполняются не в переопределяемом общем модуле, а непосредственно в модуле менеджера отчета:
Все настройки аналогичны тем, которые выполнялись для отчетов основной конфигурации. Отличие только в том, что объект «НастройкиОтчета» уже передан в процедуру в качестве параметра.
Для применения созданных настроек обязательно должен быть установлен параметр «НастроитьВариантыОтчета» в экспортной процедуре модуля менеджера отчета «ПриОпределенииНастроек»:
Если флаг установлен, предопределенные настройки обновляются автоматически, без необходимости обновления вспомогательных данных.
В этой же процедуре указывается наличие дополнительных обработчиков событий модуля формы отчета:
На заметку. Для отчетов созданных в расширениях, есть возможность указания описания для основного варианта без использования менеджера отчета. Для задания описания «по умолчанию» используется свойство отчета «Пояснение»:
Добавление контекстного отчета в основную конфигурацию или в расширение
Алгоритм добавления контекстных отчетов одинаков для отчетов созданных в основной конфигурации и для отчетов, созданных в расширениях.
В обоих случаях, необходимо определить экспортную процедуру «ПриОпределенииНастроек» в модуле менеджера отчета, и указать объекты назначения:
Сами команды необходимо описать в отдельной процедуре:
Основные свойства команды:
Представление – наименование команды в интерфейсе объекта назначения,
КлючВарианта – идентификатор варианта отчета компоновки данных, который требуется запустить.
Дополнительные свойства команды:
Важность - группы в подменю «Отчеты», в которой следует вывести команду открытия отчета. Доступные значения: "Важное", "Обычное" и "СмТакже".
Порядок - п орядок размещения отчета по отношению к другим отчетам.
СочетаниеКлавиш - с очетание клавиш для быстрого открытия отчета (тип «СочетаниеКлавиш».
ВидимостьВФормах - и спользуется для указания перечня форм, в которых требуется выводить отчет. По умолчанию, отчет выводится во всех формах объекта, подключенных к БСП.
ФункциональныеОпции - имена функциональных опций, определяющих видимость команды открытия отчета в форме.
УсловияВидимости – дополнительные условия, о пределяющие видимость команды отчета (массив). Для добавления новых условий рекомендуется использовать процедуру общего модуля «ПодключаемыеКоманды.ДобавитьУсловиеВидимостиКоманды(Команда, Реквизит, Значение, Знач ВидСравнения = Неопределено)».
Параметр «Реквизит» - это имя реквизита объекта назначения.
ДополнительныеПараметры – можно указать дополнительные параметры, и потом их обработать в переопределенном обработчике события модуля формы отчета «ПриСозданииНаСервере».
Ссылка на объект назначения передается в контекстный отчет в качестве параметра формы «ПараметрКоманды» . Для указания отбора по переданному значению, необходимо переопределить событие модуля формы отчета «ПриСозданииНаСервере», и добавить значение параметра в структуру «ФормаПараметры.Отбор»:
При необходимости можно обработать данные, переданные в свойстве команды «ДополнительныеПараметры»:
Примечание. Описывать команды для вывода контекстных отчетов можно не только в модуле менеджера самого отчета, но и в модуле менеджера объекта назначения, в экспортной процедуре «ДобавитьКомандыОтчетов». В этом случае, команда должны иметь дополнительный обязательный параметр «Менеджер», в котором необходимо указать полное имя менеджера отчета. Контекстные отчеты в типовых конфигурациях описаны именно таким способом.
Добавление отчетов с помощью механизма внешних отчетов и обработок
Процесс добавления общих и контекстных отчетов с использованием механизма дополнительных отчетов и обработок подробно описан во многих статьях, например в этой .
Я не думаю, что у кого-то возникают сложности при добавлении отчетов таким способом. Отмечу лишь, что в данном случае не нужно обновлять вспомогательные данные. Также, нет возможности указания предопределенных настроек для вариантов отчета. Все настройки вариантов указываются в пользовательском режиме, прямо в форме элемента дополнительного отчета:
Возможность добавления в модуль объекта обработчиков событий формы отчета доступна по умолчанию.
Если я ошибаюсь, и существуют вопросы и непонятные моменты в работе механизма дополнительных отчетов и обработок, пишите в комментариях, и я напишу отдельную статью на эту тему.
Дополнительно хочу отметить, что варианты отчетов, созданные в пользовательском режиме настраиваются одинаково для любого из способов добавления основного отчета.
На этом все, спасибо за внимание, и за то, что читаете мои статьи J .
Другие мои статьи по использованию механизмов БСП в типовых конфигурациях 1С
В верхем меню заходим Сервис->Дополнительные отчеты и обработки->Дополнительные внешние обработки.
Появляется форма списка справочника внешних обработок. В верхнем меню нажимаем кнопку Добавить.
Появится форма добавление нового объект. Нажимаем но кнопку открыть, и выбираем файл с нужной обработкой. После того как вы выбрали нужный файл, при необходимости, задайте имя обработки(поле Наименование). После этого нужно нажать ОК, чтобы сохранить сделанные изменения.
После этого окно создания элемента справочника закрывается, и вы попадаете обратно на форму списка, в которой уже присутствует новая обработка.
На этом все! Процесс добавления обработки в конфигурацию завершен. Чтобы впоследствии открывать эту обработку, заходите по старому пути: Сервис->Дополнительные отчеты и обработки->Дополнительные внешние обработки.
Для БП 3.0, ЗУП 3.0, УТ 11, ERP 2.0.
Внешние обработки для 1С:Предприятие 8 бывают нескольких видов. В данной инструкции я покажу, как прикреплять обработки по групповой модификации и обработки по заполнению конкретных объектов.
Для первого случая добавим обработку по заполнению справочника номенклатуры из Эксель.
Переходим в соответствующий раздел программы:
Необходимо, чтобы был установлен признак использования дополнительных отчетов и обработок, переходим по гиперссылке в список внешних объектов:
В списке нажимаем Создать:
В открывшемся диалоговом окне выбираем нужный файл с обработкой:
Заполнилась карточка нового внешнего объекта в программе, осталось только настроить размещение (разделы программы, из которых будет доступна обработка):
В качестве размещения выбираем произвольный раздел (или несколько):
Записываем и закрываем карточку внешнего объекта:
Теперь откроем обработку из интерфейса:
Список пустой, нажимаем Настроить список:
Выбираем нашу обработку:
Теперь она доступна для выбора. Чтобы открыть обработку, нужно нажать Выполнить:
Теперь посмотрим, как добавляется обработка по заполнению (модификации) конкретных объектов. Для примера возьмем внешнюю обработку, которая прикрепляет сканы к выбранным элементам справочников или документам системы. Начало добавления такой обработки не отличается от предыдущего варианта. Различие в том, что в данном случае размещение заполняется автоматически (и не разделом программы, а типами объектов базы):
При желании список размещения можно скорректировать (не добавить дополнительное размещение, а убрать лишнее):
Для принятия изменения карточку внешнего объекта также нужно записать.
Для того, чтобы воспользоваться обработкой, необходимо зайти в конкретный объект базы (из списка размещения), нажать пункт Заполнить в командной панели и выбрать команду:
Вас может заинтересовать
Обработка не только загружает номенклатуру, номенклатуру поставщика, характеристики, штрихкоды, дополнительные реквизиты из внешних табличных файлов, но и подтягивает картинки, а также умеет выгружать данные из базы.
Универсальное расширение для 1С, позволяет для каждого пользователя выбрать приятную цветовую схему интерфейса из предложенных вариантов
В данной статье пойдет речь об основных составляющих программного продукта 1С: платформе и конфигурации
Возможность добавления отчетов и обработок в типовую конфигурацию 1С без изменения ее структуры реализована через встроенный механизм БСП. Каждая типовая база от 1С, написанная на управляемых формах, содержит в себе данный механизм. Это позволяет добавлять собственный функционал, не переживая за сохранение целостности структуры ИБ, что будет особенно ценно, если используется сложная конфигурация. Добавление дополнительных отчетов и обработок пригодиться не только начинающим программистам, но из-за возможности значительно повысить скорость также заинтересует и опытных разработчиков.
Пример разработки дополнительного отчета
Чаще всего разработчикам приходится создавать отчеты, так как это наиболее удобный для пользователя способ получать информацию о положении дел в системе. Наряду с этим, требования к отчетам меняются, поэтому внести изменения в дополнительный отчет намного проще, чем во включенный в конфигурацию. Существенным отличием дополнительных отчетов является их хранение в отдельном файле и специальная функция «СведенияОВнешнейОбработке», расположенная в модуле объекта. Именно в ней мы и прописываем все данные, чтобы система 1С распознала, что это за файл и добавила нужный функционал.
Чтобы создать эту функцию, необходимо открыть режим конфигуратора и через основное меню «Файл» - «Новый…», создать внешний отчет. Открыть модуль объекта и добавить функцию «СведенияОВнешнейОбработке» с отметкой «Экспорт». В каждом дополнительном внешнем отчете в 1С 8.3 эта экспортная функция должна возвращать структуру с определенными ключами и значениями:
Рис.1 Внешний отчет
- Вид – определение типа доработки. Может принимать значения «ЗаполнениеОбъекта», «ДополнительнаяОбработка», «СозданиеСвязанныхОбъектов», «ДополнительныйОтчет» и многие другие;
- Назначение – задается в случае, если мы добавляем функционал к конкретному документу или справочнику. Указывается 1 или перечень объектов конфигурации, к которым предназначен новый функционал. В случае обычного отчета не прописывают;
- Команды – таблица, содержащая все необходимые команды с определенным набором характеристик. Отвечает за кнопку, запускающую обработку или отчет;
- БезопасныйРежим – принимает значения «Истина» или «Ложь», отвечает за безопасный режим запуска. Это специальный режим, когда для пользователя ограничиваются возможности. Если его включить, то в процессе работы отчета будут недоступны:
- Привилегированный режим;
- Библиотеки Dll;
- COM-соединение;
- Доступ к файлам и интернету.
После того, как функция написана, во внешний отчет нужно добавить основную схему компоновки данных. Для этого во внешней обработке нажмите на лупу, расположенную в поле «Основная схема компоновки данных».
Рис.2 Основная схема компоновки данных
Откроется окно создания макета, нажмите «Готово» и в сформировавшемся окне настройки схемы вызовите контекстное меню на наборах данных.
Рис.3 Вызов контекстного меню
Остается лишь написать запрос с выводом требуемых полей, после чего перейти на закладку «Настройки».
Рис.4 Настройки
С помощью конструктора настроек необходимо выбрать поля, которые будет видеть пользователь. Также он предложит указать и группировку.
Рис.5 Работа с конструктором настроек
Именно так устанавливается то, откуда брать данные, по каким критериям и каким образом их выводить. Остается лишь заполнить реквизит «Имя» нового внешнего отчета и сохранить файл на компьютере или на сетевом ресурсе. Обычно компании выделяют специальное место и называют его «Хранилище дополнительных отчетов и обработок» и сохраняют туда все подобные файлы.
Рис.6 Хранилище дополнительных отчетов и обработок
Подключение дополнительного внешнего отчета к конфигурации
Чтобы подключить созданный дополнительный отчет в 1С, придется включить его в состав дополнительных отчетов и обработок. В большинстве типовых конфигураций этот перечень находится в разделе «НСИ и администрирование» - «Печатные формы, отчеты и обработки». Здесь расположена опция «Дополнительные обработки и отчеты». Обычно она включена, но может быть и отключенной, если не пользовались этим инструментом. При включении активизируется ссылка справа на нужный нам список внешних доработок системного функционала в виде обработок и отчетов.
Рис.7 Подключение дополнительного внешнего отчета к конфигурации
При добавлении в данный перечень с помощью кнопки «Создать» 1С откроет форму дополнительной обработки и предложит выбрать файл. Для выбора доступны только файлы формата erf – внешние отчеты, и epf – обработки. При выборе 1С считывает информацию из экспортной функции «СведенияОВнешнейОбработки» и отражает информацию на форме.
Рис.8 Форма дополнительного отчета
В случае дополнительного отчета нам необходимо указать, в каком разделе конфигурации 1С будет отражаться наш отчет. Для этого нужно указать размещение, щелкнув на соответствующую надпись и выбрав раздел системы. Затем перейти на вкладку «Варианты отчета», записать и разместить все варианты в разделах. Остается лишь записать новый дополнительный отчет, чтобы он добавиться в перечень, а пользователи смогут найти вариант отчета в выбранных разделах.
Рис.9 Поиск отчета в выбранных разделах
В итоге мы видим, что добавить дополнительный отчет в 1С достаточно просто и этот процесс не требует углубленного знания базы. Именно безопасность структуры конфигурации и стала ключевой особенностью, благодаря которой разработчики полюбили дополнительные внешние отчеты и обработки в 1С 8.3. Для других видов доработки в процессе подключения к системе 1С может потребоваться указать другие настройки. К примеру, для типа «СозданиеСвязанныхОбъектов» или «ЗаполнениеОбъекта» нужно указать, где показывать доработку – в списке документов или только внутри конкретного объекта.
Чтобы внести изменения в добавленную обработку или отчет, не потребуется завершать работу всех пользователей. Достаточно просто выгрузить внешнюю обработку на компьютер, внести изменения в нее через конфигуратор и загрузить обратно. Для этого в перечне дополнительных обработок существуют специальные кнопки «Выгрузить в файл…» и «Загрузить из файла…». Чтобы пользователи увидели изменения, достаточно закрыть и снова открыть объект – отчет, документ или справочник.
Единственный минус дополнительных отчетов и обработок заключается в том, что внутри них не работает встроенный в платформу отладчик. Но на фоне многочисленных преимуществ с этим можно мириться, тем более что разработчики находят обходные пути для осуществления отладки кода. Если у вас остались вопросы, наши специалисты с радостью предоставят консультации по программе 1С, а также подскажут цены на доработку 1С 8.
Внешние обработки – очень удобный инструмент для компаний, использующих типовые конфигурации на 1С:Предприятие 8.3. Они позволяют не тратить силы и средства на обновления 1С, давая возможность обновлять базы одной кнопкой в режиме простого пользователя. Используя механизм библиотеки стандартных подсистем, можно добавить различные кнопки в документы и справочники, не изменяя типовую конфигурацию. Рассмотрим пример создания и подключения внешней обработки в одной из конфигураций 1С.
Создаем внешнюю обработку в 1С 8.3
Чтобы создать новую внешнюю обработку, используем конфигуратор. Через меню «Файл» выбираем команду создания «Новый…» и определяемся, что мы будем создавать внешнюю обработку. В открывшемся окне задаем имя, и при нажатии «Enter» оно заполняется автоматически. Также это имя вам предложит система в качестве названия файла при сохранении.
Рис.1 Создаем внешнюю обработку
Добавим форму обработки, нажав на кнопку с изображением лупы в соответствующем окне. Для примера создадим обработку, показывающую, в каких заказах клиента используется определенная номенклатура. Для этого нам необходимо разместить на форме:
- Реквизит – поле для установки номенклатуры;
- Кнопку, которая выполнит вызов кода.
Добавляем реквизит «Номенклатура» с типом данных «СправочникСсылка.Номенклатура» в соответствующем разделе и кнопку «Показать» в меню «Команды» -> «Команды формы».
Чтобы на форме отразились добавленные данные, их необходимо перетащить в элементы формы, расположенные в левой верхней части. Есть возможность поменять местами элементы с помощью синих стрелок. Чтобы созданная нами кнопка выполняла задуманное, ей нужно назначить процедуру. Через контекстное меню выберем «Действие команды», и на вопрос, где нужен обработчик, ответим: «Создать на клиенте и процедуру на сервере».
Рис.2 Создать на клиенте и процедуру на сервере
Мы выбрали создание процедуры на сервере, так как хотим в качестве результата получить выборку из базы данных. На клиенте у нас нет такой возможности, поэтому потребуется подключение к серверу, который и обменивается с БД данными. Теперь нам необходимо написать код, который реализует задуманное нами. Будет использоваться запрос и вывод всех документов через функцию «Сообщить()».
Рис.3 Прописываем код
На текущем этапе мы можем в запущенной базе 1С осуществить открытие внешней обработки как обыкновенного файла, и она уже будет работоспособна. Но если у нас много пользователей, нам придется разослать им всем этот файл, снабдив при этом его инструкцией о том, как его, собственно, открывать в 1С, что крайне неудобно. Чтобы этого избежать, наша обработка должна располагаться внутри одного из разделов 1С. Для этого нам необходимо еще немного ее доработать через конфигуратор, указав определенные настройки.
Чтобы разместить внешнюю обработку в разделе 1С, необходимо ей в модуле объекта прописать процедуру «СведенияОВнешнейОбработке». В основном меню обработки нажмите «Действия» и выберите «Модуль объекта». Здесь необходимо прописать все нужные для 1С настройки, чтобы система поняла, что от нее требуется и что за файл перед ней. На скриншоте изображен код функции «СведенияОВнешнейОбработке».
Подключение внешней обработки в 1С
Перед тем, как подключать внешнюю обработку к типовой конфигурации, необходимо включить использование этого инструмента. В «Администрировании» в подпункте «Печатные формы, отчеты и обработки» устанавливаем флаг напротив нужного нам механизма. Нам становится доступна кнопка перехода к справочнику дополнительных обработок и отчетов.
Рис.4 Подключение внешней обработки
При переходе к списку создадим новую строчку в нем, и система предложит выбрать файл. Выбираем сделанную нами и сохраненную обработку, и конфигурация 1С самостоятельно заполняет большинство полей. Через кнопку «Выполнить» мы уже можем проверить работоспособность нашей обработки, но это не слишком удобно для остальных пользователей. Чтобы у пользователей появилась наша команда, и они могли сделать вызов, нам необходимо:
- Указать размещение объекта. Нажатием на «Не определено» мы открываем окно разделов и укажем, в каких разделах будет доступна операция;
- Выбрать пользователей, у которых данная команда появится в меню «Дополнительные обработки» выбранных разделов без лишних настроек. Для этого в табличной части нужно выбрать пункт «Быстрый доступ» и добавить в правую половину ответственных пользователей;
- На вкладке «Дополнительная информация» вы можете указать папку, в которой будет находиться загруженная обработка;
- После нажатия клавиши «Записать» в выбранном разделе в меню «Дополнительные обработки» пользователи обнаружат нашу команду и смогут ею воспользоваться.
Рис.5 Создание команды вызова
Если мы хотим внести изменения в нашу обработку, необходимо сначала выгрузить ее из базы. Для этого в справочнике «Дополнительные обработки и отчеты» найдите нужную строчку и воспользуйтесь командой «Выгрузить в файл…». Внесите изменения, сохраните обработку и через клавишу «Загрузить из файла…» найдите измененный файл epf, не меняя параметры. После записи все пользователи увидят внесенные изменения.
Если вы используете не типовую или снятую с поддержки базу 1С, то воспользуйтесь возможностью загрузить обработку через конфигуратор. В дереве объектов в разделе «Обработки» создайте новую обработку и через контекстное меню выберите «Заменить на внешнюю обработку, отчет…». Останется лишь настроить запуск внешней обработки из нужного раздела, включив добавленную обработку в нужную подсистему.
Рис.6 Загрузка обработки через конфигуратор
Работа с внешними обработками весьма удобна и позволяет избежать многих конфликтов. Единственный их существенный недостаток – они не обновляются автоматически вместе с конфигурацией. То есть, если разработчики поменяли название документа или справочника в основной конфигурации, нам придется вручную выполнять настройку обработки.
Читайте также: