+7 (499) 502-21-85
Телефон
info@intime365.ru
E-mail

Работа с базой данных PostgreSQL

Описание

InTime Server поддерживает подключение и работу с базой данных PostgreSQL.

Для подключения и работы с базой данных PostgreSQL необходимо:

  • Устнановить драйвер для работы с PostgreSQL;
  • Создать подключение к базе данных в разделе DataBase;
  • Создать необходимые обработчики, источники, получатели и задачи связанные с передачей конкретных данных.

Установка драйвера для работы с PostgreSQL

Для работы с PostgreSQL используется драйвер ODBC. 

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

Для установки драйвера ODBC под Windows необходимо скачать соответсвующий дистрибутив по ссылке: https://www.postgresql.org/download/ 

Запустите инсталлятор и установите StackBuilder.

postgre1

После установки SqtackBuilder неоходимо запустить его и выбрать в нем соответствующей Вашей системе ODBC драйвер.

postgre2

Подключение к базе данных PostgreSQL

Для подключения к базе данных PostgreSQL необходимо создать следующую запись 

В разделе "DataBases" хранятся параметры подключения к базе данных для дальнейшего использования в процессе работы службы. В общем случае запись этого раздела имеет следующий вид:

  1. <database name="postgredb" description="POSTGRE DataBase" type="InTime.DataBases.ITDataBasePOSTGRE, InTime">
  2. <param name="ProviderName" value="System.Data.Odbc" type="System.String"/>
  3. <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"/>
  4. </database>

Обработка данных

Ниже приведены примеры обработки данных, предназначенные для создания задачи сбора данных с биометрического оборудования и отправки их в базу данных PostgreSQL.

Выполнение скрипта SQL для базы данных PostgreSQL

Скрипт SQL для выполнения можно задать в обработчике (Handler). В примере ниже создается таблица для приема данных о событиях, полученных из биометрического оборудования. 

  1. <handler name="CreateEventTablePOSTGRE" description="CreateEventTablePOSTGRE" type="InTime.Handlers.MSSQLHandler, InTime">
  2. <param name="DataBases" value="postgredb" type="System.String"/>
  3. <param name="HandlerType" value="-1" type="System.Int32"/>
  4. <param name="CommandText" value="
  5. create table IF NOT EXISTS ITClockingRecord (
  6. DeviceId int,
  7. PersonId int,
  8. Stat int,
  9. BackupCode int,
  10. WorkType int,
  11. Time timestamp ,
  12. Sender varchar(50))
  13. " type="System.String"/>
  14. </handler>

Настройка базы дыннх PostreSQL как получателя данных

Для получения данных необходимо создать получателя (Receiver) для базы данных в формате PostgreSQL.

  1. <receiver name="ReceiverPOSTGRE" description="База данных POSTGRE" type="InTime.Receivers.DataBaseCollectionClockingRecord, InTime">
  2. <param name="DataBases" value="postgredb" type="System.String"/>
  3. </receiver>

Создание задачи для передачи данных

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

  1. <job name="DataExchange1" description="получение событий" crontab="1 0-59/2 * * * *" type="InTime.Jobs.DataExchangeJob, InTime">
  2. <param name="Sources" value="Source1" type="System.String"/>
  3. <param name="Receivers" value="ReceiverPOSTGRE" type="System.String"/>
  4. <param name="Handlers" value="CreateEventTablePOSTGRE" type="System.String"/>
  5. </job>
© 2018 InTime, LLC

Search