Имя: Пароль:
1C
1С v8
v8: Ссылается ли реквизит на справочник, и на какой? 1с 8.2
0 Forget
 
16.10.12
05:44
Здравствуйте!
Скажите, пожалуйста, как можно узнать по реквизиту (ДокументВыборка[Реквизит.Имя]) справочник ли это, и, если да, получить имя справочника?
1с 8.2
1 Godofsin
 
16.10.12
05:46
Отладчик, либо сообщить()
2 Alex375
 
16.10.12
06:00
Через ТипЗнч можно определить ссылка ли это, а потом через метаданные получить все что требуется.
3 Forget
 
16.10.12
06:29
Godofsin, в отладчике я могу увидеть тип, в колонке тип. Но мне этого не достаточно, так как надо будет написать что-то вроде Если Тип="Справочник" Тогда ...
Alex375, я написала ТипЗнч(ДокументВыборка[Реквизит.Имя]). Реквизит ссылается на справочник Организаций. Получила значение Организация. То есть из значения непонятно, справочник ли это, к тому же тип не совпадает с названием справочника "Организации"
4 Рэйв
 
16.10.12
06:31
(3)
Если Найти(Строка(ТипЗнч(чтото)),"Справочник") Тогда
   сообщить("Таки это справочник");
КонецЕсли;
5 Рэйв
 
16.10.12
06:31
*
Найти(Строка(ТипЗнч(чтото)),"Справочник")>0
6 Галахад
 
гуру
16.10.12
06:34
Справочники.ТипВсеСсылки().СодержитТип(ТипЗнч(ДокументВыборка[Реквизит.Имя]))
7 Прохожий
 
16.10.12
06:34
(5) Документ.СправочникПрофессий
8 Рэйв
 
16.10.12
06:36
(7) ок. Так

Если Лев(Строка(ТипЗнч(чтото)),10)="Справочник" Тогда
9 Forget
 
16.10.12
06:40
Рэйв, пробелма в том, что ТипЗнч(ДокументВыборка[Реквизит.Имя]) = "Организация", то есть оно не содержит слова справочник.
10 Forget
 
16.10.12
06:41
Галахад, попробовола Вашим способом, о пришет, что метод ТипВсеСсылки() не существует. Странно, как так может быть.
11 Рэйв
 
16.10.12
06:42
>>ТипЗнч(ДокументВыборка[Реквизит.Имя]) = "Организация"

Не верю.
12 Живой Ископаемый
 
16.10.12
06:43
может надо получить сразу в запросе? Зачем это получать при переборе выборки?
13 Рэйв
 
16.10.12
06:43
ставлю дайм, что

Строка(ТипЗнч(ДокументВыборка[Реквизит.Имя]))= "СправочникСсылка.Организации"
14 Aleksey
 
16.10.12
06:44
15 Aleksey
 
16.10.12
06:44
(13) В 8.1 ил в 8.2?
16 Рэйв
 
16.10.12
06:45
(15)Да, согласен:-)  замудрили они с этим ТипЗнч
17 Живой Ископаемый
 
16.10.12
06:46
Потому что православно это делать XMLТипЗнч(ДокументВыборка[Реквизит.Имя]).ИмТипа
18 Forget
 
16.10.12
06:53
1с 8.2
Проверила еще раз: Строка(ТипЗнч(ДокументВыборка[Реквизит.Имя]))= "Организация"!(((
Прочитала темы по ссылкам,похоже ТипВсеСсылки() самый нормальный вариант, только почему- то у меня нет такого метода пишет.
19 Живой Ископаемый
 
16.10.12
07:03
ВЫБРАТЬ
   ХозрасчетныйДвиженияССубконто.Регистратор,
   ТИПЗНАЧЕНИЯ(ХозрасчетныйДвиженияССубконто.Регистратор) КАК ТипЗначенияРегистратора,
   "                                                                                     " КАК ХМЛТипРегистратора,
   ХозрасчетныйДвиженияССубконто.СубконтоДт1,
   ТИПЗНАЧЕНИЯ(ХозрасчетныйДвиженияССубконто.СубконтоДт1) КАК ТипЗначенияСубконтоДт1,
   "                                                                                     " КАК ХМЛТипСубконтоДт1
ИЗ
   РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто КАК ХозрасчетныйДвиженияССубконто

============


СтрокаРезультата.ХМЛТипРегистратора = XMLТипЗнч(Строкарезультата.Регистратор).ИмяТипа;
СтрокаРезультата.ХМЛТипСубконтоДт1 = XMLТипЗнч(Строкарезультата.СубконтоДт1).ИмяТипа;
===========


http://screencast.com/t/uS5XQVi175
20 Forget
 
17.10.12
06:28
Живой Ископаемый, спасибо большое! Разоборалась.