Документация по SCADA системе Simp Light


Содержание:


GetValueFromStream

Функция считывает последовательно записи из полученного потока (возвращаемое значение — True), пока не будет достигнут конец потока (возвращаемое значение — False).

Синтаксис

GetValueFromStream
(Stream: TStream; TimeStamp: Extended; Value: Extended): Boolean

Входные параметры
Имя параметра
Тип параметра
Описание
Stream TStream  Поток, полученный функцией
 StreamReadFromDatabase
TimeStamp Extended  Считанная временная метка
Value Extended  Считанное значение
Выходные параметры
Тип параметра  
Описание 
Boolean  Возвращаемое значение:
 True - функция считывает
 последовательно записи из
 считанного потока;
 False - конец потока достигнут.

Пример вызова:

 
Var
  res, f: Integer;
  beginData, endData: TDate;
  dtDate: TDateTime;
  dValue: Double;
  nameChannel: String;               
  stream: TMemoryStream;                                                 
                                         
Begin
  nameChannel := 'Температура 1';                  
  beginData := now()-1;                  
  endData := now();     
 
  stream := TMemoryStream.Create; 
  try 
  res := StreamReadFromDatabase(beginData, endData, nameChannel, stream); 
  if res = 0 then
  begin
     while GetValueFromStream(stream, dtDate, dValue) do           
     begin
         //ваш код работы со значениями dValue ...
         f := f + 1; // просто подсчитываем записи для проверки работы while                   
     end;                                  
     WriteValue('Virtual channel 99', 'Обработка ' + IntToStr(f) + ' записей завершена.');    
  end
  else                                                                 
     WriteValue('Virtual channel 99', 'Ошибка считывания: ' + IntToStr(res));  
                                   
  finally
    stream.Free;
  end;
end.