跳到正文
cccskills
免费在 GitHub 公开

epf-bsp-init

Сформировать функцию `СведенияОВнешнейОбработке` в модуле объекта обработки — описание для подключения через подсистему БСП «Дополнительные отчёты и обработки». Используй когда нужно сделать обработку совместимой с БСП, подключаемой через «Дополнительные отчёты и обработки»

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(1)

  • SKILL.md12.8 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

/epf-bsp-init — Регистрация обработки в БСП

Добавляет в модуль объекта обработки функцию СведенияОВнешнейОбработке(), необходимую для регистрации в подсистеме «Дополнительные отчёты и обработки» БСП.

Usage

/epf-bsp-init <ProcessorName> <Вид> [Назначение...]
ПараметрОбязательныйПо умолчаниюОписание
ProcessorNameда—Имя обработки (должна быть создана через /epf-init)
Видда—Вид обработки (см. маппинг ниже)
Назначение*—Объекты метаданных для назначаемых видов
SrcDirнетsrcКаталог исходников

* Назначение обязательно для видов: ЗаполнениеОбъекта, Отчет, ПечатнаяФорма, СозданиеСвязанныхОбъектов.

Маппинг вида обработки

Пользователь может указать вид в свободной форме. Определи нужный по контексту:

Пользователь пишетВидAPI-метод
доп обработка, обработка, глобальнаяДополнительнаяОбработкаВидОбработкиДополнительнаяОбработка()
доп отчёт, глобальный отчётДополнительныйОтчетВидОбработкиДополнительныйОтчет()
заполнение, заполнитьЗаполнениеОбъектаВидОбработкиЗаполнениеОбъекта()
отчёт (назначаемый, для объекта)ОтчетВидОбработкиОтчет()
печатная форма, печатьПечатнаяФормаВидОбработкиПечатнаяФорма()
создание связанных объектовСозданиеСвязанныхОбъектовВидОбработкиСозданиеСвязанныхОбъектов()

Тип команды по умолчанию

ВидТипКоманды по умолчанию
ДополнительнаяОбработкаТипКомандыОткрытиеФормы()
ДополнительныйОтчетТипКомандыОткрытиеФормы()
ЗаполнениеОбъектаТипКомандыВызовСерверногоМетода()
ОтчетТипКомандыОткрытиеФормы()
ПечатнаяФормаТипКомандыВызовСерверногоМетода()
СозданиеСвязанныхОбъектовТипКомандыВызовСерверногоМетода()

Шаблон: СведенияОВнешнейОбработке

Базовый шаблон — одинаковый для всех видов, отличаются только вызовы API-методов и условные секции.

Функция СведенияОВнешнейОбработке() Экспорт

	МетаданныеОбработки = Метаданные();

	ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("2.2.2.1");
	ПараметрыРегистрации.Вид    = ДополнительныеОтчетыИОбработкиКлиентСервер.{{ВидОбработки}};
	ПараметрыРегистрации.Версия = "1.0";

	{{СЕКЦИЯ_НАЗНАЧЕНИЕ}}

	НоваяКоманда = ПараметрыРегистрации.Команды.Добавить();
	НоваяКоманда.Представление        = МетаданныеОбработки.Представление();
	НоваяКоманда.Идентификатор        = МетаданныеОбработки.Имя;
	НоваяКоманда.Использование        = ДополнительныеОтчетыИОбработкиКлиентСервер.{{ТипКоманды}};
	НоваяКоманда.ПоказыватьОповещение = Ложь;
	{{СЕКЦИЯ_МОДИФИКАТОР}}

	Возврат ПараметрыРегистрации;

КонецФункции

Подстановки

  • {{ВидОбработки}} — API-метод из таблицы маппинга вида
  • {{ТипКоманды}} — API-метод из таблицы типа команды по умолчанию

Условные секции

{{СЕКЦИЯ_НАЗНАЧЕНИЕ}} — только для назначаемых видов (ЗаполнениеОбъекта, Отчет, ПечатнаяФорма, СозданиеСвязанныхОбъектов). Одна строка на каждый объект:

	ПараметрыРегистрации.Назначение.Добавить("Документ.СчетНаОплату");

Формат имени объекта: ИмяКлассаОбъектаМетаданного.ИмяОбъекта (например Документ.СчетНаОплату, Справочник.Контрагенты).

Для глобальных видов (ДополнительнаяОбработка, ДополнительныйОтчет) — секция не нужна, удалить вместе с пустой строкой.

{{СЕКЦИЯ_МОДИФИКАТОР}} — только для ПечатнаяФорма:

	НоваяКоманда.Модификатор = "ПечатьMXL";

Для остальных видов — удалить вместе с пустой строкой.

Шаблоны серверных обработчиков

Для видов с типом команды ВызовСерверногоМетода добавь соответствующую процедуру-обработчик в ту же область ПрограммныйИнтерфейс, после СведенияОВнешнейОбработке.

Для ЗаполнениеОбъекта

Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначения, ПараметрыВыполненияКоманды) Экспорт

	// TODO: Реализация

КонецПроцедуры

Для СозданиеСвязанныхОбъектов

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

Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначения, СозданныеОбъекты, ПараметрыВыполненияКоманды) Экспорт

	// TODO: Реализация

КонецПроцедуры

Для ПечатнаяФорма

Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт

	// TODO: Реализация

КонецПроцедуры

Для ДополнительнаяОбработка / ДополнительныйОтчет (с ВызовСерверногоМетода)

Если пользователь явно выбрал серверный метод вместо открытия формы:

Процедура ВыполнитьКоманду(ИдентификаторКоманды, ПараметрыВыполненияКоманды) Экспорт

	// TODO: Реализация

КонецПроцедуры

Обрати внимание: у глобальных обработок нет параметра ОбъектыНазначения.

Инструкции

  1. Найди ObjectModule.bsl через Glob: src/{{ProcessorName}}/Ext/ObjectModule.bsl
  2. Прочитай файл
  3. Если СведенияОВнешнейОбработке уже есть — сообщи пользователю и не дублируй
  4. Если файл не найден — предложи сначала вызвать /epf-init
  5. Найди область #Область ПрограммныйИнтерфейс ... #КонецОбласти
  6. Вставь функцию СведенияОВнешнейОбработке() внутрь этой области
  7. Если вид требует серверный обработчик — вставь его тоже в эту область, после функции
  8. Используй табы для отступов (как в исходном файле)

Пример

Пользователь: /epf-bsp-init МояОбработка печатная форма для Документ.СчетНаОплату

Результат в ObjectModule.bsl:

#Область ОписаниеПеременных

#КонецОбласти

#Область ПрограммныйИнтерфейс

Функция СведенияОВнешнейОбработке() Экспорт

	МетаданныеОбработки = Метаданные();

	ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("2.2.2.1");
	ПараметрыРегистрации.Вид    = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиПечатнаяФорма();
	ПараметрыРегистрации.Версия = "1.0";

	ПараметрыРегистрации.Назначение.Добавить("Документ.СчетНаОплату");

	НоваяКоманда = ПараметрыРегистрации.Команды.Добавить();
	НоваяКоманда.Представление        = МетаданныеОбработки.Представление();
	НоваяКоманда.Идентификатор        = МетаданныеОбработки.Имя;
	НоваяКоманда.Использование        = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовСерверногоМетода();
	НоваяКоманда.ПоказыватьОповещение = Ложь;
	НоваяКоманда.Модификатор = "ПечатьMXL";

	Возврат ПараметрыРегистрации;

КонецФункции

Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт

	// TODO: Реализация

КонецПроцедуры

#КонецОбласти

#Область СлужебныеПроцедурыИФункции

#КонецОбласти

Дальнейшие шаги

  • Добавить ещё команду: /epf-bsp-add-command
  • Добавить форму: /form-add
  • Добавить макет: /template-add
  • Собрать EPF: /epf-build

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

cf-edit

免费

Точечное редактирование конфигурации 1С. Используй когда нужно изменить свойства конфигурации, добавить или удалить объект из состава, настроить роли по умолчанию, поменять раскладку панелей, настроить начальную страницу

中文简介正在准备中。当前显示原文说明。

Nikolay-Shirokov/cc-1c-skills7182026年10月22日 更新

cf-info

免费

Анализ структуры конфигурации 1С — свойства, состав, счётчики объектов. Используй для обзора конфигурации — какие объекты есть, сколько их, какие настройки

中文简介正在准备中。当前显示原文说明。

Nikolay-Shirokov/cc-1c-skills7182026年10月22日 更新

cf-init

免费

Создать пустую конфигурацию 1С (scaffold XML-исходников). Используй когда нужно начать новую конфигурацию с нуля

中文简介正在准备中。当前显示原文说明。

Nikolay-Shirokov/cc-1c-skills7182026年10月22日 更新

Валидация конфигурации 1С. Используй после создания или модификации конфигурации для проверки корректности

中文简介正在准备中。当前显示原文说明。

Nikolay-Shirokov/cc-1c-skills7182026年10月22日 更新

Заимствование объектов из конфигурации 1С в расширение (CFE). Используй когда нужно перехватить метод, изменить форму или добавить реквизит к существующему объекту конфигурации

中文简介正在准备中。当前显示原文说明。

Nikolay-Shirokov/cc-1c-skills7182026年10月22日 更新

cfe-diff

免费

Анализ расширения конфигурации 1С (CFE) — состав, заимствованные объекты, перехватчики, проверка переноса. Используй когда нужно понять что содержит расширение или проверить перенесены ли вставки в конфигурацию

中文简介正在准备中。当前显示原文说明。

Nikolay-Shirokov/cc-1c-skills7182026年10月22日 更新

查看 Nikolay-Shirokov 的全部技能

报告此技能的问题