Skip to content

Real time collaboration

Several users can work in the same project and the same project version at the same time. The application keeps a live connection to the server, so changes made by one user reach the others without a page reload, and the people currently working with you are visible in the interface header.

Who else is here

The header shows an avatar for every other user working in the same context — your own avatar is not shown there. Each user is assigned a colour, which is used both for their avatar and for the cells they are editing.

  • Up to three avatars are shown side by side; the avatar carries the first letter of the user's name, and hovering over it shows the full name
  • When more users are present, the remaining ones are collapsed into a +N marker; hovering over it lists their names
  • The list updates as users connect and disconnect

What is updated live

Notifications and updates are delivered at three scopes, and you only receive those of the context you are in:

Scope What you are notified about
Company Projects of your company being created, edited, cloned, and deleted
Project The global version being changed, versions being created and deleted
Version Changes to the RMD of the version you have open: cell values, added and deleted rows, and cell discussions

When you switch to another project or another version, the application disconnects from the previous scopes and subscribes to the new ones. This way you only receive notifications that concern what you are looking at, and information does not leak between projects.

Most events arrive as a short notification naming the user who performed the action, which makes it visible who changed what. Lists are refreshed on their own, so the projects list, the version list, and the object lists stay current without a reload.

Editing the same data at the same time

The RMD spreadsheet is edited collaboratively:

  • A cell that another user is editing is outlined in that user's colour, so it is visible where someone else is working before you start typing there
  • A value saved by one user appears in the other users' tables in place
  • Rows added by one user appear for everyone; rows deleted by one user disappear for everyone
  • A new discussion and its messages appear in real time

Fact tables and the data model canvas work differently: your changes there stay local until you save them. If you try to switch the project or the version with unsaved changes, the application asks whether to save or discard them first.

When the context disappears under you

Event What happens
Another user deletes the project you have open You get the notification "User … has deleted your active project. Please choose another project or create a new project" and are moved to the state with no active project
Another user deletes the version you have open You are told that the version was deleted by another user and its data is no longer available, and you are switched to the global version
Another user makes a different version global You get the notification "User … changed global project version to …" and the version list is refreshed
Your access to the project is revoked The next time you open a project page, an error notification is shown and you are returned to the projects list

Long operations

Cloning a project runs in the background, so you can keep working while it is in progress:

  • Starting the operation shows the notification "Cloning of project … started"
  • When it finishes, the notification "Cloning of project … completed successfully. Do you want to switch to this project?" appears with a Switch project button
  • If the operation fails, the notification "Cloning of project … could not be completed" is shown

The results of SQL script execution are also delivered over the live connection, so a long query keeps running while you move around the application.