August 28, 2009

Another Automatic Property Override Sample

For those of you who never tire of examples of using a manual property and a formula property to allow for overriding the value of either an automatic property or a style-based manual property on an object-by-object basis (and for those who have never seen an example of this), I have posted a ZIP file with a file created in AutoCAD® Architecture 2009 to the Default Finish Scheduling thread in the Autodesk AutoCAD Architecture Discussion Group. Look for the RoomFinishTest.zip file attached to my August 24, 2009 reply.

The sample file has a style-based Property Set with text-type manual properties for entering typical room finishes for a specific Space Style. If you set up separate Space Styles for each room type you have anyway, doing this provides an easy way to get schedulable finish information into your drawings, since you only need to enter the finish information once, in the Space Style, for each style. If your projects usually have the same finishes in all Spaces of the same type/style, the style-based Property Set could be all you would need. Even if you had two or three different sets of finishes for a particular Space type (for example, for offices), if there were a significant number of each office type, you would probably want to create a separate Space style for each office type, and assign the appropriate finishes at the style level.

Many projects will have individual Spaces that will have some variation from the typical finishes for its Space type. If there are only a few of these, it may not be too much trouble to create separate Space Styles for each variant. But if there are a large number of unique variants, creating a Space Style for each will quickly become a burden. Rather than give up on style-based properties and go to object-based properties (where you would need to enter the data for each individual Space), you can set up an object-based manual override property to hold a different value for just that one Space, and a formula property that you use in the Schedule Table, that checks to see if the override property is set to its default value. If so, the formula passes through the style-based typical value. If not, the formula passes throught the override value. That allows you to take advantage of the power of style-based properties without needing to create a separate Space Style for each variant.

The sample file has a handful of Space Styles and two custom Property Sets. The SpaceStyleFinishes Property Set contains five manual properties for entering the typical floor, base, wainscot, wall and ceiling finishes for a particular Space Style. Depending upon the nature of your work and the way you document finishes, you may need to add or subtract properties here; for example, you may want four wall finish properties (north, south, east and west). For the purposes of being able to create the example file without taking an inordinate amount of time, I limited the properties to those five. (As always, click on any image to see a full-size version; use the Back button on your browser to return here.)This Property Set applies to Space Styles and is attached to each style on the General tab, using the Property Sets... button.If you have a number of frequently used finishes, consider setting up a List Definition that applies to Manual Properties to hold the options for each finish type, then using that to speed entering values (and make them consistent). The sample file does not include this; values there were manually entered in the Edit Property Set Data dialog.The SpaceObjectFinishes Property Set contains two properties for each property in the style-based property: an Override property to hold the override value, when one is desired, and a formula property to pass through the appropriate value, as noted above.The default value for the override properties is "USEDEFAULT!" (without the quotation marks). The exact value you use is not important, so long as it is not anything that could be a value you would want to use for the override. The formula property for each finish type is similar to that shown below for the FloorFinish formula property.
If "[FloorOverride]" = "USEDEFAULT!" Then
RESULT = "[SpaceStyleFinishes:FloorDefault]"
Else
RESULT = "[FloorOverride]"
End If
The formula tests the override property to see if its value remains the default value. If so, it passes through the typical, style-based value. If not, it passes through the override value. By using this property in your Schedule Table Style and/or Schedule Tag, you get the advantages of both style- and object-based properties.

The sample file also contains two Schedule Table Styles. One is meant for final documents, and shows only the "final" formula property value for each Space.You can not use the Cell Edit feature to edit the finish values in this Schedule Table, however, because automatic properties like formula properties can not be edited that way. If you prefer to make post-placement edits by using Cell Edit, then you will also want to have a "working" Schedule Table Style, which is the second one in the sample file. This lists the formula property, style-based typical property and object-based override property for each finish type. You can use Cell Edit on either the typical property, changing the formula property value for all instances of that style that do not have overrides, or the override property, changing the formula property value for just that Space.In the partial Schedule Table shown above, you can see that an override value has been entered for the floor finish for the last three Office Spaces (111, 112 and 113), changing the default value of CPT 2 to CPT 5.

No comments: