Подключение нового документа к Дополнительным свойствам, используя БСП 3.1 (и что сделать, чтобы рекомендации с ИТС заработали)

15.11.23

Разработка - БСП (Библиотека стандартных подсистем)

Как подключить дополнительные свойства к новому документу так, чтобы их можно было использовать. Дополнение к описанию методики, описанной в документации по БСП.

Методика подключения дополнительных свойств подробно описана в документации по БСП. Если что - можно прочитать здесь.

 

Что написано в документации

Кратко повторю по пунктам:

  1. Создать новый объект. В моем случае был документ "Лист согласования"
  2. В Определяемый тип "ВладелецДополнительныхСведений" добавить этот документ. (ДокументСсылка.ЛистСогласования).
  3. В УправлениеСвойствамиПереопределяемый.ПриПолученииПредопределенныхНаборовСвойств добавить: 
    Документы.ЛистСогласования.ПриПолученииПредопределенныхНаборовСвойств(Наборы);
  4. В модуль менеджера документа добавить:
    Процедура ПриПолученииПредопределенныхНаборовСвойств(Наборы) Экспорт
        Набор = Наборы.Строки.Добавить();
        Набор.Имя = "Документ_ЛистСогласования";
        Набор.Идентификатор = Новый УникальныйИдентификатор("b2bd46c9-cea4-4fd6-9461-85554472f3b0");    
        Набор.Используется = Истина;
    КонецПроцедуры
  5. В реквизитах документа прописал характеристики:

 

 

После этого запустил конфигурацию в режиме "1С:Предприятие" и .... Ничего не произошло. В "дополнительных свойствах" возможности привязать свойство не появилось. Напрасно я запускал "ОбновлениеВспомогательныхДанных" (и ключ, и обработку). Не выходил аленький цветочек.

 

Варианты решения:

Если и вы столкнулись с подобной проблемой, то решения 2:

  • Правильное, позже было рекомендовано разработчиком из "1С" на партнерской конференции. Запустить с ключом "ЗапуститьОбновлениеИнформационнойБазы" или поднять версию конфигурации. 
 

 Информации о том, где это прописано в документации мне получить не удалось. Понять связь, почему подключение нового объекта к свойствам возможно только при "обновлении" или поднятии версии, тоже не получилось...

  • Выполнить процедуру "УправлениеСвойствамиСлужебный.СоздатьПредопределенныеНаборыСвойств()". Именно это решение было найдено.

Первый вариант (даже если бы был найден) не подходил, т.к. на проекте идет переход с "Бухгалтерия предприятия 2.0" на "Бухгалтерия предприятия 3.0" и формально, обновление на 3.0 еще не завершено (продолжаются выполняться обработчики обновления).

Но найденное решение вызывало сомнение в правильности (хоть и нужный результат был достигнут), ведь разработчики из "1С" не рекомендуют использовать модули "Служебный", т.к. могут изменять в них методы "без предупреждения". Именно поэтому решил посмотреть, что делает ключ запуска "ОбновлениеИнформационнойБазы", и насколько мое решение на программном (именно программном, а не методическом) уровне отличается от предложенного на партнерской конференции.

 

Краткий анализ действий ключа "ЗапуститьОбновлениеИнформационнойБазы" 

Если посмотреть более детально, то цепочка вызовов с ключом "ОбновлениеИнформационнойБазы" получается следующая: ОбновлениеИнформационнойБазыБСП.ПриДобавленииОбработчиковОбновления()->ИнтеграцияПодсистемБСП.ПриДобавленииОбработчиковОбновления(). Именно в этой процедуре "перебираются" подсистемы, и для каждой вызывается "ПриДобавленииОбработчиковОбновления()". Есть такой вызов и для подсистемы "Свойства". Называется он УправлениеСвойствамиСлужебный.ПриДобавленииОбработчиковОбновления(). И уже внутри добавления обработчиков обновления есть вызов уже знакомой  процедуры УправлениеСвойствамиСлужебный.СоздатьПредопределенныеНаборыСвойств();

 

Вместо заключения

Т.е. фактически, была запущена та же процедура, которую выполняют разработчики. Однако, повторюсь, что методы в общих модулях с постфиксом "Служебный" разработчики могут изменять без описания изменения в документации. Поэтому, если по каким-то причинам запуск конфигурации с ключом ""ОбновлениеИнформационнойБазы" невозможен, лучше пройти цепочкой от ключа "ОбновлениеИнформационнойБазы" и убедиться лишний раз, что необходимо вызвать именно эту процедуру. Предпочтительный вариант - запустить конфигурацию с ключом "ОбновлениеИнформационнойБазы".

БСП дополнительные сведения подключение

См. также

БСП. Добавляем отчет в меню Отчеты

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Добавим новый отчет в меню нового документа средствами БСП.

02.04.2024    3358    John_d    10    

91

Создать на основании - своя кнопка (БСП). Проблема двух подменю Создать на основании

БСП (Библиотека стандартных подсистем) Адаптация типовых решений Платформа 1С v8.3 1С:ERP Управление предприятием 2 Бесплатно (free)

Понадобилось в подменю "Создать на основании" добавить свою команду, которая открывает обработку. В процессе доработок появилась проблема двух подменю "Создать на основании". В статье о том, как решились проблемы.

01.03.2024    1867    dimanich70    8    

14

Заполнение поля адреса в своей обработке [БСП]

Механизмы платформы 1С БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Небольшая шпаргалка по функциям БСП касательно адреса. Так скажем, еще один способ помимо https://infostart.ru/1c/articles/1060970/

12.02.2024    825    FilippovRI    0    

15

Расширяем возможности дополнительных обработок и настраиваем их отладку

БСП (Библиотека стандартных подсистем) Механизмы типовых конфигураций Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Уже не одна веб-страница исписана знаниями о дополнительных обработках, как создать, как подключить. Есть масса вариантов, как их можно отладить. Я разобрался в кишках работы библиотеки и покажу, как можно расширить возможности дополнительных отчетов, а также покажу удобный способ отладки.

07.02.2024    2714    YA_418728146    11    

46

1С:БСП Дополнительные реквизиты и сведения

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Бесплатно (free)

В этой статье расскажем об архитектуре, использовании и особенностях реализации подсистемы «Свойства» из инструментария разработчика «1С:Библиотека стандартных подсистем» (1С: БСП).

19.01.2024    6879    PROSTO-1C    5    

46

Бесплатный митап 9 февраля «Библиотеки и фреймворки на 1С и всё, что с этим связано»

БСП (Библиотека стандартных подсистем) Мероприятия Бесплатно (free)

Митап посвящен вопросам создания, использования и поддержке переиспользуемого кода при разработке решений на платформе 1С:Предприятие 8.

15.01.2024    3938    0    Infostart    0    

21
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. rozer 307 16.11.23 10:41 Сейчас в теме
Сталкивался, обнаружил что "Набор.Используется = Истина;" не установился ну я тупо ИРом и поправил.
2. alexey123perm 20 16.11.23 21:25 Сейчас в теме
(1) и такое бывает? :)

ИР от TormozIT использовал, когда нужно было:
1. Посмотреть, создался ли элемент. Так сказать, увидеть его,
2. удалить элемент справочника "НаборыДополнительныхРеквизитовИСведений". Использовал для того, чтобы очистить реквизит "ИмяПредопределенногоНабора". Если этот реквизит заполнен, то механизмы БСП не давали пометить на удаление. Ну и удалял тоже через ИР
Оставьте свое сообщение