Приветствую Вас, Гость · Вход · Регистрация

Главная » Файлы » MicroSCADA » Примеры кода

Ком процедура
[ ] 24.11.2008, 09:52
Code
  
;*****************************************************************
; НАЧАЛЬНАЯ ИНИЦИАЛИЗАЦИЯ ALARM_ALL *
;*****************************************************************
; Filename: ALARM_INIT.TXT *
; Date creation 05-09-05 *
;_____________________________________________________________________*
; File Version: v 0.1
; v 0.101 02-11-05 16:31
;_____________________________________________________________________*
; Author: Разыграев Андрей Алексеевич *
; Company: "ООО ЛУКОЙЛ ВНП" *
;**********************************************************************
; Изменения: v 0.1
; v 0.101 поправил графику

;**********************************************************************
; Notes: Привязана к каналу событий APL_INIT_1 (при старте SCADA)
; Это командная процедура начальной инициализации  
; групповой тревоги при старте SCADA
; Сбрасывает индикацию груп тревог в "0", затем ищет тревоги
; и инициализирует запись в индикацию
;*****************************************************************
@NAME
#SEARCH 1 0 "P" "A" "A" LN=="BD%NOM" OR LN=="BD%TDN" OR LN=="BD%MB" ;ищем сводные тревоги
@I = 0
@POBJ = NEXT(1)
  #LOOP (POBJ:VIU >= 0)
  @I = %I + 1
  @NAME(%I) = POBJ:VLN
  @LN=%NAME(%I)
  #SET 'LN':pov=0 ;ставим ее в ноль
  #SET 'LN':par=1 ;на всяк случай сбрасываем тревогу
  @POBJ = NEXT(1)
  #LOOP_END
;ищем активные тревоги
#INIT_QUERY "L" AL==1 ;ищем тревоги
@QUERY=prod_query(1000)
@LN_QUERY
@IX_QUERY
@I = 1
@LN_QUERY=QUERY:VLN ;\из листа вектор
@IX_QUERY=QUERY:VIX ;/
  #LOOP_WITH I = 1 .. LENGTH(%LN_QUERY)
  @LN=%LN_QUERY(%I) ;передаем имя
  @IX=%IX_QUERY(%I) ;и индекс
  #DO ALARM_ALL:C ;запускаем процедуру записи в тревоги
  #LOOP_END
@NAME
@LN_QUERY
@IX_QUERY
@I
@QUERY
@LN
@IX
Категория: Примеры кода | Добавил: RAZ
Просмотров: 776 | Загрузок: 0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]