hello community,in this node i need fabrication pipe work schedule instead of part list schedule. but i dont know how to re write the script. if anyone know please help me out this thank you
this is the script
import clr
clr.AddReference(‘ProtoGeometry’)
from Autodesk.DesignScript.Geometry import *
clr.AddReference(“RevitNodes”)
import Revit
clr.ImportExtensions(Revit.Elements)
clr.ImportExtensions(Revit.GeometryConversion)
clr.AddReference(“RevitServices”)
import RevitServices
from RevitServices.Persistence import DocumentManager
from RevitServices.Transactions import TransactionManager
from System.Collections.Generic import *
clr.AddReference(“RevitAPI”)
import Autodesk
from Autodesk.Revit.DB import *
doc = DocumentManager.Instance.CurrentDBDocument
uiapp = DocumentManager.Instance.CurrentUIApplication
app = uiapp.Application
uidoc = DocumentManager.Instance.CurrentUIApplication.ActiveUIDocument
elt =
for i in IN[0]:
elt.append(UnwrapElement(i).Id)
tb = UnwrapElement(IN[13]).Id
catid = doc.GetElement(elt[0]).Category.Id
collection = ListElementId
viewlist =
schedlist =
sheetlist =
Start Transaction
TransactionManager.Instance.EnsureInTransaction(doc)
for a in elt:
views =
if IN[1] == 1:
v = AssemblyViewUtils.Create3DOrthographic(doc, a)
views.append(v)
if IN[2] == 1:
ds2 = AssemblyViewUtils.CreateDetailSection(doc, a, AssemblyDetailViewOrientation.HorizontalDetail)
views.append(ds2)
if IN[3] == 1:
ds3 = AssemblyViewUtils.CreateDetailSection(doc, a, AssemblyDetailViewOrientation.ElevationTop)
views.append(ds3)
if IN[4] == 1:
ds4 = AssemblyViewUtils.CreateDetailSection(doc, a, AssemblyDetailViewOrientation.ElevationBottom)
views.append(ds4)
if IN[5] == 1:
ds5 = AssemblyViewUtils.CreateDetailSection(doc, a, AssemblyDetailViewOrientation.ElevationLeft)
views.append(ds5)
if IN[6] == 1:
ds6 = AssemblyViewUtils.CreateDetailSection(doc, a, AssemblyDetailViewOrientation.ElevationRight)
views.append(ds6)
if IN[7] == 1:
ds7 = AssemblyViewUtils.CreateDetailSection(doc, a, AssemblyDetailViewOrientation.ElevationFront)
views.append(ds7)
if IN[8] == 1:
ds8 = AssemblyViewUtils.CreateDetailSection(doc, a, AssemblyDetailViewOrientation.ElevationBack)
views.append(ds8)
if IN[9] == 1:
# Replace part list creation with custom schedule creation
custom_schedule = AssemblyViewUtils.CreateSchedule(doc, a, “YourCustomScheduleName”)
views.append(custom_schedule)
if IN[10] == 1:
ds10 = AssemblyViewUtils.CreateDetailSection(doc, a, AssemblyDetailViewOrientation.DetailSectionA)
views.append(ds10)
if IN[11] == 1:
ds11 = AssemblyViewUtils.CreateDetailSection(doc, a, AssemblyDetailViewOrientation.DetailSectionB)
views.append(ds11)
viewlist.append(views)
if IN[12] == 1:
sh = AssemblyViewUtils.CreateSheet(doc, a, tb)
for v in views:
if Viewport.CanAddViewToSheet(doc, sh.Id, v.Id) == 1:
Viewport.Create(doc, sh.Id, v.Id, XYZ(0, 0, 0))
else:
ScheduleSheetInstance.Create(doc, sh.Id, v.Id, XYZ(0, 0, 0))
sheetlist.append(sh)
doc.Regenerate()
End Transaction
TransactionManager.Instance.TransactionTaskDone()
OUT = viewlist, sheetlist