RiverWare 7.2 Features: LBAO 1.4 SCT Tasks, July-Sept 2017
Phil Weinstein, David Neumann, Edie Zagona, CADSWES, edit 9-22-2017.
Document home: R:\doc\sct\2017\LBAO-1p4-SCT-Features.docx

This document describes the following new features developed for RiverWare 7.2:

  1. Time scrolling SCTs and other series data displays to a user-specified Symbolic DateTime:
        (a) When the model opens, and
        (b) As a script action: Global Time Scroll.
  2. Support full editing of the new Text Series Slots in SCTs.
  3. New SCT Operation Dialog: "Set Slot Values over Time Range", including Interpolation Function.
  4. Operations to set SCT slot labels to the slots' name or slot column name.

(1) Time scrolling SCTs and other Series data displays to a Symbolic DateTime: (a) when the model opens, and (b) as a script action.

RiverWare 7.2 has two new provisions for time scrolling series data displays. These operations are implemented using the existing "Global Time Scroll" mechanism which sets the value of all "time navigation" DateTime Spinners in open dialogs and is subsequently applied to such dialogs (e.g. Open Object dialogs, and SCTs) when they are first opened.

The two new provisions, described in the subsequent sections, support the specification of DateTime using a Symbolic DateTime. Note that a Symbolic DateTime specification can be the name of a Global RPL Function (a RPL Function in a Global RPL Set). And such a Global RPL Function can refer to a DateTime-unit Scalar Slot (which itself could be a Scalar Slot with RPL Expression, possibly involving a Symbolic DateTime). Note also that, in the contexts of the features proposed below, "Current Timestep" in a Symbolic DateTime expression refers to the timestep containing the current "wall clock" time.

(1A) Option in the Initial Workspace Appearance dialog to set the Global Time Scroll to a specified Symbolic DateTime.

The Initial Workspace Appearance dialog now contains a checkable "Initial Workspace Timestep" panel. See the highlighted area of that dialog in the following image, below, to the left. This dialog is accessible from the RiverWare workspace menubar: "Workspace >> Initial Appearance...".

If the Initial Workspace Timestep panel is checked, the user can provide a Symbolic DateTime formula. This Symbolic DateTime is saved with the model, in the RiverWare model file. When checked, the Symbolic DateTime is used in two distinct ways:

  1. When the model is loaded, a Global Time Scroll to the Symbolic DateTime value is effected. Navigation DateTime Spinners in RiverWare dialogs (e.g. the Object Viewer) are initialized to the most recent Global Time Scrolled DateTime.
  2. The "Global" drop down menu shown with Time-Navigation DateTime Spinners includes the Symbolic DateTime value. (This is illustrated at the end of this section).

In the Initial Workspace Appearance dialog, a drop-down menu, shown above, to the right, provides access to the following options:

      

If this Initial Workspace Symbolic DateTime is defined and enabled, its value will appear in the "Global Time Scroll" menu in time-navigation DateTime Spinner, See below. (This item is shown only if its value is distinct from the other menu items). Selecting that item sets the DateTime spinner to the indicated DateTime -- this, by itself, doesn't perform a global time scroll operation.

      

(1B) New RiverWare Script Action to set the Global Time Scroll to a specified Symbolic DateTime.

A new Global Time Scroll script action was developed. This has a Symbolic DateTime setting which can optionally be overridden in the Script Dashboard. This action effects a Global Time Scroll which "scrolls" all series data displays to the specified timestep DateTime.

The configuration of the Global Time Scroll script action includes the ability to allow or disallow editing of the Symbolic DateTime in the Script Dashboard. The illustration below shows an "Editable" Global Time Scroll action -- in both the Script Editor and the Script Dashboard:

(2) Support full editing of the new Text Series Slots in SCTs

Text Series Slots were introduced in the recent RiverWare 7.1 release. The SCT's support for this new slot type (internally, actually a mostly hidden unit type) lacked these two capabilities. These are now supported.

  1. Editing of Text Series Slot timestep values and flags.
  2. Column width operations taking into account the display width of text values.

(3) New SCT Operation Dialog: Set Values over Time Range

A new SCT "Set Values over Time Range" operation dialog allows the user to specify the end of a selected timestep time range on a slot using either a DateTime Spinner OR a Timestep Count integer spinner to either:

  1. Set all the timesteps in that range to a specified value, or
  2. Interpolate the values over that time range to that specified value. ("Interpolate" is available only when the first timestep of the time range has a non-NaN value).
      

In this initial implementation, only numeric value series slots are supported -- not DateTme or Text series slots.

As the time range is edited -- by adjusting either the "Last Timestep" DateTime spinner, or the "Timestep Count" integer spinner -- SCT series display table selection is dynamically updated to depict the edited time range, along with the computed "Selection Statistics" (at the bottom of the SCT). The end of the time range can be a timestep which is beyond the SCT's current time display range or the Slot's current time range. (Note that an SCT's series data display's time range can be configured to either match the run period, or the full extent of the displayed series slots).

The numeric value entered by the user is in the current display units of the selected series slot. The Set Values function assigns values to each timestep using user units (so, 100 acre/feet per month would represent a higher flow rate in February than in would in March). Conversely the "Interpolate To" function applies values in standard unit (with the entered value being applied to the last timestep in the time range).

The dialog is dismissed when either "Set Values" or "Interpolate To" is performed, or the "Cancel" button, or Red-X button is clicked.

To show this operation dialog, the user first clicks in a slot/timestep cell (or selects a provisional time range starting at the desired initial timestep) and selects the "Set Values over Time Range" either from the SCT's "Edit" menu, or the "context" (right-click) menu:

(4) Operations to set SCT slot labels to the slots' name or slot column name

Added to the SCT's Edit Series Slot List are the following four operations. These are applied to the selected slot items.

The following screenshot illustrates the effect of each of these four operations on all four presented slots.

Note that it wouldn't make sense to use the "Slot Column Names" option on a normal single-column series slot. Also, its important to mention here that the use case presented by the sponsor of this development was an SCT with slot items showing the Slot Column Name (the third choice). The slot names were provided as text on the higher-level divider items for each group of slot items -- columns in a single multiple-column slot.

--- (end) ---