Чтение из переменного канала, как?
Задал числовые каналы, пытаюсь сделать просмотр канала выбранного на мнемосхеме.
Var
sushilo: string; trend: Byte;
Begin
sushilo:=ReadValue('выбор'); //считываю заданный номер из виртуального канала
trend:=ReadValue('sushilo'); //пытаюсь считать значение из реального канала
WriteValue('тренд',trend); //запись в виртуальный канал
end.
Не работает, что я делаю не так? sushilo: string; trend: Byte; при таких переменных панель в сеточку(нет данных),sushilo, trend: Byte; при таких данных всегда 0.
Var
sushilo: string; trend: Byte;
Begin
sushilo:=ReadValue('выбор'); //считываю заданный номер из виртуального канала
trend:=ReadValue('sushilo'); //пытаюсь считать значение из реального канала
WriteValue('тренд',trend); //запись в виртуальный канал
end.
Не работает, что я делаю не так? sushilo: string; trend: Byte; при таких переменных панель в сеточку(нет данных),sushilo, trend: Byte; при таких данных всегда 0.
http://www.delphibasics.ru/TDateTime.php
http://www.delphisources.ru/pages/faq/faq_delphi_basics/DecodeDateTime.php.html
http://www.delphisources.ru/pages/faq/faq_delphi_basics/EncodeDateTime.php.html
Ставлю на мнемосхему "Строковый задатчик" если ввожу буквы всё работает, ввожу цифры на выходе 0.
Уточните задачу. Какого типа канал в который пишите - физический/виртуальный. Тип канала.
В канале "Выбор" скрипт:
Var
sushilo: string; trend: Double;
Begin
sushilo:=ReadValue('Выбор');
WriteValue('test',sushilo);
trend:=ReadValue(sushilo);
WriteValue('Тренд',trend);
end.
На мнемосхеме: Управление"Строковый задатчик" привязан к каналу "Выбор", четыре Управление"Слайдер" привязаны к "vvv", "nnn", "52", "55", два Индикатор"Текст" к "Тренд", "test".
Запускаю "Монитор" при записи в "Строковый задатчик" vvv или nnn данные передаются в "Тренд", если набрать 52 или 55 то "Тренд"=0. Канал "test" отображает все нормально.
var sushilo: string; trend: Double; begin sushilo := ReadValue('Выбор'); // в канал "test" значение переменной выводиться потому что для канала это строка. WriteValue('test', sushilo); // здесь система пробует найти канал с именем указанным в переменной "sushilo" // и в случае с именем состоящим из одних цифр, у неё это не получается. // почему это происходит мы будем разбираться. А решение Вашей задачи - дать каналам более // информативные имена. trend := ReadValue(sushilo); WriteValue('Тренд', trend); end.