|
Проверяется ли второе значение в условии, если первое не выполнено? |
☑ |
0
Shur1cIT
19.10.15
✎
17:47
|
ТипЗНЧ(ОбъектКоллекции.ПодразделениеКт) = Тип("СправочникСсылка.ПодразделенияОрганизаций") и ОбъектКоллекции.Организация = Справочники.Организации.НайтиПоКоду("000000503")
тоесть если ТипЗНЧ(ОбъектКоллекции.ПодразделениеКт) = Тип("СправочникСсылка.ПодразделенияОрганизаций") равняеться ЛОЖЬ и по сути проверять второе условие после "И" смысла нет будет ли проверяться ОбъектКоллекции.Организация = Справочники.Организации.НайтиПоКоду("000000503")
|
|
1
Волшебник
модератор
19.10.15
✎
17:49
|
Может не проверяться.
|
|
2
ДенисЧ
19.10.15
✎
17:49
|
в 8ке обещают, что не проверяется
|
|
3
Смотрящий
19.10.15
✎
17:49
|
(0) Не будет. 1С свою ВМ в данном конкретном случае содрало с С
|
|
4
Shur1cIT
19.10.15
✎
17:50
|
то есть дополнительно условия на проверку рисовать не стоит?
|
|
5
Shur1cIT
19.10.15
✎
17:50
|
ок спасибо
|
|
6
ДенисЧ
19.10.15
✎
17:51
|
Проверку делать всегда нужно
|
|
7
Necessitudo
19.10.15
✎
17:53
|
Если было бы ИЛИ - тогда бы проверялось.
|
|
8
anatoly
19.10.15
✎
17:59
|
не проверяется.
это отлично видно в отладчике если каждое условие с новой строки писать:
Если ТипЗНЧ(ОбъектКоллекции.ПодразделениеКт) = Тип("СправочникСсылка.ПодразделенияОрганизаций")
и ОбъектКоллекции.Организация = Справочники.Организации.НайтиПоКоду("000000503") Тогда
|
|
9
18_plus
19.10.15
✎
18:25
|
а я всё равно пишу так, как будто проверяется.
мне так спокойнее.
|
|
10
EvgeniuXP
19.10.15
✎
18:26
|
(7) если первое истина - то уже не проверяется
|
|
11
tznimble
19.10.15
✎
18:31
|
(0) В 1С 8+ используется политика short circuit evaluation, то есть вычисляется часть выражения достаточная для определения результата. В Вашем случае, если первое сравнение дало ЛОЖЬ, второе не вычисляется.
|
|