Active Team Sharing
Summary
- Active Team Sharing ensures that any Shared Entities are 'live'
- This means that changes to the object by any sharing user are available to all other sharing users
- Sharing users can be notified in a variety of ways about changes to the Shared Entity
By default Team Sharing uses Snapshot Sharing, where each Shared Entity is a separate and unique object.
However AdapTable also allows users to upload a SharedEntity through Active Sharing.
Caution
- Active Team Sharing is designed for use cases where items are updated relatively occasionally, so use sensibly
- Don't use it in when objects will continually be simultaneously updated by very large numbers of users
In this scenario, the Shared Entity remains linked after it has been uploaded to Team Share by a user (and then subsequently downloaded by her colleagues).
It is then the responsibility of AdapTable to ensure that any local changes to a Shared Entity are automatically synchronised to TeamSharing.
Note
An Adaptable Object can have only 1 Active entity
Deep Dive
How Active Sharing Works
Notifying Active Entity Changes
When a SharedEntity is Active, AdapTable can be configured to watch for all changes and notify any users allowing them to update their local copy.
Update Interval
Team Sharing can be configured so AdapTable regularly checks for a change in an Active Shared Entity.
This is done via the updateInterval property in Team Sharing Options.
updateInterval
Default: 0 (never)NumberUpdate Notification
AdapTable always fires the Team Sharing Entity Changed Event whenever an Active Shared Entity is sychronised.
In addition, the updateNotification property in Team Sharing Options can be configured so that each run-time user can be informed of a change to an Active SharedEntity in one of 3 ways:
- Alert with Toast Notification - a Toast Notification will appear in the current window and an Alert is fired
- Alert without Notification - the Alerts Toolbar and ToolPanel show the Alert but there is no notification
- System Status - a System Status message is posted
updateNotification
Default: null'Alert'|'AlertWithNotification'|'SystemStatus'- This demo shows how Team Sharing works in AdapTable
- There are 2 users each with their own Initial State:
- Alice - has a Format Column for
NameColumn - Bob - has a Format Column for
LanguageColumn and uses the Dark Theme
- Alice - has a Format Column for
- Switching between users - via the custom toolbar - loads a new AdapTable instance with that User's Initial State
- Team Sharing is enabled in this demo, allowing Alice and Bob to share entities between them
- Note: this demo uses local storage to simulate an api call - but in the real world the shared entity would be stored remotely.
- We have set 2 more Team Sharing Options properties for the purposes of this demo:
suppressOverrideConfigWarningwas set to true so that no Override Config warning appearsupdateIntervalhas been set to a very unrealistic 10 seconds so you can immediately see the Alert appear
Expand to see how Team Sharing is applied
- As Alice share the Format Column for the
NameColumn - As Bob download that Format Column from the Team Share
- Note that the new Format Column appears in the Grid for Bob
Active Team Sharing
FAQ
What happens to my Active Object if a colleague with the same revision number saves his first? The Team Sharing module works on a first come, first served basis. If, for example, you and your colleage both load Revision 3 of a Shared Entity and both make edits but he is quicker to save, then his edit to Revision 4 is persisted, and yours will be rejected. You can still do everything locally but, practically speaking, you are now working on a local fork of the Shared Entity. The only way to synchronise again with your colleagues is to download the latest version of the Shared Entity and repeat your actions (and hope that this time nobody interferes with your update).