I’m new to Dynamo and still trying to understand how everything works. I’m not sure why the elements are not showing in the preview — or if they’re even supposed to appear there automatically. The list in the Watch node looks correct to me, and it shows all the elements I expect, but they don’t seem to be selected or highlighted in the Revit interface. I’m not sure if I’m missing a step to make them visible or selected in the model space. If anyone has suggestions on what might be causing this or what I could try to get the preview working properly, I’d really appreciate the help!
My first thought as to why it’s not selecting like you’re wanting is that the node will only perform the selection on elements in the main Revit document and won’t do it from a linked model. Are you looking be able to see those elements in a view? Could applying a color to the element work?
Hi,
You got a point
What i want to do is the list on watch to be seen on preview or even just be selected on revit ui, my end goal is for it to be selected so i can check how it look like then copy it on the same place and different levels
What do you mean by adding colors to elements,Sorry I’m new and not familiar on what it does
I was merely thinking out loud and trying to find out your end goal. Since you’re looking to see elements from two categories and on a specific level, would making a couple of view filters with color overrides so you can easily see them in the view satisfy what you’re looking to do? Would be useful when they update the linked file and add more lighting fixtures or ceilings per that level, you’ll see them right away thanks to the filter instead of rerunning the workflow. To keep it Dynamo related, you can make the view filters with Dynamo instead manually creating those filters.
For the copying aspect, you want to copy the ceilings and lighting fixtures, but place them on different levels? or copy over the levels?
Ive already made filters inside revit so i can see the linked elements more clearly.
Might create a script for that in the future
My goal right now is to just make those elements inside the watch node to be selected so i can copy those to same place and even to other levels.
I become interested in dynamo because of repetitive task where every time there are changes in the linked file, i need to adjust and copy everything to the main model. What i plan to do is everytime theres changes, i will just delete everything i copied the last time, and then run the script where it selects the elements and copy it on same place and if posible copy it to other levels
Gotcha, thanks for that information. The workflow you mention sounds like it adds a repetitive task of you having to delete and rerun the workflow each time there’s an update. An option I’d look into that would provide more longevity and less rerunning of workflows is to use the native copy monitor feature and the associated tools that go along with it.
Now, if that’s not your cup of tea, here are two nodes I’ve found and the packages that can help with copying.
I’m trying to think of a way you can be more efficient with your time in tracking changes in the linked model. One thought is a second workflow that performs a simple clash of center points and if they are not equal to one another, it’s an indication that something has been moved or deleted…
Hope this helps!
That node might help, I might give it a try and find another workflow. Thanks for the time. I’ll update here if i successfully make it work. Thanks again @patrick_podeyn
Sure thing!
Instead of copy monitor, you can look into the document difference class to readily identify any element which has modified from a previous version. The hard part is incorporating the document version into the created elements, likely something that you can write into a parameter of the link type if it’s planned well.
I need to look into this now for my own set of workflows…thank you!
Here’s some breadcrumbs for friends and valued community members then.
DocumentDifference class: Revit API 2026 Documentation
That class allows access to modified, added, and removed elements. Kind of the cheat code for ‘getting what elements have changed’ but you don’t get the specific change in the element between A and B without access to the previous version as well. However you can skip the need for figuring out what here and just update elements.
An instance of a document difference class is created via this method on the document class: Revit API 2026 Documentation
To use that you need a DocumentVersion object, found here: Revit API 2026 Documentation
And that comes from the basic file info, which can be accessed readily enough. Just be sure to track the versions as you consume the data.
Old thread but I’ll give it a shot, Jacob if you don’t mind.
I just came across the documentdiffernece module (if that is the right term), and I see that it needs the number of saves and the GUID of the document to be compared to.
Question is, can I get it out of an older copy of the current document I am working on?
I have a project that I am working on as a local Central file and each time that I open it, it creates and appends a local copy to the last save copy.
Would it be “legal” to open an older copy using the application OpenDocumentFile and retrieve the versionnumber and GUID? Would that be enough for the model to collect the changes?
On a more particular matter, would that be useful if I want to check for changes in a number of selected elements rather than all the elements in the project?
That might do it, but I have not tried. Seems a good place to start though.
When I have built POCs for document change tracking and even automatic revision clouding tools in the past I have built a means of storing the sequence of ‘snapshot’ versions of the model into extensible storage so you can work in just the document. If you ensure you take the snapshot once each [week, day, sync, etc.] you can then pull the difference between not just the active version but between any two periods (just be sure to keep the sequencing).
I explored a little and found the BasicFileInfo and got the version with the past GUID, and just got the id’s of the modified elements but that seems to be all that the DocumentDifference gives. Do I need to compare the elements in each each document manually and find the difference or do you know of a method that compares and returns the differences?
For specific changes you have to compare the specifics of the two elements. That part of the process is long and drawn out.
For what it is worth the five or six times I have seen this attempted the end users found that identifying what is [new, modified, deleted] is 10,000x more useful as the human review has to happen at that point anyway. Until the CPU has replaced decision making the CPU can’t be relied on for the decision.

