The Custom Properties window

  • The Custom Properties window can be opened in your current Job only if the " Flavor " that was selected at the time your current Job was created was a legacy flavor.
  • For modular custom properties, the Edit Properties window -- not this window -- is the window that opens. Most options on this window are editable in an SDS2 review station . Options that affect the member bill of material or member piecemarks are disabled ( grayed out ).
  • A different version of this window is opened for members , materials and your current Job -- click here .

Tabs on the member properties window if a legacy flavor was selected as the " Flavor " when the project was created :

General
Custom Properties
User
Custom Properties
Notes
Log ( )
  • Member custom property tabs like those shown above are created by the /custom/Member.py file found in your current Job.

Tabs on the material and Jobs custom properties windows :

Properties
Notes
Log ( )
  • For material properties, etc., three tabs like above are shown regardless of the legacy flavor that was selected at project creation time.
  • For Job custom properties, information under the " Properties " tab may, depending on the legacy flavor , be entered to the /custom/Job.py script.
  • No Python script is used for material, bolts, holes or welds custom properties.
  • For material custom properties, you can Add Schema Entry and your entry will appear on this window immediately.

About this window :

Also see :


To open the Custom Properties window :

For your current Job:

The custom properties window for your current Job opens at Home > Project Settings > Job > Job Property Settings .

The name of the custom properties window for your current Job is Job Custom Properties .

For group members:

A " Properties " button opens the Custom Properties window for the group member you are reviewing. The properties that you set affect the group member only -- they do not affect submembers. Group members employ the member schema that are set up at Home > Project Settings > Job > click " Member " under the [Custom Properties] banner.

For members:

Press the " Properties " button at the bottom of any of the following windows: Beam Review , Column Review , Horizontal Brace Review , Vertical Brace Review , Joist Review , Girt (Legacy) Review , Purlin Review , [Legacy] Miscellaneous Member Review , Stair Review .

For materials:

Press the " Properties " button at the bottom of the General Information window, which can be opened from any of the material review windows.

For bolts :

You can't open the Custom Properties window for bolts in an SDS2 review station .

For holes :

You can't open the Custom Properties window for holes in an SDS2 review station .

For welds :

You can't open the Custom Properties window for welds in an SDS2 review station .


Properties
General
Custom Properties
User
Custom Properties
Notes
Log

A " Properties " tab appears on this window -- even for member custom properties -- when ' None ' was selected as the " Flavor " at the time that this project was created.

For custom properties other than Job custom properties, you can add a new custom property (option) to this tab without having to mess with editing a Python script. For Job custom properties, the Python script you will need to adjust is the /custom/Job.py file in your current Job.

To, for example, add a new option for material under the " Properties " tab, all you have to do is choose Options > Job Options > Custom Properties > Material , then press " Add " on the Edit Schema window. After you then make an entry on the Add Schema Entry window, you can re-open this window (review a material, press " General Information " then press " Properties ") and you will find that your new custom property has been added to this tab.

To add a custom property Home > Project Settings > Job or Fabricator Options ." On the setup window, click " Home > Project Settings > Job " and under the " Custom Properties " header choose the type of schema you want to add an entry to (" Job " or " Member " or " Material " or etc.). The Edit Schema window opens. On it you can press the " Add " button to add a schema entry.

A new custom property added in setup is available to all items in its class that reside in the model. For example, a newly added member custom property is available to all members. However, when you go to the model and edit that custom property, your change will only apply to the specific material(s) or etc. that you are reviewing.

Entries to a custom property can be a ' String ' (allows any characters) or ' Number ' (allows decimals, whole numbers or fractions) or ' Boolean ' (checked = Yes or 1 or True; not checked = No or 0 or False) or ' Dimension ' (allows dimensions) or ' Date ' (allows dates).

Status Display can color code, mask or isolate members or materials for which custom properties have been entered:

Data class In Status Display , choose:
member Member status > Member custom property
material Material status > Material custom property

Data entered here can be tracked using the Report Writer .

Data class Path in Report Writer  
current Job CurrentLocation.JobCustomProperties
member Member.CustomProperties
material MemberMaterial.Material.CustomProperties

Python scripts can be created to read member or material or Job custom properties. Click these links to SDS2 Detailing help -- member | material | job -- for more in-depth parametric documentation.

# Prints the entry to the member property named 'Painted'.
from member import MemberLocate, MemberProperties
from param import ClearSelection
mem = MemberLocate("Select a member")
mem_prop = MemberProperties(mem)
print(mem_prop['Painted'])
ClearSelection()
# Prints the entry to the material property named 'GALV'.
from mtrl_list import MtrlLocate, MtrlProperties
mtrl = MtrlLocate("Select a material", "Single")
mtrl_prop = MtrlProperties(mtrl)
print(mtrl_prop['GALV'])
# Prints entries to Job properties named 'Architect', 'EOR'.
from job import JobProperties
job_prop = JobProperties() # no argument, current Job
print("Architect: ", job_prop['Architect'])
print("Engineer: ", job_prop['EOR'])

Python scripts can be created to edit member or material or Job custom properties. Click these links to SDS2 Detailing help -- member | material | job -- for more in-depth parametric documentation.

# Enters "John Doe" to member property "modeled_by".
from member import MemberLocate, MemberPropertySet
from param import ClearSelection
mem1 = MemberLocate("Select a member")
MemberPropertySet(mem1, "modeled_by", "John Doe")
ClearSelection()
# "modeled_by" must be a member property for this to work
# Enters "True" to boolean material property "GALV".
from mtrl_list import MtrlLocate, MtrlPropertySet
mtrl = MtrlLocate("Select a material", "Single")
MtrlPropertySet(mtrl, "GALV", "True")
# "GALV" must be a material property for this to work
# Enters "Sparky_Silvershoes" to Job property "EOR".
    from job import JobPropertySet
    JobPropertySet("EOR", "Sparky_Silvershoes")
    # "EOR" must be a Job property for this to work

Advanced Selection can be used to select members, materials, etc. with custom properties:

# Selects members with John Doe entered to "modeled_by".
m.CustomProperties["modeled_by"] == "John Doe"
# Selects members with 1 1/4 entered to "parametric_offset".
m.CustomProperties["parametric_offset"] == 1.25
# Selects materials checked for "GALV".
mt.CustomProperties["GALV"] == True

Properties
General
Custom Properties
User
Custom Properties
Notes
Log

If ' DesignData ' or ' Default ' is the " Flavor " of custom properties and you are reviewing a member, you will get " General Custom Properties " tabs like those shown at left.

Options for members that, if edited, would cause member piecemarks to break apart are disabled so that you cannot edit them.

Options for members that would, if edited, cause that entry to appear in the " Remarks " column in line 1 of the associated member bill of materia are also disabled so that you cannot edit them.

You can use setup to add new options to this tab just like you can for the " Properties " tab. However, unlike for the " Properties " tab, those options will not show up immediately. To make new member custom properties show up in this tab, you first need to edit the /custom/Member.py file found in your current Job. Click here for more information.


Properties
General
Custom Properties
User
Custom Properties
Notes
Log

A " User Custom Properties " tab may appear on this window when ' DesignData ' or ' Default is the custom property " Flavor ."

" User Custom Properties " are available when you opened this window by pressing the " Properties " button at the bottom of a member review window. In other words, " User Custom Properties " are member custom properties.

You can use setup to add new options to this tab just like you can for the " Properties " tab. However, unlike for the " Properties " tab, those options will not show up immediately. To make new member custom properties show up in this tab, you first need to edit the /custom/Member.py file found in your current Job. Click here for more information.

Here is the section in the /custom/Member.py file that you need to modify in order to get an option added to this window. Remember, you first need to add the schema entry in the Add Schema Entry window for members before you enter it to the script:

## User Custom Properties Begin
# Please add your custom Properties in this area.
User_tab = Tab( Main_tabset, "            User\n  Custom Properties  " );
User_tabset = Tabset( User_tab )
User_tabset.widget.configure( tiers = 1 )
User_tabset.widget.configure( borderwidth=3, side = "left", font=TabFont, fg=Color_Dark_Blue, bg=Color_SelectedTab)
## User Custom Properties End


Properties
General
Custom Properties
User
Custom Properties
Notes
Log

Type in any notes that you want applied to the items that you are reviewing. If you are reviewing multiple members or materials, any note you enter here will be applied to each of those members or materials.

Press the " Time Stamp " button to automatically stamp the date and time of a note.

Time stamp example:   2007-02-05 14:08:55-0600
  2007-02-05 = the date (year-month-day)
14:08:55 = military time (hour:minutes:seconds)
  -0600 = offset from Greenwich Mean Time (GMT)

Notes can be tracked in the Report Writer :

Data class Path in Report Writer  
current Job CurrentLocation.JobCustomProperties.Notes
member Member.CustomProperties.Notes
material MemberMaterial.Material.CustomProperties.Notes

Status Display can color code, mask or isolate members or materials for which notes have been entered:

Data class In Status Display , choose:
member Member status > Member notes
material Material status > Material notes

Python scripts can be created to read notes for the member, material or Job. Click these links to SDS2 Detailing help -- member | material | job -- for more in-depth parametric documentation.

# Prints the user notes of the member that the user selects.
from member import MemberLocate, MemberProperties
from param import ClearSelection
mem = MemberLocate("Select a member")
mem_note = MemberProperties(mem)
print(mem_note['Notes'])
ClearSelection()
# Prints the user notes of the material that the user selects.
from mtrl_list import MtrlLocate, MtrlProperties
mtrl = MtrlLocate("Select a material", "Single")
mtrl_note = MtrlProperties(mtrl)
print(mtrl_note['Notes'])
# Prints the user notes of your current Job.
from job import JobProperties
job_note = JobProperties() # no argument, current Job
print(job_note['Notes'])

Python scripts can be created to write notes for the member or material or Job. Click these links to SDS2 Detailing help -- member | material | job -- for more in-depth parametric documentation,

# Writes a "Note" for the member that the user selects.
from member import MemberLocate, MemberPropertySet
from param import ClearSelection
mem1 = MemberLocate("Select a member")
MemberPropertySet(mem1, "Notes", "Refer to RFI 32")
ClearSelection()
# Writes a "Note" for the material that the user selects.
from mtrl_list import MtrlLocate, MtrlPropertySet
mtrl = MtrlLocate("Select a material", "Single")
MtrlPropertySet(mtrl, "Notes", "ABM page-line 14-2")
# Writes a Note for the current Job.
from job import JobPropertySet
JobPropertySet("Notes", "Note RFIs 22, 32, 43.")


Properties
General
Custom Properties
User
Custom Properties
Notes
Log

VIDEO The video shows event records found under the " Log " tab for job custom properties and the " Log " tab for member custom properties. (Recorded in SDS2 Detailing , v2015.)

Classes of events that can be logged are Job events, member events, material events, bolt events, weld events, hole events. See Event Logging Setup for more information on what information is logged.

The Event Logging Setup window turns event logging on/off for your entire site.

Once an event has been logged, it stays logged. Event Logging Setup does not erase a log.

Events that are logged include the date of the event ( 2007-02-05 ), military time-GMT offset ( 14:08:55-0600 ), SDS2 software version ( 7.101 ), log-in name of the person who made the change ( dave ), and the event ( Member processed ).

Logged events can be tracked in the report writer:

Data class Path in Report Writer  
current Job CurrentLocation.JobCustomProperties.Log
member Member.CustomProperties.Log
material MemberMaterial.Material.CustomProperties.Log

Python scripts can be created to read the member, material or Job event log. Click these links to SDS2 Detailing help -- member | material | job -- for more in-depth parametric documentation.

# Prints the event log of the member that the user selects.
from member import MemberLocate, MemberProperties
from param import ClearSelection
mem1 = MemberLocate("Select a member")
mem_log = MemberProperties(mem1)
print(mem_log['Log'])
ClearSelection()
# Prints the log of the material that the user selects.
from mtrl_list import MtrlLocate, MtrlProperties
mtrl = MtrlLocate("Select a material", "Single")
material_log = MtrlProperties(mtrl)
print(material_log['Log'])
# Prints the event log of your current Job.
from job import JobProperties
job_log = JobProperties() # no argument, current Job
print(job_log['Log'])

To close Custom Properties :

"Save" (or the Enter key) closes the Custom Properties window and saves the settings on it to your current Job .

"Cancel" (or the Esc key) closes this window without saving any changes that you have made.

"Reset" undoes all changes made to settings on this window since you first opened it. The window remains open.