@
Чего не хватает
У AccountingRegister нет ссылки на план счетов, а у CalculationRegister — на план видов расчёта. В designer-формате они лежат в самом регистре:
<AccountingRegister>
<Properties>
<ChartOfAccounts>ChartOfAccounts.Хозрасчетный</ChartOfAccounts>
<CalculationRegister>
<Properties>
<ChartOfCalculationTypes>ChartOfCalculationTypes.ОсновныеНачисления</ChartOfCalculationTypes>
Проверено
javap по mdclasses 0.20.0: у com.github._1c_syntax.bsl.mdo.AccountingRegister и CalculationRegister из MdoReference-аксессоров есть только getMdoReference(), getDefaultListForm(), getAuxiliaryListForm(). В общем интерфейсе Register — только getAttributes(), getResources(), getDimensions(). Ни getChartOfAccounts(), ни аналога для плана видов расчёта нет.
Зачем
Платформа объявляет соответствующие члены записи регистра через generic-плейсхолдер, который именем самого регистра не подставляется, — конкретный тип известен только из этой ссылки:
| Тип |
Член |
Объявленный тип |
РегистрБухгалтерииЗапись.<Имя регистра бухгалтерии> |
Счет, СчетДт, СчетКт |
ПланСчетовСсылка.<Имя плана счетов> |
РегистрРасчетаЗапись.<Имя регистра расчета> |
ВидРасчета |
ПланВидовРасчетаСсылка.<Имя плана видов расчета> |
Без этой ссылки Движение.Счет и Движение.ВидРасчета остаются необработанным плейсхолдером: не разыменовываются, не дают автодополнения и не участвуют в выводе типов. Тот же плейсхолдер стоит и в списках предопределённых, и в РегистрБухгалтерииСубконто.
Аналогично Регистратор типизируется по Document.getRegisterRecords() — там ссылка со стороны документа есть, и этого достаточно; здесь же обратной связи нет ни с одной стороны.
Найдено при работе над системой типов bsl-language-server.
@
@
Чего не хватает
У
AccountingRegisterнет ссылки на план счетов, а уCalculationRegister— на план видов расчёта. В designer-формате они лежат в самом регистре:Проверено
javapпо mdclasses 0.20.0: уcom.github._1c_syntax.bsl.mdo.AccountingRegisterиCalculationRegisterизMdoReference-аксессоров есть толькоgetMdoReference(),getDefaultListForm(),getAuxiliaryListForm(). В общем интерфейсеRegister— толькоgetAttributes(),getResources(),getDimensions(). НиgetChartOfAccounts(), ни аналога для плана видов расчёта нет.Зачем
Платформа объявляет соответствующие члены записи регистра через generic-плейсхолдер, который именем самого регистра не подставляется, — конкретный тип известен только из этой ссылки:
РегистрБухгалтерииЗапись.<Имя регистра бухгалтерии>Счет,СчетДт,СчетКтПланСчетовСсылка.<Имя плана счетов>РегистрРасчетаЗапись.<Имя регистра расчета>ВидРасчетаПланВидовРасчетаСсылка.<Имя плана видов расчета>Без этой ссылки
Движение.СчетиДвижение.ВидРасчетаостаются необработанным плейсхолдером: не разыменовываются, не дают автодополнения и не участвуют в выводе типов. Тот же плейсхолдер стоит и в списках предопределённых, и вРегистрБухгалтерииСубконто.Аналогично
Регистратортипизируется поDocument.getRegisterRecords()— там ссылка со стороны документа есть, и этого достаточно; здесь же обратной связи нет ни с одной стороны.Найдено при работе над системой типов bsl-language-server.
@