Имя: Пароль:
1C
1С v8
Гуру тест №7. Зачем нужен тип - Тип("")?
,
0 TormozIT
 
гуру
14.11.20
19:57
На всех версиях платформы до 8.3.18 включительно вычисляется пустой тип (Тип("")) и создает тип без представления.
Зачем нужен этот тип?
https://i.imgur.com/ULgKAvH.png
1 CepeLLlka
 
14.11.20
20:25
Могу ошибаться, но мне кажется что-то такое использовал, когда нужно было сбросить тип поля выбора на форме, когда в этом поле есть возможность выбора объекты разных типов.
Чтобы заставить пользователя снова выбрать тип перед выбором значения в поле.. хз.. может вру конечно чего-нибудь..
2 vde69
 
14.11.20
20:30
(1) в этом случае пишется просто

реквизит = неопределено

(0) предположу - это составной тип который может содержит любые типы
3 Конструктор1С
 
14.11.20
20:41
(0) за over 10 лет 1синья ни разу не понадобилось создавать тип который просто тип. Возможно, нужен где-нибудь в сериализации сложных объектов (типа СКД), и используется там как затычка шоб было
4 RomanYS
 
14.11.20
20:45
(2) тип не может быть составной, составное описание типов
5 vde69
 
14.11.20
20:50
(4) ОпределяемыйТип - вполне может быть составным
6 RomanYS
 
14.11.20
20:51
(5) ОпределяемыйТип это не тип, а как раз описание типов или что-то подобное
7 vde69
 
14.11.20
20:55
(6) Определяемый тип - это объект метаданных (такой-же как например Справочник).

Вообще надо различать примитивные типы и остальные, 1с как всегда смешало все в кучу, из за этого есть некие непонятки.

а вообще по сабжу согласусь с (3), скорее всего это для каких-то серилизаций
8 RomanYS
 
14.11.20
21:06
(7)
>> Вообще надо различать примитивные типы и остальные, 1с как всегда смешало все в кучу, из за этого есть некие непонятки.

Да всё там разделено: есть типы (примитивные) и есть описания типов (которые состоят из одного или нескольких типов).
Определяемый - да объект МД для хранения (часто) используемых описаний типов.
Вроде нет никаких непоняток?
9 RomanYS
 
14.11.20
21:07
(0) Варианты "просто так" и "так получилось" не рассматриваются?
10 RomanYS
 
14.11.20
21:08
+(9) или ты нашёл использование и нас проверить решил?
11 RomanYS
 
14.11.20
21:18
Жесть, значение это типа имеет внутреннюю структуру как-то связанную с СКД
https://ibb.co/cCD17k1
12 youalex
 
14.11.20
21:40
Интересно, что в СП:
Тип (Type)
Синтаксис:
Тип(<ИмяТипа>)
Параметры:
<ИмяТипа> (обязательный)
Тип: Строка.
Имя получаемого типа.


<ИмяТипа> (обязательный). Понятно, что пустая строка это тоже значение. Но тем не менее.
13 RomanYS
 
14.11.20
21:46
Судя по (11) этот тип болванка(или родитель) для всех типов СКД:
ЗначенияПараметровВыводаГруппировкиДиаграммыКомпоновкиДанных
ЗначенияПараметровВыводаДиаграммыКомпоновкиДанных
ЗначенияПараметровДанныхКомпоновкиДанных
....
14 fisher
 
14.11.20
21:48
Не знаю. Зачем?
15 TormozIT
 
гуру
14.11.20
22:04
(11) Не увидел связи с (0)
16 RomanYS
 
14.11.20
22:09
(15)
    Мас = Новый Массив();
    Мас.Добавить(тип(""));
    ОТ = новый ОписаниеТипов(Мас);
    Зн = ОТ.ПривестиЗначение(1);
17 RomanYS
 
14.11.20
22:10
+(16) из табло:
тип("") = ТипЗнч(Зн)    Истина
18 RomanYS
 
14.11.20
22:12
ЗначениеВСтрокуВнутр(Зн)    "{"#",51d9033b-1e2d-4c31-b3a3-8209d5856d4e}"
19 RomanYS
 
14.11.20
22:12
ЗначениеВСтрокуВнутр(тип(""))    "{"T",51d9033b-1e2d-4c31-b3a3-8209d5856d4e}"    Строка
20 TormozIT
 
гуру
14.11.20
22:13
Да. Теперь вижу. Годная находка.
Xml
<FieldAppearance xmlns="http://v8.1c.ru/8.2/managed-application/dynamic-list-server"; xmlns:xs="http://www.w3.org/2001/XMLSchema"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; xsi:type="FieldAppearance"/>
21 RomanYS
 
14.11.20
22:14
(20) хрень полная, скорее всего из серии "так получилось". Или ты в этом смысл какой нашёл?
22 Ненавижу 1С
 
гуру
14.11.20
22:34
Причем на тонком клиенте тип не определен
23 vis_tmp
 
15.11.20
00:04
(21)Для чего годная?
24 tndr
 
15.11.20
00:48
Какое-то легаси платформы, которое запилили для тестирования, а потом решили оставить, чтобы 1с-ники подзаморочились)
25 GANR
 
15.11.20
01:04
(0) А не всё ли равно? Мало ли костылей.
26 TormozIT
 
гуру
19.11.20
09:30
В тонком клиенте этот тип не определен.
В 1С жалобу написал.
27 Конструктор1С
 
19.11.20
10:02
(26) тебе этот тип на кой?
28 TormozIT
 
гуру
19.11.20
10:22
(27) На той чтобы меньше ошибок в работе программы было. У меня возникла ошибка из-за него.
29 RomanYS
 
19.11.20
10:27
(28) Фигасе ты копаешь :)
Как именно поймал? Интересно.

(26) Жалобу что в тонком не определён? ИМХО шансов, что исправят, практически нет.
30 acht
 
19.11.20
11:15
(26) И напиши еще жалобу, что хак создания ТаблицаЗначений для тонкого клиента в веб клиенте не работает.
31 Вафель
 
19.11.20
12:01
может это просто недоработка то бишь баг, а не фича?
32 Жан Пердежон
 
19.11.20
12:11
(28) давай больше подробностей: что за ошибка, как и когда возникает
33 TormozIT
 
гуру
19.11.20
12:15
(29) Так я копаю ИР. Он тесно взаимодействует с платформой и залезает в ее самые укромные места. В частности у меня есть механизмы перебора всех типов платформы и их представления в различных формах.
34 TormozIT
 
гуру
19.11.20
12:16
(31) Конечно баг (95% вероятность).
35 TormozIT
 
гуру
19.11.20
12:17
(29) Жалобу на (0) написал.
36 mistеr
 
19.11.20
12:44
(35) Предвижу ответ в духе "можно сказать и баг, но на него вся СКД завязана, так что исправлять поздно; огородите заборчиком и обходите стороной".
37 Конструктор1С
 
19.11.20
12:48
(28) что делаешь с этим баготипом?
38 Конструктор1С
 
19.11.20
12:51
(33) зачем? Разные механизмы используют разные типы, не нужно смешивать все возможные типы в одну кучу
39 TormozIT
 
гуру
21.11.20
10:20
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший