mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-09-01 07:50:50 +03:00
Для журнала документов навык писал в форму битый главный реквизит — cfg:.Журнал с пустым префиксом. Платформа такую выгрузку не принимает («Исключение XDTO при чтении файла»), а навык рапортовал успех. Причина не в забытой строке: знание о видах было размазано по четырём независимым спискам (поддерживаемые типы, объектные, обработко-подобные, карта типов реквизита) плюс switch по свойствам DefaultForm. DocumentJournal попал в поддерживаемые, но не в карту типов — и подстановка $null дала точку без типа. Теперь одна плоская таблица: строка на (вид, назначение), в ней тип главного реквизита и свойство «основная форма». Того же корня и починено заодно: - Purpose=Object принимался для видов, у которых формы объекта не бывает (журнал, перечисление, регистры накопления и бухгалтерии); - свойство «основная форма» выбиралось без учёта вида: журналу писался DefaultListForm, которого у него нет, и слот молча не находился; - AccumulationRegister описывался как RecordSet, хотя у регистра такого главного реквизита не бывает, а слота под него нет вовсе; - ChartOfCalculationTypes отвергался, хотя формы объекта у него обычные. Новое: назначения Folder и FolderChoice (формы группы), RecordSet для всех регистров, Save/Load для хранилища настроек и Custom — произвольная форма без главного реквизита, самая частая в типовых после объектной. Умолчание Purpose теперь основная форма вида, а не жёсткий Object: для регистра сведений это форма записи, для журнала — форма списка. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>