Background Importing

MetaLocator can import data on a schedule from multiple sources via our background importing

Michael Fatica avatar
Written by Michael Fatica
Updated over a week ago

When you have data that needs to be imported into MetaLocator on a regular basis, you can manually import that data as many times as you need. However, having that process automated frees up your time and avoids costly mistakes.

MetaLocator provides a background importing service that can pull data from Google Drive, SalesForce, SFTP or any other supported integration on a regular basis. Not all accounts have access to background importing, view the Plan Comparison to see if your account has access or buy the add-on.

Background importing works by automating an import task that you create from the Dashboard. When you begin importing data from SalesForce, SFTP or Google Drive, you will see a checkbox that will create a Background Job as part of the import asking if you want to "keep the data in sync".

If that box is checked, the import wizard will create a Background Job with all the choices made during the import wizard, such as import options and column mapping choices. That job will be un-published by default.

When a job runs, it repeats the import as it was configured. So it's important to think about choosing the job options so that they are sustainable and consider deletions, categories and updates. Review the explanation of the import options here. For example, if you choose "Add" in the options screen below, you will create duplicates each time the job runs. Most jobs are created with "Update Existing & Insert New". This works best with an External Key configured. External keys allow MetaLocator to uniquely identify a record during sync operations. They are required for bi-directional sync options like those explained in the "Deleting Records during Import" section in the import options article linked above.

To view jobs configured in your account, click the icon in the toolbar as shown below:

Each job will be listed including options to enable, disable or edit the job. Click the name of the job to edit the job options.

Job Scheduling

Jobs run every 24 hours by default. Only jobs with the Scheduled toggle "On" will run on the configured schedule. For changes to the schedule, contact support. The help desk can update the schedule, however; we review the job for performance or timing issues. For example, scheduling a job that takes 30 minutes to run every 5 minutes is something we avoid.

Forcing Jobs to Run

Click the process icon in the toolbar in the upper right,

Check the box next to the ID column and click Force in the toolbar.

Data Structure Changes

When background jobs are established, the column mapping between the data source and MetaLocator is saved along with the job. This ensures we know which columns in the data source to map to columns in MetaLocator. If the data source changes unexpectedly, and columns are removed, added or renamed, you will receive a notification stating:
โ€‹


Background Import Failed. The columns coming from your external data source no longer match what they were was when the job was originally set up.

...

Found, but did not expect column name 1 in data feed.
Found, but did not expect column name 2 in data feed.


Expected 10 but found 12 columns in data feed.



This can occur in the following cases:

  • A google sheet was the data source and a column was removed

  • A SFDC query was manually updated in the job definition to use additional columns

  • An SFTP file was delivered with unexpected column format

To correct the issue, the column mapping must be updated. To do that, follow this procedure:

  1. Go to Tools > Import History and identify the most recent attempted import. This is usually the top-most entry, but may differ if you have multiple imports of different types.

  2. Click the Edit icon for the job to load the Import Mapping.

  3. Address any mappings not shown in green.

  4. Click Next to save the mapping. At this point the mapping is saved. Click the Dashboard icon to exit the import wizard unless changes to the import options are required

Job Chaining

Sometimes it's important to have multiple jobs run in sequence, where one job must be complete before the next job runs. This is important when, for example, one job imports locations and the next job imports categories for those locations. Chaining can only be configured by the help desk. We review that to avoid infinite loops and performance issues. When a job is chained to another job, it's ID number will be shown in the "When complete, run" column. That chained job must be Published to run. Jobs can be both chained and scheduled. Though rare, it's possible to have a job run on it's own schedule, but also after another job completes.

User Context

Most jobs are run as the Account Owner, however for MetaLocator Teams subscribers, individual Group Administrators can create their own jobs, and those jobs run as the user that created them by default.

Administrators can change the user context by updating the User ID as shown below. Obviously, this must be a valid user id listed under User Manager.

Did this answer your question?