PSImportClient
PSImportClient is a standalone application written in PowerShell and aims to offer a way to import delta data to Easit GO. PSImportClient can be seen as a complement to ImportClient. Where ImportClient offers a way to import large sets of data, PSImportClient is suited to run more often and for smaller sets of data.
PSImportClient consists of, or needs, the following components:
- PSImportClient.ps1
- A settings file (Default is PSImportClientSettings.json)
- One or more configuration files.
- Schemas for configuration and settings files.
- Importclient configuration in Easit GO (optional)
- Importhandler configuration in Easit GO
- PowerShell module: Easit.GO.Webservice (For sending data to and retrieving data from Easit GO)
- PowerShell module: Easit.PSImportClient.Commons (Helper functions for PSImportClient.ps1)
- PowerShell module: Easit.PSImportClient.Jdbc (For imports from CSV-files)
Supported sources
- CSV / TXT files defined by RFC 4180 following the Relique jdbc CsvDriver syntax to read the data.
Please contact Easit support if you would like us to add support for a source.
General flow
- Script starts
- Initiation process
- Directory validations
- Settings file validation
- Import dependency modules
- Creating runtime variables
- Import configuration file(s)
- For each configuration file:
- For each destination:
- For each source:
- Read ImportClient configuration (either configured in Easit GO or a custom in configuration.json).
- Collect objects from a source as configured.
- Combine properties to new custom properties (if enabled and configured).
- Compare objects from source with objects from destination (if enabled and configured).
- Send objects to destination for update / create.
- Update archive, if needed.
- Run garbage collection.
- For each source:
- For each destination:
- Send notification with log file if error occurred and if enabled.
- Run garbage collection.
- Remove dependency modules
- Remove runtime variables
- Initiation process
- Script end
Configuration
An PSImportClient configuration consists of 3 parts:
- A JSON file (myConfiguration.json)
- An importclient in Easit GO or declared in the JSON file (myConfiguration.json).
- A importhandler in Easit GO.