Имя: Пароль:
1C
1С v8
Неверное сравнение типов объектов в расширении конфигурации
,
0 kenzzzooo
 
31.01.20
16:49
Платформа: 8.3.15.1513 (другие также проверялись 8.3.13.1644, 8.3.16.1148), обычное приложение, файловая БД.
В расширение вынесена (&Вместо) процедура подбора номенклатуры, в ней есть код:

флГотоваяПродукция_Продукция = ТипЗнч(ИсточникДанных) = Тип("ДокументТабличнаяЧасть.ГотоваяПродукция.Продукция")

который не работает, причем код:

Если ТипЗнч(Объект) = Тип("ДокументОбъект.ГотоваяПродукция") Тогда

отрабатывает правильно. На данном этапе сделал через:

флГотоваяПродукция_Продукция = Строка(ТипЗнч(ИсточникДанных)) = Строка(Тип("ДокументТабличнаяЧасть.ГотоваяПродукция.Продукция"))

и так работает. Предварительное вычисление значений не помогает, чистка кэша не помогает. Что можно сделать?
1 runoff_runoff
 
31.01.20
17:09
а не проще ли сначала проверить в отладчике, какой приходит тип
2 kenzzzooo
 
31.01.20
17:10
(1) проверял, типы совпадают
3 kenzzzooo
 
31.01.20
17:11
(1) этот код прекрасно работает в основной конфигурации, в расширение он просто скопирован
4 paramedic
 
31.01.20
17:15
Типы в расширение переносились?
5 pechkin
 
31.01.20
17:17
(4) для того чтобы код отрабатывал - ничего переносить не нужно
6 paramedic
 
31.01.20
17:18
(5) Но для того, чтобы равенство не сработало достаточно того, что часть типов перенесена, а часть - нет.
7 kenzzzooo
 
31.01.20
17:22
(4) типы перенесены
8 kenzzzooo
 
31.01.20
17:22
(6) непонятное поведение. было, что Истина = Истина давала Ложь
9 kenzzzooo
 
04.02.20
12:15
Есть тут кто?
10 kenzzzooo
 
06.02.20
15:22
(9) Блин, я один с таким сталкивался что ли?