Функция в скрипте для получения списка каналов

Avatar
  • обновлен
  • Отвечен

Хочу написать скрипт, который проходит по списку активных каналов, расположенных в указанной группе, 

читает их имена и значения и записывает в файл.

Подскажите, есть ли функция, чтобы получить такой список для итерации по нему в цикле.

В документации описаны только функции для работы с отдельными каналами.

Avatar
Цитата от Станислав С

Какой функцией можно проверить, существует ли данный тег по имени?

Что будет, если я попробую прочитать значение из несуществующего тега или записать значение в несуществующий тег?

День добрый.

Если канала не существует: ReadValue - вернёт 0. При попытке записи: WriteValue - запись будет проигнорирована, а функция вернёт False.

Avatar
Станислав С

Какой функцией можно проверить, существует ли данный тег по имени?

Что будет, если я попробую прочитать значение из несуществующего тега или записать значение в несуществующий тег?

Avatar
СИМП Лайт (тех поддержка)
  • Отвечен

День добрый.

Отдельной функции для обхода каналов в группе к сожалению на данный момент нет. В цикле можно обойти необходимые каналы на вскидку двумя способами:

1. Завести массив с именами каналов и по нему делать обход.

2. Это дать каналам имена отличающиеся только индексами, и в цикле обходить эти каналы с подстановкой нужного индекса.

пример: каналы - Канал 1...Канал 10


var
  i: integer;
  val: double;
begin
  for i := 1 to 10 do
  begin
    val := ReadValue('Канал ' + IntToStr(i));
    //...  
  end;
end.