References allow you to join Data Model Data across multiple models. This can be used as a replacement or a complement to Manual Data Links.
They do not add additional data, they simply create a separate reporting layer that can be modified at any time.
When do References make more sense than Manual Data Links?
Manual Data Links improves reporting speeds by increasing data redundancy across Data Model Data. However, it requires clear foresight into reporting needs when constructing Data Models.
For many use cases, needs & business logic changes over time and so References provide a more versatile way to link Data Models with one another.
Adding a Reference
Click on "Manage References" in the Data Model Editor and then on "Add reference".
If both the editing model and the target model are not Static Data Models, you will be prompted to select whether to use a "Time Based" reference. Clicking this checkbox will join data not only by the specified fields but by their designated timestamp fields.
An example where Time Based reference makes sense
Say we are joining Cycles (Event - a record exists for every time a machine cycles) and Work Orders (State - a record exists for the entire duration of a work order). The reference is created using the Machine ID of where the cycle occurred and the Machine ID of where the work order took place. The intent is to create the reference in order to report Cycles per Work Order.
Here, Time Based reference makes sense because we need to filter the cycles that ran on the workcenter by the work order start and end time.
An example where Time Based reference does not make sense
Say we are joining Tickets (Event - a record exists for every time a support ticket is created) and Maintenance Visits (State - a record exists for the entire duration of a visit). The reference is created using the Ticket ID from the Tickets Data Model and the Ticket ID from the Maintenance Visit Data Model. The intent is to create the reference in order to report Maintenance Visits by some Ticket information.
Here, Time Based reference does not make sense because the ticket was most likely created before the maintenance visit, and adding a time dimension to joining will hide wanted data.
Select your source and target fields, then click Submit.
Note that references can be nested - you can use the existing references of the Target Model when defining new references.
Clicking on Update Data Model brings up the following options:
You can freely change the name & description without affecting any data & settings.
Changing the Data Collection Name allows you to provide a non-default storage location for the Data Model Data. This is recommended in order to keep data organized.
In addition, there is the ability to use Classic Mode. This allows you to load existing data in the Accumine Cloud that has not yet been provisioned in the Data Modeller. Currently, data can only be read & reported, not modified.
If there are multiple Data Model Datasets stored in the same location, you can specify JSON based sub-query to filter the data that's relevant for your Data Model.
Archiving a Data Model
Archiving a Data Model does not fully delete it or its data. It simply hides it for future usage.
Note that you are not able to archive a model that is used as a Manual DataLink in another model.