Example User Defined Attributes
- Last UpdatedDec 21, 2021
- 4 minute read
The following section gives examples of some of the different User Defined Attribute (UDA) types. The commands for creating each UDA type are given, together with a brief discussion of their features.
Note:
When a UDA appears in the attribute list of a user element, its name (that is, its
UDNAME) will be preceded by a colon (:) to distinguish it as a UDA.
The following example is of a REAL attribute which can be used to store the weight of an element.
|
Example: |
|
|---|---|
|
UDA type REAL |
|
|
NEW UDA /WEIG UTYP REAL |
|
|
UDNA ’WEIGHT’ |
|
|
ABLEN 6 |
|
|
ULEN 1 |
|
|
UUNI Mass |
|
|
RPTX ’Weight’ |
|
|
ELE ADD STRU SUBS EQUI |
|
The following example of a TEXT attribute which can be used to store the name of the person who has checked a particular element. After checking, the checker would set the attribute to his name.
Note:
The disparity between the length of the text string (ULEN) and the report text (RPTX).
In this case, the text length is six characters for the attribute, but the report
text is set as being 10 characters long. The Reporting utility will set its column
width to whichever is the largest; there is little point in having only six characters
for the attribute when 10 characters will be allowed anyway. Conversely, if six characters
are all that is required, then the RPTX should be cut down to reduce the column width.
|
Example: |
|
|---|---|
|
UDA type TEXT |
|
|
NEW UDA /CHKD UTYP TEXT |
|
|
UDNA ’CHKD’ |
|
|
ULEN 6 |
|
|
RPTX ’Checked By’ |
|
|
ELE ADD EQUI STRU SUBS PIPE ZONE SITE |
|
The following example of a LOGICAL attribute is used to store either TRUE or FALSE to indicate one of two conditions. In this case, the attribute is intended to indicate whether an item has been pressure tested or not. Abbreviation Length (ABLEN) allows the attribute to be accessed as either :TEST, :TESTE or :TESTED.
|
Example: |
|
|---|---|
|
UDA type LOGICAL |
|
|
NEW UDA /TEST UTYP LOGICAL |
|
|
UDNA ’TESTED’ |
|
|
ABLEN 4 |
|
|
DFLT FALSE |
|
|
RPTX ’TESTED’ |
|
|
ELE ADD BRAN EQUI |
|
The following example of a REFERENCE attribute allows a number of piping components to be referenced to Structural items or Equipment. As the name suggests, this attribute could be used to indicate the name of a Structural element which is supporting a Component. The attribute would be set in the database in the same way as other reference attributes, for example. :SUPP /COL-A1.
Note that the Reference List (REFLIST) attribute has been set such that the UDA in the user element (that is, the :SUP attribute) can only be set to an identifier relating to a Structure, a Substructure or an Equipment.
|
Example: |
|
|---|---|
|
UDA type REFERENCE |
|
|
NEW UDA /SUPPORT UTYP REFERENCE |
|
|
UDNA ’SUPPORT’ |
|
|
ULEN 50 |
|
|
RPTX ’Support reference’ |
|
|
ELE ADD ELBO TEE REDU FLAN VALV CROS CAP ATTA PCOM |
|
|
ELE ADD OLET INST |
|
|
REF ADD STRU SUBS EQUI |
|
The following example shows how a WORD attribute can be set up to show the normal state of Valves; for example, whether they are normally open or normally closed. The value assigned to this attribute in the MODEL would probably be either OPEN or CLOS. For this particular example, a default value is inappropriate, so the DFLT attribute is left unset and no default is shown in the MODEL. As with other unset attributes, the default text ’---’ will be output in reports whenever an attribute with no default value is encountered.
|
Example: |
|
|---|---|
|
UDA type WORD |
|
|
NEW UDA /OPERATION UTYP WORD |
|
|
UDNA ’OPERATION’ |
|
|
RPTX ’Normal Operation’ |
|
|
ELE ADD VALV |
|
The following example of a POSITION attribute which can be used to store the position of the centre of gravity of an element. Because arrays of Position attributes are not supported UDA Name Length (ULEN) is set to 1. Moving the element using AT or BY commands will not change the values stored in COFG, unless they are linked by a Rule. For example:
:COFG DYNAM (N 100 WRT CE)
Then, if the element is moved :COFG is reset automatically.
|
Example: |
|
|---|---|
|
UDA type POSITION |
|
|
NEW UDA /COFG UTYP POS |
|
|
UDNA ’COFG’ |
|
|
ULEN 1 |
|
|
UUNIT DIST |
|
|
RPTX ’Centre of gravity’ |
|
|
ELE ADD STRU SUBS EQUI |
|
The following example of an ORIENTATION attribute which can be used to store the orientation of an element. Because arrays of Orientation attributes are not supported ULEN is set to 1.
|
Example: |
|
|---|---|
|
UDA type ORIENTATION |
|
|
NEW UDA /HAND UTYP ORI |
|
|
UDNA ’HANDWHEEL’ |
|
|
ULEN 1 |
|
|
RPTX ’Handwheel’ |
|
|
ELE ADD VALV |
|
The following example of a DIRECTION attribute. Because arrays of Direction attributes are not supported the ULEN of this attribute is set to 1.
|
Example: |
|
|---|---|
|
UDA type DIRECTION |
|
|
NEW UDA /ACCESS UTYP DIR |
|
|
UDNA ’ACCS’ |
|
|
ULEN 1 |
|
|
RPTX ’Access’ |
|
|
ELE ADD STRU SUBS EQUI |
|
The following example of a UDA for pipe stress interface PSI-R2.
|
Example: |
|
|---|---|
|
UDA type POSITION |
|
|
NEW UDA /UST/HANGER/USTLMOVEMENT |
|
|
DESC 'Local x, y, z-Movement, dyn Movem. Positive, dyn Movem. Negative' |
|
|
UDNA 'USTLMOVEMENT' |
|
|
ABLE 12 |
|
|
UTYP REAL |
|
|
ULEN 5 |
|
|
UUNI 'Length' |
|
|
TUNI 'mm' |
|
|
RPTX 'Loc. MOVEMENTS' |
|
|
ELEL ADD ATTA REST SHU ANCI SUPPO LUANCI |
|