Методические указания по заданию. 1. Для ввода имени пользователя будем использовать тэг operator (Memory Message), а для ввода пароля – тэг password (Memory Message)
1. Для ввода имени пользователя будем использовать тэг operator (Memory Message), а для ввода пароля – тэг password (Memory Message), которые в дальнейшем необходимо присвоит тэгам $OperatorEntered и $PasswordEntered. Для ввода будем использовать анимационную связь User Inputs – String, связанную с прямоугольным графическим объектом. При задании анимационной связи для пароля в группе Echo Characters? необходимо указать No.
Для вывода имени текущего оператора используйте тэг $Operator (Value Display – String), а для показания его уровня доступа тэг $AccessLevel (Value Display – Analog).
2. Создайте сценарий на изменение данных (Data Change) для тэга пароля password, при этом в сценарии нужно присвоить тэгам $OperatorEntered и $PasswordEntered значения соответствующих тэгов имен пользователя и пароля. В этом сценарии необходимо проверить на равенство значения тэгов $OperatorEntered и $Operator. Если эти значения различаются между собой, то, следовательно, пароль был задан неверно. В данном случае тэгу $OperatorEntered нужно принудительно присвоить значение «None» (тэг $PasswordEntered в этой ситуации не используется), а оператору выдать сообщение об ошибке.
Пример скрипта.
Сценарий изменения данных (Data Change). Tagname – password |
$OperatorEntered = operator; $PasswordEntered = password; IF $OperatorEntered <> $Operator THEN $OperatorEntered = "none"; ENDIF; |
3. Для ввода имен оператора из списка необходимо использовать тэг message_listbox, элемента ListBox,в скрипте на изменения данных, и присвоит его тэгу ввода имени оператора.
Сценарий изменения данных (Data Change). Tagname – message_listbox |
operator = message_listbox; |
4. Для кнопок «Изменить личный пароль» и «Конфигурирование пользователей» задайте анимационные связи Touch Pushbuttons - Discrete Value - Set для тэгов $ChangePassword и $ConfigureUsers, либо используйте связи Action, в которых введите операторы «$ChangePassword = 1;» и «$ConfigureUsers = 1;».
Задание 10. Рецепты и SQL-запросы.
Цель работы:
Знакомство с подсистемой управления рецептами InTouch. Организация доступа к программам управления базами данных с помощью SQL-запросов.
Теоретические положения
Работа с подсистемой управления рецептами.
В производственной сфере понятие рецепта используют для описания различных вещей. Например, в хлебобулочном производстве это может быть основной рецепт теста для изготовления печенья, где перечислены все ингредиенты, необходимые для выпечки обычного печенья, а также все дополнительные ингредиенты, например, орехи, фрукты, кусочки шоколада и т. п., которые можно добавлять к основному рецепту для выпечки различных сортов печенья. На металлообрабатывающем предприятии рецептом может быть ряд установочных параметров оборудования. При пакетной обработке данных рецепт может использоваться для описания различных стадий процесса обработки. Recipe Manager системы InTouch в сочетании с базовыми функциями Quick-сценария InTouch может работать в любой из ситуаций, подобной приведенным выше. Подсистема управления рецептами состоит из двух компонентов: Recipe Manager и набор функций для рецептов. Recipe Manager - автономная программа, которая используется для создания шаблонов рецептов. Шаблон рецепта состоит из трех таблиц: Template Definition — для определения ингредиентов рецепта (произвольные имена) и соответствующих типов данных (допустимые типы - Analog, Discrete, Message); Unit Definition - для привязки тэгов InTouch к ингредиентам рецепта (тэги могут быть типа Memory, либо типа I/O для загрузки рецепта непосредственно в PLC); Recipe Definition - для задания имени рецепта и количества каждого ингредиента. Шаблон каждого рецепта сохраняется в формате .CSV (Comma Separated Variable). Экземпляры рецепта можно изменять, создавать или удалять в процессе работы в среде исполнения InTouch с помощью функций для рецептов. Функции для рецептов используются в Quick-сценариях системы InTouch для доступа к шаблонам. С помощью этих функций в InTouch можно выбирать, загружать, изменять, создавать и удалять рецепты, содержащиеся в шаблонах.
Работа с InTouch SQL Access.
Продукт InTouch SQL Access состоит из утилиты SQL Access Manager и SQL функций. Данный продукт использует библиотеку Intersolv/Q+E Software Database Library QELIB, которая работает с множеством различных СУБД и включает в себя все коды, необходимые для взаимодействия с драйверами ODBC. Драйверы ODBC необходимы для непосредственного «соединения» с базой данных. Утилита SQL Access Manager создает списки привязок (Bind Lists) и шаблоны таблиц (Table Templates). Список привязок ассоциирует колонки базы данных с тэгами из словаря данных InTouch. Шаблон таблиц определяет структуру и формат новой таблицы в базе данных. Процесс привязки колонок базы данных к тэгам называется «связыванием». «Связывание» позволяет программе SQL Access Manager манипулировать данными непосредственно в базе данных. Программа SQL Access Manager сохраняет информацию для списков привязки шаблонов таблиц в файле SQL.DEF в формате разделенных запятыми переменных (.CSV). Этот файл можно просмотреть или изменить с помощью SQL Access Manager или любого текстового редактора, например, Notepad.
Содержание задания
1. С помощью программы Recipe Manager ввести данные в таблицы Template Definition, Unit Definition, Recipe Definition (рис.ба).
2. Создать окно в InTouch для загрузки имеющихся рецептов, их корректировки и ввода новых рецептов (рис.5б).
3. Используя системный источник данных MS Windows ODBC задать системный DSN для базы данных TEST.MDB.
4. Заполнить Bind List в SQL Access Manager (рис.66).
5. С помощью кнопки «Установить связь» подключиться к таблице «Таблица1» базы данных TEST.MDB (рис.56, рис.66). Создать кнопки для просмотра записей в указанной таблице и их корректировки (рис.5б).