Имя: Пароль:
1C
1С v8
Как определить тип объекта/ссылки?
0 DarkAn
 
25.11.08
14:29
в 7.7, была такая вешь
ТипЗначСтр(Значение) возвращало "Справочник" / "Документ" и т.д.

Как в 8.0 сделать так же?
1 Mitriy
 
25.11.08
14:33
ТипЗнч(Значение)
2 Mitriy
 
25.11.08
14:34
тока возвратит тип
3 DarkAn
 
25.11.08
14:35
(2) а как строку получить?
4 Черный всадник
 
25.11.08
14:35
(1) Строка(ТипЗнч(Значение))
5 DarkAn
 
25.11.08
14:35
щас в УПП нашел такую вещь

   Объект = Неопределено;
   
   Если Метаданные.НайтиПоПолномуИмени(МетаданныеОбъекта) = Неопределено Тогда
       Возврат СписокФорм
   КонецЕсли;

   Если Лев(МетаданныеОбъекта, 8) = "Документ" Тогда
       Объект = Документы[Сред(МетаданныеОбъекта, 10)].СоздатьДокумент();
   ИначеЕсли Лев(МетаданныеОбъекта, 10) = "Справочник" Тогда
       Объект = Справочники[Сред(МетаданныеОбъекта, 12)].СоздатьЭлемент();
   КонецЕсли;
6 DarkAn
 
25.11.08
14:36
и что по другому ни как?
7 чувак
 
25.11.08
14:38
(0) Значение.Метаданные().Имя
8 vde69
 
25.11.08
14:40
Значение.Метаданные().ПолноеИмя
9 DarkAn
 
25.11.08
14:41
(2)
сделал внешний отчет на форме реквизит "ОС" - Справочник.ОсновныеСредства

На кнопку повесил...

Процедура КнопкаВыполнитьНажатие(Кнопка)
   ТЗ = ТипЗнач(ОС);
КонецПроцедуры

при сохранении пишет
{Форма.Форма(3,7)}: Процедура или функция с указанным именем не определена (ТипЗнач)
   ТЗ = <<?>>ТипЗнач(ОС);

Програмники 1С:Предприятие 8.1 (8.1.12.101)
10 zbv
 
25.11.08
14:42
(9) в (1) немного другой ситаксис.
11 чувак
 
25.11.08
14:42
(9) Тебе (9) недостаточно?
12 Defender aka LINN
 
25.11.08
14:44
(0) А для чего?
13 DarkAn
 
25.11.08
14:55
Как писал в 7.7

Если ТипЗначенияСтр("Объект") = "Справочник" Тогда
...
ИначеЕсли ТипЗначенияСтр("Объект") = "Документ" Тогда
...
КонецЕсли;
14 DarkAn
 
25.11.08
14:56
+13 Обеъект не в кавычках
15 inka
 
25.11.08
15:06
(13) - ну и что что так писал в 7.7? а в 8 это не так
16 DarkAn
 
25.11.08
15:08
(15) так я и спрашиваю как мне сделать так же? или как мне определить сто у меня объект относиться к справочнику или к другомы типу данных?
17 Черный всадник
 
25.11.08
15:11
(16) ВсеСсылки = Справочники.ТипВсеСсылки();
ВсеСсылки.Содержит(Объект.Ссылка)
18 inka
 
25.11.08
15:11
Сказали же ТипЗнч. (4)
19 DarkAn
 
25.11.08
15:17
(18) так не строку вернет с описанием какой тип.
20 Fragster
 
гуру
25.11.08
15:19
(19) а в чем предесть именно строки?
21 Fragster
 
гуру
25.11.08
15:19
(20) д=л
22 DarkAn
 
25.11.08
15:20
чтоб зенать что у меня так объект справочника или документа.

И подскажите тогда какой синтаксис у ТипЗнач, а то у меня в синтаксис посошнике его нет(((. Есть только ТипЗначения
23 Salvador Limones
 
25.11.08
15:21
(22) Ты обкурился?

Если ТипЗнч(ТекОбъект) = Тип("СправочникСсылка.Номенклатура") Тогда
   ...
КонецЕсли;
24 Fragster
 
гуру
25.11.08
15:21
в СП про то, что в (1) написали поищи... там и пример есть....
25 DarkAn
 
25.11.08
15:22
(23) - реально нету. и спасибо
26 Sadovnikov
 
25.11.08
15:23
(13) Сегодня день сравнения семерки и восьмерки?

спрКонтрагенты = Справочники.Контрагенты;
Объект = спрКонтрагенты.НайтиПоКоду("0000004");

Если Справочники.ТипВсеСсылки().СодержитТип(ТипЗнч(Объект)) Тогда
   Сообщить(1);
ИначеЕсли Документы.ТипВсеСсылки().СодержитТип(ТипЗнч(Объект)) Тогда
   Сообщить(2);
КонецЕсли;
27 v_rtex
 
25.11.08
15:23
замутим?
28 DarkAn
 
25.11.08
15:24
(25) тьфу блин.
Я не правильно искал я искал типзнАч

Все всем спасибо))))))
29 DarkAn
 
25.11.08
15:25
(26) а  где еще сравнивают?
30 Sadovnikov
 
25.11.08
15:25
(29) Вот тут:
v8: Родитель
31 Fragster
 
гуру
25.11.08
15:27
32 DarkAn
 
25.11.08
15:31
(30), (30)
Надо ветку создать чтоб проще было обучаться.
Типа как оно было в 77 и как оно есть в 8ке, а то реально я в 8шном синтаксис помошнике еще разобраться не могу, а методы еще не все знаю))))
33 Salvador Limones
 
25.11.08
15:33
(32) Нафига???

Всё обсосано, расписано: http://v8.1c.ru/disctinct7/indexDevelop.htm
http://v8.1c.ru/predpriyatie/typical_problems.htm
34 Sadovnikov
 
25.11.08
15:34
(32) Очень помогает в СП закладка "Индекс". Хотя бы объекты сможешь быстрее в нем находить...
35 DarkAn
 
25.11.08
15:34
(33) О! Спасибо))))