Документация
Работа с базой данных PostgreSQL
Описание
InTime Server поддерживает подключение и работу с базой данных PostgreSQL.
Для подключения и работы с базой данных PostgreSQL необходимо:
- Устнановить драйвер для работы с PostgreSQL;
- Создать подключение к базе данных в разделе DataBase;
- Создать необходимые обработчики, источники, получатели и задачи связанные с передачей конкретных данных.
Установка драйвера для работы с PostgreSQL
Для работы с PostgreSQL используется драйвер ODBC.
Подробные требования и необходимые условия для подключения к базе данных PostgreSQL выходят за рамки этой статьи. В ней предполагается, что у вас уже установлено клиентское программное обеспечение PostgreSQL и вы можете успешно подключиться к целевой базе данных PostgreSQL. Для получения дополнительных сведений обратитесь к администратору базы данных PostgreSQL или к документации по PostgreSQL.
Для установки драйвера ODBC под Windows необходимо скачать соответсвующий дистрибутив по ссылке: https://www.postgresql.org/download/
Запустите инсталлятор и установите StackBuilder.
После установки SqtackBuilder неоходимо запустить его и выбрать в нем соответствующей Вашей системе ODBC драйвер.
Подключение к базе данных PostgreSQL
Для подключения к базе данных PostgreSQL необходимо создать следующую запись
В разделе "DataBases" хранятся параметры подключения к базе данных для дальнейшего использования в процессе работы службы. В общем случае запись этого раздела имеет следующий вид:
<database name="postgredb" description="POSTGRE DataBase" type="InTime.DataBases.ITDataBasePOSTGRE, InTime"> <param name="ProviderName" value="System.Data.Odbc" type="System.String"/> <param name="СonnectionString" value="Driver={PostgreSQL ODBC Driver(UNICODE)};Server=127.0.0.1;Port=5432;Database=myDataBase;Uid=user;Pwd=password;" type="System.String"/> </database>
Обработка данных
Ниже приведены примеры обработки данных, предназначенные для создания задачи сбора данных с биометрического оборудования и отправки их в базу данных PostgreSQL.
Выполнение скрипта SQL для базы данных PostgreSQL
Скрипт SQL для выполнения можно задать в обработчике (Handler). В примере ниже создается таблица для приема данных о событиях, полученных из биометрического оборудования.
<handler name="CreateEventTablePOSTGRE" description="CreateEventTablePOSTGRE" type="InTime.Handlers.MSSQLHandler, InTime"> <param name="DataBases" value="postgredb" type="System.String"/> <param name="HandlerType" value="-1" type="System.Int32"/> <param name="CommandText" value=" create table IF NOT EXISTS ITClockingRecord ( DeviceId int, PersonId int, Stat int, BackupCode int, WorkType int, Time timestamp , Sender varchar(50)) " type="System.String"/> </handler>
Настройка базы дыннх PostreSQL как получателя данных
Для получения данных необходимо создать получателя (Receiver) для базы данных в формате PostgreSQL.
<receiver name="ReceiverPOSTGRE" description="База данных POSTGRE" type="InTime.Receivers.DataBaseCollectionClockingRecord, InTime"> <param name="DataBases" value="postgredb" type="System.String"/> </receiver>
Создание задачи для передачи данных
Для передачи данных по расписанию необходимо создать соответствующую задачу. Например, для передачи данных о событиях можно использовать такую задачу:
<job name="DataExchange1" description="получение событий" crontab="1 0-59/2 * * * *" type="InTime.Jobs.DataExchangeJob, InTime"> <param name="Sources" value="Source1" type="System.String"/> <param name="Receivers" value="ReceiverPOSTGRE" type="System.String"/> <param name="Handlers" value="CreateEventTablePOSTGRE" type="System.String"/> </job>