Difference between revisions of "Integration"

From TempusServa wiki
Jump to navigation Jump to search
old>Admin
 
(25 intermediate revisions by 2 users not shown)
Line 7: Line 7:


=== Database connection / SQL ===
=== Database connection / SQL ===
''PLACEHOLDER ARTICLE''
Databases fields are mapped to solution fields by their SQL names.
 
The SQL import allows for incremential imports, by adding a datetime filter on the records extracted.
 
Connections for the remote database is set up in: '''Designer > Integration > DB Connections'''
 
=== CSV file import ===
CSV imports are handled much in the same way as SQL connections using af CSV database driver.
 
The differences are
* Use the filename as substitute for the table name
* Files have to be placed in the folder set by the configuration: '''folderIntegrationCSV'''
* Support for very simple WHERE clauses
* No support for aggregate functions


=== Parsing XML data files ===
=== Parsing XML data files ===
''PLACEHOLDER ARTICLE''
XML fields are mapped to solution fields by xpath expressions.


XML integration also handles task splitting and handling. Each file is split into multiple smaller requests, that are logged and handled individually. In that way an error in a single line, will not prevent the complete batch from executing.
XML integration also handles task splitting and handling. Each file is split into multiple smaller requests, that are logged and handled individually. In that way an error in a single line, will not prevent the complete batch from executing. The task split is done by an xpath expression.


Files are split in the following way
Files are split in the following folder structure
* Tasks awaiting execution
* Tasks that are '''awaiting''' processing
* Task that have been executed
* Tasks that have been processed
** Tasks with errors
** Tasks processed with '''succes'''
** Tasks completed
** Tasks processed with '''errors'''


This allows for easy resubmission of problem data ("with errors"), by copying the file back to the preocessing folder ("awaiting execution").
This allows for easy resubmission of problem data ("Tasks processed with errors"), by copying the file back to the preocessing folder ("Tasks awaiting processing").
 
Files have to be placed in the folder set by the configuration: '''folderIntegrationXML'''


=== Converting emails to data ===
=== Converting emails to data ===
''PLACEHOLDER ARTICLE''
The email import converts new emails sent to a certain account.


== Event driven data exports ==
A few special email "values" can be mapped to solution fields
''PLACEHOLDER ARTICLE''
* Email: Senders address
* Subject: Email subject title line (text)
* Content: Text payload in email (rich text)
* Attatchments: Files attached to the email


After processing the emails they are marked as read at the server - regardless of succes/error status. Reprocessing can be invoked by changing the read status of the email in question.
== Content source (aka CMS data delivery) ==
The content delivery service can serve any view for external systems (for example: your website).
The content interface serves in different formats (json,html,xml), and provides a caching mechanism too.
Learn more about [[Integration/Content_source]]
== Spreadsheet manual imports ==
Manual bulk operations can be handled using [[CSV file import and export]]


== Tempus Serva REST interface ==
== Tempus Serva REST interface ==
Line 34: Line 64:
Credentials are provided with each system interaction, and its even possible to use your own credentials for testing.
Credentials are provided with each system interaction, and its even possible to use your own credentials for testing.


=== Service operations ===
Service operations include
* Finding data
* Finding data
* Reading data
* Reading data
* Creating data
* Creating data
* Updating data
* Updating data
The REST interface can be configured as needed by [[Policy#REST_webservice]]


=== Documentation and examples ===
=== Documentation and examples ===
* [http://www.tempusserva.dk/articlebase/Tempus%20Serva%20REST%20interface.pdf Tempus Serva REST interface.pdf]
* [http://www.tempusserva.dk/articlebase/Tempus%20Serva%20REST%20interface.pdf Tempus Serva REST interface.pdf]
* [http://www.tempusserva.dk/articlebase/restExampleFirmabiler.zip Netbeans sample project]
* [http://www.tempusserva.dk/articlebase/restExampleFirmabiler.zip Netbeans sample project]

Latest revision as of 12:14, 10 December 2021

The recommended way to communicate with Tempus Serva is through the webservice interface (REST).

Regardless of you are using the scheduled import services or the webservice interface, all restrictions from the solution models apply.

Scheduled data imports

The services runs in the context of a user (static), that can have restricted access just as any other user.

Database connection / SQL

Databases fields are mapped to solution fields by their SQL names.

The SQL import allows for incremential imports, by adding a datetime filter on the records extracted.

Connections for the remote database is set up in: Designer > Integration > DB Connections

CSV file import

CSV imports are handled much in the same way as SQL connections using af CSV database driver.

The differences are

  • Use the filename as substitute for the table name
  • Files have to be placed in the folder set by the configuration: folderIntegrationCSV
  • Support for very simple WHERE clauses
  • No support for aggregate functions

Parsing XML data files

XML fields are mapped to solution fields by xpath expressions.

XML integration also handles task splitting and handling. Each file is split into multiple smaller requests, that are logged and handled individually. In that way an error in a single line, will not prevent the complete batch from executing. The task split is done by an xpath expression.

Files are split in the following folder structure

  • Tasks that are awaiting processing
  • Tasks that have been processed
    • Tasks processed with succes
    • Tasks processed with errors

This allows for easy resubmission of problem data ("Tasks processed with errors"), by copying the file back to the preocessing folder ("Tasks awaiting processing").

Files have to be placed in the folder set by the configuration: folderIntegrationXML

Converting emails to data

The email import converts new emails sent to a certain account.

A few special email "values" can be mapped to solution fields

  • Email: Senders address
  • Subject: Email subject title line (text)
  • Content: Text payload in email (rich text)
  • Attatchments: Files attached to the email

After processing the emails they are marked as read at the server - regardless of succes/error status. Reprocessing can be invoked by changing the read status of the email in question.

Content source (aka CMS data delivery)

The content delivery service can serve any view for external systems (for example: your website).

The content interface serves in different formats (json,html,xml), and provides a caching mechanism too.

Learn more about Integration/Content_source

Spreadsheet manual imports

Manual bulk operations can be handled using CSV file import and export

Tempus Serva REST interface

The REST interface runs in the context of a user (dynamic), that can have restricted access just as any other user.

Credentials are provided with each system interaction, and its even possible to use your own credentials for testing.

Service operations include

  • Finding data
  • Reading data
  • Creating data
  • Updating data

The REST interface can be configured as needed by Policy#REST_webservice

Documentation and examples