|
v7: Как узнать, какие справочники подчинены текущему?
| ☑ |
0
Марк_З
13.04.18
✎
14:26
|
Подскажите, пожалуйста: как программно узнать, каке справочники подчинены текущему справочнику (например, какие справочники подчинены спр.Контрагенты)? Где этот реквизит в метаданных?
Наверное, надо читать в метаданных справочники и там должен быть указатель на то, что, типа, "справочник У подчинен справочнику Х". Как этот реквизит/описатель/функция называются?
|
|
1
Cool_Profi
13.04.18
✎
14:27
|
владелец, не?
|
|
2
Марк_З
13.04.18
✎
14:34
|
(1) Про "владельцев" я знаю.
Пишу программку, которая сможет удалять элементы главного справочника (скажем -- Контрагенты) и подчиненных (в данном случае -- Денежные счета). Справочники не заданы явно. И я не знаю, как программке узнать, какие справочники подчинены указанному выбранному.
Т.е. как 1С показывает "список подчиненных справочников" при нажатии на соответствующую кнопку на форме справочника?
|
|
3
Cool_Profi
13.04.18
✎
14:38
|
(2) ты не поверишь, но тебе нужно перечитать (1)
|
|
4
Марк_З
13.04.18
✎
14:44
|
(2) Т.е. Метаданные.Справочник.Вид().Владелец ?
|
|
5
ADirks
13.04.18
✎
14:44
|
во, нашёл тут
Функция сзПодчиненныеСправочники(Вид) Экспорт
сзПодчиненные = СоздатьОбъект("СписокЗначений");
Для нПодч = 1 По Метаданные.Справочник() Цикл
МетаСпр = Метаданные.Справочник(нПодч);
Если МетаСпр.Владелец.Выбран() = 1 Тогда
Если МетаСпр.Владелец.Вид = Вид Тогда
КонецЕсли;
сзПодчиненные.ДобавитьЗначение(МетаСпр.Вид);
КонецЕсли;
КонецЦикла;
Возврат сзПодчиненные;
КонецФункции
|
|
6
Марк_З
13.04.18
✎
14:46
|
(3,5) СПАСИБО!
|
|
7
ADirks
13.04.18
✎
14:46
|
вот только похоже, этот код никогда не использовался, ибо косячен :))
не сразу заметил
|
|
8
Марк_З
13.04.18
✎
14:47
|
Попробую... )))
|
|
9
ADirks
13.04.18
✎
14:48
|
д.б. так
Если МетаСпр.Владелец.Вид = Вид Тогда
сзПодчиненные.ДобавитьЗначение(МетаСпр.Вид);
КонецЕсли;
|
|
10
Duke1C
15.04.18
✎
14:09
|
(2) Таких "программок" вагон и маленькая тележка, или свой лисапед хочется?
|
|