Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
АИУС / Практика / Разработка HMI-приложений.pdf
Скачиваний:
270
Добавлен:
18.05.2015
Размер:
15.71 Mб
Скачать

7.3.6Примеры использования

В разделе приведены примеры использования SQL-коннектора для решения следующих информационных задач:

Работа с протоколом событий.

Сбор статистических данных.

Организация архива данных.

7.3.6.1Работа с протоколом событий

Как отразить изменения данных СУБД в протоколе событий ?

Значения атрибутов системного тега группы данных SQL-коннектора можно использовать для формирования различного рода сообщений в протокол событий.

Используйте для регистрации события в протоколе функцию отправки сообщения в протокол, как описано в разделе Регистрация события, несвязанного со словарем.

Протокол событий Системный тег группы данных

7.3.6.2Сбор статистических данных

Как получить изменяемые данные СУБД для формирования статистики ?

Для получения данных, используемых для формирования статистики, выполните следующие действия:

1.Создайте проект с хотя бы одним элементом проекта

2.Создайте объект SQL-коннектор (Как создать SQL-коннектор)

3.Задайте строку соединения (Как связать коннектор с СУБД)

4.Создайте группу данных (Как создать группу данных)

5.Задайте запрос на выборку данных, собирающий необходимую статистику с сервера БД, или имя хранимой процедуры (если источник данных поддерживает.

Как задать свойства группы данных).

Пример запроса для MS SQL-Server : SELECT @@PACK_SENT, getdate()

6. Задайте имя группы данных, например, "Сбор статистических данных" и период

опроса.

В результате этих действий в созданном SQL-коннекторе появится группа данных с заданным именем, атрибуты тега которой будут обновляться в соответствии с заданным периодом

252 DataRate

7.3.6.3Организация архива данных

Будем считать, что в существующем проекте надо архивировать в БД изменяемые значения атрибутов тега некоторого объекта.

Как сохранить в базе данных изменяемые значения атрибутов тега объекта ?

Для этого необходимо выполнить следующие действия:

1.Откройте проект с объектом, атрибуты тегов которого надо архивировать в БД

2.Создайте объект SQL-коннектор (Как создать SQL-коннектор)

3.Задайте строку соединения (Как связать коннектор с СУБД)

4.Создайте группу данных (Как создать группу данных)

5.Задайте запрос на выборку данных ( Как задать свойства группы данных), имитирующий создание таблицы, соответствующей тому тегу, изменения атрибутов которого надо архивировать.

Пример запроса для MS SQL-Server, тег содержит атрибут1 типа "строка" и атрибут2 типа "целый":

SELECT '' as атрибут1, cast(0 as int) as атрибут2

Такой запрос создаст тег у группы данных с двумя атрибутами (строка и целое значение).

6.Задайте запрос на обновление данных, указав имя хранимой процедуры и тип команды - "хранимая процедура".

Сама хранимая процедура и необходимая таблица должны быть предварительно созданы на сервере БД.

Пример процедуры для данного тега (смотри п.5), выполняемой на MS SQL-Server:

CREATE procedure dbo.usp_ArchiveValues @Attribute1 varchar(256), @Attribute2 int

AS

INSERT INTO ArchiveValuesTable (Attribute1Field , Attribute2Field)

VALUES (@Attribute1, @Attribute2)

Пример создание таблицы:

CREATE TABLE dbo.ArchiveValuesTable (

ArchiveValuesID int IDENTITY (1, 1) NOT NULL ,

Attribute1Field varchar (256) ,

Attribute2Field int ,

CONSTRAINT PK_ArchiveValuesTable PRIMARY KEY CLUSTERED

(

ArchiveValuesID

)

)

7.Заполните список параметров запроса на обновление и заполните поле Имя поля в БД для обоих атрибутов как показано ниже:

Обмен данными 253

8.Задайте имя группы данных, например "Организация архива данных" и период опроса - период с которым будет вызываться хранимая процедура на сервере БД для организации архива.

9.Сохраните группу данных в проекте и закройте редактор группы данных.

10.Установите связь тега созданной группы данных (Свойства/) с тегом объекта, изменения атрибутов которого надо архивировать в БД.

Для этого в окне Свойства щелкните мыщью в поле Связь с другим тегом

В появившемся окне Выбор тега для создания связи определите соотношение сохраняемых в БД атрибутов тегов.

254 DataRate