register-design

Designs 1C:Enterprise registers by selecting class, dimensions, resources, periodicity, and totals settings.

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

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Designing 1C:Enterprise registers incorrectly leads to slow balance reads, write contention, and unmaintainable metadata. This Skill guides the full register design process — choosing the register class, splitting fields into dimensions, resources, and attributes, and deciding periodicity, totals separation, and write modes — using the Unica MCP toolchain and 1C development standards. ## Core Features & Use Cases - Register class selection: Chooses between information, accumulation (Balances or Turnovers), accounting, and calculation registers based on the accounting subject. - Dimension/resource/attribute split: Validates that every dimension of a Balances register is meaningful on both receipt and expense, and that resources hold only aggregatable values. - Read/write path analysis: Locates virtual table reads and bulk writes with unica.code.search and unica.dcs.info, then decides totals separation and slice totals against real usage per standards std733, std664, and std708. - Use Case: When adding a stock balances register, the Skill inspects neighbouring registers with unica.meta.info, creates the register with unica.meta.add, verifies it with unica.code.diagnostics, and checks the review checklist covering DenyIncompleteValues, recorder independence, and role restrictions. ## Quick Start Ask the assistant to design a new accumulation register for warehouse stock balances in the current 1C project using the register-design skill.

Frequently Asked Questions about register-design

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

FAQPage Schema
How do I choose the right register class in 1C:Enterprise?▼

Choose an information register for state keyed by dimensions, an accumulation register with Balances for receipts and expenses, Turnovers when balance is meaningless, an accounting register for double entry, and a calculation register for accruals with an action period.

How to split fields into dimensions, resources, and attributes in a 1C register?▼

A dimension is a key, a resource is an aggregatable value, and an attribute is neither. For a Balances accumulation register, every dimension must be meaningful on both receipt and expense; accompanying non-aggregated data belongs in attributes.

When should I enable totals separation on a 1C accumulation register?▼

Enable totals separation (EnableTotalsSplitting) when write concurrency matters per std664, but only after naming the read path it costs, since std733 shows balance reads are fastest without it. Decide against the actual read paths found in the code, not in the abstract.

Why is my 1C virtual table query slow?▼

The Остатки virtual table gets the cheapest plan only without totals separation, without a date parameter, and with every dimension used in the outer query. Filters must go in the virtual table parameters, not an outer ГДЕ clause, per std657 and std733.

Can a 1C register reference fields of its recorder document?▼

No. A register must be logically independent of its recorders per std477 and АПК:123, because in a distributed infobase movements can migrate to a node where the recorder does not exist. Roles also must not grant modification rights on recorder-subordinate registers.