In Revit 2021 we made a significant change to the behavior of MEP elements regarding worksharing. This was done in order to help improve the worksharing experience, to better enable collaboration amongst stakeholders, and to provide a more consistent experience.
The changes address three types of issues that have been reported with increasing frequency, as more users use Revit for more parts of their workflow, and are collaborating more with others using BIM 360 Design for cloud worksharing.
For the most part, these changes should be transparent to your use of Revit, however, we are providing this info for those of you that support other users and may need to be aware of the details.
Model Opening Error Message
The first type of issue manifested itself while users attempted to open models. Users would receive the error message: “Can’t edit the element until “<username>” resaves the element to central and relinquishes it and you Reload Latest.” This was mostly reported related to wires, but the issue could also be reproduced with conduit, cable tray, pipes, and duct (for design as well as fabrication).
Circular Syncing Error Message
The second type of issue had the same error message, but reproducing it was far trickier. Through a certain sequence of events modifying various interconnected elements, users could end up in a situation where there could be a circular chain of syncing dependency, e.g., UserA is told UserB needs to save an element, and UserB is told UserA needs to save the element… requiring both to quit their session, potentially losing work.
The first two issues have the same root cause, namely, that unlike other element types, MEP elements modified as a result of a computed change would be checked out. What does that mean?
By way of a simple example, consider the set of walls below. If a user modifies the indicated wall by moving it ‘up’ (e.g., plan north), the walls that connect into it adjust accordingly, maintaining connectivity. Using worksharing display status reveals with green shading that the only checked out element is the element directly moved by the user. This is a result of Revit (not the user) computing the change necessary required to maintain the wall join condition.
Now, compare this to what happens to MEP elements in a similar situation. In this case, a single duct is modified by the user to move the run of elements in the north direction. As a result, multiple elements are updated based on changes computed by Revit to maintain connectivity of the elements. In this case, worksharing display shows that in addition to the element that was directly modified by the user, all the connected elements indirectly modified as a result of the computed change are checked out as well.
Revit 2021 MEP Worksharing
What does this have to do with opening a model?
Imagine that you have receptacles hosted on the walls of an architectural model, and these receptacles are connected with wires to represent the circuiting. You receive word from the architect that some spaces have been modified, so you click Reload Latest. As a result, the wall (indicated in the example shown below) updates in location, the receptacle adjusts in position, and the connected wires are checked out as a result of this computed change. Assume further that you have not yet saved these changes to central, and your colleagues are trying to open the model. Revit will attempt to modify the wires again, resulting in the message that they can’t modify the elements during the model opening process.
As more users are adopting worksharing and linking directly to BIM 360 Docs hosted models, this scenario has been playing out more frequently, leading to user confusion because users didn’t realize what was checked out.
The keen observer would notice that the receptacle on the modified wall was NOT checked out. This is another part of the problem in that there was inconsistency in this behavior across element types. By ensuring that Revit only checks out user-initiated changes, and not the elements affected by computed changes, we have increased the consistency of the experience within Revit, in addition to removing the problems that can prevent a user from opening the model, as well as those that could lead to circular chains of synchronization conflict.
Synchronizing Results
There is a third type of issue that we have addressed that was resulting in scenarios where there were strange results after synchronizing, primarily affecting piping networks, but theoretically possible with conduit, duct, and cable tray as well.
In the image below, a single continuous pipe segment is highlighted between points A and B. However, there are also pipe segments between AC, CD, and BD, in addition to the pair of flanges at C and the weld at D. As a result, elements overlap in a somewhat illogical way that were not modeled directly.
In this scenario, the root cause was a combination of the computed change above, as well as the functionality that when an in-line component was deleted, one of the pipe elements would be deleted, and the other modified to fill the gap left by the deleted valve and deleted pipe segment. The problem was that neither the deleted nor the modified element were checked out, and thus, other users could potentially make conflicting changes. Subsequently, when changes were merged through synchronization with central, the results could be quite strange, and not readily apparent.
As a result, we have disabled the auto-healing functionality on piping to ensure that there are consistent and predictable results when multiple users collaborate through various modeling, coordinating, spooling, and other such activities in workshared models.
In order to get broader feedback from users, and alleviate some of the immediate known challenges, we wanted to release the improvements that are in place.
We also believe that it is relatively simple/straight forward to use the Trim command to close the gap left by a deleted element as a new workflow. We also think there are bigger and more challenging problems to solve with piping elements, rather than focus our efforts at this time on the auto-heal behavior, but we welcome your feedback. Let us know by submitting your feedback on the Revit Ideas site.
We hope these improvements enable you to work more effectively with various colleagues and stakeholders in Revit’s unique worksharing environment. Refer to the Revit Roadmap site for further updates.