Metadata Files

The basic configuration building blocks of Valence (Links, Filters, Mappings, and related records) are all stored as Custom Metadata Type records. This means that they can easily be extracted from a Salesforce org, tracked in version control, or moved between environments.

If you are comfortable working with Salesforce XML metadata files, feel free to extract and work with these files directly. If you prefer a more polished experience, Valence includes a Change Set Editor that will allow you to build Change Sets within Valence, for upload to other environments (such as moving from sandbox to production).

Because all the Valence configuration exists as cMDT records, you can easily set up Valence in a sandbox, test it thoroughly, then move the exact same setup to production with a Change Set or your preferred deploy mechanism.

Valence Custom Metadata Types

API Name

Label

Description

valence__ValenceAdapter__mdt

Valence Adapter

Lists Valence Adapters that are installed in this environment and are available to be used. An adapter allows us to talk to an external system.

valence__ValenceConfiguration__mdt

Valence Configuration

Global configuration settings for Valence.

valence__ValenceDataLink__mdt

Valence Data Link

Encapsulates the idea of two tables in different systems being linked to each other, and having records move between those tables.

valence__ValenceDataLinkFilter__mdt

Valence Data Link Filter

Junction table that connects Links to Filters.

valence__ValenceDataLinkSplit__mdt

Valence Data Link Split

Connects a Link that receives data with an additional Link it will send that data to. Allows a single Link run to deliver to multiple places.

valence__ValenceField__mdt

Valence Field

Represents a field that is part of the source or target schema for a Link.

valence__ValenceFilter__mdt

Valence Filter

Filters are applied to records in flight to transform them or take special action on them. This table lists available filters to be used.

valence__ValenceFilterConfig__mdt

Valence Filter Config

Child record of a LinkFilter allowing configurations of that Filter’s behavior when it runs.

valence__ValenceMapping__mdt

Valence Mapping

A mapping links a field in an external system to a field in this Salesforce organization.

valence__ValenceMappingFilterConfig__mdt

Valence Mapping FilterConfig

Junction record between Mapping and Filter that allows the Filter to store a configuration associated with this Mapping.

If you are building extensions, you will be manually creating Valence Adapter and Valence Filter records to represent your Apex classes.

Valence Change Set Editor

The Change Set Editor allows you to add Valence configuration files to an existing Change Set. Recommended usage is to create an empty Change Set in the Setup Menu, then go into Valence to add entries to the Change Set.

Valence configuration records are naturally hierarchical. A Link has child Mappings and Filters, Mappings have child Configurations, etc. By working with the Change Set Editor inside of Valence you can see and work with this hierarchy, simplifying the process of building a Change Set that involves Valence entries.

For example, if you want to include a single Link and everything associated with that Link, you can click “Select With Descendants” on the Link row in the grid that you see.

Once you are satisfied with your changes, click the ‘Save Changes’ button to cause your selections to update the Change Set. Go back to the Setup Menu to deploy the Change Set to another Salesforce environment as you normally would.

../_images/change_set_editor.png

Note

Because Salesforce does not readily expose Change Sets for browsing and editing, we’ve had to do some creative work under the hood in order to create the Change Set Editor. The editor is stable and quite useful, but it does not have as many niceties as we would have liked to put in it.

  • You cannot create a new Change Set, only modify an existing one.

  • We cannot list existing Change Sets for you, you’ll have to type in or paste the name.

  • You cannot remove anything from a Change Set, only add to it. You can of course remove from the Setup Menu.

  • You cannot upload your Change Set from here, you’ll have to go back to the Setup Menu for that.