Integrations

Integration with third-party systems

Resco CRM Connector (web APIs):




The Integrations function of Woodford allows you to connect your Resco Cloud organization to various systems using connectors (Resco Cloud, Dynamics, OData). Match entities and fields between the two servers and exchange data. Configured connections can be used in Resco Cloud jobs and workflows to automate sync process.

Note Integrations are available since release 14.1 as a preview. Contact us if you want to help us shape this function to better match your needs.

Available connectors

The following connectors are available:

  • OData: Connect to any server that supports the Open Data Protocol (OData v4), including Microsoft Dynamics 365 Business Central.
  • Resco Cloud: Connect to another organization residing on one of the various cloud servers of Resco (including Resco Inspections, Resco Routes, etc.).

Create integration

You can manage your connections to other servers from the Administration menu of Woodford: Start Woodford and select Integrations (Preview) from the menu.

  1. Click New.
  2. Name your integration and select which connector to use.
  3. Depending on the selected connector, enter the necessary connection details.
     
  4. Click Save.

If you are connecting to Business Central, some settings are configured by default:

  • Default mapping will be added. In the preview, only three entities are officially supported: account, contact, and work order.
  • Based on default mapping, External Primary Key fields will be added to the schema.

Map metadata

As the next step, you need to map external entities to local entities and external fields to local fields.

  1. Double-click a connection (created in the previous section).
  2. Select an entity from the External Entities pane and click Enable.
  3. In the Entity Mapping pane, select the matching Local Entity and optionally the Primary Key.
  4. In the table below, select the fields that you want to import or export (enable the checkbox in the first column) and then select the matching Local Field.
  5. For all fields with the local type "Lookup", enter the lookup Target:
    • For Business Central integration, use the predefined default value.
    • For Resco Cloud integration, it's enough to enter the name of the entity.
  6. If you plan to set up regular synchronization, select Sync Direction: Download Only, Upload Only, or Bidirectional.
  7. Save all changes.

You can repeat these steps for additional external entities as needed.

 

Clean up metadata

Administrators of the backend servers can occasionally modify the metadata, either on the local or on the external server. New entities or fields are not a problem. What can affect the integration is when a certain entity or field used in integration is removed.

When you open a connection, Woodford checks whether the configured mapping is still valid. If this validation finds some missing entities or fields, a warning message is displayed with the recommended actions.

  • If an external entity or field goes missing, click Clean Up to remove it from the mapping.
  • If a local entity or field goes missing, select a new local entity/field.
  • If the Primary Key field goes missing, consider setting up a new primary key.

Set up data filters

Optionally, you might want to restrict what data to sync. For each entity, you can define a separate set of conditions for upload and download. Only records that match the condition are synchronized. Click Download Filter or Upload Filter and enter a suitable condition, then click Save & Close.

 

Import/export data

Once the mapping is done, you can start using the integration for migrating data.

  1. Click Download or Upload.
  2. Optionally, click Import Preview to verify that you are migrating the right data. Previews do not make any changes on either server.
  3. Click Import or Export to conclude the migration.
  4. Wait for the migration result.
Note Preview does not respect the selected primary key.

 

Sample migration result: RESULTS: ALL (15) : IMPORTED (13); UPDATED (2); FAILED (0). In this case, 13 records were imported (created), 2 records were updated, no records failed.

Synchronize data

While importing or exporting data is basically one-and-done, synchronization is used in scenarios where you need to keep up the two environments in sync continuously.

Warning When you run sync for the first time, local data for the affected entities are deleted.

The first sync is full sync (all data downloaded); later synchronizations are incremental (only changes are transferred). See Synchronization for more information about this process in general. The article is written mostly from the perspective of syncing client (mobile app) and server, but many concepts also apply to the integration sync.

Click Sync in the toolbar to start the sync manually. Or, more likely, you might wish to schedule the sync to run regularly as a server process:

  • Start the Admin Console.
  • Select Processes Center > Processes from the menu.
  • Click New to create a new process.
     
  • Save all changes and activate the process.

Import/export mapping

Export / Import
If you have multiple similar organizations where you want to reuse an integration, you can export the entire mapping configuration to a file and then import it to a different organization.
Export Entity / Import Entity
Alternatively, you can export/import mapping for a single entity.

Use cases

Some integrations have certain prerequisites and require additional configuration to work.

Business Central

The integration with Microsoft Dynamics 365 Business Central is described in a separate article.

Dynamics

The following applies when using Integrations for connecting to Microsoft Dynamics 365:

  • Use the OData connector.
  • As the URL, use https://{organization name}.api.crm4.dynamics.com/api/data/v9.2/.
    You can verify this on your Dynamics server: go to Settings > Customizations > Developer Resources and look for Service Root URL.
  • If you're using multi-factor authentication, follow the instructions in the connection log: Go to https://microsoft.com/devicelogin and enter the provided code.
  • Field mapping - a general guideline: Pay special attention when mapping fields. The system will attempt to suggest a matching field (based on name), however, it's not foolproof. Consider this example of the Primary Contact ID field on the Account entity: rather than the string field use the unique identifier field.
 

Technical information

When you first create an Integrations connector, these following entities are added to the organization's metadata:

  • integration_log: stores sync logs
  • integration_syncanchor: stores the last version number of the record that was downloaded
  • integration_transaction: stores information about upload transactions