Сколько условий может быть через И? #117275


#0 by catena
Если (Условие)И(Условие)И... Сколько?
#1 by miki
Проверь. Потом расскажешь...
#2 by fabrikant
Вероятно сколько угодно, хотя всему есть предел. А сколько надо?
#3 by Mister I
вроде как ограничение мыслится одно -> допустимая длина строки в Модуле - 255.. но это не точно.. :((
#4 by fabrikant
Но условие можно продолжить на следующей строке
#5 by catena
Пока 6, но возможно понадобится больше. Не хочется плодить вложенные Если.
#6 by Mister I
+3 полуглупость сказал.. можно во много строк записать условие.. Прямых ссылок на ограничение не встречал
#7 by Denisыч
Много. (и) или ( и и и и ) или ... Короче пока не заипет. Но лучше так не надо, много условий в одном вхождении - большие тормоза.
#8 by miki
Покажи свое условие, плз.
#9 by Rovan
(+7) 1C 7-ка все (!) условия проверяет, а 8-ка до 1-го ключевого.
#10 by Директор PR отдела
Вложенность, типа ?(,,?(,,)) года 2 назад у меня падала на 16-ом или 18-ом вложении :-)
#11 by catena
ИначеЕсли (ПустоеЗначение(Карточка)=1)И(ПустоеЗначение(Склад)=1)И(ПустоеЗначение(Аптека)=1)И(ПустоеЗначение(Отдел)=1)И(ПустоеЗначение(ОрганизацияАпт)=1) Тогда
#12 by ИвановИван
Фигля дурку гоняете? "и" и "или" можно хоть сотню использовать и тормозов никаких не будет, ибо сложность этих операций во много много раз меньше  вычитания и сложения.
#13 by ИвановИван
Так быстрее будет
#14 by GrayT
А давай в машиных тактах посчитаем?
#15 by Guk
>>ибо сложность этих операций во много много раз меньше  вычитания и сложения. Уверен? С точки зрения 1 и 0, сложнее...
#16 by catena
У меня таких ИначеЕсли туева хуча, сложно потом разобраться будет, ИМХО
#17 by ИвановИван
Ихмо 1 + 1 = 1, 1 + 0 = 1.... короче за такт а вот +: 345 + 456, перевод в двоичную систему и поразрадное сложение.
#18 by ИвановИван
а я думаю, что нет см (17
#19 by miki
У тебя там что за типы значений? Если все агрегатные, то можно без И, например:
#20 by catena
Нет, они могут быть совсем разными
#21 by GrayT
1+1 не переводиться к двоичному виду? Но мысль понял. Не уверен что в 1С существует оптимизаия по типу.
#22 by ИвановИван
И все эти ЕСЛИ вложены в цикл??? А сколько предположительно цикл будет иметь циклических повторений?
#23 by catena
О... Около 25 000 повторений :)
#24 by Rovan
(+19) ЕЩЕ вариант СокрЛП(Карточка)+СокрЛП(Склад)+СокрЛП(Аптека)+СокрЛП(Отдел)+СокрЛП(ОрганизацияАпт)=""
#25 by ИвановИван
не знаю переводится или нет, но должно переводится програмировалли 1С не дауны
#26 by GrayT
Короче у меня в свое время алгоритм поиска по множеству условий существенно ускорился когда я разбил на несколько если
#27 by GrayT
Да если б и дауны - один фиг все в двоичной. А за 1 так кажись только регистровые операции инкремента декремента выполняются (если я не сильно асм забыл)
#28 by ИвановИван
А вот такие вот варианты как предлагает Рован и  Мики, я бы юзать не стал ...Использования емких операций в цикле надо избегать.
#29 by ИвановИван
И вообще если есть условие, которое может быть = Истина, или Ложь, то сравнение В операторе ЕСЛИ надо ставить таким образом чтобы выражение после ТОГДА выполнялось больше чем после ЕСЛИ!
#30 by catena
Какие СокрЛП, если там тип Справочник. , Число, Перечисление...
#31 by miki
Что у тебя имеет тип "Число"?
#32 by Rovan
По представлению пустой ссылки идет = "", а число проверяй = 0 (так короче и понятней)
#33 by catena
Я же одно условие привела, там куча еще других граф, используемых в других условиях. Короче, пока работает.
#34 by catena
Даже 28000 получается
#35 by НеРаботает_И_неРабот
Не знаю как в восьмёрке, а в 7.7 бух. помню мучился я с условиями, и не только с ними: то одно не работает, то - другое. По "И" точно были какие-то ограничения. Правда это был релиз 18 или 19, может из-за этого не работало.
#36 by agres
ПустоеЗначение(Карточка) выполнится гораздо быстрее, чем Карточка.Выбран
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям