Операции сравнения дат в 77 #722178


#0 by Ёхан Палыч
Давно не работал 77. Чо за херня? Почему отладчик в 77 выдает такое: '01.01.2014' > '01.01.2014' = Ошибка в выражении! и т.д.
#1 by VladZ
А что отладчик тебе должен написать???? В 7.7 нет типа булево.
#2 by VladZ
Для начала попробуй конструкцию вида ?('01.01.2014' = '01.01.2014', 1,0)
#3 by Ёхан Палыч
Ага, понял, вспомнил, спасиб.
#4 by Ёхан Палыч
Все равно не получается. Если спр.Дата >= '01.01.2014' Тогда - выдает ошибку еще на стадии открытия обработки. Хотя ТипЗначенияСтр(спр.Дата) = Дата. Как так?
#5 by Ёхан Палыч
все разобрался
#6 by МимохожийОднако
Ну, и как сделал?
#7 by Ёхан Палыч
да там проблема не в этом была, операции сравнения и логические (И, Не...) в 77 имеют какой то странный приоритет, понаставил скобок в лог. выражении и пошло )))
#8 by mergan
В 7.7 приоритет абсолютно такой-же как и в других языках
#9 by пипец
Дата("01.01.01") не предлагать ?
#10 by Ёхан Палыч
дает ошибку: не дает ошибку:
#11 by Ёхан Палыч
ха, действительно у И НЕ ИЛИ - приоритет больше чем у равно больше меньше и как я раньше жил с этим ))))
#12 by Ёхан Палыч
ну это же нелогично нихрена
#13 by Фокусник
Ошибка была, потому что в 77 скобки нужно ставить вокруг каждого логического выражения, а не из-за "приоритета" ;)
#14 by 1dvd
тёплое с мягким путаешь. В 77, всё что между И, между ИЛИ должно заключаться в скобки
#15 by Ёхан Палыч
а в 8 кажись не так, не задумывался никогда ???
#16 by 1dvd
да, восьмерке много что поменяли. Но, твоя фраза  "у И НЕ ИЛИ - приоритет больше чем у равно больше меньше" бессмыслица
#17 by Ёхан Палыч
да смех да и только, засомневался и прочел
#18 by 1dvd
это восьмерка
#19 by Ёхан Палыч
т.е. для восьмерки фраза "у И НЕ ИЛИ - приоритет больше чем у равно больше меньше" верна???????????????????
#20 by 1dvd
да. В 77 нет типа булево, как тебе уже говорили. Там выполняются сперва сравнения, а потом уже эти результаты перемножаются (логическое И), Складываются (логическое ИЛИ) и отрицаются (НЕ)
#21 by Зеленый пень
Надо еще помнить, что 7.7 будет проверять все условия, даже если после первого логично прекратить проверку. Т.е. если: спр.ЭтоГруппа = 1, то всё равно будут проверены остальные условия.
#22 by Ёхан Палыч
ясно, ладно, скобки рулят в любом случае, так и будем кодить ))))
#23 by Torquader
А что вы хотели - операторы над результатами логических выражений (НЕ И ИЛИ) начинают выполняться только тогда, когда все логические выражения уже вычислены.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

Похожие вопросы 1С

В этой группе 1С