Вложений: 1
Строковые функции языка ST в MasterScada
Есть несколько вопросов по работе строковых функций:
1. Функция FIND(Str1, Str2) должна бы, по идее, возвращать значение 0, если Str2 не найдена в Str1. Не возвращает, или, можно сказать, возвращает неправильно. А если Str2 = '.' возвращает 1 всегда, где бы эта точка не находилась. Если искать ',' и запятая есть в Str1, возвращается правильный номер в строке. Но если запятую из строки убрать, то возвращается номер позиции где запятая была. Ноль возвращать не хочет.
2. Если на строковый вход скрипта ST вместо непустой строки подать пустую строку, то скрипт не обрабатывает её. Например, можно написать внутри скрипта функцию LEN(in_string), надеясь получить длину 0, но ничего подобного не произойдёт.
Опрос объектов периодический. Почему пустые строки не обрабатываются? Замеченные особенности действительно имеют место быть или это я неправильно использую строковые функции?