FIN Network Tree
FIN Network
The FIN Network tree (Multi-instance architecture) is a remote management tool that simulates the user experience as if the user were connected to the project itself. It allows interactions between projects such as drag/drop, syncing of users and groups, editing records through proxy. It also has an overview of all the projects in the FIN Network and their status.
Supported Functionality:
Remote management – allows the user to access remote projects from one central location
Interactions between projects – ie. editing through proxy, drag/drop between projects, and sync users and groups
This is supported in FIN 5.1 instances or newer.
Tags that are synced are curVal and curStatus. This means that any other tags modified on one side such as adding tags or changing navName etc would not be reflected on the other side.
Enabling FinNetwork extension
Must have FinNetwork
extension enabled to be able to use FIN Network Tree
This can be done by following the steps below:
Select the App Launcher icon on the top left
Select the Settings tile under Advanced Apps
This will open a drawer with the following options: Ext, Proj, Header, and Alarm
Select the Ext option to open up the extensions
This will open a side menu on the right where the extension will be in alphabetical order
Scroll down and find the following extension:
FinNetwork
If the version number is green, this means that the extension is enabled
If the version number is red, this means that the extension is disabled
Select the extension if it is disabled, this will open a drawer
Select the Enable option
Refresh the page
Adding a Haystack connector
To use the FIN Network feature, you must have Haystack Connectors added that point to other FIN 5.1 instance projects.
The following doc will explain how to add a native Haystack Connector: Haystack Connector
2. Navigate and expand the FIN Network Tree, this will display the available FIN Haystack Projects.
3. Expanding a remote project the first time in the current session will trigger the “Authenticate” popup. This would be the credentials to the project the user is expanding. If the user logs out locally, closes their browser session, or session ends after a duration, they will be prompted to re-authenticate.
4. Expanding a remote project will display dynamically all of it’s DB Builder trees.
5. With remote access to the DB Builder trees of a project, the user can now take advantage of editing records and/or drag/drop records. Look at the Drag & Drop section for more info regarding this functionality.
Drag & Drop
This feature allows the ability to easily drag and drop database records between projects. In general, the design for all trees, when you drag something from one tree of a project and drop onto another tree of another project, is to copy the record or move the record if it already exists in the destination.
Drag and Drop allows any tree node, and its child nodes, to be dragged in the following ways:
Remote to local (most typical use case)
Remote to Remote
Local to Remote
Records that are copied or moved, would include a tag called origRef
that holds the original ID they have in the project they were being dragged from. As well as archivedRefs
tag, that contains the original ID of the references.
Example - Copy
1. In this test scenario, we will drag Site A from the remote project to the local Equip Tree.
2. We can see that a copy was created in the local database. The original still exist in the remote project.
Example - Move
1. In this test scenario, we have Site A in the local database. It had Site A - Equip under it because that’s how it is in the remote project, but we moved it under another site called New Site in the local database.
2. We drag Site A - Equip from the remote project back under Site A - Floor in the local database because that is where it should be.
3. We can see that Site A - Equip was moved from New Floor to Site A - Floor. This is part of the “Smarts” with the FIN Network. It knows that it already exists in the local database via the origRef
tag so it won’t create a duplicate but instead move it.
Example - archivedRefs
1. In this test scenario, we have OccMode in the local database. It has a scheduleRef to Site A Schedule in the remote project. In the local database, the scheduleRef is null because that schedule record doesn’t exist in the local database. However, it does have the archivedRefs
tag which includes the id of the schedule record found in the remote project.
2. We drag the Site A Schedule to the local database from the remote project.
3. Now that the Site A Schedule now exists in the local database, another “Smarts” of the FIN Network is that it knows that it should be linked to the OccMode point. It creates that link and the archivedRefs
tag is removed since there are no other references to archive on that record.
FIN Network Overview
This provides an overview of all the Haystack projects on the network and their status. As well as the ability to sync users and groups to all the projects on the network.
Sync Users & Groups
Currently the Sync Users button works if the credentials on the Haystack connectors are using superuser credentials.
Sync Users takes all the users and groups in the local database and then goes to every project that are shown in the FIN Network Overview and updates the users and groups with the local users and groups.
A “finNetwork” user will be created and added to each remote project. It will also replace the superuser credentials on the local database Haystack connectors with it. The password is dynamically generated that no one knows. This changes each time the Sync Users button is clicked on.
If the “finNetwork” user is deleted in a remote project for whatever reason, the sync will longer work to that particular project. The user will have to update the Haystack connector credentials to that project with a superuser credential to make it work again.
If there are any existing users in the remote project(s), they will be overwritten and removed if they don’t exist in the local database.
Note: All usernames and passwords are copied from local database to all remote projects. That means if the users in the local database do not have strong passwords, then neither will the users in the remote projects.
Blacklisted items in FIN Network Tree
Below is a list of functionality that was removed from DB Builder trees in remote projects. The rest should function as expected like in the local DB Builder.
Equip Tree - removed Mini DB Builder and graphic tabs from hierarchy levels. As well as the “Make Current Context” and “Show Points For” buttons.
Graphics Tree - removed both the '+' and Edit buttons.
Programs Tree - removed both the '+' and Edit buttons.
Templates tree - removed Add button.
Note: The Folio app cannot query against remote project records.