@kennyb6 there you go
import clr
clr.AddReference('ProtoGeometry')
from Autodesk.DesignScript.Geometry import *
# Import Element wrapper extension methods
clr.AddReference("RevitNodes")
import Revit
clr.ImportExtensions(Revit.Elements)
# Import geometry conversion extension methods
clr.ImportExtensions(Revit.GeometryConversion)
# Import DocumentManager and TransactionManager
clr.AddReference("RevitServices")
import RevitServices
from RevitServices.Persistence import DocumentManager
from RevitServices.Transactions import TransactionManager
# Import RevitAPI
clr.AddReference("RevitAPI")
import Autodesk
from Autodesk.Revit.DB import *
# Import system library
clr.AddReference('System.Core')
from System.Collections.Generic import *
doc = DocumentManager.Instance.CurrentDBDocument
uiapp = DocumentManager.Instance.CurrentUIApplication
app = uiapp.Application
if isinstance(IN[0], list):
newdocs = UnwrapElement(IN[0])
IDs = UnwrapElement(IN[1])
Names = UnwrapElement(IN[2])
else:
newdocs = UnwrapElement([IN[0]])
IDs = UnwrapElement([IN[1]])
Names = UnwrapElement([IN[2]])
typelist, iDs = [],[]
TransactionManager.Instance.ForceCloseTransaction()
try:
if IN[3]:
x = 0
for newdoc in newdocs:
iDs = IDs[x]
names = Names[x]
Ids = List[WorksetId](iDs)
try:
checkedout_ws = WorksharingUtils.CheckoutWorksets(newdoc,Ids)
typelist.append([newdoc,names,checkedout_ws])
except Exception,e:
typelist.append(str(e))
x=x+1
else:
typelist.append("Please toggle to True to continue this process")
except Exception,e:
typelist.append(str(e))
OUT = typelist