Главная    Почта    Новости    Каталог    Одноклассники    Погода    Работа    Игры     Рефераты     Карты
  
по Казнету new!
по каталогу
в рефератах

SCADA системы

в |
|пределах всего тренда                                                   |
|                                                                        |
|HTScrollLeft()                                                          |
|Устанавливает в качестве начала графика более раннее время. Визуально   |
|происходит прокрутка тренда влево                                       |
|                                                                        |
|HTSetPenName()                                                          |
|Связывает перо тренда с указанной переменной                            |
|                                                                        |
|HTZoomIn()                                                              |
|Масштабирует существующий тренд путем задания новых времени начала и    |
|охватываемого интервала времени                                         |
|                                                                        |
|                                                                        |
|Таблица 5.3.2.                                                          |

Встроенные функции для работы с архивными трендами также могут иметь
несколько аргументов (до четырех). Функции, приведенные в табл. 5.3.2,
имеют следующий синтаксис:
      - HTGetPenName(Hist_Tag, UpdateCount, PenNum);

      - HTGetValue(Hist_Tag,UpdateCount,PenNum,ValType_Text);

      - HTScrollLeft(Hist_Tag,Percent);

      - HTSetPenName(Hist_Tag,PenNum,Tagname);

      - HTZoomIn (Hist_Tag,LockString).
Первый аргумент всех встроенных функций для работы с трендами - Hist_Tag
(имя тренда). Из других аргументов следует отметить PenNum (номер пера
тренда), ValType_Text (строка, указывающая тип возвращаемого значения),
Tagname (новое имя пера).


Функции, название которых начинается с wc (табл.5.3.3), используются с
управляющими объектами окна (простые списки, текстовые окна, ниспадающие
списки и т. д.)

|Функция                                                                 |
|Описание                                                                |
|                                                                        |
|wcDeleteItem()                                                          |
|Уничтожает элемент с заданным порядковым номером как в простом, так и в |
|ниспадающем списке                                                      |
|                                                                        |
|wcInsertItem()                                                          |
|Вставляет указанное сообщение в список                                  |
|                                                                        |
|wcLoadText()                                                            |
|Заменяет содержимое текстового окна на новую информацию                 |
|                                                                        |
|                                                                        |
|Таблица 5.3.3.                                                          |

Функции этой подгруппы также могут иметь до четырех аргументов:
      - wcDeleteItem("ControlName", ItemIndex);

      - wcInsertItem("ControlName", ItemIndex, "MessageTag");

      - wcLoadText("ControlName", "Filrename");.
Первый аргумент всех встроенных функций этой подгруппы - ControlName (имя
управляемого окна). Часто в качестве аргумента используются ItemIndex
(номер, соответствующий позиции элемента), MessageTag (строковое
сообщение), Filrename (имя файла в формате ASCII).

В рассматриваемой группе функций Miscellaneous следует отметить функцию
PrintWindow, i?aaiacia?aiioю для печати окна. Ее синтаксис выглядит
следующим образом:
      PrintWindow("Window",Left,Top,Width,Height,Options);,
где:
      - Window - имя окна;

      - Left - число дюймов от левого края;

      - Top - число дюймов от верхнего края;

      - Width - ширина распечатываемого окна;

      - Height - высота распечатываемого окна;

      - Options - дискретные значения 0 или 1.
Вставка встроенных  функций  в  скрипт  производится  щелчком  по  выбранной
функции  в  списке  функций.  Она  вместе  со   своими   аргументами   будет
автоматически вставлена в текст скрипта в точку, указанную  курсором.  После
этого можно отредактировать список аргументов.

По  окончании  редактирования  скрипта  следует  нажать   кнопку   Ok.   При
обнаружении  в  скрипте  каких-либо   ошибок   на   экран   будет   выведено
соответствующее сообщение. В большинстве случаев  курсор  установится  в  ту
позицию, которая  привела  к  появлению  ошибки.  Прежде  чем  скрипт  будет
сохранен, все ошибки должны быть исправлены.

Функции Quick Functions

Quick Functions - это скрипты, которые могут вызываться из других скриптов
и использоваться в выражениях при определении динамических свойств
объектов. Скрипты Quick Functions хранятся внутри того приложения, в
котором они были созданы, и могут многократно использоваться в других
скриптах InTouch.

Наиболее часто эти функции используют в выражениях при определении
динамических свойств объектов. Чем это вызвано? Дело в том, что длина
выражения в поле Expression диалогов определения динамических свойств
объектов должна быть не более 256 символов. Это относится к таким
динамическим свойствам, как цвет линии, цвет заполнения, изменение высоты и
ширины, вертикальное и горизонтальное перемещение, вертикальное и
горизонтальное заполнение, видимость, мерцание, ориентация, блокировка.

 Для ввода более длинных выражений можно воспользоваться функциями Quick
Functions. При этом выражение в поле Expression должно содержать операторы
CALL вызова функций Quick Functions, каждая из которых, в свою очередь,
должна иметь в качестве последнего оператора RETURN для возврата результата
в вызывающее выражение. Организованное таким образом выражение может
содержать многие тысячи символов и быть сколь угодно сложным.

Сохраненная функция Quick Functions может быть использована в любом другом
скрипте или выражении.

Quick Functions могут быть синхронными и асинхронными скриптами. Синхронные
скрипты выполняются последовательно, в то время, как после запуска одного
асинхронного скрипта может быть запущен другой (синхронный или асинхронный)
скрипт. Это позволяет отделять исполняющиеся довольно долго операции (типа
обращений к базам данных) от основной программы. Асинхронные скрипты не
могут возвращать результаты. Поэтому в качестве скриптов Quick Functions,
используемых в выражениях (Expression) для определения динамических свойств
объектов, следует применять только синхронные скрипты.

Создание скриптов Quick Functions осуществляется в диалоговом окне
редактора Quick Functions. Вызов этого диалога на экран в окне WindowMaker
производится в командой Special/Scripts с последующим нажатием на строке
Quick Functions.

Список Name содержит имена всех  определенных  к  данному  моменту  скриптов
Quick Functions. Щелчок по имени скрипта выводит его текст  в  рабочее  поле
диалога.
Команда Scripts/New предназначена для создания нового скрипта и вызывает  на
экран диалог для ввода его  имени.  После  щелчка  по  Ok  новое  имя  будет
включено в список имен Name.
Следующий этап - определение аргументов нового скрипта в  таблице  Arguments
диалога Quick Function. В левую колонку таблицы вводят имя аргумента (до  31
символа), в правую - его тип (Integer, Real,  Discrete,  Message).  В  одном
скрипте допускается до 16 аргументов.
После определения типов  аргументов  можно  приступать  к  написанию  текста
скрипта Quick Function в рабочем поле (под таблицей Arguments).


Разработка графопостроителя в системе InTouch

Данный  раздел  посвящен   разработке   четырехканального   графопостроителя
визуализирующего  данные,  поступающие  по  DDE  каналу  с  DDE  сервера.  В
программе предусмотрена возможность масштабирования по каждому из каналов.

Разработка DDE-сервера

Приложение,  получающее  данные  из  другого   приложения   по   DDE   и/или
управляющее другим приложением с помощью  команд  через  DDE  является  DDE-
клиентом. В этом случае второе приложение является DDE-сервером.  Рассмотрим
проект DDE-сервера, выполненного на языке  программирования  Borland  Delphi
6.
На рис.20 представлено окно DDE-сервера во время дизайна в среде Delphi

                                    [pic]
         Рис. 20. Окно DDE-сервера на стадии проектирования в Delphi

Для построении DDE-сервера в Delphi имеются два  объекта,  расположенные  на
странице System Палитры Компонент - TDdeServerConv и TDdeServerItem.  Обычно
в  проекте  используется  один  объект  TDdeServerConv  и  один  или   более
TDdeServerItem.  Для  получения  доступа  к  сервису  DDE-сервера,   клиенту
потребуется знать несколько параметров : имя сервиса (Service  Name)  -  это
имя  приложения  (обычно  -  имя  выполняемого  файла  без  расширения  EXE,
возможно с  полным  путем);  Topic  Name  -  в  Delphi  это  имя  компоненты
TDdeServerConv;  Item  Name  -  в   Delphi   это   имя   нужной   компоненты
TDdeServerItem. Назначение объекта TDdeServerConv - общее управление  DDE  и
обработка запросов от клиентов на выполнение макроса.
Объект  TDdeServerItem  связывается  с  TDdeServerConv  и  определяет,  что,
собственно, будет пересылаться по DDE. Для этого у него есть  свойства  Text
и Lines. (Text  имеет  то  же  значение,  что  и  Lines[0].)  При  изменении
значения этих свойств автоматически происходит пересылка обновленных  данных
во все приложения-клиенты, установившие связь с сервером.
При     запуске     приложения     происходит      выполнение      процедуры
TDDEServe.FormActivate:

      procedure TDDEServe.FormActivate(Sender: TObject);
      var nidata : TNotifyIconData;
      begin
        Application.ShowMainForm := False;
     
Пред.1112
скачать работу

SCADA системы

 

Отправка СМС бесплатно

На правах рекламы


ZERO.kz
 
Модератор сайта RESURS.KZ