2027 Method
Changes 0
M

ViewSchedule.CreateSchedule

Description:
Creates a regular schedule that can relate to a specific area scheme.
Overloads (2):
CreateSchedule(Document,ElementId,ElementId)
public static ViewSchedule CreateSchedule(
	Document document,
	ElementId categoryId,
	ElementId areaSchemeId
)
  • document
    The document to which the new schedule will be added.
  • categoryId
    The ID of the category whose elements will be included in the schedule, or InvalidElementId for a multi-category schedule.
  • areaSchemeId
    The ID of an area scheme in an area schedule, InvalidElementId otherwise.
Return Value ViewSchedule The newly created schedule.
ViewSchedule areaSchedule = null;

using (Transaction transaction = new Transaction(doc, "Creating Schedule"))
{
    transaction.Start();

    FilteredElementCollector collector = new FilteredElementCollector(doc);
    collector.OfCategory(BuiltInCategory.OST_AreaSchemes);
    //Get first ElementId of AreaScheme.
    ElementId areaSchemeId = collector.FirstElementId();
    if (areaSchemeId != null && areaSchemeId != ElementId.InvalidElementId)
    {
        // If you want to create an area schedule, you must use CreateSchedule method with three arguments. 
        // The value of the second argument must be ElementId of BuiltInCategory.OST_Areas category
        // and the value of third argument must be ElementId of an AreaScheme.
        areaSchedule = Autodesk.Revit.DB.ViewSchedule.CreateSchedule(doc, new ElementId(BuiltInCategory.OST_Areas), areaSchemeId);
    }
    if (null != areaSchedule)
    {
        transaction.Commit();
    }
    else
    {
        transaction.RollBack();
    }
}
  • document is not a project document. -or- categoryId is not a valid category for a regular schedule. -or- In a non-area schedule, areaSchemeId is not InvalidElementId. -or- In an area schedule, areaSchemeId is not the ID of an area scheme.
  • A non-optional argument was null
  • The document is in failure mode: an operation has failed, and Revit requires the user to either cancel the operation or fix the problem (usually by deleting certain elements). -or- The document is being loaded, or is in the midst of another sensitive process.
  • The document has no open transaction.