Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?

Официальный форум Simple-Scada.

Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - zabazu

Страницы: [1]
1
К примеру, в скрипте отслеживается изменение переменных ряда однотипных тегов в одном узле. Каждому узлу- свой именованный скрипт с префиксом, свои переменные с префиксом.

Код: (delphi)
var
  v_cycle: shortint;
  sm: smallint;
  aVar: TM_Variable;
  vName: UTF8string;
begin
if First_start.Value = 0 {and (имя.скрипта.IsFirstChange = false)} then //защита от записи
 begin
 vName := UTF8Encode(Variable.Name);
 UTF8Delete(vName,8,1);
 aVar := GetVariableByName(UTF8ToString(vName));
 if Assigned(aVar) then
  begin
  sm := Variable.OriginalAsInt;
  sm := sm * 10;
   if GetBit(sm,15) = true then
    begin
     v_cycle := 0;
     while v_cycle < 15 do
      begin
       sm := InverseBit(sm,v_cycle);
       v_cycle := v_cycle + 1;
      end;
     sm := sm + 1;
    end;
  aVar.Value := sm ;
  end;
 end;
end.

2
Здравствуйте!

Возможно ли получить название исполняемого скрипта? Не нашел в документации.

Допустим, скрипты по событию изменения переменных, имеют свой префикс. Необходимо использовать функцию IsFirstChange, не прописывая каждому скрипту название.

Страницы: [1]