This is topic Сравнение строк in forum TRACE MODE 6 бесплатная Базовая версия / TRACE MODE 6 free Base version at Форум TRACE MODE: техническая поддержка.


To visit this topic, use this URL:
http://forum.adastra.ru/ultimatebb.php/ubb/get_topic/f/31/t/001665.html

Posted by vg (Участник № / Member № 8172) on :
 
Здравствуйте.

Нашёл на форуме сообщение от 2015-го года, в котором сообщалось, что работа со строками не поддерживается. Это до сих пор так?

Задача - Реализовать индикацию ГЭ "Текст" по полученным строковым данным(получать их я умею принудительно в том числе).

Умею делать индикацию с числовыми данными, но не понимаю пока что как перейти от строк к числам, так как не получается сравнить строки.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Формат STRING поддерживается и всегда поддерживался. Возможно, в контексте обсуждаемой тогда отдельной проблемы его использование было невозможным.

Напишите на электронную почту техподдержки более подробное описание задачи. Опишите известные строковые данные, как они получаются в системе, их количество и содержание, как должна выглядеть индикация?
 
Posted by vg (Участник № / Member № 8172) on :
 
Касаемо той ситуации:
http://forum.adastra.ru/cgi-bin/ultimatebb.cgi?ubb=next_topic;f=31;t=001414;go=older

Да, разумеется поддерживается, возможно непонятно задал вопрос. Единственная проблема в том, что не работает подобный код, когда я не могу сравнить полученное значение из CALL.STRING с некоторым текстом:

if arg1 == "Слабый" then
output = 1;
end_if;

И ещё вдогонку вопрос: можно ли во время работы МРВ задать каким-либо способом текст длиннее 63-х символов(из личного опыта получилось, что до 64 байт не включительно)?
 
Posted by Nico (Участник № / Member № 5342) on :
 
нет
 
Posted by vg (Участник № / Member № 8172) on :
 
Здравствуйте, объём, выделенный под аргументы программы, - 4 килобайта. Если с числами проблем нет, то как быть со строками?
Поместив в программу 14 строковых аргументов (каждый из которых в текстовом файле с кодировкой ANSI занимает не более 40 байт) канал CALL.Program отрабатывает. Если я делаю 16, то появляется программная недостоверность и канал получает статус "Off". Я так понимаю из-за нехватки места под аргументы. Но ведь даже при переводе в UTF-8 размер увеличится только вдвое, что всё ещё оставит запас. Разъясните пожалуйста.
 
Posted by Nico (Участник № / Member № 5342) on :
 
-в программе принудительно ограничено число строковых аргументов
 
Posted by vg (Участник № / Member № 8172) on :
 
для любого размера строковых аргументов?
какой предел в количестве?
 
Posted by Nico (Участник № / Member № 5342) on :
 
-да
-размер любого строкового аргумента считать за 256
 


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2