Это старая версия документа.



Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in /home/users/p/prom-auto/domains/prom-auto.ru/wiki/inc/parser/handler.php on line 1458

Warning: Declaration of syntax_plugin_tablecalc::handle($match, $state, $pos, &$handler) should be compatible with DokuWiki_Syntax_Plugin::handle($match, $state, $pos, Doku_Handler $handler) in /home/users/p/prom-auto/domains/prom-auto.ru/wiki/lib/plugins/tablecalc/syntax.php on line 41

Warning: Declaration of syntax_plugin_tablecalc::render($mode, &$renderer, $data) should be compatible with DokuWiki_Syntax_Plugin::render($format, Doku_Renderer $renderer, $data) in /home/users/p/prom-auto/domains/prom-auto.ru/wiki/lib/plugins/tablecalc/syntax.php on line 72

Warning: Declaration of syntax_plugin_offline::handle($match, $state, $pos, &$handler) should be compatible with DokuWiki_Syntax_Plugin::handle($match, $state, $pos, Doku_Handler $handler) in /home/users/p/prom-auto/domains/prom-auto.ru/wiki/lib/plugins/offline/syntax.php on line 60

Warning: Declaration of syntax_plugin_offline::render($format, &$renderer, $data) should be compatible with DokuWiki_Syntax_Plugin::render($format, Doku_Renderer $renderer, $data) in /home/users/p/prom-auto/domains/prom-auto.ru/wiki/lib/plugins/offline/syntax.php on line 67

Warning: preg_match(): Compilation failed: invalid range in character class at offset 3416 in /home/users/p/prom-auto/domains/prom-auto.ru/wiki/inc/parser/lexer.php on line 118
A PCRE internal error occured. This might be caused by a faulty plugin

====== msc (сервисное обслуживание со считывателями) ====== Модуль msc (Machinery Service Control) предназначен для работы со считывателями rfid-карт, установленными на технологическом оборудовании, которое требует периодического тех.обслуживания. Поднесение карты к считывателю фиксирует факт выполнения поставленное мастером задачи по обслуживанию конкретного оборудования. Модуль msc осуществляет подключение к серверу данных по протоколу rpsvr, опрашивающему считыватели, и подключение к базе данных firebird. Если база данных не существует, то создается автоматически. Для существующей базы данных проводится проверка на наличие определенных метаданных, и если не найдено, то создается необходимая структура. Все объекты метаданных имеют в имени определенный префикс, называемый схемой. Таким образом модуль msc может соседствовать в базе с другими данными, например, с весовым учетом. ====== Конфигурация ====== Пример конфигурационного файла: <code xml> <?xml version="1.0" encoding="UTF-8" ?> <configuration password="admin" > <dbscr> <include file="inc/dbscr.utils.xml"/> <include file="inc/dbscr.msc.xml"/> </dbscr> <works> <work id="work_msc" period="1000" enabled="true"> <module id="db"/> <module id="rpcl"/> <module id="msc"/> </work> </works> <modules> <module id="db" class="database" enabled="true" driver="FIREBIRD" host="localhost" dbname="/home/denis/asutp/promauto/db/fb25/msctest1.fdb" username="SYSDBA" password="masterkey" reconnect_time_sec="5" /> <module id="rpcl" class="rpclient" enabled="true" host="localhost" port="3040" tagfilter="*" reconnect_time_sec="5" /> <module id="msc" class="msc" enabled="true" db="db" refmod="rpcl" scheme="msc" script="msc" /> </modules> </configuration> </code> ^Параметр^По умолчанию^Описание^ |**db** | ''db'' |Модуль базы данных | |**refmod** | - |Модуль, содержащий теги от считывателей | |**script** | ''msc'' |Имя dbscr-скрипта | |**schema** | ''msc'' |Название схемы (префикс для имен метаобъектов в базе данных) | ====== Основные таблицы ====== Во многих таблицах встречается поле deleted. Если значение в нем не равно 0, то запись считается удаленной и не будет участвовать при создании новых задач. ===== reader ===== <code sql> create table {schema}_READER ( ID integer not null primary key, ISGROUP smallint default 0, NAME varchar(128), IDNAME varchar(64), READERTYPE varchar(64), DELETED smallint default 0 ) </code> **ISGROUP** -- 0 - обычная запись, 1 - группа\\ **NAME** - текстовое название считывателя\\ **IDNAME** - имя модуля считывателя, по которому будут созданы теги\\ **READERTYPE** - пока только ''promauto''\\ ===== person ===== <code sql> create table {schema}_PERSON ( ID integer not null primary key, ISGROUP smallint default 0, NAME varchar(128), DELETED smallint default 0 ) </code> ===== card ===== <code sql> create table {schema}_CARD ( ID integer not null primary key, PERSON_ID integer references {schema}_PERSON on delete cascade on update cascade, CODE varchar(32), DT_CREATE timestamp, DELETED smallint default 0 ) </code> ===== schedule ===== <code sql> create table {schema}_SCHEDULE ( ID integer not null primary key, READER_ID integer references {schema}_READER on delete cascade on update cascade, TIMETBL varchar(1024), DURATION integer, DESCR varchar(256), AUTOTASK smallint default 1, DELETED smallint default 0 ) </code> Расписание по которому будут генерироваться задачи. **TIMETABLE** - задание время для автоматического создания задач. Формат записи на примерах: |e/0800 |Ежедневно в 8:00 | |e/0800 0830 |Ежедневно в 8:00 и 8:30 | |w 1 2 3 4 5/0800 0830 |Каждую неделю по будням в 8:00 и 8:30 | |m 1 10 20/0000 1200 |Каждый месяц 1-го, 10-го и 20-го числа в 00:00 и 12:00 | |d 20160621 20160622/0800 0830 |21.06.2016 и 22.06.2016 в 8:00 и 8:30 | |e/0800;m 1 4/0830 |Ежедневно в 8:00 и в каждый понедельник и четверг в 8:30 | ===== task ===== <code sql> create table {schema}_TASK ( ID integer not null primary key, SCHEDULE_ID integer references {schema}_SCHEDULE on delete cascade on update cascade, READER_ID integer references {schema}_READER on delete cascade on update cascade, PERSON_ID integer references {schema}_PERSON on delete set null on update cascade, DT_CREATE timestamp, DT_BEGIN timestamp, DT_END timestamp, DT_REG timestamp, STATUS smallint, DELETED smallint default 0 ) </code> Задача - это предписание на обслуживание определенного оборудование в установленное время. ===== input ===== <code sql> create table {schema}_INPUT ( ID integer not null primary key, CARD_ID integer references {schema}_CARD on delete cascade on update cascade, READER_ID integer references {schema}_READER on delete cascade on update cascade, PERSON_ID integer references {schema}_PERSON on delete set null on update cascade, DT timestamp ) </code> ====== Работа модуля ====== При запуске модуль ожидает подключений к базе данных и к серверу данных, после чего циклически выполняет действия: - проверка поступления нового кода от считывателей, и если есть, фиксирование его в базе данных. - генерирование новых задач - закрытие просроченных задач

doc/arccnt/mod/msc.1466479865.txt.gz · Последние изменения: 2016/06/21 06:31 — denis
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0