Directives

Introduction

Directives are a software programming concept that is employed in the HUBPL to ensure that each widget “looks and feels” the same to a user. This also enables the software program to be less error-prone and operate more efficiently by writing the code in one place and leveraging it in many places, vs. replicating code in many places. Where the same inputs, commands, or visualizations are used by multiple widgets, a directive is called by the program to bring consistent format, spelling, terminology, functionality, etc. into the widget.

Case-Header

The case header directive is used in all widgets that have the ability to save the inputs, and results, of analyses in the HUBPL (excludes Map, Database Import, Ad-Hoc Analysis, etc.).


The case header directive governs the portion of the widget where a user can:

  • Name/rename cases
  • Save/delete cases
  • Create new case
  • Toggle unit preference (between metric & US Field)
    • For this widget, this session only, or
    • For this widget, save new default units
      • Note that unit preferences can be adjusted for the entire platform in the User Preferences interface
  • Share a case or keep it private
  • See who created a case
  • See who modified a case, and when
  • Download data to excel
  • Execute the calculation
  • Generate reports
  • Assign a case to a project CaseHeader
    • Create a new project
  • Upload images and/or PDF’s for inclusion in reports
    • Part of Report Builder
  • Add geolocation data
    • Manually by typing latitude and longitude inputs, or
    • By selecting a point on the Map
  • Associate the calculation to an entity in the asset database
    • By selecting an entity in the Navigator
    • By selecting an entity in the Map
  • Add other notes and other contextual information, like location description and date
  • Record time spent working in the widget
    • Part of Encroachment PowerTool, coming in summer 202
  • View metal loss profiles loaded from ILI, RSTRENG, or Investigative Dig PowerTool
    • Part of Encroachment PowerTool, coming in summer 2021

The case header directive can be expanded, or collapsed, per the user’s preference. In previous versions of Pipeline Toolbox, the free-text inputs in this section were the primary method for keeping track of the reason for the analysis, as well as for being able to find the case again.

A case can be easily associated to an entity and categorized for easy recall in the Navigator-Hierarchy Panel in the HUBPL version of:

Additionally, input values for calculations can be auto-populated from an asset database through the association between case and entity, which can be made via the Map or the Navigator. Entities that are supported include:

  • pipes
  • rotating equipment (pump/compressor)
  • tanks
  • valves
  • roads, railroads, water bodies, and/or crossing points
  • powerlines
  • welds
  • corrosion cells
  • anode beds
  • et cetera

Some widgets have multiple tabs, vs. everything happening in one tab as depicted above. When this happens, the case header directive is displayed in the first tab only. Example below:

Pipe Description

The pipe description directive is used in all widgets that perform analyses on pipes. The pipe description directive was developed to drive consistency across the platform and help the user understand the definition of each input, as well as how data can be mapped from an asset database to auto-populate inputs when a particular pipe is selected for analysis. When an entity is selected from the Map or the Navigator, calculation inputs are prepopulated with values from the asset database and are then color-coded to convey whether or not the inputs agree with the relevant asset database values. The pipe attributes screen contains the variables available for use in calculations.

While many calculations need common input requirements (outside diameter, wall thickness, etc.), other inputs are specific to a particular analysis (elevation for hydraulics, etc.), and the content of the directive in each widget varies to suit the needs of the specific use case. Some key dependencies are explored below, while additional information on other inputs can be found on the Definitions page.

Pipe Type Selection:

  1. Allows the user to select from a list of commonly used pipe schedules, or use custom pipe description/properties. The options for pipe type include:
    1. Steel
      1. API Specification 5L
      2. ASTM-ANSI B36.10
      3. Standard Steel Pipe – Schedule Number
      4. Custom
    2. Plastic
      1. ASTM F 1962 – 05; Table X1.1
        1. HDPE
        2. MDP
      2. Piping Material Designation
        1. PE 2306
        2. PE 2406
        3. PE 2708
        4. PE 3406
        5. PE 3408
        6. PE 3708
        7. PE 3710
        8. PE 4708
        9. PE 4710
  2. The selection of pipe type impacts the list of valid inputs for other inputs, such as:
    1. Outside diameter
    2. Wall thickness
    3. Grade/Schedule
  3. The combination of the above selections auto-populates the inputs for SMYS (steel), allowable compressive stresses (plastic), internal diameter.

Operating Parameters

The operating parameters directive is used in all widgets that perform analyses where conditions inside the pipe are relevant. The operating parameters directive was developed to drive consistency across the platform and help the user understand the definition of each input, as well as how data can be mapped from an asset database to auto-populate inputs when a particular entity is selected for analysis.

While many calculations need common input requirements, other inputs are specific to a particular analysis. The content of the directive in each widget varies to suit the needs of the specific use case. Some examples are included in the screenshot below for your reference. As with most other directives, color coding of inputs is utilized to convey whether or not the inputs agree with the relevant asset database values.

Pipe Class

The pipe class directive is used in all widgets that perform analyses where joint type and behavior of the steel as a function of its environment, aside from SMYS, matters. This includes parameters like thermal expansion, elasticity, Poisson’s Ratio, and others.

The pipe class directive was developed to drive consistency across the platform and help the user understand the definition of each input, as well as how data can be mapped from an asset database to auto-populate inputs when a particular entity is selected for analysis.

While many calculations need common input requirements, other inputs are specific to a particular analysis. The content of the directive in each widget varies to suit the needs of the specific use case. Some examples are included in the screenshot below for your reference.

Unlike other directives, color coding of inputs is not utilized to convey whether or not the inputs agree with the relevant asset database values.

Fluid Description

The fluid description directive is used in all widgets that perform analyses where the type of fluid inside the pipe and the fluid’s properties are relevant. The fluid description directive was developed to drive consistency across the platform and help the user understand the definition of each input, as well as how data can be mapped from an asset database to auto-populate inputs when a particular entity is selected for analysis.

The fluid description directive allows the user to:

  1. Manually enter relevant data
  2. Select a “textbook” fluid from the “Internal Catalog” option and have relevant fluid properties populated from the relevant reference tables
  3. Select a fluid that was modeled in the FLUID PowerTool, and have the relevant fluid properties be calculated in the model with specific correlations and pressure/temperature envelopes

While many calculations need common input requirements, other inputs are specific to a particular analysis. The content of the directive in each widget varies to suit the needs of the specific use case. Some examples are included in the screenshot below for your reference. As with most other directives, color coding of inputs is utilized to convey whether or not the inputs agree with the relevant asset database values. While variables like specific gravity, viscosity, specific heat, etc. will be color-coded to convey agreement with asset database values, the fluid name only auto-populates and color-codes if a fluid from the FLUID PowerTool is selected.

Tutorial Videos

None at this time.

Related Links