Hanger Configurations
- Last UpdatedJan 10, 2024
- 5 minute read
Hanger Configurations store the following data:
Attributes and UDAs
|
DESC |
A text description of the hanger configuration |
|---|---|
|
PURP |
Set to DATA |
|
GTYP |
Hanger build macro suffix |
|
:HCONN |
Head connection type (tells the application which type of ATTA is being used for this configuration): |
|
CATT: Component ATTA |
|
|
ATTA: Tube ATTA |
|
|
:TCONN |
Tail connection type (tells the application how to connect to the steelwork or civil): |
|
NONE: No connection (for example, sliding) |
|
|
BLTD: Bolted connection at back marker p-line |
|
|
BOLT: Bolted connection at face of steel using back-marker positions |
|
|
SBOL: Bolted connection at face of steel with option of using back-marker or central position |
|
|
WELD: Welded connection |
|
|
:DESINFO |
Not used at this release |
|
:DRAINFO |
Not used at this release |
|
:MAXLEN |
Maximum hanger length where not explicitly defined using hanger length data table (see below) |
|
:MINLEN |
Minimum hanger length where not explicitly defined using hanger length data table (see below) |
|
:PSLOPE |
Logical flag if pipe is permitted to slope wrt hanger direction |
|
:ASLOPE |
Logical flag if steel/civil attachment is permitted to slope wrt hanger direction |
|
:PARHANG |
Logical flag if partial build available for ‘parallel’ type configurations |
Members
The configuration CATE may own any number of TEXT elements which are used to describe the components used in the hanger. Each component has a TEXT element placed in the correct order in the members list; the description is stored in the STEX attribute.
Hanger Build Macros
Every hanger configuration has an associated build macro which is situated in the DES/SUPP applicationware directory. The macros have the form MHB-{suffix} (see CATE GTYP above). These macros are PML-based, but make use of a specially designed toolkit which lets you create a build macro for almost any hanger configuration.
It is recommended that you follow an example, of which there are many supplied with the product, to aid your understanding of this section.
The toolkit subroutines which you can call in your build macros are as follows:
|
XHBPCLA |
To create, orientate and position a PCLA element |
|---|---|
|
XHBFITT |
To reposition fitting once last component is known |
|
XHBHELE |
To create, orientate and position a HELE element |
|
XHBHORI |
To orientate a HELE element |
|
XHBSCLA |
To create, orientate and position an SCLA element |
|
XHBSTART |
To start Hanger building |
|
XHBSTART |
To start Hanger building |
|
XHBSPAC |
To create steel profile spacer between specified hanger elements |
|
XHBHCLN |
To check the fitted length on any hanger element |
Apart from these, the amount of PML writing you need to do is minimal, although some knowledge of PML and macro writing would be useful. In some cases, the order of element creation means that some additional work needs to be done by the build macro. For an example of this, see the supplied macro MHB-CBWA.
Each of these subroutines is called by using the syntax
CALLSUP <subroutine name> <args>
and requires arguments which enable it to perform its task correctly. Each argument should be enclosed in the delimiters lt; ... gt; if there is any whitespace. Each macro may also require that a global variable is set, or may in turn set a global variable. For descriptions of RTO values, see the section which details hanger catalogues and datasets.
XHBPCLA
Arguments
|
1 |
PCLA STYP(s) |
|---|---|
|
For tube ATTAs, single value (quoted if using TANS) |
|
|
For component ATTAs, space or / separated list for TEE, ELBO, BEND components (NONE if not applicable) |
|
|
2 |
Any other selectors (quoted if using TANS) |
|
3 |
COMP or TUBE |
|
4 |
Hanger Direction p-point (for TUBE). This p-point will be orientated to point in the direction of the hanger Rotation Direction p-point (for COMP). This p-point will be orientated to point in the perpendicular direction of BENDs or ELBOs. |
|
5 |
Angle flag. True if the component has a DDANG which needs to be deduced. |
|
6 |
Connection/Fitting instructions: |
|
ATTA: Sets PCLA height to distance P0 to P3 of ATTA |
|
|
FITH: Sets PCLA height to distance HH to HT |
|
|
FITP: Sets PCLA height to half pipe OD |
|
|
CONN: Does not set PCLA height |
|
|
7 |
Spec from which to select component: |
|
INSPEC: Select from current HSPEC |
|
|
PSPEC: Select from attached pipe PSPEC |
|
|
<gid>: Select from explicit specification |
Globals used
None
Globals set
|
!!CDSNHB.RTOVAL1 |
Derived RTO value at P1 end |
|---|---|
|
!!CDSNHB.RTOVAL2 |
Derived RTO value at P2 end |
XHBFITT
Arguments
None
Globals used
None
Globals set
None
XHBHELE
Arguments
|
1 |
HELE STYP |
|---|---|
|
2 |
Any other selectors (quoted if using TANS) |
|
3 |
HELE GTYP. Unique WORD attribute used to identify HELE for later operations |
|
4 |
GTYP of element which will be at the arrive end of the new HELE |
|
5 |
GTYP of element which will be at the leave end of the new HELE |
|
N.B. If argument 4 identifies an element which occurs later in the hanger's members list than argument 5, this will cause the new element to be created in ‘backwards’ mode. This can be very useful in some circumstances |
|
|
6 |
Arrive p-point/Leave p-point (for example, 2/1) |
|
7 |
Connection/Fitting instructions: |
|
FIT: Fit the HELE into the available space (by setting HEIGHT attribute) |
|
|
CONN: Connect the HELE to the previous element (or HH/HT) |
|
|
DIST: Set the HELE at a specified distance from the previous element |
|
|
PROP: Set the HELE at a specified proportional distance between the previous and the next elements |
|
|
DIST and PROP both have the format <keyword> <value> <p-point> (the p-point designation is optional and defaults to P0) |
|
|
8 |
Angle flag. True if the component has a DDANG which needs to be deduced. |
|
9 |
Specification from which to select component: |
|
INSPEC: Select from current HSPEC |
|
|
PSPEC: Select from attached pipe PSPEC |
|
|
<gid>: Select from explicit specification |
Globals used
|
!!CDSNHB.RINS1 |
Rod insertion length at P1 |
|
!!CDSNHB.RINS2 |
Rod insertion length at P2 |
Globals set
|
!!CDSNHB.RTOVAL1 |
Derived RTO value at P1 end |
|
!!CDSNHB.RTOVAL2 |
Derived RTO value at P2 end |
XHBHORI
Arguments
|
1 |
HELE GTYP |
|---|---|
|
2 |
Mode FORW or BACK |
|
3 |
Connection/Fitting instructions |
|
FIT: Fit the HELE into the available space (by setting HEIGHT attribute) |
|
|
CONN: Connect the HELE to the previous element (or HH/HT) |
|
|
DIST: Set the HELE at a specified distance from the previous element |
|
|
PROP: Set the HELE at a specified proportional distance between the previous and the next elements |
|
|
DIST and PROP both have the format <value> {<p-point>} |
|
|
The default p-point is P0. |
|
|
4 |
Angle Flag to direct component arrive/leave |
Globals used
|
!!CDSNHB.RINS1 |
Rod Insertion Length at P1 |
|
!!CDSNHB.RINS2 |
Rod Insertion Length at P2 |
Globals set
|
!!CDSNHB.RTOVAL1 |
Derived RTO value for component (P1-Rod End) |
|
!!CDSNHB.RTOVAL2 |
Derived RTO value for component (P2-Rod End) |
XHBSCLA
Arguments
|
1 |
SCLA STYP |
|---|---|
|
2 |
Any other selectors (quoted if using TANS) |
|
3 |
Fit flag. True if SCLA is to be fitted into the available space. |
|
4 |
P-point to orientate towards previous component. The subroutine will attempt to align the PA/PL, but if this in insufficient, then it will use this p-point. Default orientation is determined by argument 5. |
|
5 |
Default orientation: |
|
TUBE: Pipe flow direction |
|
|
STEEL: Steel direction (can be SCTN Y or X direction depending on hanger Tail connection type) |
|
|
6 |
Any other selectors (quoted if using TANS): |
|
INSPEC: Select from current HSPEC |
|
|
PSPEC: Select from attached pipe PSPEC |
|
|
<gid>: Select from explicit specification |
Globals used
None
Globals set
|
!!CDSNHB.RTOVAL1 |
Derived RTO value at P1 end |
|
!!CDSNHB.RTOVAL2 |
Derived RTO value at P2 end |
XHBHCLN
Arguments
|
1 |
GTYP of element to be checked |
|---|---|
|
2 |
Minimum/Maximum distance: |
|
Explicit value |
|
|
Parameter number (for example, PARAM 1) |
|
|
3 |
P-points which min/max distance applies to (in arrive‑leave order) |
|
4 |
Type flag: MIN or MAX |
Globals used
None
Globals set
None
XHBSPAC
Arguments
|
1 |
Arrive end GTYP |
|
2 |
Leave end GTYP (or HT) |
Globals used
None
Globals set
None