With a quick glance I can see you are trying to place ScheduleSheetInstances (sort of like a viewport for schedules which is a visual representation of the view on sheet and not the actual view (if that makes any sense at all). This is not allowed I’m afraid as the node takes a ScheduleView only, however, you can get the ScheduleView from this and is done like so…
The GetOwnerViewSchedule (Py) node has the following code…
import clr
clr.AddReference("RevitServices")
import RevitServices
from RevitServices.Persistence import DocumentManager
doc = DocumentManager.Instance.CurrentDBDocument
clr.AddReference("RevitAPI")
from Autodesk.Revit.DB import *
def tolist(obj1):
if hasattr(obj1,"__iter__"): return obj1
else: return [obj1]
schShtInsts = tolist(UnwrapElement(IN[0]))
outList = []
for ssi in schShtInsts:
outList.append(doc.GetElement(ssi.ScheduleId))
OUT = outList
I’ve had to do a unit conversion but works like a dream. So that’s sorted. Thank you very much.
Second question, is there a way of filtering the views from the springs.Sheet.Views+ by type. So I get a list saying whether is a floor plan or 3d view etc. I’ve tried the Element.get parameterValueByName node, but its not giving me the results I’m after.
@James_Washbourne you need to mark the solution given by @Daniel_Woodcock1 and create a new topic for your second query. We can’t have many solutions in one topic. Thanks!