feat(meta-compile,meta-decompile): поддержка AccountingRegister + CalculationRegister (v1.47/v0.39)

Девятый и десятый типы — завершают семейство регистров (4 бух + 2 расч, самые сложные типы модели).
Оба byte-exact: AccountingRegister 4/4 match TOTAL 0, CalculationRegister 2/2 match TOTAL 0.
Регресс 49/49 ps1+py, ps1==py identical. 1С-cert ✓ оба (db-load-xml + db-update).

Общее:
- Новые контексты Emit-Attribute register-account/register-calc (ресурсы/измерения через богатый эмиттер).
- Декомпилятор: снят гейт +оба типа; захват спецсвойств; Attr-ToDsl +balance/accountingFlag/
  extDimensionAccountingFlag/baseDimension/scheduleLink; opt-out standardAttributes:"".

AccountingRegister:
- Рерайт Emit-AccountingRegisterProperties: верный порядок + пропущенный EnableTotalsSplitting; comment/
  useStandardCommands/includeHelp/формы/презентации; спецсвойства ChartOfAccounts/Correspondence/PeriodAdjustmentLength.
- Измерение: Balance+AccountingFlag+DenyIncompleteValues; ресурс: Balance+AccountingFlag+ExtDimensionAccountingFlag
  (без Indexing). AccountingFlag/ExtDimensionAccountingFlag — ссылки на признаки учёта ПС.
- SA-кастомизация linkByType (ExtDimensionN→Account): Emit-StandardAttribute +xr:LinkByType, SA-override +захват.

CalculationRegister:
- Рерайт Emit-CalculationRegisterProperties: comment/useStandardCommands/формы/презентации; исправлен порядок
  ChartOfCalculationTypes (был перед Periodicity). SA уже совпадал (переменный по ActionPeriod/BasePeriod).
- Измерение: DenyIncompleteValues+BaseDimension+ScheduleLink; реквизит: ScheduleLink; ресурс: только FullTextSearch.
  Реквизиты РР идут контекстом register-calc (несут ScheduleLink).

spec §7.6a/§7.6b, кейсы accounting-register/calculation-register.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Nick Shirokov
2026-07-06 20:42:46 +03:00
co-authored by Claude Opus 4.8
parent dd22e2e17f
commit 239499a3f8
6 changed files with 260 additions and 81 deletions
@@ -41,12 +41,12 @@
</Synonym>
<Comment/>
<UseStandardCommands>true</UseStandardCommands>
<DefaultListForm/>
<AuxiliaryListForm/>
<IncludeHelpInContents>false</IncludeHelpInContents>
<ChartOfAccounts>ChartOfAccounts.Хозрасчетный</ChartOfAccounts>
<Correspondence>true</Correspondence>
<PeriodAdjustmentLength>0</PeriodAdjustmentLength>
<IncludeHelpInContents>false</IncludeHelpInContents>
<DefaultListForm/>
<AuxiliaryListForm/>
<StandardAttributes>
<xr:StandardAttribute name="Active">
<xr:LinkByType/>
@@ -180,6 +180,7 @@
</xr:StandardAttribute>
</StandardAttributes>
<DataLockControlMode>Automatic</DataLockControlMode>
<EnableTotalsSplitting>true</EnableTotalsSplitting>
<FullTextSearch>Use</FullTextSearch>
<ListPresentation/>
<ExtendedListPresentation/>
@@ -223,6 +224,10 @@
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Balance>false</Balance>
<AccountingFlag/>
<ExtDimensionAccountingFlag/>
<FullTextSearch>Use</FullTextSearch>
</Properties>
</Resource>
<Dimension uuid="UUID-017">
@@ -257,6 +262,9 @@
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Balance>false</Balance>
<AccountingFlag/>
<DenyIncompleteValues>false</DenyIncompleteValues>
<Indexing>DontIndex</Indexing>
<FullTextSearch>Use</FullTextSearch>
</Properties>
@@ -43,13 +43,13 @@
<UseStandardCommands>true</UseStandardCommands>
<DefaultListForm/>
<AuxiliaryListForm/>
<ChartOfCalculationTypes>ChartOfCalculationTypes.ВидыНачислений</ChartOfCalculationTypes>
<Periodicity>Month</Periodicity>
<ActionPeriod>false</ActionPeriod>
<BasePeriod>false</BasePeriod>
<Schedule/>
<ScheduleValue/>
<ScheduleDate/>
<ChartOfCalculationTypes>ChartOfCalculationTypes.ВидыНачислений</ChartOfCalculationTypes>
<IncludeHelpInContents>false</IncludeHelpInContents>
<StandardAttributes>
<xr:StandardAttribute name="Active">
@@ -253,6 +253,7 @@
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<FullTextSearch>Use</FullTextSearch>
</Properties>
</Resource>
<Resource uuid="UUID-017">
@@ -292,6 +293,7 @@
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<FullTextSearch>Use</FullTextSearch>
</Properties>
</Resource>
<Dimension uuid="UUID-018">
@@ -326,6 +328,9 @@
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<DenyIncompleteValues>false</DenyIncompleteValues>
<BaseDimension>false</BaseDimension>
<ScheduleLink/>
<Indexing>DontIndex</Indexing>
<FullTextSearch>Use</FullTextSearch>
</Properties>
@@ -366,6 +371,7 @@
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<ScheduleLink/>
<Indexing>DontIndex</Indexing>
<FullTextSearch>Use</FullTextSearch>
</Properties>