|
Проверить тип СправочникМенеджер
| ☑ |
0
mistеr
07.01.21
✎
17:02
|
Как можно проверить, что тип значения переменной СправочникМенеджер (любого справочника)?
|
|
1
hhhh
07.01.21
✎
17:15
|
(0) Если лев(СокрЛП(ТипЗнч(Переменная)), 19) = "Справочник менеджер"
|
|
2
SleepyHead
гуру
07.01.21
✎
17:17
|
(0) Что значит "проверить" ?
|
|
3
youalex
07.01.21
✎
17:22
|
как-то так можно:
мдСправочника = Метаданные.НайтиПоТипу(ТипЗнч(СпрМенеджер));
ЭтоМенеджер = мдСправочника <> Неопределено
И Метаданные.Справочники.Содержит(мдСправочника)
И СпрМенеджер = Справочники[мдСправочника.Имя];
Не проще содержание переменной контролировать?
|
|
4
mistеr
07.01.21
✎
18:13
|
(3) Да, похоже проще контролировать. :)
|
|
5
mistеr
07.01.21
✎
18:13
|
(1) Зависит от локали?
|
|
6
ДедМорроз
07.01.21
✎
19:08
|
Для менеджера должно сработать Метаданные.НайтиПоТипу,а потом просто проверить тип для уже известного элемента метаданных?
|
|
7
Малыш Джон
07.01.21
✎
19:12
|
(3) >> И СпрМенеджер = Справочники[мдСправочника.Имя]
Это контрольная проверка что ли? ))
|
|
8
youalex
07.01.21
✎
19:38
|
(7) это и есть собственно проверка. Что это именно менеджер, а не ссылка или объект.
|
|
9
ДедМорроз
07.01.21
✎
19:48
|
Самый простой вариант один раз все менеджеры в соответствие загнать и из него делать Получить,быстрее сложно.
|
|
10
TormozIT
гуру
08.01.21
✎
02:20
|
Я применяю способ - получить тип любого менеджера, преобразовать его к строке, разбить ее на фрагменты, сделать то же самое с исследуемым типом, сравнить контрольный фрагмент обоих массивов.
|
|
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший