1c-bsp-registration

Generates ExternalDataProcessorInfo registration functions for 1C SSL data processor object modules.

Updated Jun 26, 2026
One-click install
npx skills add https://github.com/pavelvdo/universal-xml-exchange2 --skill 1c-bsp-registration-pavelvdo
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: 1c-bsp-registration
Source: https://github.com/pavelvdo/universal-xml-exchange2/tree/main/.cursor/skills/1c-bsp/registration
Command: npx skills add https://github.com/pavelvdo/universal-xml-exchange2 --skill 1c-bsp-registration-pavelvdo

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Registering an external data processor or report in the 1C SSL (BSP) "Additional Reports and Data Processors" subsystem requires a correctly structured ExternalDataProcessorInfo function with the right kind, command type, purpose objects, and server handlers. Writing this boilerplate by hand is error-prone, since each processor kind (print form, object filling, additional report, etc.) demands different API calls and conditional sections. ## Core Features & Use Cases - Kind-aware code generation: Maps free-form user input (e.g., "print form", "filling") to the correct BSP API methods such as ProcessorKindPrintForm() and CommandTypeServerMethodCall(). - Conditional template sections: Automatically includes Purpose entries for assignable kinds and the PrintMXL modifier for print forms, omitting them for global processors. - Server handler scaffolding: Adds the matching ExecuteCommand or Print export procedure when the command type requires a server method call. - Use Case: You need to register MyProcessor as a print form for Document.SalesInvoice. The skill locates src/MyProcessor/Ext/ObjectModule.bsl, inserts ExternalDataProcessorInfo with the correct kind, purpose, and modifier, plus the Print handler procedure, all inside the PublicInterface region. ## Quick Start Ask the assistant to register your external data processor with the BSP subsystem, for example: register MyProcessor as a print form for Document.SalesInvoice.

Frequently Asked Questions about 1c-bsp-registration

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I register an external data processor in 1C BSP?

Add an ExternalDataProcessorInfo export function to the processor's ObjectModule.bsl that returns registration parameters from AdditionalReportsAndDataProcessors.ExternalDataProcessorInfo. Set the kind, version, and at least one command with presentation, ID, and use type.

How to register a print form for a document in 1C SSL?

Set the kind to ProcessorKindPrintForm(), add the target metadata object like Document.SalesInvoice to RegistrationParameters.Purpose, use CommandTypeServerMethodCall(), and set the Modifier to PrintMXL. Then implement the Print export procedure in the same module.

What processor kinds does the BSP Additional Reports subsystem support?

The skill covers six kinds: AdditionalDataProcessor, AdditionalReport, ObjectFilling, Report, PrintForm, and RelatedObjectCreation. Assignable kinds like PrintForm and ObjectFilling require target metadata objects, while global kinds do not.

Does the skill work if ObjectModule.bsl does not exist yet?

No. If the file is not found under src/<ProcessorName>/Ext/ObjectModule.bsl, the skill instructs you to create the EPF structure in the 1C Configurator and export it to src first, since form scaffold generators are not used in this repository.

What happens if ExternalDataProcessorInfo already exists in the module?

The skill detects the existing function and informs you instead of duplicating it. It reads the file first and only inserts the function inside the PublicInterface region when it is absent.