| 0
    
        yabes   06.04.21✎ 11:04 | 
        Добрый день. Пытаюсь внедрить подсистему БСП "Свойства", вариант: "Настройка объектов с разными наборами свойств у разных групп объектов". Пример: для справочника Номенклатура добавить набор свойств в разрезе Видов номенклатуры.
Делаю все как написано на сайте ИТС, но сталкиваюсь с проблемой: В справочнике БСП "НаборыДополнительныхРеквизитовИСведений" для справочника Номенклатура должна создаваться группа, а не элемент (Это группа = Истина). Но у меня создается элемент и из-за этого при добавлении нового вида номенклатуры при записи возникает ошибка
 
 Для того, чтобы создавалась группа в процедуре УправлениеСвойствамиПереопределяемый.ПриПолученииПредопределенныхНаборовСвойств() необходимо написать Набор.ЭтоГруппа = Истина, что я и делаю, но это не помогает:
 Набор = Наборы.Строки.Добавить();
 Набор.Имя = "Справочник_Номенклатура";
 Набор.ЭтоГруппа = Истина;
 Набор.Идентификатор = Новый УникальныйИдентификатор("e50ec7bc-abda-4400-a886-93d03aeb7306");
 
 Подскажите, что может быть не так?
 |  | 
    
        | 2
    
        yabes   06.04.21✎ 12:05 | 
        Нашел решение - это ошибка БСП. Кому интересно:
 14.  ellavs  806 15.07.19 13:27
 (13) упс, не тот скрин приложила (в этом ошибка, которую я потом исправила, но всё равно не работало).
 В итоге еще и баг БСП нашла, который некорректно обрабатывал добавляемый предопределенный элемент в справочник Наборов, если это группа (т.е. задано Набор.ЭтоГруппа = Истина;), которая используется для случая, описанного в ИТС как "Особые случаи настройки наборов свойств. Настройка объектов с разными наборами свойств у разных групп объектов". Настроила всё в точности по инструкции, но элемент записывался в справочник наборов упорно не как группа, в итоге при попытке добавить дочерний элемент (из спец.справочника на базе которого формировались наборы реквизитов) выходила ошибка на строке в модуле БСП "УправлениеСвойствами" "НаборСвойствОбъект.Записать(); по причине: Значение поля "Входит в группу" должно быть группой".
 
 Для исправления ищем Общий модуль БСП УправлениеСвойствамиСлужебный, процедура СоздатьНаборСвойств:
 Заменяем строку:
 Если СвойстваНабора.ДочерниеНаборы = Неопределено Или СвойстваНабора.ДочерниеНаборы.Количество() = 0 Тогда
 НА
 Если (СвойстваНабора.ДочерниеНаборы = Неопределено Или СвойстваНабора.ДочерниеНаборы.Количество() = 0) И Не СвойстваНабора.ЭтоГруппа Тогда
 
 День убила на поиск этой ошибки.
 |  |