form-events

Writes and reviews 1C managed form module handlers with compilation directives and server-call budgets.

1|2|Updated Jul 19, 2026
One-click install
npx skills add https://github.com/IngvarConsulting/unica-marketplace --skill form-events-ingvarconsulting
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: form-events
Source: https://github.com/IngvarConsulting/unica-marketplace/tree/main/plugins/unica/skills/form-events
Command: npx skills add https://github.com/IngvarConsulting/unica-marketplace --skill form-events-ingvarconsulting

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Managed form modules in 1C:Enterprise mix client and server code in one file, and mistakes in compilation directives, server-call counts, or form parameter handling cause runtime errors, excess traffic, and failed standards checks. This Skill guides writing and reviewing form module event handlers so each procedure lands on the correct side with exactly one directive. ## Core Features & Use Cases - Directive and context enforcement: Ensures every procedure carries exactly one of &НаКлиенте, &НаСервере, or &НаСервереБезКонтекста, and forbids #Если Сервер branching inside КлиентСервер common modules. - Server-call budgeting: Counts server calls added per user action and requires a stated reason for any deviation, routing long work to background jobs. - Parameter and handler hygiene: Verifies form parameters are declared on the parameter tab instead of probed via Параметры.Свойство(), and that УстановитьДействие handlers use the Подключаемый_ prefix. - Use Case: When adding a ПриСозданииНаСервере handler that reads a new form parameter, the Skill inspects the form via unica.form.info, declares the parameter with unica.form.edit, patches the module with unica.code.patch, and validates with unica.code.diagnostics. ## Quick Start Ask the assistant to review the managed form module of a 1C document for compilation directives, server calls, and undeclared form parameters.

Frequently Asked Questions about form-events

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

FAQPage Schema
How do I write event handlers in a 1C managed form module?▼

Decide first whether the logic needs the database (server) or the user interface (client), then give each procedure exactly one compilation directive such as &НаКлиенте or &НаСервереБезКонтекста. Inspect the form with unica.form.info and patch the module with unica.code.patch.

How to reduce server calls in 1C managed forms?▼

One user action should not trigger extra server calls from configuration code; any deviation needs a stated reason per std487. Pass all startup parameters in a single call, cache repeats through a reusable-return module, and move long work to a background job instead of a longer server call.

Can I use #Если Сервер inside a КлиентСервер common module?▼

No. The execution context cannot be determined reliably in a КлиентСервер module, so std439 and АПК:547 forbid it. Split the code into separate Клиент and Сервер modules with the same function name and keep the shared part in КлиентСервер.

Why does reading form parameters with Параметры.Свойство() fail review?▼

Form parameters must be declared on the parameter tab, so ПриСозданииНаСервере reads them directly instead of probing with Параметры.Свойство(), which triggers АПК:1410. Declare new parameters through unica.form.edit before referencing them in the module.

When should form logic move to the object module instead?▼

Logic belonging to the object's own write path must live in the object module, because form module code does not run when the object is written programmatically from code. The Skill's stop rules direct such cases to the object-events reference.