Не работает по экшен if и switch по тексту

arey68

Client
Регистрация
12.03.2016
Сообщения
7
Благодарностей
1
Баллы
3
Не срабатывают логические экшены для текста (для цифр все нормально)
Само условие: когда переменная равна "sorry" то true, нет false
(в правилах подачи написано: желательны сканы, но не вижу, что их можно вставлять - "Image URL:" или это предлагается ввести весь путь до картинки?))
Попытаюсь на словах описать свои действия. При копировании значения переменной в блокнот = sorry; при сравнении sorry==sorry экшен выводит false. Пробовал переустановить прогу, применял разные кавычки. Пробовал вставить в switch такая же история, при чем на демке все работало.
 

nole

Client
Регистрация
19.11.2010
Сообщения
368
Благодарностей
217
Баллы
43
Вот это полет мысли, набор несвязанных предложений
сделай скрин экшена с настройками, который неправильно отрабатывает
 

ibred

Client
Регистрация
04.04.2015
Сообщения
3 835
Благодарностей
3 552
Баллы
113
Текст сравнивается в кавычках, т.е. "sorry"=="{-Variable.response-}".
 
  • Спасибо
Реакции: Mihalich

arey68

Client
Регистрация
12.03.2016
Сообщения
7
Благодарностей
1
Баллы
3
Спасибо ответившим, разобрался. Переменная была без кавычек.
 

ParfeniyAnton

Client
Регистрация
24.08.2014
Сообщения
301
Благодарностей
49
Баллы
28
Апну старую тему, так как проблема вроде бы похожая.
Не выполняется такой кубик if '{-Variable.sql_req-}' == '1'
При этом выполняется такое условие '{-Variable.sql_req-}' != ''
В переменной 100% записано значение 1
 

Вложения

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 720
Баллы
113
Апну старую тему, так как проблема вроде бы похожая.
Не выполняется такой кубик if '{-Variable.sql_req-}' == '1'
При этом выполняется такое условие '{-Variable.sql_req-}' != ''
В переменной 100% записано значение 1
с завидной регулярностью эта тема подымается *HAHA*
не зря я всю логику на c# делаю. там таких проблем нет. тьфу, тьфу :-)
 
  • Спасибо
Реакции: ParfeniyAnton

ParfeniyAnton

Client
Регистрация
24.08.2014
Сообщения
301
Благодарностей
49
Баллы
28
с завидной регулярностью эта тема подымается *HAHA*
не зря я всю логику на c# делаю. там таких проблем нет. тьфу, тьфу :-)
Жесть какая :-)
Я, даже если на C# эту проверку сделаю, всё равно надо будет какой-то zenno переменной присваивать\не присваивать значение, чтобы кубиком сделать проверку '{-Variable.sql_req-}' != ''
В моём случае результат этой проверки влияет на то куда дальше шаб уйдёт :-)

У меня такая приколюха впервые, буду знать, что это разновидность нормы :-)
Спасибо за ответ!
 

ParfeniyAnton

Client
Регистрация
24.08.2014
Сообщения
301
Благодарностей
49
Баллы
28
Вобщем, перезапустил PM, всё заработало нормально. Не представляю, что это было, но очень рад, что прошло по касательной :-)
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 407
Благодарностей
9 116
Баллы
113
Ни разу не встречал таких проблем на всех версиях и всех своих ПК.
Попробуйте перезагрузить ПМ. Постоянно использую IF в проектах в больших количествах.
Думаю, что в ЗП при реальной работе проблем не будет.
 

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 720
Баллы
113
Ни разу не встречал таких проблем на всех версиях и всех своих ПК.
Попробуйте перезагрузить ПМ. Постоянно использую IF в проектах в больших количествах.
Думаю, что в ЗП при реальной работе проблем не будет.
везет вам. а у меня был всего один кубик if после выхода подпроекта. и там как раз 0 или 1 сравнивалось. вот его штормило то....... а я понять не мог чо за чудеса ? скрины стал делать, логи расширенные. в общем обложил по кругу. и мозг чуть не сломал. на скрине вижу, что все сделано, в логах тоже пишет, что вот переменная 1 , а уходит по другой ветке.... ладно бы постоянно такая фигня, а нет через раз происходило.
думал все накрылась музыка с автоматизацией, раз уж основа основ не работает. Но проверив как в кубике C# логика срабатывает, понял, что еще повоюем. кучу времени потратил на поиск и замену логики if стандартного кубика, на аналог на c# . в общем с тех пор не штормит :-)
 
  • Спасибо
Реакции: takerz

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 720
Баллы
113
вот кстати прям яркая тема. там запросто можно найти и выловить эту проблему, если конечно захотеть. на что у меня большие сомнения.
https://zennolab.com/discussion/threads/testirovanie-proizvoditelnosti-zennoposter-zennojsbench-u-kogo-moschnee-server.39798/
я скачивал zennojsbench_v2.xmlz немного подправил под изменившийся сайт. и запускал несколько раз. так вот там цикл ожидания как раз сделан на стандартном кубике IF
у меня под нагрузкой все по п.....м пошло. стал разбираться, заменил стандартный IF на кубик IF написанный на C#, больше ничего не менял и о чудо, у меня все шаблоны отработали до конца :-)
вот наверно раз 3-й пишу про эту тему админам, и всегда слышу один ответ. а у нас все хорошо. *HAHA*
в баги писать не буду , так как стандартным кубиком IF не пользуюсь и другим не советую. хотите правьте, ну а если все хорошо то не правьте :-) а у меня то и так все хорошо :-)
 

Mikhail B.

Client
Регистрация
23.12.2014
Сообщения
14 415
Благодарностей
5 454
Баллы
113
Апну старую тему, так как проблема вроде бы похожая.
Не выполняется такой кубик if '{-Variable.sql_req-}' == '1'
При этом выполняется такое условие '{-Variable.sql_req-}' != ''
В переменной 100% записано значение 1
Если убрать кавычки то ситуация изменится?
Попробуйте через trim прогоните дополнительно.
 

luk911

Client
Регистрация
17.01.2013
Сообщения
1 542
Благодарностей
579
Баллы
113
Двойные ковычки попробуй.
 

ebrwebrw

Client
Регистрация
20.08.2018
Сообщения
221
Благодарностей
164
Баллы
43
Двойные ковычки попробуй.
Да не, там что то с зенкой, было подобное, и двойные ставил и одинарные, 10 раз перепроверял, на C# работало, а в if кубике криво было, строку сравнивал == и != тоже
 
Последнее редактирование:

luk911

Client
Регистрация
17.01.2013
Сообщения
1 542
Благодарностей
579
Баллы
113
Да не, там что то с зенкой, было подобное, и двойные ставил и одинарные, 10 раз перепроверял, на C# работало, а в if кубике криво было, строку сравнивал == и != тоже
смысл в том что если это числа, то он сравнивает без кавычек правильно. В кавычки берутся строковые данные, если надо сравнить текст. В C# там это четче.
 
  • Спасибо
Реакции: PlayerT7

ebrwebrw

Client
Регистрация
20.08.2018
Сообщения
221
Благодарностей
164
Баллы
43
смысл в том что если это числа, то он сравнивает без кавычек правильно. В кавычки берутся строковые данные, если надо сравнить текст. В C# там это четче.
ParfeniyAnton сравнивал '1'=='1', должно было быть true, а было false
Да даже если бы он сравнивал '1'==1(строку с числом) должно было бы быть true, в данном случае js должен был бы привести всё к числам

И у ParfeniyAnton ушла проблема после ребута ПМ
 
Последнее редактирование:

ibred

Client
Регистрация
04.04.2015
Сообщения
3 835
Благодарностей
3 552
Баллы
113
Апну старую тему, так как проблема вроде бы похожая.
Не выполняется такой кубик if '{-Variable.sql_req-}' == '1'
При этом выполняется такое условие '{-Variable.sql_req-}' != ''
В переменной 100% записано значение 1
Подскажите, пожалуйста, а откуда Вы брали значение для сравнения (которое в переменной)?
Недавно всплыла проблема с невидимым символом в таблице, возможно, Ваши проблемы были связаны: https://zennolab.com/discussion/threads/tablicy-bom-v-pervoj-jachejke-pervoj-stroki-5-39-0-0.72312/
 

Burklive

Client
Регистрация
10.05.2017
Сообщения
123
Благодарностей
33
Баллы
28
Перезапуск PM не всегда помогает. Даже где очевидно, что истина кубик пишет ложь.
 

alexasd

Client
Регистрация
03.10.2018
Сообщения
28
Благодарностей
13
Баллы
3
Проблема осталась. Очевидные глюки в работе сравнения.
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 407
Благодарностей
9 116
Баллы
113

alexasd

Client
Регистрация
03.10.2018
Сообщения
28
Благодарностей
13
Баллы
3
Сделайте пож-ста пример ваших кубиков IF, где у вас есть проблемы по неправильному сравнению.
Обычный кубик if со сравнением двух переменных. У одной было значение 100, у другой 1. Кубик перестал работать и не реагировал ни на какие изменения внутри кубика. Менял знак меньше на больше, равно, не равно и т.д., менял значения переменных, сами переменные, брал в апострофы. Перезагрузка PM не помогла. Заработало, когда убил кубик и сделал новый. Возможную причину вижу в наличии в названиях переменных нижнего подчеркивания "_". В первом случае, когда кубик умер, оно было. Во втором, переменные уже были переименованы, все заработало.
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 407
Благодарностей
9 116
Баллы
113
Обычный кубик if со сравнением двух переменных. У одной было значение 100, у другой 1. Кубик перестал работать и не реагировал ни на какие изменения внутри кубика. Менял знак меньше на больше, равно, не равно и т.д., менял значения переменных, сами переменные, брал в апострофы. Перезагрузка PM не помогла. Заработало, когда убил кубик и сделал новый. Возможную причину вижу в наличии в названиях переменных нижнего подчеркивания "_". В первом случае, когда кубик умер, оно было. Во втором, переменные уже были переименованы, все заработало.
Нижнее подчеркивание - допустимо в именах переменных.
Числа и переменные с числами в апострофы не нужно брать.
Проверил у себя - все ок.

100643

100644
 

alexasd

Client
Регистрация
03.10.2018
Сообщения
28
Благодарностей
13
Баллы
3
Нижнее подчеркивание - допустимо в именах переменных.
Числа и переменные с числами в апострофы не нужно брать.
Проверил у себя - все ок.

Посмотреть вложение 100643

Посмотреть вложение 100644
В том то и проблема, что оно все ОК. А потом вдруг не ок. Т.е. нормальный кубик перестает нормально работать при нормальных условиях. К сожалению не догадался сохранить шаб, когда проблема вылезла. Если еще раз столкнусь, обязательно сохраню шаб в проблемном состоянии. Практика показала, что это возможно. После сохранения и перезагрузки проблема осталась. А поле удаления глючного кубика исправилась.
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 407
Благодарностей
9 116
Баллы
113
В том то и проблема, что оно все ОК. А потом вдруг не ок. Т.е. нормальный кубик перестает нормально работать при нормальных условиях. К сожалению не догадался сохранить шаб, когда проблема вылезла. Если еще раз столкнусь, обязательно сохраню шаб в проблемном состоянии. Практика показала, что это возможно. После сохранения и перезагрузки проблема осталась. А поле удаления глючного кубика исправилась.
Тогда сохраните проект для анализа.
И желательно проверить значения переменных в тот момент когда снова такая проблема появится.
 
  • Спасибо
Реакции: djaga

Кто просматривает тему: (Всего: 3, Пользователи: 0, Гости: 3)