The Catalog Command
Archibus Smart Client Extension for Revit
The Catalog Command
The Catalog command quickly links some or all elements in a model to records in the Archibus database for a user-specified asset type. The basic operations are to create new records in the database or to update values in existing records.
Catalog updates values bi-directionally:
- For Revit parameters that are model-driven, the command copies the values in the model to fields in the database.
- For Revit parameters that are database-driven, the command copies the values in the database fields to the model.
The end result of the catalog functionality is the following:
- New records are created in the database for Revit elements that have primary keys for records that do not currently exist in the database.
- Existing records are updated per database/model driven rules in the database for Revit elements that have primary keys for existing database records.
- Revit parameter values are updated so they contain exactly the same values that are in the database for the corresponding database fields.
Elements Not Associated with a Revit Level
The Extension can Catalog and edit Revit elements that are not associated with an explicit Revit Level -- as is the case with elements like HVAC Supply and Returns. The extension uses the 3D elevation of the elements to infer the correct level.
Element Filtering
The Catalog command supports element filtering for the following: elements. You select these elements from the Catalog form.
- Asset Type
- Revit Category
- Asset Standard: Only asset standards in the current view are displayed on the form.
Revit Categories and Asset Types
When the user specifies a specific asset type to catalog, any element that has a supported category as per the afm_bim_families table will be processed. For example, if the user selects an asset type of ‘Rooms’, and categories of both ‘Room’ and ‘Area’ are supported for asset type ‘Rooms’, then per the afm_bim_families table, all elements of both types will be cataloged in the model.
Cataloging asset types works in the following way:
- Only elements that contain a complete Archibus primary key for that asset type will be processed while cataloging.
- With the current implementation, all parameters for all supported asset types for a given category will exist on all elements of that category type. Given that an element of category ‘Area’ supports asset types of Rooms, Gross, and Suites, all parameters for all of those asset types will exist on elements of category ‘Area’.
- When processing, if the correct primary key parameters have values set for an ‘Area’ element, then it will be cataloged, otherwise it will be ignored while processing.
Cataloging Preselected Elements
If there is a selected set of elements, when you click the Catalog command from the Ribbon, the catalog functionality processes only those selected elements. If multiple types of Revit elements (for example, both Rooms and Equipment) are included in pre-selected elements, you are prompted to select the asset type you want to catalog.
After selecting an asset type, only those pre-selected elements will be cataloged.
You can also access the Catalog command from the BIM Explorer's Tree View .
Cataloging with No Pre-Selected Elements
After clicking on the Catalog command from the Ribbon, a form to select which asset type to operate on and the scope of the Catalog will be displayed.
Whichever scope is selected, a progress bar displays providing information regarding the status of the catalog operation.
Both the current level that is being processed and the count of assets per level are displayed.
Resolving Cataloging Data Discrepancies
When the Catalog command has completed, the Catalog results form displays the number of successfully cataloged assets. Additionally, if there are any data discrepancies in any of the cataloged elements that are model-driven, those assets will not be cataloged (that is, not updated in the database), but instead be displayed in the area of the result form under ‘Validation Issues’. Any data discrepancies that are database-driven are resolved in the cataloging process, and for that reason are not shown in the Validation Issues section of the form.
The list of discrepancies will be displayed in a tree view which consists of:
- For each asset that contains validation errors, a root item that is the primary key of the asset.
- A child list of one or more validation issues per root item.
To resolve validation issues:
- Click a validation issue in the tree view.
- Correct that validation issue.
-
Repeat step 1 and 2 above for each discrepancy to be resolved.
As a validation issue is corrected, that validation item will be removed from the tree view.
- After all validation issues are resolved for a particular asset, the database is updated with the corrected data, and the asset will be removed from the Validation Issue tree view.
Clicking on any of the discrepancy items displays an appropriate list of options in the form so that you can resolve that issue. For all validation issues, the following information will be displayed:
- Description of validation issue: Displays the invalid value.
-
Apply: Will correct the value for that asset and removing that particular discrepancy from the list.
Note: The database record will only be updated once all discrepancies have been resolved.
- Apply to All checkbox: Will correct that same field/value discrepancy on all assets in the Validation Issues list.
The type of validation issue, such as unknown standard value or string length issues, determines what controls and options are available to you to resolve that particular discrepancy issue. The only two supported issues are either unrecognized standard values or string length issues.
The following is an example in which a Room Standard value specified for a particular element does not exist in the database. In this example, Room Standard is a model-driven value, as the Validation Issues section of the form shows only model-driven values that do not match a value in the database. The catalog command automatically resolves discrepancies for database-driven values that do not have a value in the database by copying the values in the database fields to the model.
As shown in the above Catalog form, you have the following options to resolve the invalid standard value:
- Selecting an existing Room Standard from the list, and clicking Apply, removes that validation issue from the list.
- Clicking the ‘Create’ button creates a new standard record for that value and removes that item from the validation issue list.
The database is updated only after all validation issues are resolved for a particular asset, which will also remove that asset from the Validation Issue list.
The list of available options is context sensitive to the type of issue that needs resolving. The following screen shot shows the options that are available when selecting a string length validation issue:
The only option available here is to either select the truncated string, or type in another value. Again, after you click the Apply button, that validation issue will be removed from the list.
When you have resolved all validation issues, click Done to close the form.
Note : The Done action does not update the database, as that occurs when issues are resolved as described in the section Resolving Cataloging Data Discrepancies .