|
Сокращенная логика в условии и 8.3.8.1964 - WTF ? |
☑ |
0
Ёпрст
гуру
12.09.16
✎
12:01
|
Проверьте, работает ли логика в обычном условии по сокращенному варианту, или проверяются все операнды в выражении ?
Например, обычные формы,при записи Группы справочника
Процедура ПриЗаписи(Отказ)
Если НЕ ЭтоГруппа И БулевоРеквизитНеГруппы И БулевоРеквизитНеГруппы2 Тогда
....
Выдаёт в 8.3.8.1964 ошибку: "Преобразование значения к типу Булево не может быть выполнено"
Т.е проверяется второе условие, хотя не должно вообще.
У всех так ?
Проверьте на других релизах, если не лень.
|
|
1
MrStomak
12.09.16
✎
12:12
|
Всё работает как надо.
|
|
2
Ёпрст
гуру
12.09.16
✎
12:31
|
(1)Именно в ПриЗаписи в модуле объекта ?
В остальных местах проверил (в обработке, например).
Именно в ПриЗаписи такая ерунда.
|
|
3
MrStomak
12.09.16
✎
13:50
|
(2) Нет причин думать, что компиляция процедуры ПриЗаписи отличается от компиляции других участков.
Завел ПриЗаписи - всё нормально.
Твоя проблема скорее всего в логике конфигурации
|
|
4
Жан Пердежон
12.09.16
✎
13:56
|
(0)
ЭтоГруппа = Истина?)
|
|
5
Ёпрст
гуру
12.09.16
✎
14:05
|
(4) нет
|
|
6
Ёпрст
гуру
12.09.16
✎
14:06
|
(3) в какой логике ?
|
|
7
RomanYS
12.09.16
✎
14:10
|
(0) не верю, давай скрин с табло отладчика
НЕ ЭтоГруппа
БулевоРеквизитНеГруппы
БулевоРеквизитНеГруппы2
НЕ ЭтоГруппа И БулевоРеквизитНеГруппы И БулевоРеквизитНеГруппы2
|
|
8
Жан Пердежон
12.09.16
✎
14:11
|
(5) ну значит правильно работает
|
|
9
Cyberhawk
12.09.16
✎
14:16
|
Сделай вот так:
Если Истина
И НЕ ЭтоГруппа
И БулевоРеквизитНеГруппы
И БулевоРеквизитНеГруппы2
Тогда
|
|
10
Жан Пердежон
12.09.16
✎
14:17
|
+к(8)
для конъюнкции предикаты проверяются пока ЛОЖЬ не найдена, для дизъюнкции - пока истина...
|
|
11
Ёпрст
гуру
12.09.16
✎
14:18
|
(9) как обойти, я и так знаю: тупо 2 условия.
|
|
12
Ёпрст
гуру
12.09.16
✎
14:26
|
|
|
13
Ёпрст
гуру
12.09.16
✎
14:27
|
О!
Еще подробности:
в файловой нормально отрабатывает, а вот в SQL-версии - ошибка то, что на скриншоте. Полный ПЭ.
|
|
14
Ёпрст
гуру
12.09.16
✎
14:27
|
Могу кинуть cf-ник демо-базы с одним справочником.
|
|
15
Жан Пердежон
12.09.16
✎
14:30
|
в (0) - И на скрине - ИЛИ
в (5) одно, на скрине - другое
подозреваемый путается в показаниях,
понять и простить?)
|
|
16
RomanYS
12.09.16
✎
14:31
|
(15) точно!!! ИЛИ!!!
|
|
17
Ёпрст
гуру
12.09.16
✎
14:34
|
(16) это понедельник
|
|
18
Ёпрст
гуру
12.09.16
✎
14:34
|
:)
Понять и простить
|
|
19
Ёпрст
гуру
12.09.16
✎
14:40
|
Просто скобочки в реальном условии потерялись между "и"
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший