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.