Hello
it is necessary to use this method
here an example
import clr
import sys
import System
clr.AddReference('ProtoGeometry')
from Autodesk.DesignScript.Geometry import *
import Autodesk.DesignScript.Geometry as DS
#import Revit API
clr.AddReference('RevitAPI')
import Autodesk
from Autodesk.Revit.DB import *
import Autodesk.Revit.DB as DB
clr.AddReference('RevitServices')
import RevitServices
from RevitServices.Persistence import DocumentManager
from RevitServices.Transactions import TransactionManager
doc = DocumentManager.Instance.CurrentDBDocument
toList = lambda x : x if hasattr(x, '__iter__') else [x]
#Preparing input from dynamo to revit
lst_assemblies = toList(UnwrapElement(IN[0]))
category = UnwrapElement(IN[1])
schedule_template = UnwrapElement(IN[2])
out = []
#Do some action in a Transaction
TransactionManager.Instance.EnsureInTransaction(doc)
for assemb in lst_assemblies:
if DB.ViewSchedule.IsValidCategoryForSchedule(category.Id):
scheduleViewAssemb = DB.AssemblyViewUtils.CreateSingleCategorySchedule (doc, assemb.Id, category.Id, schedule_template.Id, False)
out.append(scheduleViewAssemb)
TransactionManager.Instance.TransactionTaskDone()
OUT = out