ViewScheduleCreateSchedule(Document, ElementId, ElementId) Method |
Creates a regular schedule that can relate to a specific area scheme.
Namespace: Autodesk.Revit.DBAssembly: RevitAPI (in RevitAPI.dll) Version: 25.0.0.0 (25.0.0.0)
Syntaxpublic static ViewSchedule CreateSchedule(
Document document,
ElementId categoryId,
ElementId areaSchemeId
)
Public Shared Function CreateSchedule (
document As Document,
categoryId As ElementId,
areaSchemeId As ElementId
) As ViewSchedule
public:
static ViewSchedule^ CreateSchedule(
Document^ document,
ElementId^ categoryId,
ElementId^ areaSchemeId
)
static member CreateSchedule :
document : Document *
categoryId : ElementId *
areaSchemeId : ElementId -> ViewSchedule
Parameters
- document Document
-
The document to which the new schedule will be added.
- categoryId ElementId
-
The ID of the category whose elements will be included in the schedule, or InvalidElementId for a multi-category schedule.
- areaSchemeId ElementId
-
The ID of an area scheme in an area schedule, InvalidElementId otherwise.
Return Value
ViewSchedule
The newly created schedule.
ExceptionsException | Condition |
---|
ArgumentException |
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.
|
ArgumentNullException |
A non-optional argument was null
|
ModificationForbiddenException |
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.
|
ModificationOutsideTransactionException |
The document has no open transaction.
|
ExampleViewSchedule areaSchedule = null;
using (Transaction transaction = new Transaction(doc, "Creating Schedule"))
{
transaction.Start();
FilteredElementCollector collector = new FilteredElementCollector(doc);
collector.OfCategory(BuiltInCategory.OST_AreaSchemes);
ElementId areaSchemeId = collector.FirstElementId();
if (areaSchemeId != null && areaSchemeId != ElementId.InvalidElementId)
{
areaSchedule = Autodesk.Revit.DB.ViewSchedule.CreateSchedule(doc, new ElementId(BuiltInCategory.OST_Areas), areaSchemeId);
}
if (null != areaSchedule)
{
transaction.Commit();
}
else
{
transaction.RollBack();
}
}
Dim areaSchedule As ViewSchedule = Nothing
Using transaction As New Transaction(doc, "Creating Schedule")
transaction.Start()
Dim collector As New FilteredElementCollector(doc)
collector.OfCategory(BuiltInCategory.OST_AreaSchemes)
Dim areaSchemeId As ElementId = collector.FirstElementId()
If areaSchemeId IsNot Nothing AndAlso areaSchemeId <> ElementId.InvalidElementId Then
areaSchedule = Autodesk.Revit.DB.ViewSchedule.CreateSchedule(doc, New ElementId(BuiltInCategory.OST_Areas), areaSchemeId)
End If
If areaSchedule IsNot Nothing Then
transaction.Commit()
Else
transaction.RollBack()
End If
End Using
No code example is currently available or this language may not be supported.
No code example is currently available or this language may not be supported.
See Also