**CONTENTS**

[**7.0** **MONITORING 7-1**](#monitoring)

[7.1 Planning 7-2](#planning)

[7.1.1 Model Changes for Facility Analyte Level (FANL)
7-2](#model-changes-for-facility-analyte-level-fanl)

[7.1.2 Facility Analyte Level Page Flow
7-2](#facility-analyte-level-page-flow)

[7.1.3 Model Changes for Monitoring Periods
7-24](#model-changes-for-monitoring-periods)

[7.1.4 TCR Monitoring Period Associations Page Flow
7-25](#tcr-monitoring-period-associations-page-flow)

[7.1.5 Model Changes for Monitoring Requirements
7-31](#model-changes-for-monitoring-requirements)

[7.1.6 Monitoring Requirements Page Flow
7-31](#monitoring-requirements-page-flow)

[7.1.7 Model Changes for Sampling Plan
7-51](#model-changes-for-sampling-plan)

[7.1.8 Sampling Plans Page Flow 7-52](#sampling-plans-page-flow)

[7.2 Sample Schedules 7-74](#sample-schedules)

[7.2.1 Model Changes Sample Schedules and Sample Schedule Groups
7-74](#model-changes-sample-schedules-and-sample-schedule-groups)

[7.2.2 TCR Schedules Page Flow 7-75](#tcr-schedules-page-flow)

[7.2.3 Non-TCR Sample Schedule Page Flow
7-93](#non-tcr-sample-schedule-page-flow)

[7.3 Monitoring Waiver 7-145](#monitoring-waiver)

[7.3.1 Model Changes for Monitoring Waiver
7-145](#model-changes-for-monitoring-waiver)

[7.3.2 Monitoring Waiver Page Flow 7-145](#monitoring-waiver-page-flow)

[7.4 Monitoring Period Transfer 7-169](#monitoring-period-transfer)

[7.4.1 Model Changes for Monitoring Period Transfer
7-169](#model-changes-for-monitoring-period-transfer)

[7.4.2 Monitoring Period Transfer Page Flow
7-169](#monitoring-period-transfer-page-flow)

[7.5 Milestone 7-177](#milestone)

[7.5.1 Model Changes for Milestones
7-177](#model-changes-for-milestones)

[7.5.2 Milestones Page Flow 7-178](#milestones-page-flow)

[7.6 Violations 7-192](#violations)

[7.6.1 Model Changes 7-192](#model-changes)

[7.6.2 Violation Page Flow 7-194](#violation-page-flow)

[7.7 Exemptions/Variances 7-277](#__RefHeading___Toc139861075)

[7.7.1 Model Changes 7-277](#__RefHeading___Toc139861076)

[7.7.2 Page Flows 7-278](#__RefHeading___Toc139861077)

**EXHIBITS**

[**Exhibit 7-1.** SDWIS/STATE Home Page
7-1](#__RefHeading___Toc139861078)

[**Exhibit 7-2.** Facility Analyte Level Search
7-3](#__RefHeading___Toc139861079)

[**Exhibit 7-3.** Facility Analyte Level Maintenance List
7-7](#__RefHeading___Toc139861080)

[**Exhibit 7-4.** Delete Facility Analyte Level
7-9](#__RefHeading___Toc139861081)

[**Exhibit 7-5.** Deletion Referenced by MDBP Summary Advisory
7-9](#__RefHeading___Toc139861082)

[**Exhibit 7-6.** Deletion Referenced by Validated or Preliminary
Violation 7-10](#__RefHeading___Toc139861083)

[**Exhibit 7-7.** Facility Analyte Level Maintenance
7-13](#__RefHeading___Toc139861084)

[**Exhibit 7-8.** Level Violation Type Not Supplied Advisory
7-21](#__RefHeading___Toc139861085)

[**Exhibit 7-9.** M&R Violation Type Not Supplied Advisory
7-21](#__RefHeading___Toc139861086)

[**Exhibit 7-10.** Analyte Code Advisory
7-22](#__RefHeading___Toc139861087)

[**Exhibit 7-11.** Duplicate Check Error
7-22](#__RefHeading___Toc139861088)

[**Exhibit 7-12.** Associate Monitoring Period Verification
7-26](#__RefHeading___Toc139861089)

[**Exhibit 7-13.** TCR Monitoring Period Associations by Water System
7-27](#__RefHeading___Toc139861090)

[**Exhibit 7-14.** Monitoring Period by WS Selection List
7-29](#__RefHeading___Toc139861091)

[**Exhibit 7-15.** Monitoring Requirement Search
7-32](#__RefHeading___Toc139861092)

[**Exhibit 7-16.** Monitoring Requirement Maintenance List
7-36](#__RefHeading___Toc139861093)

[**Exhibit 7-17.** Monitoring Requirement Delete Confirmation
7-39](#__RefHeading___Toc139861094)

[**Exhibit 7-18.** Monitoring Requirement Maintenance
7-42](#__RefHeading___Toc139861095)

[**Exhibit 7-19.** Code of Regulation Selection List
7-50](#__RefHeading___Toc139861096)

[**Exhibit 7-20.** Sampling Plan Maintenance List
7-52](#__RefHeading___Toc139861097)

[**Exhibit 7-21.** Delete Sampling Plan
7-54](#__RefHeading___Toc139861098)

[**Exhibit 7-22.** Sampling Plan Maintenance
7-56](#__RefHeading___Toc139861099)

[**Exhibit 7-23.** Duplicate Association (Single Occurrence)
7-61](#__RefHeading___Toc139861100)

[**Exhibit 7-24.** Duplicate Association (Multiple Occurrence)
7-61](#__RefHeading___Toc139861101)

[**Exhibit 7-25.** Delete Sampling Plan to Sampling Point Association
7-63](#__RefHeading___Toc139861102)

[**Exhibit 7-26.** Sampling Plan/Sampling Point Association Maintenance
7-68](#__RefHeading___Toc139861103)

[**Exhibit 7-27.** Delete Planned Collection Date
7-69](#__RefHeading___Toc139861104)

[**Exhibit 7-28.** Planned Collection Date Maintenance
7-72](#__RefHeading___Toc139861105)

[**Exhibit 7-29.** Rule Selection List
7-74](#__RefHeading___Toc139861106)

[**Exhibit 7-30.** TCR Sample Schedule Search
7-75](#__RefHeading___Toc139861107)

[**Exhibit 7-31.** TCR Sample Schedule Maintenance List
7-78](#__RefHeading___Toc139861108)

[**Exhibit 7-32.** Delete Confirmation
7-80](#__RefHeading___Toc139861109)

[**Exhibit 7-33.** Existing Violation Message
7-81](#__RefHeading___Toc139861110)

[**Exhibit 7-34.** TCR Sample Schedule Maintenance
7-83](#__RefHeading___Toc139861111)

[**Exhibit 7-35.** TCR Schedules Overlap Check Example Scenarios
7-89](#__RefHeading___Toc139861112)

[**Exhibit 7-36.** Schedule Not Associated to Positive Result
7-90](#__RefHeading___Toc139861113)

[**Exhibit 7-37.** Originating Positive Sample Result Selection List
7-92](#__RefHeading___Toc139861114)

[**Exhibit 7-38.** Non-TCR Sample Schedule Search
7-95](#__RefHeading___Toc139861115)

[**Exhibit 7-39.** Non-TCR Sample Schedule Maintenance List
7-99](#__RefHeading___Toc139861116)

[**Exhibit 7-40.** Non-TCR Sample Schedule Delete Confirmation
7-102](#__RefHeading___Toc139861117)

[**Exhibit 7-41.** Schedule Package Maintenance List
7-106](#__RefHeading___Toc139861118)

[**Exhibit 7-42.** Supporting Sample Schedule Disassociate Confirmation
7-107](#__RefHeading___Toc139861119)

[**Exhibit 7-43.** Schedule Package Association List
7-111](#__RefHeading___Toc139861120)

[**Exhibit 7-44.** Non-TCR Sample Schedule Maintenance
7-115](#__RefHeading___Toc139861121)

[**Exhibit 7-45.** CDS Will Not Evaluate One-Time Periodicity
7-118](#__RefHeading___Toc139861122)

[**Exhibit 7-46.** Sampling Point Subschedule Maintenance
7-123](#__RefHeading___Toc139861123)

[**Exhibit 7-47.** Overlap Schedule Warning
7-132](#__RefHeading___Toc139861124)

[**Exhibit 7-48.** No Matching MP Web Page Dialog Box
7-133](#__RefHeading___Toc139861125)

[**Exhibit 7-49.** No Violation Type Web Page Dialog Box
7-134](#__RefHeading___Toc139861126)

[**Exhibit 7-50.** Originating Sample Result Selection List
7-136](#__RefHeading___Toc139861127)

[**Exhibit 7-51.** Originating Sample Result Information
7-137](#__RefHeading___Toc139861128)

[**Exhibit 7-52.** Confirmation Schedule Not Associated to Result
7-140](#__RefHeading___Toc139861129)

[**Exhibit 7-52a.** Analyte Selection
7-141](#__RefHeading___Toc139861130)

[**Exhibit 7-53.** Schedule Group Analyte List
7-142](#__RefHeading___Toc139861131)

[**Exhibit 7-54.** Close Hidden Schedule/Create Exception Analyte
7-144](#__RefHeading___Toc139861132)

[**Exhibit 7-55.** Monitoring Waiver Search
7-146](#__RefHeading___Toc139861133)

[**Exhibit 7-56.** No Monitoring Requirement
7-150](#__RefHeading___Toc139861134)

[**Exhibit 7-57.** No Monitoring Waiver
7-154](#__RefHeading___Toc139861135)

[**Exhibit 7-58.** Monitoring Waiver Maintenance List
7-155](#__RefHeading___Toc139861136)

[**Exhibit 7-59.** Delete Monitoring Waiver
7-157](#__RefHeading___Toc139861137)

[**Exhibit 7-60.** Monitoring Waiver Maintenance
7-159](#__RefHeading___Toc139861138)

[**Exhibit 7-61.** Disassociate Water System Confirmation
7-164](#__RefHeading___Toc139861139)

[**Exhibit 7-62.** Disassociate Sampling Point Confirm
7-165](#__RefHeading___Toc139861140)

[**Exhibit 7-63.** No Monitoring Requirement
7-166](#__RefHeading___Toc139861141)

[**Exhibit 7-64.** Overlap Confirm 7-168](#__RefHeading___Toc139861142)

[**Exhibit 7-65.** Monitoring Period Transfer Search
7-170](#__RefHeading___Toc139861143)

[**Exhibit 7-66.** Rule Selection List
7-173](#__RefHeading___Toc139861144)

[**Exhibit 7-67.** Monitoring Period Selection List
7-174](#__RefHeading___Toc139861145)

[**Exhibit 7-68.** Monitoring Period Transfer Maintenance
7-175](#__RefHeading___Toc139861146)

[**Exhibit 7-69.** Milestone Event Search
7-178](#__RefHeading___Toc139861147)

[**Exhibit 7-70.** Milestone Event Maintenance List
7-181](#__RefHeading___Toc139861148)

[**Exhibit 7-71.** Milestone Confirm Advisory
7-183](#__RefHeading___Toc139861149)

[**Exhibit 7-72.** Milestone Delete Confirmation
7-184](#__RefHeading___Toc139861150)

[**Exhibit 7-73.** Milestone Event Maintenance
7-186](#__RefHeading___Toc139861151)

[**Exhibit 7-74.** Data Origin Confirmation
7-187](#__RefHeading___Toc139861152)

[**Exhibit 7-75.** PB90/CU90 Milestone Confirmation Advisory
7-190](#__RefHeading___Toc139861153)

[**Exhibit 7-76.** Milestone Confirmation Advisory
7-191](#__RefHeading___Toc139861154)

[**Exhibit 7-77.** Violation Search 7-195](#__RefHeading___Toc139861155)

[**Exhibit 7-78.** Violation Maintenance List
7-205](#__RefHeading___Toc139861156)

[**Exhibit 7-79.** Apply Standard Response
7-207](#__RefHeading___Toc139861157)

[**Exhibit 7-80**. Delete Violation 7-208](#__RefHeading___Toc139861158)

[**Exhibit 7-80a.** Delete Violation Group
7-210](#__RefHeading___Toc139861159)

[**Exhibit 7-80b.** Specify User Attributes
7-212](#__RefHeading___Toc139861160)

[**Exhibit 7-81.** Violation Validation
7-216](#__RefHeading___Toc139861161)

[**Exhibit 7-82.** Violation Rejection Remarks
7-218](#__RefHeading___Toc139861162)

[**Exhibit 7-83.** Violation Maintenance
7-221](#__RefHeading___Toc139861163)

[**Exhibit 7-84.** Delete Violation Confirmation
7-232](#__RefHeading___Toc139861164)

[**Exhibit 7-84a.** Rule Selection List
7-235](#__RefHeading___Toc139861165)

[**Exhibit 7-85.** Code of Regulation Selection List
7-236](#__RefHeading___Toc139861166)

[**Exhibit 7-86.** Violation/Violation Group Duplicate by Number Error
Message 7-244](#__RefHeading___Toc139861167)

[**Exhibit 7-87.** Violation Duplicate Encountered Advisory
7-245](#__RefHeading___Toc139861168)

[**Exhibit 7-88.** Violation Duplicate Advisory
7-246](#__RefHeading___Toc139861169)

[**Exhibit 7-89.** Hidden Violation Duplicate Encountered Advisory
7-247](#__RefHeading___Toc139861170)

[**Exhibit 7-90.** Violation Federal Duplicate Advisory
7-248](#__RefHeading___Toc139861171)

[**Exhibit 7-91.** Create SOX/EOX Advisory
7-249](#__RefHeading___Toc139861172)

[**Exhibit 7-92.** Violation Sample Schedule Association
7-250](#__RefHeading___Toc139861173)

[**Exhibit 7-93.** Violation Chem/Rad Association List
7-251](#__RefHeading___Toc139861174)

[**Exhibit 7-94.** Violation Chem/Rad Selection List
7-252](#__RefHeading___Toc139861175)

[**Exhibit 7-95.** Sample Collection Date Range
7-254](#__RefHeading___Toc139861176)

[**Exhibit 7-96.** Violation Microbiological Result Association List
7-257](#__RefHeading___Toc139861177)

[**Exhibit 7-97.** Microbiological Results Selection List
7-258](#__RefHeading___Toc139861178)

[**Exhibit 7-98.** Violation MDBP Summary Association
7-261](#__RefHeading___Toc139861179)

[**Exhibit 7-99.** Violation Sampling Point Association List
7-263](#__RefHeading___Toc139861180)

[**Exhibit 7-100.** Violation Facility Analyte Level Association
7-265](#__RefHeading___Toc139861181)

[**Exhibit 7-101.** Violation Deficiency Association
7-267](#__RefHeading___Toc139861182)

[**Exhibit 7-102.** PN Violation Association List
7-269](#__RefHeading___Toc139861183)

[**Exhibit 7-103.** Violation PN Schedule Activity Association List
7-272](#__RefHeading___Toc139861184)

[**Exhibit 7-103a.** PN Schedule Activity Selection List
7-273](#__RefHeading___Toc139861185)

[**Exhibit 7-104.** Violation Compliance Schedule Activity Association
List 7-275](#__RefHeading___Toc139861186)

[**Exhibit 7-105.** Compliance Schedule Activity Selection List Dialog
Box 7-276](#__RefHeading___Toc139861187)

[**Exhibit 7-106.** Exemption/Variance Search
7-279](#__RefHeading___Toc139861188)

[**Exhibit 7-107.** Exemption/Variance Maintenance List
7-283](#__RefHeading___Toc139861189)

[**Exhibit 7-108.** Exemption/Variance Delete Confirmation
7-285](#__RefHeading___Toc139861190)

[**Exhibit 7-109.** Exemption/Variance Maintenance
7-287](#__RefHeading___Toc139861191)

# MONITORING

The *Monitoring* component enables access to information regarding the
sampling plans, schedules, waivers, and resulting violations for water
systems. The following items will be available under the *SDWIS/STATE
Home Page Monitoring* (Exhibit 7-1) menu item:

-   Planning

-   Sample Schedules

-   Monitoring Waivers

-   Monitoring Period Transfer

-   Milestone

-   Violations

-   Exemption/Variances (R5000:A.7.0.a)

  ---------------------------------------------------- ----------------------------------------------------
  ![](media/image1.png){width="1.5979166666666667in"   ![](media/image2.png){width="4.723611111111111in"
  height="4.325in"}                                    height="3.047222222222222in"}

  ---------------------------------------------------- ----------------------------------------------------

[]{#__RefHeading___Toc139861078 .anchor}**Exhibit 7-1.** SDWIS/STATE
Home Page

## Planning

The *Planning* sub-menu item enables access to information regarding the
requirements and planning for water system's sampling. The menu items
available under the Planning sub-menu item will be:

-   Facility Analyte Levels

-   TCR Monitoring Period Associations

-   Monitoring Requirements

-   Sampling Plans

### Model Changes for Facility Analyte Level (FANL)

Add Permitted values to FACILITY_ANALYTE_LEVEL (TMNFANL) uom_code:

> COL/100ML -- Colonies Per 100 ml (R2004:A.7.1.1.a)

### Facility Analyte Level Page Flow

####  Facility Analyte Level Search

When the user selects **Facility Analyte Levels** from *the SDWIS/STATE
Home Page* *Monitoring/Planning* menu item, the Facility Analyte Level
Search page (Exhibit 7-2) will be presented where search criteria can be
specified. Users can specify Analyte Level information, Water System
information, both, or neither.

![](media/image3.png){width="5.925694444444445in"
height="4.905555555555556in"}

[]{#__RefHeading___Toc139861079 .anchor}**Exhibit 7-2.** Facility
Analyte Level Search

[Protected Fields]{.underline}:

*\[Water System*

*Name\]* The name of the selected water system.

*\[Water System Facility*

*Name\]* The name of the selected WSF State Asgn ID.

*\[Analyte Name\]* The name of the provided Analyte Code.

[Entry Fields]{.underline}:

*Water System No.* The Water System No., which consists of the
two-character state code plus the seven-character number field.

> The state code portion will default to the state_identification_code
> in the SYSTEM_VARIABLE entity view.

The following functions will be performed upon tabbing off the entry
field:

-   If a valid number matching a water system available in the user's
    current water system group is entered, the name of the water system
    will display and the WSF State Asgn ID field will be enabled.

```{=html}
<!-- -->
```
-   If the entered Water System No. is not an exact match or the exact
    match is not a member of the current water system group, the Water
    System Maintenance List will be invoked in single-select mode. The
    list will be limited to those water systems that are members of the
    user\'s current water system group. If a partial number string was
    entered, it will be used as the starting point for the resulting
    list of water systems and the result set will be for water systems
    with numbers greater than the value entered.

```{=html}
<!-- -->
```
-   When a selection is made and returned to the Facility Analyte Level
    Search page, the water system name will display and the WSF State
    Asgn ID field will be enabled. If a prior value existed in the WSF
    State Asgn ID field, it will be removed. If no water system
    selection is made, the WSF State Asgn ID field will remain
    protected. If a valid Water System No. existed previous to the
    display of the Water System Maintenance list and no selection was
    made, the value will remain as is.

    The Water System Maintenance List is described in detail in Section
    4.0, Inventory.

    This will be an optional field.

*WSF State Asgn ID* When available for data entry, a value may be
entered to represent a WSF\'s State Asgn ID for the water system
designated in the prior field. The following actions will be performed
upon tabbing off the entry field:

> If an exact match is found, the name of the WSF will be displayed.
>
> If one is not found, the Water System Facility Maintenance List will
> be invoked in single-select mode from which the user can choose and
> return to the search page. All WSFs for the selected water system will
> be listed.

This will be an optional field.

*Analyte Code* A valid analyte code may be entered. The following
actions will be performed upon tabbing off the entry field:

-   If the entered value matches an analyte code, the analyte name will
    display.

> If a value was entered that does not match, the following
> informational message will be invoked: **The analyte does not exist in
> the database.** After selecting **OK**, the Analyte Search page will
> be invoked. Criteria may be entered to narrow the resulting list of
> analytes that will be displayed on the Analyte Maintenance List page
> invoked in single-select mode.

This will be an optional field.

*Control Level Type* A control level type may be selected from the
dropdown list that will be used to include only Facility Analytes with
the same control level type. Valid values will be:

Min (minimum).

Max (maximum).

95 Percentile.

Average.

> This will be an optional field.

[Tab Sequence]{.underline}:

Water System No., Water System No. **Go To**, WSF State Asgn ID, WSF
State Asgn ID **Go To**, Analyte Code, Analyte Code **Go To**, Control
Level Type, **Search**, **Clear**, **Cancel**, **Help**.

[Buttons]{.underline}:

Water System

**Go To** Will invoke the Water System Maintenance List in single-select
mode where a water system may be selected from the water systems that
are part of the user's current water system group.

Water System

Facility **Go To** Will invoke the Water System Facility Maintenance
List in single-select mode where a WSF may be selected from the WSFs
that are part of the selected water system. This button will be enabled
only if a water system has been selected.

Analyte

**Go To** Will invoke the Analye Maintenance List in single-select mode
where an analyte may be selected.

**Search** Will utilize the provided search criteria and invoke the
results on the Facility Analyte Maintenance List.

If no criteria are specified, all FANLs for all water systems,
facilities, analytes, and control level types will be returned.

If Water System No. is entered, only FANLs for the provided water system
will be returned.

If Water System No. and WSF State Asgn ID are entered, only FANLs for
the provided water system and water system facility will be returned.

If Analyte Code is entered, only FANLs for the provided analyte will be
returned.

If Control Level Type is selected, only FANLs for the provided control
level type will be returned.

The following combinations of criteria may be provided:

Water System No.

Analyte Code

Control Level Type

Water System No. and WSF State Asgn ID

Water System No., WSF State Asgn ID and Analyte Code

> Water System No., WSF State Asgn ID, Analyte Code, and Control Level
> Type
>
> Water System No., WSF State Asgn ID, and Control Level Type
>
> Water System No. and Analyte Code
>
> Water System No. and Control Level Type
>
> Water System No., Analyte Code, and Control Level Type
>
> Analyte Code and Control Level Type

**Clear** Will clear all values entered and displayed on the search
page.

**Cancel** Will return to the *SDWIS/STATE Home Page*.

**Help** Will invoke online Help for this page.

####  Facility Analyte Level Maintenance List

Records retrieved from the analyte search will be displayed on the
Facility Analyte Level Maintenance List (Exhibit 7-3). The menu items,
columns, and protected fields for the Facility Analyte Level Maintenance
List are described below.

![](media/image4.png){width="5.995138888888889in"
height="4.877777777777778in"}

[]{#__RefHeading___Toc139861080 .anchor}**Exhibit 7-3.** Facility
Analyte Level Maintenance List

[List Columns]{.underline}:

Water System No., WSF State Asgn ID, Analyte Code, Control Level Type,
Level, UOM, Days to Monitor Per Month, Samples required per Day,
Effective Begin Date, Effective End Date, Individual Filter Monitoring
Flag, MDPB Summary Type (concatenation of Permitted Value 4-character
Text Value and longer Description), MDBP Summary Check Flag, M&R
Violation Type, Level Violation Type, Water System Name, Facility Name,
Analyte Name, M&R Violation Name, and Level Violation Name.

[Menu Items]{.underline}:

**File**

> *Exit* Selecting **File/Exit** will return the user to the
> *SDWIS/STATE Home Page.*

**Edit**

> *Add* Selecting **Edit/Add** will display the Facility Analyte Level
> Maintenance page in Add mode. This option will be enabled regardless
> of a record having been highlighted in the list area. If a Water
> System No. was utilized in the search criteria, it will be passed to
> the Facility Analyte Level maintenance page. If a WSF State Asgn ID
> was utilized in the search criteria, it will be passed to the Facility
> Analyte Level maintenance page. If the Analyte Code was utilized in
> the search criteria, it will be passed to the Facility Analyte Level
> maintenance page.
>
> *Change* Selecting **Edit/Change** will display the Facility Analyte
> Level Maintenance page with the selected FANL record. This option will
> be enabled only when a record has been highlighted.
>
> *Delete* Selecting **Edit/Delete** will display a delete confirmation
> page (Exhibit 7-4) for the selected record. This option will be
> enabled only when a record has been highlighted.
>
> Selecting **Yes** will delete the Facility Analyte Level and return to
> the Facility Analyte Level Maintenance List with this row removed from
> the display.
>
> Selecting **No** will abort the delete request and return to the
> Facility Analyte Level Maintenance List.
>
> ![](media/image5.png){width="5.447916666666667in"
> height="4.645833333333333in"}

[]{#__RefHeading___Toc139861081 .anchor}**Exhibit 7-4.** Delete Facility
Analyte Level

> If the Facility Analyte Level selected for deletion is referenced by
> an MDBP Summary, the following advisory (Exhibit 7-5) will be
> presented.
>
> ![](media/image6.png){width="3.53125in" height="2.1666666666666665in"}

[]{#__RefHeading___Toc139861082 .anchor}**Exhibit 7-5.** Deletion
Referenced by MDBP Summary Advisory

> If the Facility Analyte Level selected for deletion is referenced by a
> validated or preliminary violation, the following advisory (Exhibit
> 7-6) will be presented.
>
> ![](media/image7.png){width="3.53125in" height="2.1666666666666665in"}

[]{#__RefHeading___Toc139861083 .anchor}**Exhibit 7-6.** Deletion
Referenced by Validated or Preliminary Violation

> If the Facility Analyte Level selected for deletion is referenced by
> an Exemption/Variance, the message will be: **This Facility Analyte
> Level is referenced by an** **Exemption/Variance** **and cannot be
> deleted.** (R5000:A.7.1.2.2.a)
>
> *Select* The **Edit/Select** menu item will be enabled only when the
> list is invoked as a selection list.
>
> When invoked from Violation Maintenance (specifically, from Violation
> Facility Analyte Level Association List). Selecting **Edit/Select**
> will trigger the creation of an association between the Violation and
> the selected FANL.
>
> Once the user has highlighted one or more FANL and pressed **Select**,
> the page will close and return the user to the invoking page with the
> selected FANL. (R5000:A.7.1.2.2.b)

**View**

> *Search* Selecting **View/Search** will invoke the Facility Analyte
> Level Search. Prior search criteria entered will be presented.
>
> *Sort* Selecting **View/Sort** will invoke the standard Sort options.
> Three levels of sorting will be supported.
>
> *Filter by* The user may filter by Water System No., WSF Assigned ID,
> Analyte Code, Effective Begin Date, Effective End Date, Control Level
> Type, Level and UOM, Individual Filter Flag, MDBP Summary Check Flag,
> M&R Violation Type, Level Violation Type, Water System Name, Facility
> Name, or Analyte Name.
>
> Use of this menu item will enable the **View/Refresh** menu item and
> alter the count of Number of rows displayed.
>
> *Refresh* Selecting **View/Refresh** will retrieve the unfiltered list
> (original search criteria).

**Help** Will invoke the online system help.

[Buttons:]{.underline}

**Menu Items** Will present the standard menu items dialog box.

**Scroll Buttons** Will scroll the list box in the direction of the
arrow displayed on the button.

[Default Sort Order]{.underline}:

The list will be sorted Water System No. ascending, WSF State Asgn ID
ascending, Analyte Code ascending, Control Level Type descending, and
Effective Begin Date ascending.

[Protected Fields]{.underline}:

*Number of rows*

*resulting from search*

*criteria entered* Will show the total number of rows that met the
search criteria.

*Number of rows*

*displayed* Will show the total number of rows that are displayed in the
list, which may be less than the number of rows that met the search
criteria.

####  Facility Analyte Level Maintenance

The Facility Analyte Level Maintenance page (Exhibit 7-7) will enable
users to add or change facility analyte levels.

Under the Lead and Copper Rule, primacy agencies periodically designate
a minimum, maximum, or range of values for a given analyte and treatment
plant or entry point to the distribution system. These are called either
Water Quality Control Parameters (WQCP) or Maximum Permissible Limits,
depending on why and what level was set. Both of these levels for a
water system facility are maintained by the Facility Analyte Level
Maintenance window.

Under the set of rules for surface water treatment (Turbidity, Surface
Water Treatment Rules \[SWTR\], Interim Enhanced \[SWTR\], and Long Term
1 \[SWTR\]), surface water treatment plants must meet turbidity levels
for each single sample, for the average of samples collected during one
day, for 95% of samples collected in one month, and at individual
filters. Additionally, minimum disinfectant levels must be maintained at
the entry point and in the distribution system. The monitoring
requirements and levels for both state and federal regulations, which
vary based on the type and size of treatment plant, will be maintained
by the Facility Analyte Level Maintenance window. As newer rules become
effective for a given WSF, the existing record should be closed by
entering an effective end date and a new record added, with an effective
begin date one day later than the close date of the existing record.

Under the Disinfectant/Disinfection By-Products (D/DBP) rule, all water
systems must meet maximum disinfectant, total trihalomethanes (TTHM),
and total haloacetic acids (HAA5) levels. Additionally, surface water
plants must meet DBP precursor levels. All levels for both state and
federal regulations and requirements for chlorine dioxide and chlorite
entry point monitoring will be maintained by the Facility Analyte Level
Maintenance window. Monitoring requirements will be maintained by the
TCR schedule for chlorine and chloramine in the distribution system and
the Non-TCR Schedule Maintenance window for chlorine dioxide and
chlorite in the distribution system, and all monitoring for TTHMs,
HAA5s, TOC, and alkalinity.

The Results Alert Report, TTHM/HAA Maximum Contaminant Level (MCL) CDS
Determination, and Compliance Reports for Lead and Copper Maximum
Permissible Level Treatment Technique (TT), Water Quality Parameter TT,
Surface Water Treatment TT and Monitoring and Reporting (M&R) and
Disinfectant/Disinfection By-Products M&R and TT depend on the
maintenance of data in this page.

![](media/image8.png){width="5.996527777777778in"
height="5.207638888888889in"}

[]{#__RefHeading___Toc139861084 .anchor}**Exhibit 7-7.** Facility
Analyte Level Maintenance

[Protected Fields]{.underline}:

*Water System Name* Name of the water system.

*\[Water System*

*Facility Name\]* Name of the provided WSF State Asgn ID.

*\[Analyte Name\]* Name of the analyte.

*\[Level Violation*

*Type Name\]* Name of the level violation type.

*\[M&R Violation*

*Type Name\]* Name of the M&R violation type.

[Entry Fields]{.underline}:

*Water System No.* Will present the Water System number as two fields
representing the two-character state code and the seven-character
number.

In change mode these two fields will be populated and protected.

In add mode the two-character state code will be pre-populated with the
system default state code (TINPRT where installed_indicator_code = 1).
Both fields are required and must represent a valid water system number
contained within the user's current water system group/regulating agency
assignment.

When the value in either field is changed and the combination does not
represent a valid water system number, the name will be blank and the
Water System Maintenance List will be presented in single-select mode
listing only water systems contained within the user's current water
system group/regulating agency assignment.

If the value in either field is changed and the combination represents a
valid water system number that is not contained within the user's
current water system group/regulating agency assignment, the name will
be blank and the error message will be WS is not part of current
group/agency. Change group/agency to access this WS.

If the combination of both fields represents a valid water system number
that is contained within the user's current water system
group/regulating agency assignment, the name will be populated.

When the Water System No. is changed, the name will be removed, the WSF
State Asgn ID will be removed and the field and Go To button protected
until a new, valid Water System No. is provided.

*WSF State Asgn ID* The user will provide the State Asgn ID of the WSF
for which the user wishes to create the facility analyte level. The **Go
To** button can be used to select a valid WSF from a list.

WSF State Asgn ID will be a required field.

> This field will be protected in Change mode. In Add-mode, this field
> will be protected until a valid Water System No. is provided.

Analyte Level Group Box:

> *Analyte Code* The user may enter a valid Analyte Code or use the **Go
> To** button to display the Analyte Maintenance List in single-select
> mode. As the user enters/changes a value and tabs off the Analyte Code
> field, the software will check that the supplied Analyte is valid then
> populate the retrieved Analyte's Name value in the protected Analyte
> Name field.
>
> Analyte Code will be a required field.
>
> If the supplied Analyte does not exist in the database, the software
> will not supply a message but will directly invoke the Analyte
> Maintenance List in single-select mode from where the user may select
> a valid analyte.
>
> If the user enters Analyte Code 2920 (Total Organic Carbon) or selects
> it from the Analyte Maintenance List, the software should default the
> following values:
>
> Field Control Level Type---Min.
>
> Field Control Level---1.0.
>
> Field Level UOM---Ratio.
>
> This field will be protected in Change mode.
>
> *Begin Date* The first date for which the facility analyte level is
> effective.

Begin Date will be a required field.

> *End Date* The user may optionally enter the last date that the
> facility analyte level is effective.
>
> *Control Level Type* Permitted values will be MAX (Maximum), MIN
> (Minimum), AVG (Average), 95P (95 Percent), RCB (Reliably and
> Consistently Below the MCL level) and SCR (Screening level). This
> field will be defaulted to MAX. This field will be protected if the
> Facility Analyte Level record is associated with one or more MDBP
> Summary records.

Control Level Type will be a required field.

*Level* and \[*Level*

> *Unit of Measure*\] Text value that captures the measure and the unit
> of measure. These fields will be protected if the Facility Analyte
> Level record is associated with one or more MDBP Summary records.

The permitted values in the Unit of Measure will be:

ADMI Units

> Aggressive Index
>
> Cm-1
>
> COL/100ML (R2004:A.7.1.2.3.a)
>
> color units
>
> CT
>
> deg. C
>
> deg . F
>
> Ftu
>
> GPD
>
> Langelier Index
>
> lbs/gal
>
> lbs/cubic ft
>
> MFL
>
> MGD
>
> mg/L
>
> micromhos/cm
>
> mrem
>
> mrem ede/yr
>
> ng/L
>
> nm
>
> NTU
>
> Obsvns
>
> pCi/L
>
> pH

Ratio

> Su
>
> TON
>
> ug/L
>
> \% luminance
>
> \% purity

Level will be a required field.

Monitoring Parameters Group Box:

*Days to monitor*

> *per month* The user may optionally enter a numeric value (1 to 31)
> that specifies the default number of days (to monitor) per month to be
> displayed in the MDBP Summary Maintenance page. A value of "31" would
> be interpreted by the software to mean everyday.

This will be an optional field.

*Samples required*

> *per day* The user may optionally enter a numeric value that specifies
> the default number of required samples per day to be displayed in the
> MDBP Summary Maintenance page. A value of "24" would be interpreted by
> the software to mean continuous or every hour.

This will be an optional field.

*Individual filter*

> *monitoring required* Permitted values will be "Yes," "No," or spaces.
> This field applies to 95^th^ percentile levels and is enabled for
> entry only if the Control Level Type selected is "95P."

This will be an optional field.

> *Note: While this field is optional, it must be valued for CDS
> processes to determine individual filter monitoring violations.*

Violation Types for Compliance Check Group Box:

*Level Violation Type* The user may enter a valid Level Violation Type
or use the **Go To** button to display the Violation Type Maintenance
List in single-select mode that will be sorted by ascending type. For
federally owned violation types, (state_cd = 'HQ"), only violation types
of category Maximum Contaminant Level (MCL) or Treatment Technique (TT)
will be listed. For state owned violation types, (state_cd not = "HQ")
only those whose category is Maximum Contaminant Level (MCL), Treatment
Technique (TT) or spaces will be listed. As the user enters/changes a
value and tabs off the Level Violation Type field, the software will
check that the supplied Violation Type is valid, and then populate the
retrieved Violation Type's Name value in the corresponding protected
field. If the supplied Level Violation Type does not exist in the
database, the software will not supply a message but will directly
invoke the Violation Type Maintenance List in single-select mode, from
which the user may select a valid Level Violation Type.

This will be an optional field.

> **Note:** While this field is optional, it must be valued for CDS
> processes to determine level compliance.

*M&R Violation Type* The user may enter a valid M&R Violation Type or
use the **Go To** button to display the Violation Type Maintenance List
in single-select mode, which will be sorted by ascending type. For
federally owned Violation Types (those whose St\_ Code = HQ), only
violation types of category (Monitoring (MON) or Reporting (RPT)) and
whose Severity Level is either (null or Major \[MJ\]) should be listed.
For state-owned violation types, (those whose St\_ Code is other than
HQ), only violation types of category (Monitoring (MON) or Reporting
(RPT) or spaces) and Severity Level of either (spaces or Major (MJ))
will be listed. As the user enters/changes a value and tabs off the M&R
Violation Type field, the software will check that the supplied
Violation Type is valid and then populate the retrieved Violation Type's
Name value in the corresponding protected fields.

> If the supplied M&R Violation Type does not exist in the database, the
> software will not supply a message but will directly invoke the
> Violation Type Maintenance List in single-select mode from which the
> user may select a valid M&R Violation Type.

This will be an optional field.

> **Note:** While this field is optional, it must be valued for CDS
> processes to determine monitoring compliance.

*Check MDBP*

*Summaries* The user may optionally indicate that *CDS* processes should
check MDBP Summary records to determine compliance at the Facility
Analyte Level. Permitted values will be "Yes," "No," or spaces.

This will be an optional field.

*MDBP Summary*

*Type* This field will be enabled when the Check MDBP Summaries flag is
set to "Yes." The user may optionally specify which type of MDBP Summary
to check during compliance determination. This field will map to
attribute Summary_Type_Code_CV (of entity FACILITY_ANALYTE_LEVEL). This
field will be a dropdown list box with the following values retrieved
from the permitted values table (code name = 'TSAMDBPS1'):

-   AVGT - CFE Average Turbidity.

```{=html}
<!-- -->
```
-   MAXT - CFE Maximum Turbidity.

```{=html}
<!-- -->
```
-   95PT - CFE95% Turbidity.

```{=html}
<!-- -->
```
-   IFT - Individual Filter Effluent Turbidity.

```{=html}
<!-- -->
```
-   EPRD - Entry Point RDC.

```{=html}
<!-- -->
```
-   SERD - State EP RDC.

```{=html}
<!-- -->
```
-   CLO2 - EP Chlorine Dioxide.

```{=html}
<!-- -->
```
-   CLO3 - EP Chlorite.

```{=html}
<!-- -->
```
-   DSRD - Distribution RDC.

```{=html}
<!-- -->
```
-   SDRD - State Distribution RDC.

```{=html}
<!-- -->
```
-   MRDL - Chlorine/Chloramine MRDL.

```{=html}
<!-- -->
```
-   OTHR - Other.

This will be an optional field.

[Tab Sequence:]{.underline}

Water System No., WSF State Asgn ID, WSF State Asgn ID **Go To** button,
Analyte Code, Analyte Code **Go To** button, Begin Date, End Date,
Control Level Type, Level, Level Unit of Measure, Days to Monitor per
Month, Samples Required per Day, Individual filter monitoring required,
Level Violation Type, Level Violation Type **Go To** button, M&R
Violation Type, **Go To** button, Check MDBP Summaries, MDBP Summary
Type**Go To** , **OK** button, **Cancel** button, **Help** button.

[Buttons:]{.underline}

Water System No.

**Go To** Pressing this button will invoke the Water System Maintenance
List in single-select mode. The list will be limited to those water
systems included in the users current water system group designation.
This button will not be available in change mode.

WSF State Asgn

ID **Go To** Pressing this button will invoke the Water System Facility
Maintenance List in single-select mode. The list of Water System
Facilities for the selected Water System will be sorted by ascending WSF
State Asgn ID. This button will not be available in add-mode until a
valid Water System No. had been provided. This button will not be
available in change mode.

Level Violation

Type **Go To** Pressing this button will invoke the Violation Type
Maintenance List in single-select mode, sorted by ascending type. For
federally owned violation types, (state_cd = 'HQ"), only violation types
of category Maximum Contaminant Level (MCL) or Treatment Technique (TT)
will be listed. For state owned violation types, (state_cd not = "HQ")
only those whose category is Maximum Contaminant Level (MCL), Treatment
Technique (TT) or spaces will be listed. The selected Violation Type
populates the Level Violation Type fields.

M&R Violation

Type **Go To** Pressing this button will invoke the Violation Type
Maintenance List in single-select mode, sorted by ascending type. For
federally owned Violation Types (those whose St\_ Code = HQ), only
violation types of category (Monitoring (MON) or Reporting (RPT)) and
whose Severity Level is either (null or Major \[MJ\]) should be listed.
For state-owned violation types, (those whose St\_ Code is other than
HQ), only violation types of category (Monitoring (MON) or Reporting
(RPT) or spaces) and Severity Level of either (null or Major (MJ)) will
be listed. The selected Violation Type will populate the M&R Violation
Type fields.

**OK** When the user presses this button:

-   If either of the water system number fields is blank, the error
    message will be **Water System No. must not be blank.**

-   If WSF State Asgn ID is not supplied, the following error message
    will be invoked: **WSF State Asgn ID is a required field.** Return
    cursor to WSF State Asgn ID.

```{=html}
<!-- -->
```
-   If Analyte Code is not supplied, the following error message will be
    invoked: **Analyte Code is required field.** Return cursor to
    Analyte Code.

```{=html}
<!-- -->
```
-   If Begin Date is not supplied, the following error message will be
    invoked: **Facility Analyte Level Begin Date is a required field.**
    Return cursor to Facility Analyte Level Begin Date.

```{=html}
<!-- -->
```
-   If Control Level Type is not supplied, the following error message
    will be invoked: **Facility Analyte Control Level Type is a required
    field.** Return cursor to Control Level Type.

```{=html}
<!-- -->
```
-   If Level and Level Unit of Measure are not supplied, the following
    error message will be invoked: **Facility Analyte Level and Unit of
    Measure are required fields.** Return cursor to Control Level.

```{=html}
<!-- -->
```
-   If Level Violation Type or M&R Violation Type is not supplied, the
    new Violation Type Association Advisory warning page with the
    following dynamically changing message will be invoked:

> If Level Violation Type not supplied, the following advisory (Exhibit
> 7-8) will be presented.
>
> ![](media/image9.png){width="4.229166666666667in" height="2.4375in"}

[]{#__RefHeading___Toc139861085 .anchor}**Exhibit 7-8.** Level Violation
Type Not Supplied Advisory

-   If M&R Violation Type is not supplied, the following advisory
    (Exhibit 7-9) will be presented.

> ![](media/image10.png){width="4.479166666666667in"
> height="2.3333333333333335in"}

[]{#__RefHeading___Toc139861086 .anchor}**Exhibit 7-9.** M&R Violation
Type Not Supplied Advisory

> The page will have two buttons:
>
> **Yes** will close the page and return the cursor to either the Level
> or M&R Violation Type field.
>
> **No** will close the page and continue **OK** button processing.

-   If Analyte Code is 0100 (turbidity) and level type is MAX, and M&R
    Violation Type is valued, the following advisory will be presented
    (Exhibit 7-10):

> ![](media/image11.png){width="4.854166666666667in" height="2.5in"}

[]{#__RefHeading___Toc139861087 .anchor}**Exhibit 7-10.** Analyte Code
Advisory

-   Invoke the following overlapping edit checks in both Add and Change
    modes:

> Check for a facility analyte level already existing for the same WSF,
> same Analyte, same level type, with at least a day of overlap in the
> Effective Period, same M&R violation type, same level violation type,
> and the same MDBP Summary Type. If a Facility Analyte Level record
> meeting this uniqueness criteria exists, the following error message
> (Exhibit 7-11) will be invoked:
>
> ![](media/image12.png){width="4.46875in"
> height="2.1666666666666665in"}

[]{#__RefHeading___Toc139861088 .anchor}**Exhibit 7-11.** Duplicate
Check Error

> In this definition, null for the optional fields (the two Violation
> Types and MDBP Summary Type) *is effectively a value in and of
> itself*.
>
> The following examples demonstrate what "at least a day of overlap in
> the Effective Periods" means as well as examples of FANLs that may be
> added or may be rejected when a similar FANL exists. Assume the
> following Facility Analyte Level already exists:
>
> A FANL exists in the database for WSF "TP1," Analyte Code 1925, FANL
> Control Type of "MAX," Effective Begin Date of 1/1/1999 and an open
> Effective End Date, no Violation Types specified, and no MDBP Summary
> Type specified.
>
> \(1\) If the user enters the following FANL:
>
> A FANL for WSF "TP1," Analyte Code 1925 , FANL Control Type of "MAX,"
> Effective Begin Date of 1/1/1999 and an open Effective End Date, Level
> Violation Type 59, no M&R Violation Type specified, and no MDBP
> Summary Type specified.

It should be allowed.

> \(2\) Then, if the user enters the following FANL:
>
> A FANL for WSF "TP1," Analyte Code 1925, FANL Control Type of "MAX,"
> Effective Begin Date of 1/1/1999 and an open Effective End Date, Level
> Violation Type 59, M&R Violation Type of 53, and no MDBP Summary Type
> specified.

It should be allowed.

> \(3\) Then, if the user enters the following FANL:
>
> A FANL for WSF "TP1," Analyte Code 1925, FANL Control Type of "MAX,"
> Effective Begin Date of 1/1/1999 and an open Effective End Date, Level
> Violation Type 59, M&R Violation Type of 53, and MDBP Summary Type of
> OTHR.

It should be allowed.

> \(4\) Then, if the user enters the following FANL:
>
> A FANL for WSF "TP1," Analyte Code 1925, FANL Control Type of "MAX,"
> Effective Begin Date of 1/1/2001 and an open Effective End Date, Level
> Violation Type is not specified, M&R Violation Type of 53, and MDBP
> Summary Type of OTHR.
>
> It should [not]{.underline} be allowed (because this has more than 1
> day of overlap with the effective period).
>
> \-- For purposes of the overlap check, Analyte Codes 0999 (chlorine)
> and 1006 (chloramine) should be considered the same.
>
> \-- For purposes of the overlap check, Violation Types 31 and 36
> should be considered the same.

-   Convert the value entered in attribute Control_Level_Text to a
    number (using existing action block that does this in other parts of
    the application) and set attribute Control_Level_Measure to that
    converted value.

> All fields can be modified in Change mode (except where previously
> specified protections apply when the Facility Analyte Level is
> associated with one or more MDBP summaries).

-   On case of modify, ensure that if the user changes a value in
    attribute Control_Level_Text, that attribute Control_Level_Measure
    is updated with the equivalent numeric converted numeric value.

In add-mode:

If the (control level type = MAX, SRC, RCB) or (control level type = MIN
and (summary type code = DSRD or SDRD))

Update the d_cds_trigger_ts and d_cds_trigger_userid.

In change-mode

If any of the following fields are modified, update the d_cds_trigger_ts
and d_cds_trigger_userid.

-   Begin Date

-   End Date

-   Control Level Type

-   Level and Uom code

-   Days to monitor per month

-   Samples required per day

-   MDBP Summary Type

**Cancel** If changes have been made, the standard cancel confirmation
dialog box will be presented. If no changes have been made, the page
will close and return to the Facility Analyte Level Maintenance List.

**Help** Will invoke online Help for this page.

### Model Changes for Monitoring Periods

Model changes for Monitoring Periods are documented in Chapter 3 (System
Administration).

### TCR Monitoring Period Associations Page Flow

The addition and maintenance of monitoring periods has been relocated to
the System Administration component. The maintenance of associations
between monitoring periods and water systems remains in the Monitoring
component with the ability to associate a monitoring period to a water
system group or government agency being combined with the ability to
associate a water system to multiple monitoring periods. The ability to
associate these to other than the Total Coliform Rule will be
eliminated. Additionally, when a user deletes an association, the
software will delete both the association to the rule (the TMNRWSMA
record) and the association between the water system and the monitoring
period (i.e., the TMNWSMPA record).

Two menu items will be available on the *SDWIS/STATE Home Page* under
**Edit/Planning/TCR Monitoring Period Associations:**

Associate to Current WS Group/Regulating Agency

Associate by Water System

####  Associate Monitoring Period to WS Group/Regulating Agency

The Associate to Current WS Group/Regulating menu item will present the
Monitoring Period Search page where criteria may be entered and used to
focus the resulting monitoring periods presented on the Monitoring
Period Maintenance List page. Both of these pages are completely
documented in Chapter 3 (System Administration).

The Monitoring Period Maintenance List will be presented in multi-select
mode where one or more monitoring periods may be selected. The Associate
Monitoring Period Verification page (Exhibit 7-12) will be invoked to
notify the user as to how many water systems and monitoring periods will
be affected by the request and to allow the user the chance to cancel
the operation. The number of water systems defined by the water system
group or regulating agency will be displayed along with the number of
monitoring periods selected.

> ![](media/image13.png){width="6.496527777777778in"
> height="3.1180555555555554in"}

[]{#__RefHeading___Toc139861089 .anchor}**Exhibit 7-12.** Associate
Monitoring Period Verification

[Associate Monitoring Period Verification Buttons]{.underline}:

> **Yes** Will create a Water_System_Mon_Per_Agmt row for each water
> system contained in the current group/regulating agency and each
> selected monitoring period that does not previously exist. The begin
> date will be set to current date. The end date and Water Quality
> Parameters (WQP) days out of compliance will be set to null.
>
> Will create a Rule_WS_MP_Asgmt row for each Water_System_Mon_Per_Asgmt
> and TCR rule that did not previously exist. The begin date will be set
> to current date. The end date and compliance run date will be set to
> null.
>
> **No** Will cancel the assignments and return to the *SDWIS/STATE Home
> Page*.
>
> When successful, the page will close and return to the *SDWIS/STATE
> Home Page*.

####  Monitoring Period Association by Water System

The Associate by Water System menu item will present the Water System
Search page where criteria may be entered and used to focus the
resulting water systems presented on the Water System Maintenance List
page unless an exact match is found, in which case, the software will
flow directly to the Monitoring Period Associations by Water System
page. Both the water system search and maintenance list pages are
completely documented in Chapter 4 of the SDWIS/STATE Design Document.

The Water System Maintenance List will be presented in single-select
mode where one water system may be selected and used to present the TCR
Monitoring Period Association by Water System page.

The TCR Monitoring Period Associations by Water System page (Exhibit
7-13) will list the monitoring periods that are associated to the
selected water system and the TCR rule.

![](media/image14.png){width="6.495833333333334in"
height="3.9583333333333335in"}

[]{#__RefHeading___Toc139861090 .anchor}**Exhibit 7-13.** TCR Monitoring
Period Associations by Water System

[Protected Fields]{.underline}:

*Water System* The selected water system to which the monitoring periods
and TCR Rule are associated.

*Number of rows*

*Resulting from search*

*criteria user:* Will display a count of the number of rows matching the
provided search criteria, i.e., the number of monitoring periods that
are assigned to the selected water system and the TCR Rule.

*Number of rows*

*displayed:* Will display a count of the number of rows displayed in the
list area.

[List Columns]{.underline}:

*Type* The monitoring period type; sometimes called duration.

*Name* The name of the monitoring period.

*Begin Date* The first date on which the monitoring period is effective.

*End Date* The last date on which the monitoring period is effective.

[Menu Items]{.underline}:

**File**

*Exit* Will return to the *SDWIS/STATE Home Page*.

**Edit**

*Associate* Will invoke the Monitoring Period by WS Selection List in
multi-select mode via Monitoring Period Search. The search page may be
used to limit the resulting list on the Monitoring Period by WS
Selection List.

> The **Edit/Associate** menu item will be available regardless of a
> selection having been highlighted in the list area.

***Disassociate*** When selected, the software will disassociate the
water system from the selected monitoring periods (i.e., will delete the
row in table Water System Mon Per Asgmt). However, before deleting the
association, the software will first delete the association to the TCR
Rule (table Rule_WS_MP_Asgmt).

> This function is only available if one or more monitoring periods have
> been selected.

**View**

*Search* Will invoke Water System Search. Prior search criteria will be
present.

**Help** Will invoke the online system help.

[Buttons:]{.underline}

**Menu Items** Will present the standard menu items dialog box.

**Scroll Buttons** Will scroll the list box in the direction of the
arrow displayed on the button.

[Default Sort Order]{.underline}:

The default sort order is descending begin date, ascending end date.

####  Monitoring Period by WS Selection List

The Monitoring Period by WS Selection List (Exhibit 7-14) will contain a
list of monitoring periods that are not already associated to this water
system and the TCR Rule.

![](media/image15.png){width="6.495833333333334in"
height="3.9583333333333335in"}

[]{#__RefHeading___Toc139861091 .anchor}**Exhibit 7-14.** Monitoring
Period by WS Selection List

[List Columns:]{.underline}

*Type* The monitoring period type; sometimes called duration.

*Name* The name of the monitoring period.

*Begin Date* The first date on which the monitoring period is effective.

*End Date* The last date on which the monitoring period is effective.

[Menu Items:]{.underline}

**File**

*Exit* Will return to the page that invoked the list selection.

**Edit** For each monitoring period selected from the list, the software
will create an association between the Water System and Monitoring
Period (table Water_System_Mon_Per_Asgmt), if one does not already
exist, and then will create an association between the
Water_System_Mon_Per_Asgmt and the TCR Rule (table Rule_WS_MP_Asgmt), if
one does not already exist. If associations are created, for the
Water_System_Mon_Per_Asgmt, the begin date will be set to current date.
The end date and WQP no. days out of compliance will be set to null. For
the Rule_WS_MP_Asgmt, the begin date will be set to current date. The
end date and compliance run date will be set to null.

**View**

*Search* Will invoke the Monitoring Period Search page. Prior search
criteria will be present.

*Search Next* The list area will support viewing only 100 monitoring
periods at a time. To view subsequent groups of 100 select **View/Search
Next**.

> *Search Previous* When the **View/Search Next** item has been used to
> view subsequent groups of 100 monitoring periods, select **View/Search
> Previous** to go backward.

**Help** Will invoke the online system help.

[Buttons:]{.underline}

**Menu Items** Will present the standard menu items dialog box.

**Scroll Buttons** Will scroll the list box in the direction of the
arrow displayed on the button.

Default Sort Order:

The default order of the list will be descending begin date, ascending
end date order.

[Protected Fields]{.underline}:

*Water System* The selected water system to which the monitoring periods
will be associated and then associated to the TCR Rule.

*Number of rows*

*Resulting from search*

*criteria user:* Will display a count of the number of rows matching the
provided search criteria, i.e., the number of rows associated to the
selected water system and the TCR Rule in the Rule Water System
Monitoring Period Association table.

*Number of rows*

*displayed:* Will display a count of the number of rows displayed in the
list area.

*Number of rows*

*Selected:* Will display a count of the number of rows selected in the
list area.

### Model Changes for Monitoring Requirements

Changes to MONITORING_REQUIREMENTS (TMNMNR):

-   Add permitted value of 2M to sample_count_unit_code. Description is
    'Every 2 months.' (R3017:A.7.1.5.a)

### Monitoring Requirements Page Flow

####  Monitoring Requirements Search

Selecting **Planning/Monitoring Requirements** will invoke the
Monitoring Requirement Search page (Exhibit 7-15). The user will be able
to search for Monitoring Requirements based on an Analyte, Analyte Group
Code, Sampling Frequency Sample Type, or Sample Frequency Sample
Periodicity. Clicking the **Search** button will display the Monitoring
Requirement Maintenance List with those monitoring requirements that
meet the specified search criteria.

[Protected Fields]{.underline}:

*Analyte Name* The name of the selected analyte.

*Analyte Group*

*Name* The name of the selected analyte group.

![](media/image16.png){width="6.495833333333334in"
height="3.9583333333333335in"}

[]{#__RefHeading___Toc139861092 .anchor}**Exhibit 7-15.** Monitoring
Requirement Search

[Entry Fields]{.underline}:

*Analyte Code* This field will map to table TSAANLYT, column Code. As
the user enters data and tabs off this field, all other fields on the
page will be protected. Conversely, clearing this field of data by
either backspacing or deleting from the field, will enable all other
fields on this page. May be entered directly, selected from a list by
clicking the **Go To** button, or left blank. If the user specifies a
complete Analyte Code, the software will attempt an exact match. If an
exact match is found, the software will retrieve the analyte and
populate the protected Analyte Name field. If an exact match is not
found or the user specifies a partial string in this field, the software
will display the closest matching analyte code at the top of the Analyte
Maintenance List presented in single-select mode. (Closest matching
means a match with the Analyte Code, sorted alphabetically, that starts
with the same text string as supplied.) If no match is possible, the
software will display the entire list of analytes. The default sort for
this search will be Analyte Code, in ascending alphabetical order.
Clicking the **Go To** button will display the Analyte Maintenance List
in single-select mode (minus Analyte 3100, PB90, CU90 and any analytes
of type "GC" and "OT") with the same default sort.

*Analyte Group Code* This field will map to table TSAANGRP, column CODE.
As the user enters data and tabs off this field, all other fields on the
page will be protected. Conversely, clearing this field of data
(backspacing or deleting from the field) will enable all other fields on
this page. May be entered, selected from a list by clicking the **Go
To** button, or left blank. If the user specifies a complete Analyte
Group Code, the software will attempt an exact match. If an exact match
is found, the software will retrieve the analyte group and populate the
protected Analyte Group Name field. If an exact match is not found or
the user specifies a partial string in this field, the software will
display the closest matching analyte group code at the top of the
Analyte Group Maintenance List in single-select mode. (Closest matching
means a match with the Analyte Group Code, sorted alphabetically, that
starts with the same text string as supplied.) If no match is possible,
the software will display the entire list of analyte groups. The default
sort for this search will be Analyte Group Code, in ascending
alphabetical order. Clicking the **Go To** button will display the
Analyte Group Maintenance List in single-select mode with the same
default sort.

*Sampling*

*Frequency*

*Sample Type* Specifies the type of sample to be taken. This is a
standard dropdown list box containing the following permitted values:

CO Confirmation.

RT Routine.

SP Special.

> OT Other.
>
> RP Repeat
>
> TR Temporary Routine.

If Sampling Frequency Sample Type is valued, all other fields will be
protected.

*Sampling Frequency*

*Sample Periodicity* Specifies the period of time in which the sample is
to be taken. This is a standard dropdown list box containing the
following permitted values:

1T One Time.

> YR 1 Year.

2Y 2 Years.

3Y 3 Years.

4H 4 Hours.

4Y 4 Years.

5Y 5 Years.

2M 2 Months (R3017:A.7.1.6.1.a)

6M 6 Months.

18M 18 Months.

6Y 6 Years.

7Y 7 Years.

8Y 8 Years.

9Y 9 Years.

10Y 10 Years.

DL 1 Day.

> 2 W 2 Weeks.

HR 1 Hour.

MN Month.

QT Quarter.

WK Week.

If Sampling Frequency Sample Periodicity is valued, all other fields
will be protected.

[Tab Sequence]{.underline}:

Analyte Code, Analyte Code **Go To** button, Analyte Group Code, Analyte
Group Code **Go To** button, Sampling Frequency Sample Type, Sampling
Frequency Sample Periodicity, **Search** button, **Clea**r button,
**Cancel** button, **Help** button.

[Buttons]{.underline}:

Analyte Code

**Go To** Pressing this button will invoke the Analyte Maintenance List
in single-select mode. The default sort for Analyte Maintenance List is
Analyte Code in ascending alphabetical order. This list should not
include analytes of code 3100, CU90, PB90, or analytes of type "GC"
(group contaminant) or "OT" (other)*.*

This button is only available if the Analyte Code is unprotected.

Analyte Group

Code **Go To** Pressing this button will invoke the Analyte Group
Maintenance List in single-select mode. The default sort for Analyte
Group Maintenance List is Analyte Group Code, in ascending alphabetical
order. This list should not include any Analyte Group that contains an
analyte of code 3100, CU90, PB90, or an analyte of type "GC" (group
contaminant) or "OT" (other).

> This button is only available of the analyte group code is
> unprotected.

**Search** Pressing this button will enable the software to perform a
search based on one of the following criteria. One and only one of the
four input fields must have a value for this button to become enabled.

> All Monitoring Requirements associated with the specified criteria
> will be retrieved and displayed on the Monitoring Requirement
> Maintenance List sorted by Sample Type, Sample Periodicity, and Number
> of Samples.

-   If Analyte Code is valued, the monitoring requirements for the
    specified analyte will be displayed on the Monitoring Requirement
    Maintenance List.

-   If Analyte Group Code is valued, the monitoring requirements for the
    specified analyte group will be displayed on the Monitoring
    Requirement Maintenance List.

-   If a Sampling Frequency Sample Type is selected, all Monitoring
    Requirements for the specified Sample Type (e.g., Routine) will be
    retrieved sorted by Analyte/Analyte Group, Sample Periodicity, and
    Number of Samples.

-   If Sampling Frequency Sample Periodicity is selected, all Monitoring
    Requirements for the specified Sample Periodicity (e.g., Monthly)
    will be retrieved and sorted by Analyte/Analyte Group, Sample Type,
    and Number of Samples.

-   If no monitoring requirements meet the search criteria, the
    following informational message will be invoked: **No Monitoring
    Requirement exists in the database for this search criteria.**

**Clear** Pressing this button will clear data from all fields on the
search page. All fields (that may have been protected) will be enabled.

**Cancel** When the user presses on this button, the software will
disregard any data entered and return the user to the *SDWIS/STATE Home
Page.*

**Help** Will invoke online Help for this page.

####  Monitoring Requirements Maintenance List

The Monitoring Requirement Maintenance List (Exhibit 7-16) will display
up to 1,000 records at a time. It will list the requirements that meet
the search criteria specified on the Monitoring Requirement Search page.
This page will provide the capability to add a new state-defined
monitoring requirement, change an existing state-defined monitoring
requirement, or delete a state-defined monitoring requirement. Deletion
is only accessible for users with System Administrator Privileges
through the System Administrator component. Federally supplied
monitoring requirements can be viewed but not changed. Only the first 15
characters of the CFR No. (Regulation_Number) will be displayed on the
Monitoring Requirement Maintenance List.

![](media/image17.png){width="6.495833333333334in"
height="4.1194444444444445in"}

[]{#__RefHeading___Toc139861093 .anchor}**Exhibit 7-16.** Monitoring
Requirement Maintenance List

[Menu Items]{.underline}:

**File**

> *Exit* Selecting **File/Exit** will return the user to the
> *SDWIS/STATE Home Page.*

**Edit**

> *Add* Selecting **Edit/Add** will display the Monitoring Requirement
> Maintenance page in Add mode. This option will be enabled regardless
> of a selection having been made in the list area.
>
> *Change* Selecting **Edit/Change** will display the Monitoring
> Requirement Maintenance page with the selected monitoring requirement.
> This option will be enabled only when a record has been highlighted.
> Monitoring requirements that belong to EPA (when TMNMNR_ST_CODE =
> "HQ") cannot be changed and will be displayed with all fields
> protected.
>
> *Delete* Selecting **Edit/Delete** will display a Delete Confirm page
> (Exhibit 7-17) for the selected monitoring requirement record. This
> option will be enabled only when a monitoring requirement record has
> been highlighted. This item will only be enabled when invoked from the
> System Administration component by a user with System Administrator
> privileges. The following edit checks will be performed prior to the
> presentation of the Delete Confirmation page:

-   A monitoring requirement record cannot be deleted if it is a
    federally owned (state code = 'HQ') record. If a user tries to
    delete a federally owned monitoring requirement record, the
    following error message will be invoked: **This is a federally owned
    monitoring requirement record and cannot be deleted.** If the record
    is federally owned, do not execute the following reference check.

```{=html}
<!-- -->
```
-   If the user selects a state-owned monitoring requirement for
    deletion:

> \- If the Monitoring requirement references a Monitoring Waiver, the
> error message will be **Cannot delete Monitoring Requirement because
> it is linked to a Monitoring Waiver.**
>
> \- If the requirement references an analyte (versus an analyte group),
> the software will determine if one or more of the sample schedules
> associated to the monitoring requirement is a hidden schedule by
> checking for an association to a sample schedule group.
>
> \-- If so, it will display the advisory: **This monitoring requirement
> is referenced by one or more hidden schedules. You must first delete
> the monitoring requirement(s) for all analyte groups which contain
> this analyte and are of the same periodicity.** This advisory will
> have an **OK** button, which will cancel the operation.
>
> \-- If not, the software will display a delete confirmation page
> (Exhibit 7-17) for the selected Monitoring Requirement that says:
> **Are you sure you want to delete this Monitoring Requirement?
> Deleting it will also delete all Sample Schedules that reference it.**
> The page will have two buttons, **Yes** and **No**. The monitoring
> requirement cannot be deleted if it is referenced by an
> about-to-be-deleted schedule, which in turn is associated with a
> validated or preliminary violation (associated violation's
> D_CURRENT_STATUS_TYPE_CODE is "V" or "P"). If the software encounters
> this situation, the following error message will be invoked:
> **Monitoring Rqt links to a schedule(s) that references a
> violation\--cannot delete*.*** Reference the documentation on deletion
> of Sample Schedules for complete rules on delete denials.
>
> \-- If the user presses **Yes**, the software will delete the
> monitoring requirement and all sample schedules associated to it.
> Refer to the Delete Sample Schedule documentation on the Non-TCR
> Sample Schedule Maintenance List for complete processing.
>
> \-- If the user presses **No**, no action will be taken, the page will
> close, and return the user to the Monitoring Requirement Maintenance
> List.
>
> \- If the requirement references an analyte group, the software will
> display a delete confirmation page (Exhibit 7-17) for the selected
> Monitoring Requirement that says: **Are you sure you want to delete
> this Monitoring Requirement? Deleting it will also delete all Group
> and Hidden Sample Schedules associated with it.** The page will have
> two buttons, **Yes** and **No**. None of the Sample Schedules or
> monitoring requirement will be deleted if one of its
> about-to-be-deleted schedules is associated with a validated or
> preliminary violation (associated violation's
> D_CURRENT_STATUS_TYPE_CODE is "V" or "P"). If the software encounters
> this situation, the following error message will be invoked:
> **Monitoring Rqt links to a schedule(s) that references a
> violation\--cannot delete*.*** Reference the documentation on deletion
> of Sample Schedules for complete rules on delete denials.
>
> \- If the user presses **Yes**, the software will delete: (a) all the
> hidden schedules associated to all the Group Schedules that are
> associated to the monitoring requirement, (b) all the Group Schedules
> associated to the monitoring requirement and finally, (c) the
> monitoring requirement itself. Refer to the Delete Sample Schedule
> documentation on the Non-TCR Sample Schedule Maintenance List for
> complete processing.
>
> \- If the user presses **No**, no action will be taken, the page will
> close, and return the user to the Monitoring Requirement Maintenance
> List.

![](media/image18.png){width="5.9375in" height="4.125in"}

[]{#__RefHeading___Toc139861094 .anchor}**Exhibit 7-17.** Monitoring
Requirement Delete Confirmation

> *Select* The **Edit/Select** menu item will be enabled only when this
> page is invoked as a selection list. Selecting **Edit/Select** will
> close the page and return the user to the invoking page with the
> selected monitoring requirement. When invoked from the TCR Sample
> Schedule Modification page, only the **Edit/Select** menu item will be
> available---all other menu items will be protected.

**View**

> *Filter by* Selecting **View/Filter by** will allow the user to filter
> by Sampling Freqcy Samples Rqd, Sampling Freqcy Sample Type, Sampling
> Freqcy Sample Periodicity, Analyte/Analyte Group Code, M&R Violation
> Type, or Analyte/Analyte Group Name.

Use of this item will enable the Refresh item.

> *Refresh* Selecting **View/Refresh** will retrieve the unfiltered list
> (original search criteria).
>
> *Search* Selecting **View/Search** will invoke the Monitoring
> Requirement Search page. Prior search criteria will be present on the
> page.
>
> *Sort* Selecting **View/Sort** will invoke the standard Sort page.
> Sorting will be allowed by Sampling Freqcy Samples Rqd, Sampling
> Freqcy Sample Type, Sampling Freqcy Sample Per., Analyte/Analyte Group
> Code, M&R Violation Type, Fed Reportable Cont. Code, Analyte/Analyte
> Group Name, CFR No., or Ownership. Three levels of sorting will be
> supported.

**Help** Will invoke the online system help.

[Buttons:]{.underline}

**Menu Items** Will present the standard menu items dialog box.

**Scroll Buttons** Will scroll the list box in the direction of the
arrow displayed on the button.

[List Columns]{.underline}:

Sampling Freqcy Samples Rqd, Sampling Freqcy Sample Type, Sampling
Freqcy Sample Per., Analyte/Analyte Group Code, Rule, M&R Violation
Type, Fed Reportable Cont. Code, Ownership, CFR No., Analyte/Analyte
Group Name.

The value in the Ownership column will be set to "Federal" when
Monitoring Requirement St_Code is "HQ." The value in the Ownership
column will be set to "State" when Monitoring Requirement ST_CODE is not
"HQ." The Rule column will display the abbreviation text from the
associated Rule.

[Protected Fields]{.underline}:

*Number of rows*

*resulting from search*

*criteria entered* This protected field will show the total number of
rows that met the search criteria.

*Number of rows*

*displayed* This protected field will show the total number of rows that
displayed in the list that may be less than the number of rows that met
the search criteria.

*Number of rows*

*selected* This protected field will show the total number of rows in
the display that have been selected.

####  Monitoring Requirements Maintenance

To add a new monitoring requirement, the user should select **Edit/Add**
from the Monitoring Requirement Maintenance List. This will invoke the
Monitoring Requirement Maintenance page in Add mode, as shown in Exhibit
7-18. The Monitoring Requirement Maintenance page will require the user
to select either an analyte or an analyte group, and the frequency (the
number of samples of a specified sample type per a specified period of
time). The CFR No. field will be optional. The Monitoring Requirement
will be uniquely identified by either the analyte or analyte group, plus
the three fields in the Sampling Frequency group box, and the M&R
Violation Type. While CFR No. is part of the uniqueness for federally
owned monitoring requirements, it will not be part of the uniqueness for
state-owned monitoring requirements.

![](media/image19.png){width="6.495833333333334in"
height="4.190972222222222in"}

[]{#__RefHeading___Toc139861095 .anchor}**Exhibit 7-18.** Monitoring
Requirement Maintenance

[Protected Fields]{.underline}:

*Analyte Name* The name of the selected analyte code.

*Analyte Group Name* The name of the selected analyte group code.

*M&R Violation*

*Type* The violation type code and name used when generating a violation
against this monitoring requirement.

> The value in this field can be changed after the monitoring
> requirement has been created so long as it has not been referenced by
> a sample schedule. The other fields on the Monitoring Requirement
> Maintenance page cannot be changed once they have been created
> \[except Description\]). The user may change the violation type by
> using the **Go To** button. The selected violation type will populate
> both Violation Type fields on the page and the Violation Type's
> associated Fed Reportable Contaminant Code value in the corresponding,
> protected, field. If there is no associated Fed Reportable Contaminant
> Code (i.e., the selected Violation Type does not reference an ANALYTE
> record), the software will instead display the Analyte or Analyte
> Group for the Monitoring Requirement (e.g., for a nitrate monitoring
> requirement that references Violation Type 03, the nitrate code---1040
> will be displayed both here and in the Analyte Code field at the top
> of the maintenance page).
>
> *Note: While this field is optional, it must be valued for CDS
> processes to determine monitoring compliance. If not populated, an
> advisory will be presented on selection of the **OK** button.*

*Fed Reportable Cont*

*Code and Name* The code and name of the analyte associated to the
selected M&R Violation type that will be used for federal reporting.

*Rule* The abbreviation_text of the Rule associated to this Monitoring
Requirement. Currently only Total Coliform Rule is associated. Since TCR
Monitoring Requirements are maintained by headquarters, no state-owned
monitoring requirements will be allowed an association to a Rule.

[Entry Fields]{.underline}:

For federally owned monitoring requirements (where ST_CODE is "HQ") that
are selected in Change mode, the software will protect all entry fields.

Analyte Group Box:

> *Analyte Code* The user may click the **Go To** button to invoke the
> Analyte Maintenance List in single-select mode or may enter a value
> directly into the Analyte Code field. The default sort for the Analyte
> Maintenance List will be Analyte Code in ascending alphabetical order.
> If the user enters a value in the Analyte Code field, on tabbing off
> the field, the software will retrieve the specified analyte if it is
> an exact match and populate the Analyte Name field. If the value
> entered is not an exact match, the software will invoke the Analyte
> Maintenance List in single-select mode, sorted by ascending Analyte
> Code, from which the user may select an analyte on which to search and
> populate the analyte field on this page. If the user specifies a
> partial string in this field, the software will display the closest
> matching analyte code at the top of the list. (Closest matching means
> a match with the Analyte Code, sorted alphabetically, that starts with
> the same text string as supplied.) If no match is possible, the
> software will display the entire list of analytes. When calling the
> Analyte Maintenance List in single-select mode, the software should
> not display Analyte Code 3100, CU90, PB90, or analytes of type "GC"
> (group contaminant) or "OT" (other). If the Analyte Code field is
> valued, the Analyte Group field will be set to spaces.
>
> Analyte Code will be a conditionally required field. Either an analyte
> or analyte group must be specified.
>
> *Analyte Group Code* The user may click the **Go To** button, to
> invoke the Analyte Group Maintenance List in single-select mode or may
> enter a value directly into the Analyte Group Code field. The default
> sort for Analyte Group Maintenance List will be Analyte Group Code in
> ascending alphabetical order. This list should not include any Analyte
> Group that contains an analyte of code 3100, CU90, PB90, or an analyte
> of type "GC" (group contaminant) or "OT" (other). If the user enters a
> value in the Analyte Group Code field, on tabbing off the field, the
> software will retrieve the specified analyte if it is an exact match
> and populate the Analyte Group Name field. If the value entered is not
> an exact match, the software will invoke the Analyte Group Maintenance
> List in single-select mode, sorted by ascending Analyte Group Code,
> from where the user may select an analyte group on which to search and
> populate the analyte group field on this page. If the user specifies a
> partial string in this field, the software will display the closest
> matching analyte code at the top of the list. (Closest matching means
> a match with the Analyte Group Code, sorted alphabetically, that
> starts with the same text string as supplied.) If no match is
> possible, the software will display the entire list of analyte groups.
> If Analyte Group Code is valued, Analyte Code will be set to spaces.
>
> Analyte Group Code will be a conditionally required field. Either an
> analyte or analyte group must be specified.

Sampling Frequency Group Box:

It will be mandatory to provide sampling frequency information in this
group box. In change mode, if the monitoring requirement is already
associated to a sample schedule, the three fields within this group box
will be protected from change.

*Samples Required* Specifies the number of samples to be taken.

> *\[Sample Type\]* Specifies the type of sample to be taken. This will
> be a standard, protected dropdown list containing the following
> permitted values:

RT Routine.

> CO Confirmation (if "CO," default and protect Sample Periodicity to
> "1T").

SP Special.

RP Repeat or Check.

TR Temporary Routine.

> OT Other.
>
> Because RP and TR monitoring requirements are not usable on the
> Non-TCR Schedule Maintenance page, only new monitoring requirements of
> Sample Type RT, CO, OT, and SP can be created. However, RP and TR
> remain in the dropdown, so that the user may display federally owned
> monitoring requirements of this type.
>
> *\[Sample Periodicity\]* Specifies the period of time in which the
> sample is to be taken. This will be a standard, protected dropdown
> list box containing the following permitted values:

1T = One Time.

YR = 1 Year.

2Y = 2 Years.

3Y = 3 Years.

4H = 4 Hours.

4Y = 4 Years.

5Y = 5 Years.

2M = 2 Months (R3017:A.7.1.6.3.a)

6M = 6 Months.

18M = 18 Months.

6Y = 6 Years.

7Y = 7 Years.

8Y = 8 Years.

9Y = 9 Years.

10Y = 10 Years.

DL = 1 Day.

> 2W = Every 2 Weeks.

HR = 1 Hour.

MN = Month.

QT = Quarter.

> WK = Week.
>
> *CFR No.* The user may click the **Go To** button to invoke the Code
> of Regulation Selection List (Exhibit 7-19), or may enter a value
> directly into the CFR No. field. The default sort for Code of
> Regulation Selection List will be CFR No., in ascending alphabetical
> order. If the user enters a value in CFR No., on tabbing off the
> field, the software will retrieve the specified CFR if it is an exact
> match and populate the CFR No. field. If the value entered is not an
> exact match, the software will invoke the CFR Selection List, sorted
> by ascending CFR No., from which the user may select. If the user
> specifies a partial string in this field, the software will display
> the closest matching CFR No. at the top of the list. (Closest matching
> means a match with the CFR No., sorted alphabetically, that starts
> with the same text string as supplied.) If no match is possible, the
> software will display the entire list of CFRs.
>
> *Description* Text field for the Monitoring Requirement. This field
> can be updated in Change mode.

[Tab Sequence]{.underline}:

Analyte Code, Analyte Code **Go To** button, Analyte Group Code, Analyte
Group Code **Go To** button, Samples Required, \[Sample Type\],
\[Periodicity\], M&R Violation Type **Go To** button, CFR No., CFR No.
**Go To** button, Description, **OK** button, **Cancel** button,
**Help** button.

[Buttons]{.underline}:

Analyte Code

**Go To** Pressing this button will invoke the Analyte Maintenance List
in single-select mode. The default sort for Analyte Maintenance List
will be Analyte Code, in ascending alphabetical order. This list should
not include analytes of code, CU90, PB90, or analytes of type "GC"
(group contaminant) or "OT" (other).

Analyte Group

Code **Go To** Pressing this button will invoke the Analyte Group
Maintenance List in single-select mode. The default sort for Analyte
Group Maintenance List will be Analyte Group Code, in ascending
alphabetical order. This list should not include any Analyte Group that
contains an analyte of code, CU90, PB90, or an analyte of type "GC"
(group contaminant) or "OT" (other).

M&R Violation

Type **Go To** Pressing this button will invoke the existing Violation
Type Maintenance List in single-select mode. For Violation Type whose
St\_ Code = HQ, only violation types whose Category is (Monitoring
\[Mon\] or Reporting \[RPT\]) and whose Severity Level is either (spaces
or Major \[MJ\]) should be listed. State-owned violation types should
also be listed (i.e., violation types whose St\_ Code is other than HQ)
for violation types of category (Monitoring (MON) or Reporting (RPT) or
spaces) and Severity Level of either (spaces or Major (MJ)).

(B.7.1.6.2.a) Additional restrictions on the listed violation types are:

If the violation type contaminant required code = 'NOT', exclude from
the list. (This means that the violation type does not accept a
contaminant code.)

If an Analyte Group Code is provided, only list violation types that do
not restrict analyte group usage. Check the violation data completeness
rules associated to the violation type. If a row exists with name =
'ANALYTE GROUP' and code = 'RESTRICT' do not include the violation type.

If an Analyte Code is provided or for each analyte within a provided
Analyte Group, include the violation type if:

-   The violation type is federally-owned (HQ) and a violation type
    analyte asgmt (TMNVTAA) exists to the analyte code with rule_code =
    'ALLOW'

-   The violation type is federally-owned (HQ) and no TMNVTAA row exists
    at all for this violation type

-   The violation type is federally-owned (HQ), TMNVTAA rows exists but
    none to this analyte, and all of the existing TMNVTAA rows for the
    violation type are rule_code = 'DENY'

> If an Analyte Code is provided or for each analyte within a provided
> Analyte Group, exclude the violation type if:

-   The violation type is federally-owned (HQ), TMNVTAA row exists
    between the violation type and analyte with rule_code = 'DENY'

-   The violation type is federally-owned (HQ), TMNVTAA rows exists but
    none to this analyte, and any of the existing TMNVTAA rows for the
    violation type are rule_code = 'ALLOW'

> When called from the Monitoring Requirement Maintenance page,
> **Edit/Select** **and View/Show All are** the only menu items
> available.

In change mode, if the monitoring requirement has already been
associated to a sample schedule, the M&R Violation Type may not be
changed. The **Go To** button will be disabled.

CFR No. **Go To** Pressing this button will invoke the CFR Selection
List. The default sort for Code of Regulation Selection List will be CFR
No., in ascending alphabetical order.

**OK** Pressing this button will invoke the edit checks listed below. If
all edit checks pass successfully, the monitoring requirement will be
created and displayed on the Monitoring Requirement Maintenance List.

-   If neither an Analyte Code nor Analyte Group Code are selected, the
    following error message will be invoked: **Either an Analyte or an
    Analyte Group is required.** Return the cursor to the Analyte Code
    field.

```{=html}
<!-- -->
```
-   If Analyte Type Code is either "GC" (group contaminant) or "OT"
    (other), the following error message will be invoked: **Cannot add
    requirement for analyte of type "Group Contaminant" or "Other."**
    Return the cursor to the Analyte Code field.

```{=html}
<!-- -->
```
-   If any of the three fields in the Sampling Frequency group box
    (sample count, sample type or sample periodicity) are left blank,
    the following existing message will be invoked: **Sample count,
    sample type and sample periodicity are required fields.** The cursor
    will be returned to the blank field.

```{=html}
<!-- -->
```
-   If a Monitoring Requirement of Sample Type RP or TR is selected, the
    following existing message will be invoked: **Monitoring Requirement
    types Repeat and Temp Routine may not be created.** The cursor will
    be returned to the second field in the Sampling Frequency group box.

```{=html}
<!-- -->
```
-   If a user selects either Analyte Code CU90 or PB90, the following
    error message will be invoked: **Use Analyte Codes 1022 and 1030
    instead of CU90 and PB90.** The cursor will be returned to the
    Analyte Code field.

```{=html}
<!-- -->
```
-   If a user enters an analyte group, after retrieving the Analyte
    Group, check each analyte in the specified group to ensure that one
    is not Analyte Code CU90 or PB90. If found in the Analyte Group, the
    following error message will be invoked: **Analyte Group may not
    contain CU90 or PB90. Use Analyte Codes 1022 and 1030.** The cursor
    will be returned to the Analyte Group Code field.

```{=html}
<!-- -->
```
-   If the Sample Type is selected as confirmation (CO) and the sample
    periodicity is not one-time (1T), the error message will be
    **Confirmation sample types require periodicity of one-time.**

-   If the M&R Violation Type is not designated, the following advisory
    will be presented: **No M&R Violation Type was designated. Press OK
    to proceed or Cancel to return.**

-   If the M&Rviolation Type is either type 23 or 25, the error message
    will be **Violation Types 23 and 25 are not valid for non-TCR
    monitoring requirements.**

*Duplicate Check* The software will impose the following uniqueness
check on monitoring requirement:

MONITORING_REQUIREMNT SAMPLE_COUNT and

> MONITORING_REQUIREMNT SAMPLE_TYPE and
>
> MONITORING_REQUIREMNT SAMPLE_COUNT_UNIT_CODE and (ANALYTE CODE or
> ANALYTE_GROUP CODE) and M&R Violation Type, and Rule association.
>
> This uniqueness check should allow two monitoring requirements with
> the same sample count, sample type, sample count unit code, rule
> association and analyte/analyte group if:
>
> \- One of them references a violation type and the other does not; or
>
> Each references a different violation type.
>
> If neither references a violation type, the software should consider
> the second one a duplicate and not allow it to be created/updated.
>
> This uniqueness check should allow two monitoring requirements with
> the same sample count, sample type, sample count unit code, violation
> type association (whether absent or present) and analyte/analyte group
> if one of them references a rule and the other does not. If neither
> references a rule, the software should consider the second one a
> duplicate and issue the error message **This Monitoring Requirement
> already exists.**
>
> If a new record is identified as a duplicate, the software will
> display the following exit state error message: **This Monitoring
> Requirement already exists.**

**Cancel** If changes have been made the standard cancel confirmation
dialog box will be presented. If no changes were made the page will
close and return to the Monitoring Requirement Maintenance List.

**Help** Will invoke online Help for this page.

####  Code of Regulation Selection List

Exhibit 7-19 depicts the Code of Regulation Selection List page.

[Menu Items:]{.underline}

**File**

> *Exit* Selecting **File/Exit** will return the user to the invoking
> page with no selection returned.
>
> *Select* Will return the highlighted regulation to the invoking page.
> This item will only be enabled when a regulation has been selected in
> the list area.

![](media/image20.png){width="6.495833333333334in"
height="3.9583333333333335in"}

[]{#__RefHeading___Toc139861096 .anchor}**Exhibit 7-19.** Code of
Regulation Selection List

**View**

> *Sort* Will present the standard sort dialog where the list may be
> sorted by any of the list columns. Three levels of sorting will be
> supported.

**Help** Will invoke the online system help.

[Buttons:]{.underline}

**Menu Items** Will present the standard menu items dialog box.

**Scroll Buttons** Will scroll the list box in the direction of the
arrow displayed on the button.

[List Columns]{.underline}:

Regulation Number, Regulation Name, Rule, Title

[Default Sort Order]{.underline}: Regulation Number ascending.

[Protected Fields]{.underline}:

*Number of rows*

*displayed* This protected field will show the total number of rows that
displayed in the list.

### Model Changes for Sampling Plan

New Entity Types Sampling Plan Schedule Association (TMNSPSKA)
(R2003:A.7.1.7.a)

Description: An association of a sampling plan to a sample schedule (or
sample schedule group) to support the compliance determination of actual
sampling occurring according to the pre-determined sample plan locations
and dates.

Attributes:

\*TMNSPSKA_IS_number (numeric, 7, mandatory). Generated by a row in the
TINEISN table.

\*TMNSPSKA_st_code (text, 2, mandatory)

> \*Sample_Schedule_Association_Code (text, 10, mandatory) A code to
> indicate if the sample plan is associated to a sample schedule or
> sample schedule group. Permitted Values will be
>
> 'SCHED' for sample schedule that does not reference a sample schedule
> group (i.e., a non-hidden sample schedule)
>
> 'GROUP' for sample schedule group
>
> 'HIDDEN' for the hidden sample schedules of a sample schedule group.

\*D_initial_userid (text, 8, mandatory)

\*D_initial_timestamp (timestamp, mandatory)

\*D_last_update_userid (text, 8, mandatory)

\*D_last_update_timestamp (timestamp, mandatory)

Relationships:

Each Sampling Plan Schedule Association always implements a Sampling
Plan. (disassociate)

Each Sampling Plan sometimes (20%) is implemented by one or more
Sampling Plan Schedule Associations. (restrict)

Each Sampling Plan Schedule Association sometimes (90%) is the
implementation of one and only one Sample Schedule. (disassociate)

Each Sample Schedule sometimes (1%) is implementing one or more Sampling
Plan Schedule Associatoins. (cascade)

Each Sampling Plan Schedule Association sometimes (10%) is the
implementation of one and only one Sample Schedule Group. (disassociate)

Each Sample Schedule Group sometimes (1%) is implementing one or more
Sampling Plan Schedule Associations. (cascade)

Identifier: TMNSPSKA_IS_Number, TMNSPSKA_ST_CODE, and relationship to
Sample Plan.

### Sampling Plans Page Flow

When Sampling Plans is selected from the *Monitoring/Planning* menu
item, the Water System Search page will be presented where criteria may
be entered for developing a list of Water Systems to be presented on the
Water System Maintenance List.

The Water System Maintenance List will be presented in single-select
mode with only the **Edit/Select** menu item available. Once a water
system has been selected, the Sampling Plans for that water system will
be presented on the Sampling Plan Maintenance List.

####  Sampling Plan Maintenance List

The Sampling Plan Maintenance List (Exhibit 7-20) displays a listing of
1000 Sampling Plans for the selected water system. It also allows access
to the creation and modification of sampling plans.

![](media/image21.png){width="5.997916666666667in"
height="5.1409722222222225in"}

[]{#__RefHeading___Toc139861097 .anchor}**Exhibit 7-20.** Sampling Plan
Maintenance List

[List Columns]{.underline}:

*Rule \[Abbr\]* The rule abbreviation text.

*Analyte Code* The analyte or analyte group code name.

*Eff. Begin Date* The effective begin date of the Sampling Plan.

*Eff. End Date* The effective end date of the Sampling Plan.

*Approving Agency* The name of the agency approving the sampling plan.

[Menu Items:]{.underline}

**File**

*Exit* Will return to the SDWIS/STATE Home Page.

**Edit**

> *Add* Will invoke the Sampling Plan Maintenance in Add mode.
>
> *Change* Will invoke the Sampling Plan Maintenance page in Change
> mode. **Edit/Change** is available only when an item is selected in
> the list area.
>
> *Delete* If the Sampling Plan is associated to a Sample Schedule or
> Sample Schedule Group, the delete request will be denied. The error
> message will be **Sampling Plan is associated to Sample Schedule.
> Delete denied.** (R2003:A.7.1.8.1.a) Will invoke the Delete Sampling
> Plan confirmation dialog box **(**Exhibit 7-21).
>
> ![](media/image22.png){width="5.996527777777778in"
> height="3.4472222222222224in"}

[]{#__RefHeading___Toc139861098 .anchor}**Exhibit 7-21.** Delete
Sampling Plan

**[Delete Sampling Plan Buttons]{.underline}:**

> **Yes** Will delete the sampling plan and associated
> SAMPLING_PLAN_SAMPLE_POINT_ASGMT and return to the Sampling Plan
> Maintenance List. The deleted sampling plan will no longer be
> displayed.
>
> **No** Will abort the delete request and return to the Sampling Plan
> Maintenance List. The deleted sampling plan will still be displayed.
>
> *Select* Will return to the invoking page with the selected Sampling
> Plan. (R2003:A.7.1.8.1.b)

**View**

> *Sort* Will present the standard sort parameters dialog box where the
> list may be sorted by any of the list columns. Three levels of sorting
> will be supported.
>
> *Filter by* Will present the standard filter parameters dialog box
> where the list may be filtered by any of the list columns. Use of the
> **Filter By** item will effect the number of rows displayed count and
> enable the **Refresh** menu item.

*Refresh* Will present the unfiltered list of Sampling Plans.

**Help** Will invoke the online system help.

[Buttons:]{.underline}

**Menu Items** Will present the standard menu items dialog box.

**Scroll Buttons** Will scroll the list box in the direction of the
arrow displayed on the button.

[Protected Fields]{.underline}:

*Water System*

*Group Box* The number and name of the selected water system.

*Number of rows*

*resulting from search*

*criteria entered* This protected field will show the total number of
rows that exist in the database for the Water System.

*Number of rows*

*displayed* This protected field will show the total number of rows that
displayed in the list that may be less than the number of rows that
exist in the database for the water system.

[Default Sort Order]{.underline}:

Rule ascending, Analyte Code ascending, begin date descending.

[Toolbar Icons]{.underline}:

![](media/image23.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Water System Information page, which will display basic inventory
information for the given Water System.

![](media/image24.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Display Points of Contact page, which will display a protected list of
legal entities and individuals (e.g., operators, engineers) associated
with the given Water System.

####  Sampling Plan Maintenance 

Exhibit 7-22 depicts the Sampling Plan Maintenance page.

[Protected Fields]{.underline}:

*Water System* The number and name of the selected water system.

*\[Rule\] Name* The name of the rule corresponding to the selected rule
abbreviation. It will be displayed when a rule selection has been made.

  ---------------------------------------------------- ----------------------------------------------------------------------------------
  ![](media/image1.png){width="1.5930555555555554in"   ![](media/image25.png){width="4.715972222222222in"
  height="7.1409722222222225in"}                       height="5.3909722222222225in"}![](media/image26.png){width="4.743055555555555in"
                                                       height="1.2416666666666667in"}![](media/image27.png){width="4.73125in"
                                                       height="0.5284722222222222in"}

  ---------------------------------------------------- ----------------------------------------------------------------------------------

[]{#__RefHeading___Toc139861099 .anchor}**Exhibit 7-22.** Sampling Plan
Maintenance

*Analyte Name* The name corresponding to the provided Analyte Code.

*Analyte Group*

*Name* The name corresponding to the provided Analyte Group Code.

*Primary Samples*

*Planned* The total number of sampling points associated to the sampling
plan that are marked as primary.

*Record updated*

*by/on* The User ID of the last person to update the Sampling Plan and
the timestamp when it occurred.

[Entry Fields]{.underline}:

*\[Rule\] Abbreviation* The name abbreviation of the rule for which the
sampling plan is valid. When tabbing off this field, if a value is
supplied for which a rule cannot be found the Rule Selection List will
be invoked. If a match is found the Rule Name will be displayed.

> Rule Abbreviation will be a required field. If left blank, the
> following error message will be invoked: **Rule must not be blank.**
>
> This field may not be modified in change mode.

*Regulating Agency*

*Name* The name of the government agency that approved the sampling
plan. When tabbing off this field, if a value is supplied for which an
government agency with regulating_agency_indicator_code = 'Y' cannot be
found the Legal Entity Maintenance page will be presented in
single-select mode listing legal entities of type = 'GA.'

> Approving Agency will be a required field*.* If left blank, the
> following error message will be invoked: **Approving Agency cannot be
> blank.**
>
> This field may not be modified in Change mode.

*Approval Date* The date on which the sampling plan was approved.

> The Approval Date field will be optional. If it is valued and the
> begin date is valued, the approval date cannot be greater than the
> begin date; if it is, the following error message will be invoked:
> **Approval date must be less than or equal to Begin date.**
>
> The approval date cannot contain a future date. If one is provided the
> error message will be **Approval date cannot be after current date.**

*Analyte Code* The analyte code for which the sampling plan is being
implemented.

> The Analyte Code will be optional. If it is valued the Analyte Group
> Code field cannot be valued and will become protected along with its
> **Go To** button. If the Analyte code value is removed, the Analyte
> Group Code field and **Go To** button will become unprotected and the
> Analyte Name field will also be removed.
>
> When a valid Analyte Code is provided the Analyte Name field will be
> displayed. When an invalid Analyte Code is provided the Analyte Name
> field will be removed and the Analyte Maintenance List will be
> presented in single-select mode.

*Analyte Group*

*Code* The analyte group code for which the sampling plan is being
implemented.

> The Analyte Group Code will be optional. If it is valued the Analyte
> Code field cannot be valued and will become protected along with its
> **Go To** button. If the Analyte Group code value is removed, the
> Analyte Code field and **Go To** button will become unprotected and
> the Analyte Group Name field will also be removed.
>
> When a valid Analyte Group Code is provided the Analyte Group Name
> field will be displayed. When an invalid Analyte Group Code is
> provided the Analyte Group Name field will be removed and the Analyte
> Group Maintenance List will be presented in single-select mode. If an
> exact match is not found or the user specifies a partial string in
> this field, the software will display the closest matching analyte
> group code at the top of the Analyte Group Maintenance List in
> single-select mode. (Closest matching means a match with the Analyte
> Group Code, sorted alphabetically, that starts with the same text
> string as supplied.) If no match is possible, the software will
> display the entire list of analyte groups. The default sort for this
> search will be Analyte Group Code, in ascending alphabetical order.
> Clicking the **Go To** button will display the Analyte Group
> Maintenance List in single-select mode with the same default sort.

*Begin Date* The date the sampling plan is placed into effect.

> The Begin Date field will be mandatory. It may contain a future date.

*End Date* The last date the plan is in effect.

> The End Date field will be optional. If it is valued it cannot be
> prior to the begin date; if it is, the following error message will be
> invoked: **Effective Begin Date must be before Effective End Date.**

*Use Sampling Plan in*

*Compliance*

*Determination* Indicates that associated sampling point information
should be used to determine compliance when 'Yes' is the selected
dropdown value.

The *Use Sampling Plan in Compliance Determination* field will be
defaulted to a value of 'No.'

*Remarks* A free-form, scrollable text area where the sampling plan can
be described.

The Remarks field will be optional.

*Sampling Points List Box*

A list of sampling points associated to the Sampling Plan.

[List Columns]{.underline}:

\[Sampling Plan Sampling Point Assignment\] Begin Date, \[Sampling Plan
Sampling Point Assignment\] End Date, WSF State Asgn ID, Sampling Point,
WSF Name, Sampling Location, WSF Type, WSF Name, Sampling Point Type,
Primary Indicator.

[Default Sort Order]{.underline}: Begin Date ascending, WSF State Asgn
ID ascending, Sampling Point ascending.

*Sample Schedules List Box (R2003:A.7.1.8.2.a)*

A list of sample schedules (and sample schedule groups) associated to
the Sampling Plan. These are the Sampling Plan Schedule Association rows
associated to the Sampling Plan with a sample_schedule_association_code
= 'SCHED' and 'GROUP'.

[List Columns]{.underline}:

\[Sample Schedule\] WSF State Asgn ID, Analyte Code, Sample Count,
Sample Type, Sample Per, Begin Date, End Date, WSF Name, Analyte Name.

[Default Sort Order]{.underline}: WSF State Asgn ID ascending.

[Tab Sequence]{.underline}:

\[Rule\] Abbreviation, Rule Abbreviation **Go To**, Regulating Agency
Name, Regulating Agency **Go To**, Approval Date, Analyte Code, Analyte
**Go To,** Analyte Group Code, Analyte Group Code **Go To**, Begin Date,
End Date, Use Sampling Plan in Compliance Determination, Remarks,
Sampling Points list box, **Add, Change, Delete,** Sample Schedule List
Box**, Associate, Disassociate,** **OK, Cancel, Help**.
(R2003:A.7.1.8.2.b)

[Buttons]{.underline}:

\[Rule\] **Go To** Will present the Rule Selection List where a rule may
be selected and returned to the Rule abbreviation and name fields.

\[Regulating Agency\]

**Go To** Will present the Legal Entity Maintenance List in
single-select mode where government agencies (legal entities of type =
'GA') with regulating_agency_indicator_code = 'Y' will be presented. A
selection can be made and returned to the Regulating Agency name field.

\[Analyte\] **Go To** Will present the Analyte Maintenance List in
single-select mode where an analyte may be selected and returned to the
Analyte Code and Name field. The Analyte Group Code and **Go To** button
will become protected.

\[Analyte Group\]

**Go To** Will present the Analyte Group Maintenance List in
single-select mode where an analyte group may be selected and returned
to the Analyte Group Code and Name field. The Analyte Code and **Go To**
button will become protected. If an exact match is not found or the user
specifies a partial string in this field, the software will display the
closest matching analyte group code at the top of the Analyte Group
Maintenance List in single-select mode. (Closest matching means a match
with the Analyte Group Code, sorted alphabetically, that starts with the
same text string as supplied.) If no match is possible, the software
will display the entire list of analyte groups. The default sort for
this search will be Analyte Group Code, in ascending alphabetical order.

\[Sampling Point\]

**Add** Will perform all edits as if the **OK** button were processed.
After committing the addition or modification to the Sampling Plan, the
Sampling Point Maintenance List will be presented where sampling points
for this water system will be listed in single-select mode. The Menu
item of Edit/Add will also be enabled to allow for the addition of new
sampling points. (B.7.1.8.2.a) If File/Exit is selected the page should
return to this Sampling Plan Maintenance page. (B.7.1.8.2.b) After a
selection has been made, the Sampling Plan/Sampling Point Association
Maintenance page will be presented in add mode. If the selected sampling
point is already associated to the Sampling Plan one and only one time,
the following advisory (Exhibit 7-23) will be provided:

> ![](media/image28.png){width="5.1875in" height="2.25in"}

[]{#__RefHeading___Toc139861100 .anchor}**Exhibit 7-23.** Duplicate
Association (Single Occurrence)

[Buttons]{.underline}:

> **Add** Will present the Sampling Plan to Sampling Point Association
> Maintenance page in add mode.
>
> **Change** Will present the Sampling Plan to Sampling Point
> Association Maintenance page in change mode with the existing
> association between Sampling Plan and Sampling Point displayed.
>
> **Cancel** Will return to the Sampling Plan Maintenance page.
>
> If the selected sampling point is already associated to the Sampling
> Plan more than one time, the following advisory (Exhibit 7-24) will be
> provided:
>
> ![](media/image29.png){width="4.479166666666667in"
> height="1.8854166666666667in"}

[]{#__RefHeading___Toc139861101 .anchor}**Exhibit 7-24.** Duplicate
Association (Multiple Occurrence)

> [Buttons]{.underline}:
>
> **Add** Will present the Sampling Plan to Sampling Point Association
> Maintenance page in add mode.
>
> **Cancel** Will return to the Sampling Plan Maintenance page.

\[Sampling Point\]

**Change** Will present the Sampling Plan/Sampling Point Association
Maintenance page (Exhibit 7-26) in change mode with the selected
association between Sampling Plan and Sampling Point displayed.

> This button will only be enabled when a selection has been highlighted
> in the list area.

\[Sampling Point\]

**Delete** Will present the Delete confirmation dialog (Exhibit 7-25).

> This button will only be enabled when a selection has been highlighted
> in the list area.

\[Sample Schedule\]

**Associate** Will present the Non-TCR Sample Schedule Maintenance list
in select mode (hidden schedules should not be displayed) for the Water
System of the Sampling Plan. The selected sample schedule will be
presented on the Sample Schedule List upon return. If the sample
schedule already appears in the list, ignore the duplicate request. The
actual association will be made when the **OK** button is clicked on the
Sampling Plan Maintenance page. (R2003:A.7.1.8.2.c)

\[Sample Schedule\]

**Disassociate** Will present the standard disassociate confirmation
page. When the disassociate confirmation **OK** is clicked, the selected
sample schedule will be removed from the list and marked for delete
processing when the **OK** button is selected on the Sampling Plan
Maintenance page.

> This button will only be enabled when a selection has been highlighted
> in the list area. (R2003:A.7.1.8.2.d)
>
> ![](media/image30.png){width="6.0in" height="5.822916666666667in"}

[]{#__RefHeading___Toc139861102 .anchor}**Exhibit 7-25.** Delete
Sampling Plan to Sampling Point Association

> [Buttons]{.underline}:
>
> **Yes** Will delete the SAMPLING_PLAN_SAMPLE_POINT_ASGMT record and
> all associated SAMPLING_PT_PLANNED_COLLECTION_DT records. The
> confirmation will close and return to the Sampling Plan Maintenance
> page where the deleted record will have been removed from the list
> area. If the deleted association was indicated as primary, the Primary
> Samples Planned count will be decremented by 1. The deletion of the
> record will occur at this point and cannot be undone by use of the
> Cancel button on the Sampling Plan Maintenance page.
>
> **No** Will abort the delete request and return to the Sampling Plan
> Maintenance page.

**OK**

*Duplicate Check* A duplicate check will be performed using an exact
match on the following fields:

Water System No.

Rule Abbreviation

Approving Agency Name

Analyte/Analyte Group Code

> And a date overlap where by the begin date and end date values of the
> displayed sampling plan do not overlap in any way with an existing
> sampling plan matching the above field values.
>
> Examples:
>
> Existing Sampling Plan has begin date = 01/01/2004 and end date is
> null.
>
> Attempt to add new sampling plan with same water system no., rule
> abbreviation, approving agency name and begin date =05/01/2004 will be
> denied because the end date of the existing sampling plan is still in
> effect.
>
> Attempt to add new sampling plan with same water system no., rule
> abbreviation, approving agency name and begin date =02/01/2000 and end
> date of null will be denied because the end date of the new sampling
> plan is still in effect.
>
> Attempt to add new sampling plan with same water system no., rule
> abbreviation, approving agency name and begin date =02/01/2000 and end
> date = 12/31/2000 will be allowed because the end date of the new
> sampling plan ends prior to the begin date of the existing sampling
> plan.
>
> Attempt to add new sampling plan with same water system no., rule
> abbreviation, approving agency name and begin date =02/01/2000 and end
> date = 01/01/2004 will be denied because the end date of the new
> sampling plan equals the begin date of the existing sampling plan.
>
> If the sampling plan is to be associated to an analyte, a further
> check will be performed to ensure that there is not an existing
> sampling plan covering an overlapping begin/end date period for an
> analyte group that contains the desired analyte code.
>
> Likewise, if the sampling plan is to be associated to an analyte
> group, a further check will be performed to ensure that there is not
> an existing sampling plan covering an overlapping begin/end date
> period for an analyte that is contained within the desired analyte
> group code.
>
> If a duplicate is found, the following error message will be invoked:
> **Duplicate Sampling Plan found.**
>
> If Begin Date does not contain a value, the error message will be
> **Begin Date must not be blank.**
>
> If the Use Sampling Plan in Compliance Determination is selected as
> Yes, either an analyte code or an analyte group code must be
> designated. If both the analyte code and analyte group code are blank,
> the error message will be **A Sampling Plan for compliance must
> designate an analyte or analyte grp.**
>
> *Add-Mode* The sampling plan will be created and associated to the
> water system, rule, and government agency.
>
> If an analyte code was specified, the Sampling Plan will be associated
> to the ANALYTE. The d_analyte_asc_ind will be set to 'AN'.
>
> If an analyte group code was specified, the Sampling Plan will be
> associated to the ANALYTE_GROUP. The d_analyte_asc_ind will be set to
> 'AG'.
>
> *Change-Mode* The Sampling Plan will be modified. The Sampling Plan
> d_last_update_timestamp and d_userid_code will be set to current
> values.
>
> If the analyte code was added or changed to a different value, the
> Sampling Plan association will be transferred from the prior ANALYTE
> to the new ANALYTE. The d_analyte_asc_ind will be set to 'AN.'
>
> If the analyte code was removed, the Sampling Plan will be
> disassociated from the ANALYTE. The d_analyte_asc_ind will be set to
> spaces.
>
> If the analyte group code was added or changed to a different value,
> the Sampling Plan association will be transferred from the prior
> ANALYTE_GROUP to the new ANALYTE_GROUP. The d_analyte_asc_ind will be
> set to 'AG.'
>
> If the analyte group code was removed, the Sampling Plan will be
> disassociated from the ANALYTE_GROUP. The d_analyte_asc_ind will be
> set to spaces.
>
> If the Sampling Plan End date was changed from null to a value or from
> an existing date to an earlier date, the end dates of all associations
> between Sampling Plan and Sampling Point will be updated with the same
> date value where the SAMPLING_PLAN_SAMPLE_POINT_ASGMT end_date is null
> or greater than the new SAMPLING_PLAN end date.

Sample Schedule Maintenance (either mode) (R2003:A.7.1.8.2.e)

> If there are rows in the Sample Schedule List box to be processed,
> this occurs on the **OK** button processing.
>
> To add a new association between a Sampling Plan and a Sample
> Schedule, create a row in the Sampling Plan Schedule Association table
> and associate it to the Sampling Plan and the Sample Schedule. Set the
> TMNSPSKA_IS_Number using the TINEISN table for table name = TMNSPSKA.
> The Sample_Schedule_Association_Code should be set to 'SCHED'.
>
> To add a new association between a Sampling Plan and a Sample Schedule
> Group, create a row in the Sampling Plan Schedule Association table
> and associate it to the Sampling Plan and the Sample Schedule Group.
> Set the TMNSPSKA_IS_Number using the TINEISN table for table name =
> TMNSPSKA. The Sample_Schedule_Association_Code should be set to
> 'GROUP'. For each hidden sample schedule of the sample schedule group
> that is not closed by an exception analyte, also create a row in the
> Sampling Plan Schedule Association table and associate it to the
> Sampling Plan and the hidden Sample Schedule. Set the
> TMNSPSKA_IS_Number using the TINEISN table for table name = TMNSPSKA.
> The Sample_Schedule_Association_Code should be set to 'HIDDEN'.
>
> To remove the association between a Sampling Plan and a selected
> Sample Schedule, delete the Sampling Plan Schedule Association.
>
> To remove the association between a Sampling Plan and a selected
> Sample Schedule Group, delete the Sampling Plan schedule Association.
> For each hidden sample schedule associated to the sample schedule
> group, delete the Sampling Plan Schedule Association for the hidden
> sample schedule and the sampling plan.

**Cancel** If changes have been made, the standard cancel confirm dialog
box will be invoked. If no changes were made, the maintenance page will
close and return to the Sampling Plan Maintenance List. Include Sample
Schedule changes in trigger of Cancel Confirmation dialog box.
(R2003:A.7.1.8.2.f)

**Help** Will invoke online Help for this page.

[Toolbar Icons:]{.underline}

![](media/image23.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Water System Information page, which will display basic inventory
information for the given Water System.

![](media/image24.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Display Points of Contact page, which will display a protected list of
legal entities and individuals (e.g., operators, engineers) associated
with the given Water System.

####  Sampling Plan/Sampling Point Association Maintenance

The Sampling Plan/Sampling Point Association Maintenance page (Exhibit
7-26) is described below.

[Protected Fields]{.underline}:

*Water System* The number and name of the selected water system.

*Sampling Plan* Information about the selected Sampling Plan including
the rule abbreviation and name, approval date, analyte/analyte group
code and name, begin and end dates, and primary samples planned.

*Sampling Point* Information about the selected Sampling Point including
the WSF State Asgn ID, name and type of the water system facility that
controls the sampling point, the sampling point and location.

*Record updated*

*by/on* The User ID of the last person to update the Sampling
Plan/Sample Point association and the timestamp when it occurred.

[Entry Fields]{.underline}:

*Begin Date* The begin date that the sampling point became part of the
Sampling Plan.

> Begin Date will be a required field. It may contain a future date. In
> add mode the Begin Date will default to the Sampling Plan's begin
> date.
>
> The date cannot be before the Sampling Plan's begin date. If it is the
> error message will be **Sampling Point's begin dt cannot be before
> Sampling Plan's begin dt.**

![](media/image31.png){width="5.990972222222222in"
height="5.674305555555556in"}

[]{#__RefHeading___Toc139861103 .anchor}**Exhibit 7-26.** Sampling
Plan/Sampling Point Association Maintenance

*End Date* The last date that the sampling point is part of the Sampling
Plan.

> End Date will be an optional field. In add mode the End Date will
> default to the Sampling Plan's end date.
>
> It may only contain a value if the Begin Date contains a value and may
> not be before the Begin Date. If it is, the error message will be
> **End Date must not be before Begin Date.**
>
> The date cannot be after the Sampling Plan's end date. If it is, the
> error message will be **Sampling Point's end dt cannot be after
> Sampling Plan's end dt.**

*Primary Sampling*

*Point* When checked, will indicate that the sampling point is a primary
sampling point for the sampling plan. Identifying a point as primary
means it will be available to use in a sample schedule.

The Primary Sampling Point field will be optional.

[Planned Collection Dates List Box]{.underline}

List Columns: Planned Collection Date, Days Tolerance

[Buttons]{.underline}:

\[Planned Collection Dates}

**Add** Will present the Planned Collection Date dialog box where a
planned Collection Date and Days Tolerance can be added.

\[Planned Collection Dates}

**Change** Will present the Planned Collection Date dialog box where a
selected Planned Collection Date and Days Tolerance can be changed.

\[Planned Collection Dates}

**Delete** Will present the Delete Planned Collection Date confirmation
dialog box (Exhibit 7-27).

> ![](media/image32.png){width="4.271527777777778in"
> height="2.873611111111111in"}

[]{#__RefHeading___Toc139861104 .anchor}**Exhibit 7-27.** Delete Planned
Collection Date

[Buttons]{.underline}:

> **Yes** The row will be removed from the display. Actual deletion from
> the database will occur when the **OK** button is pressed.
>
> **No** No action will be taken and the row will remain in the display.

**OK** If the Begin Date does not contain a value, the error message
will be **Begin Date cannot be left blank.**

If the Sampling Plan end date is not null, the Sampling Point begin date
cannot be greater. If sampling point's begin date is greater than the
Sampling Plan's end date, the error message will be **Sampling Point
begin date cannot be after Sampling Plans end date.**

If the Sampling Plan end date is not null, the Sampling Point end date
cannot be greater or null. If sampling point's end date is greater than
the Sampling Plan's end date or not provided, the error message will be
**Sampling Point end date cannot be after Sampling Plans end date.**

*Duplicate check* A sampling point can be related to a sampling plan
multiple times but the begin and end dates cannot overlap. Gaps in time
are allowed. If an existing SAMPLING_PLAN_SAMPLE_POINT_ASGMT row exists
for the same Sampling Plan and Sampling point with even a single date in
common, the error message will be **This Smplg Pt to Smplg Pln assoctn
overlaps dts with an existing row.**

Example: An existing association exists with a begin date = 01/01/2004
and end date = 05/31/2004.

A new association is attempted between the same sampling plan and
sampling point with begin date = 06/01/2004 and end date = 12/31/2004.
This would be allowed.

> A new association is attempted between the same sampling plan and
> sampling point with begin date = 04/01/2004 and end date = 12/31/2004.
> This would be denied.

*Add-Mode* Will create a SAMPLING_PLAN_SAMPLE_POINT_ASGMT record related
to the sampling point and sampling plan. The end date is set to null if
no value is provided. If the Primary Sample Point indicator is checked,
the Primary_Indicator_Code will be set to "Y" and if not checked, it
will be set to "N."

For each row displayed in the Planned Collection Date list box, a
SAMPLING_PT_PLANNED_COLLECTION_DT record will be created. Rows not
display will be ignored.

*Change-Mode* Will update the SAMPLING_PLAN_SAMPLE_POINT_ASGMT record.
If the Primary Sample Point indicator is checked, the
Primary_Indicator_Code will be set to "Y" and if not checked, it will be
set to "N." The d_last_update_timestamp and d_userid_code will be set to
current values. If a value is removed from end date, the field will be
set to null.

> For each new row listed in the Planned Collection Date list box, a
> SAMPLING_PT_PLANNED_COLLECTION_DT record will be created.
>
> For each changed row listed in the Planned Collection Date list box, a
> SAMPLING_PT_PLANNED_COLLECTION_DT record will be updated.
>
> For each row removed from the display that was formerly committed
> (known by the existence of an is_number), the
> SAMPLING_PT_PLANNED_COLLECTION_DT record will be deleted. If the
> SAMPLING_PT_PLANNED_COLLECTION_DT record did not exist, the row can be
> ignored.

The page will close and return the user to the Sampling Plan Maintenance
page.

**Cancel** No changes were performed, the page will close and return the
user to the Sampling Plan Maintenance page.

If changes were performed, the standard cancel confirmation page will be
presented.

**Help** Will invoke online Help for this page.

[Toolbar Icons]{.underline}:

![](media/image23.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Water System Information page, which will display basic inventory
information for the given Water System.

![](media/image24.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Display Points of Contact page, which will display a protected list of
legal entities and individuals (e.g., operators, engineers) associated
with the given Water System.

####  Planned Collection Date Maintenance

Exhibit 7-28 depicts the Planned Collection Date Maintenance dialog
page.

> ![](media/image33.png){width="4.520833333333333in"
> height="2.813888888888889in"}

[]{#__RefHeading___Toc139861105 .anchor}**Exhibit 7-28.** Planned
Collection Date Maintenance

[Entry Fields]{.underline}:

*Planned Collection Date* A date on which a sample should be collected
at the specified Sampling Point.

Planned Collection Date is a required field.

*Days Tolerance* A number representing the number of days on either side
of the Planned Collection Date that a collected sample may satisfy
compliance with this Sampling Plan at the Sampling Point. A zero in this
field indicates there is no tolerance and the Sample's collection date
must match the Planned Collection Date.

[Buttons]{.underline}:

**Add New Date** Will process as if the **OK** button was pressed but
will remain on this page with both fields carried forward.

**OK** If Planned Collection Date is left blank the error message will
be **Planned Collection Date must contain a value.**

If Planned Collection Date matches a Planned Collection Date already
captured for the same Sampling Point and Sampling Plan, the error
message will be **A Planned Collection Dt already exists for same Smplg
Pln and Smplg Pt.**

*Add-mode* Will create a SAMPLING_POINT_PLANNED_COLLECTION_DT and
associate it to the SAMPLING_PLAN_SAMPLE_POINT_ASGMT.

The page will close and return to the Sampling Plan to Sampling Point
Association Maintenance page.

*Change-mode* Will update the SAMPLING_POINT_PLANNED_COLLECTION_DT.

The page will close and return to the Sampling Plan to Sampling Point
Association Maintenance page.

**Cancel** If changes have been made the standard cancel confirmation
page will be presented. If no changes have been made the page will close
and return to the Sampling Plan to Sampling Point Association
Maintenance page.

**Help** Will invoke the system online Help facility.

####  Rule Selection List

The Rule Selection List (Exhibit 7-29) will list the rules in ascending
Rule abbreviation order. If a partial abbreviation name was entered on
the invoking page, the list will begin with abbreviation names greater
than this value.

![](media/image34.png){width="5.936111111111111in"
height="3.9972222222222222in"}

[]{#__RefHeading___Toc139861106 .anchor}**Exhibit 7-29.** Rule Selection
List

[List Columns:]{.underline}

*Rule* The rule abbreviation name.

*Name* The rule name.

[Buttons:]{.underline}

**Select** Will be enabled when a selection has been made in the list
box.

The selected rule will be returned to the invoking page.

A double-click on a listed rule will function as the **Select** button.

**Cancel** Will return to the invoking page with no rule returned, even
if one is highlighted in the list area.

## Sample Schedules

### Model Changes Sample Schedules and Sample Schedule Groups

Change attribute monitoring_assessment_flag in sample_schedule

> Add permitted values:

[Value]{.underline} [Description]{.underline}

P Sample schedule was evaluated and was determined to be a candidate to
switch from indicator monitoring to principal contaminant monitoring
(e.g., *E. coli* monitoring to cryptosporidium monitoring under LT2).
(R2004:A.7.2.1.a) Schema Migration:

-   Set Sample Schedule's (TMNSASCH) init_mp_begin_dat to NULL when
    value is found to be the default value (01/01/0001 for Oracle, etc)
    (R0085: A.7.2.1.b)

-   Set Schema Schedule Group's (TMNSSGRP) init_mp_begin_dat to NULL
    when value is found to be the default value (01/01/0001 for Oracle,
    etc) (R0085: A.7.2.1.c)

### TCR Schedules Page Flow

####  TCR Sample Schedule Search

The TCR Sample Schedule Search page (Exhibit 7-30) is described below.

![](media/image35.png){width="6.216666666666667in"
height="4.288888888888889in"}

[]{#__RefHeading___Toc139861107 .anchor}**Exhibit 7-30.** TCR Sample
Schedule Search

[Protected Field]{.underline}:

*WS Group Used/*

*Regulating Agency*

*Used* This protected field will show the user's current Water System
Group Name or Regulating Agency depending on which the user has made
current. The software will dynamically change the prompt depending on
whether Water System Group Name or Regulating Agency is current. The
prompt will be "WS Group Used" if the user's current Water System Group
is valued, otherwise the prompt will be "Regulating Agency Used."

[Entry Fields]{.underline}:

*Water System No.* The specific Water System No., which consists of the
two-character state code plus the seven-character number field.

> The state code portion will default to the state_identification_code
> in the SYSTEM_VARIABLE entity view.

The **Go To** button may be pressed to select a water system from the
Water System Maintenance list in single-select mode. Only water systems
that are part of the user's current Water System Group or Regulating
Agency will be presented. Once a valid water system has been entered or
picked from a list, the water system name will be displayed on the
window. If the user specifies a partial string in this field, display
the closest matching water system at the top of the list. (Closest
matching means a match with the Water System No., sorted alphabetically,
that starts with the same text string as supplied.)

> If a valid water system is entered but is not part of the user's
> current Water System Group or Regulating Agency, invoke exit state
> error message: **WS is not part of current group/agency. Change
> group/agency to access this WS.**

*Water System Name* A full or partial character string may be entered
that will be used to search for water systems within the user's current
water system group where the name is greater than or equal to the
supplied value. If an exact match is found, that Water System No. will
be populated and the water system will be automatically selected and
carried to the TCR Schedule Maintenance List when the **Search** button
is pressed. Otherwise the resulting list will be displayed on the Water
System Maintenance List in single-select mode in ascending name order as
if the **Go To** button had been selected.

[Buttons]{.underline}:

\[Water System\]

**Go To** If the user presses this button, the Water System Maintenance
List will be displayed in single-select mode. Only water systems that
are part of the user's current Water System Group or Regulating Agency
will be presented. After selection of a water system, the TCR
Maintenance List will be displayed.

**Search** This button will only be enabled when a valid water system is
present in the Water System No. field.

> Pressing this button will retrieve schedules based on the specified
> criteria. These criteria will be further constrained as described:
>
> The user's current Water System Group/Regulating Agency will be used
> as an implied search criterion in all searches for schedule records.
> This means that the software will retrieve only schedules linked to a
> water system that is linked to the user's current Water System
> Group/Regulating Agency. If an exact Water System No. is entered, the
> software will validate that it belongs to the user's current Water
> System Group/Regulating Agency.

-   If a valid water system is entered but is not part of the user's
    current Water System Group or Regulating Agency, the following error
    message will be invoked: **WS is not part of current group/agency.
    Change group/agency to access this WS.**

```{=html}
<!-- -->
```
-   If no current or future TCR Sample Schedule exists for the selected
    water system, the software will continue to flow to the maintenance
    list page but the message will be changed to read as follows: **No
    current or future schedules of this type exist for the specified
    water system.**

**Cancel** Will return to the page that invoked the search.

**Help** Will invoke online Help for this page.

####  TCR Sample Schedule Maintenance List

The TCR Sample Schedule Maintenance List (Exhibit 7-31) is described
below.

A TCR Sample Schedule is defined as a sample schedule which is for a
monitoring requirement that is associated to the TCR Rule
(Rule.abbreviation_text = TCR). Previously, the analyte code of 3100
could be used to make this designation, but this has been changed with
requirements to support the Groundwater Rule.

![](media/image36.png){width="6.493055555555555in"
height="4.460416666666666in"}

[]{#__RefHeading___Toc139861108 .anchor}**Exhibit 7-31.** TCR Sample
Schedule Maintenance List

[Protected Field]{.underline}:

*Water System* The number and name of the selected water system for
which the TCR Schedules displayed in the list box apply.

*Number of rows*

*resulting from the*

*Search criteria used:* The count of the number of TCR sample schedules
for the water system. This field will display a count of
[all]{.underline} TCR schedules for the selected Water System; not just
the TCR schedules currently in effect as listed in the default list. For
example, if a user selects a water system and there are 10 TCR sample
schedules for the water system and 7 of them have an end date that is
earlier than the current date, this field will say "10" and the next
field will say "3." If the user selects **View/Show All Schedules**,
this field will again say "10" but the next one will change to say "10"
as well.

*Number of rows*

*Displayed:* The count of the number of sample schedules displayed in
the list area.

[List Items]{.underline}:

*Sample Count* The number of samples required established by the
monitoring requirement.

*Sample Type* The type of sample required by the monitoring requirement.

*Sample Per.* The periodicity of the monitoring requirement for the
schedule. (Also referred to as frequency.)

*Begin Date* The first date of effectiveness for the schedule.

*End Date* The last date of effectiveness for the schedule.

*Start MM DD* The start month (MM) and day (DD) specifying the start of
seasonality for the schedule.

*End MM DD* The end month (MM) and day (DD) specifying the end of
seasonality for the schedule.

*Streamness*

*Compliance* An indication of whether streamness should be considered
when evaluating this schedule for TCR compliance.

*Analyte Code* The TCR analyte code of 3100.

*Analyte Name* The TCR analyte name of Total Coliform.

*Rule* The TCR Rule.

[Menu Items]{.underline}:

**File**

*Exit* Will return to the *SDWIS/STATE Home Page*.

**Edit**

*Add* Will invoke the TCR Maintenance Page in Add mode. This item will
be available regardless of a selection having been made in the list
area.

*Change* Will invoke the TCR Maintenance Page in Change mode. This item
will only be available when a selection is highlighted in the list area.

> *Delete* Selecting **Edit/Delete** will display a delete confirmation
> page (Exhibit 7-32) for the selected schedule. This option will be
> enabled only when a sample schedule has been selected in the list
> area.
>
> ![](media/image37.png){width="6.495138888888889in"
> height="4.355555555555555in"}

[]{#__RefHeading___Toc139861109 .anchor}**Exhibit 7-32.** Delete
Confirmation

The sample schedule cannot be deleted if there is a violation associated
with it. A sample schedule that is linked to a violation cannot be
removed unless the violation is first disassociated from the schedule.
If a schedule selected for removal is linked to a violation, the
following message (Exhibit 7-33) will be presented:

> ![](media/image38.png){width="4.614583333333333in"
> height="2.8541666666666665in"}

[]{#__RefHeading___Toc139861110 .anchor}**Exhibit 7-33.** Existing
Violation Message

> *Select* The **Edit/Select** menu item will be enabled only when this
> page is invoked as a selection list. Choosing **Edit/Select** will
> close the page and return the user to the invoking page with the
> selected schedule populating the page's fields. (Note that at this
> point, the software will not have committed any database activity).

**View**

*Show All*

> *Schedules* Selecting **View/Show All Schedules** will display all
> (past, present, and future) TCR sample schedules for the water system.
> The default sort is Begin Date ascending.

*Show Current*

*and Future*

> *Schedules* Selecting **View/Show Current and Future Schedules** will
> display the default view. Current and future TCR schedules for the
> water system will be displayed.

\(1\) Show all schedules for the water system whose Effective Begin Date
is equal or prior to the current date and whose Effective End Date is
(null or current date).

AND

\(2\) Show all schedules for the water whose Effective Begin Date is \>
current date.

The default sort will be Begin Date ascending.

> If no current or future schedules are found, invoke exit state
> information message: **No current or future schedules of this type
> exist for the specified water system.** When the user clicks **OK**,
> the TCR Sample Schedule Maintenance List will be displayed.
>
> *Search* Selecting the **View/Search** function presents the TCR
> Sample Schedule Search page Prior criteria. When this function is
> used, the software will apply the current "view" as well as the
> current sort and filter selections to the new list of TCR Sample
> Schedules (e.g., if the user has picked the "Show All Schedules" view
> and has sorted by Begin Date descending, when the user selects another
> water system, the software will apply the same "Show All Schedules"
> view and sort order to the new list of TCR Sample Schedules).
>
> *Sort* Selecting **View/Sort** will display the standard Sort page.
> Three levels of sorting will be supported.
>
> *Filter by* Sample Type, Sample Per., Start MM, Start DD, End MM, End
> DD. Use of the item will enable the Refresh menu item.
>
> *Refresh* Selecting **View/Refresh** will retrieve the unfiltered list
> (original search criteria).

**Help** Will invoke the online system help.

[Buttons:]{.underline}

**Menu Items** Will present the standard menu items dialog box.

**Scroll Buttons** Will scroll the list box in the direction of the
arrow displayed on the button.

[Toolbar Icons:]{.underline}

![](media/image23.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Water System Information page, which will display basic inventory
information for the given Water System.

![](media/image39.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Historical Sampling Information page, which will display protected
information on samples collected for the given water system.

![](media/image24.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Display Points of Contact page, which will display a protected list of
legal entities and individuals (e.g., operators, engineers) associated
with the given Water System.

####  TCR Sample Schedule Maintenance

The TCR Sample Schedule Maintenance page (Exhibit 7-34) is described
below.

![](media/image40.png){width="6.493055555555555in"
height="4.460416666666666in"}

[]{#__RefHeading___Toc139861111 .anchor}**Exhibit 7-34.** TCR Sample
Schedule Maintenance

[Tab Sequence]{.underline}:

Samples Required \[Sample Count\], Sample Required \[Sample Type Code\],
per \[Sample Unit Count\], per \[Sample Count Unit Code\], Monitoring
Requirements **Go To** button, Seasonal Period Start MM/DD, Seasonal
Period End MM/DD, Effective Period Begin Date, Effective Period End
Date, Streamness Compliance Required, Notes, Water System Notified Date,
Corrective Action Taken, **Associate Originating Positive Result**
button**, OK** button, **Cancel** button, **Help** button,
**Disassociate**.

[Protected Fields:]{.underline}

*Water System* The number and name of the selected water system to which
this TCR Schedule will apply.

*Rule* The TCR Rule abbreviation and name.

*Analyte* The TCR 3100 analyte code and name.

*Requirement Source* Will indicate if the sample schedule was
system-generated by displaying SDWIS when the d_system_generated_flag =
'Y' or the two-character state code if the d_system_generated_flag is
not = 'Y.'

Originating Positive Sample Result Information Group Box

This group box presents the original positive sample result information
when associated to the TCR Sample Schedule.

*Lab Sample No.* The sample identification number assigned by the
laboratory.

*State Sample No.* The sample identification number assigned by the
state.

*Sample Type* The type of sample.

*Collection Date* The date the sample was collected.

*Sampling Point* Identification of the sampling point where the sample
was collected.

*Location* The location name of the sampling point where the sample was
collected.

*Total Coliform*

*Result* Displays the Absence or Presence of Total Coliform in the
result.

[Entry Field]{.underline}:

Monitoring Requirement Group Box.

The four fields in this group box cannot be modified in Change mode.

*Samples Required*

> *\[count\]* The number of samples required to be taken. This is a
> required field. If left blank, the following error message will be
> invoked: **Sample Count cannot be blank.**
>
> *\[type\]* The type of samples required to be taken. This is a
> required field with the following valid selections:
>
> Confirmation (if Confirmation, Sample Periodicity defaults to 1T)
>
> Reanalysis
>
> Repeat
>
> Routine
>
> Special
>
> Temporary Routine
>
> If left blank, the following error message will be invoked: **Sample
> Type cannot be blank.**
>
> *\[duration\]* Indicates the number of periods defined in the
> periodicity below. Most commonly contains a 1 to indicate 1 per month.
> Duration will be a required field. If left blank, the following error
> message will be invoked: **Sampling Duration cannot be blank.**
>
> *\[frequency\]* Sample frequency specifies the period of time in which
> the sample is to be taken. Frequency will be a required field. The
> selectable, dropdown list box will contain the following permitted
> values:
>
> DL Daily 4H 4 Hours
>
> HR Hourly 4Y 4 Years
>
> MN Monthly 5Y 5 Years
>
> QT Quarterly 6M 6 Months
>
> WK Weekly 18M 18 Months
>
> YR 1 Year 6Y 6 Years
>
> 1T One Time 7Y 7 Years
>
> 2Y 2 Years 8Y 8 Years
>
> 2W 2 Weeks 9Y 9 Years
>
> 3Y 3 Years 10Y 10 Years
>
> If left blank, the following error message will be invoked:
> **Frequency cannot be blank.**

Seasonal Period Group Box:

> *Start Month/Day* The start month is a numeric value (1-12),
> representing a month of a calendar year. If it is not within this
> range, the following error message will be invoked: **Start Month must
> be between 1-12.** The start day is a numeric value (1-31),
> representing a day within the start month. If it is not a valid day
> within the specified start month, the following error message will be
> invoked: **Start Day of Sample Schedule is Invalid.** Start Month/Day
> will be required fields and if left blank, the following error message
> will be invoked: **Start Day and Month and End Day and Monday must not
> be blank.**
>
> *End Month/Day* The end month is a numeric value (1-12), representing
> a month of a calendar year. If it is not within this range, the
> following error message will be invoked: **End Month must be between
> 1-12.** The end day is a numeric value (1-31), representing a day
> within the end month. If it is not a valid day within the specified
> end month, the following error message will be invoked: **End Day of
> Sample Schedule is Invalid.** End Month/Day will be required fields
> and if left blank, the following error message will be invoked:
> **Start Day and Month and End Day and Mon must not be blank.**

Effective Period Group Box:

> *Begin Date* The date on which the TCR schedule becomes effective.
> Begin Date will be a required field and if left blank, the following
> error message will be invoked: **Begin Date must not be blank.** The
> calendar function may be used to make a date selection.
>
> *End Date* The date on which the TCR schedule is last effective. The
> End Date field will be optional, but if valued, it must be on or after
> than the begin date. If it is not, the following error message will be
> invoked: **End Date must be on or after the Begin Date.** If it is
> left blank, it will be set to null.

*Streamness*

*Compliance*

> *Required?* This field with a dropdown list will enable the user to
> indicate whether TCR NCD should determine compliance with the
> upstream, downstream, and original repeat sampling requirements of the
> TCR or not. This field will be enabled only for Sample Schedules of
> type RP (repeat); otherwise it will be protected. This field will map
> to the TCR STREAMNESS_REQUIRED_INDICATOR attribute in entity
> SAMPLE_SCHEDULE (table TMNSASCH). The permitted values will be:

-   Y---Compliance Officer has indicated that Streamness must be
    considered when the TCR schedule is evaluated by TCR NCD---(i.e., if
    repeat samples do not indicate streamness of upstream, downstream,
    and the original site, TCR NCD will determine a candidate minor M&R
    violation.)

```{=html}
<!-- -->
```
-   N---Compliance Officer has explicitly indicated that streamness
    should not be considered when the TCR schedule is evaluated by TCR
    NCD.

> The default for the field will be "No."
>
> *Notes* A free-form text area where descriptive notes can be recorded.
> The Notes field will be optional.

*Water System*

> *Notified Date* The date on which the water system was notified that
> this new TCR schedule was established. If it is left blank, it will be
> set to null.

*Corrective*

> *Action Taken* Indicates that corrective action has been taken. For
> example, users might use this field to indicate that they can
> discontinue the temporary monitoring they applied when a result
> exceeded a maximum contaminant level because the owner/operator has
> collected the specified number of negative samples required in the
> temporary schedule.

[Buttons:]{.underline}

*\[Monitoring Requirement\]*

**Go To** When the user clicks on the **Go To** button, the Monitoring
Requirement Maintenance List will be presented. This window will enable
the user to select a monitoring requirement. The Monitoring Requirement
Maintenance List will be presented in single-select mode and will list
only monitoring requirements associated to the TCR rule
(RULE.abbreviation_text = 'TCR')

**OK** and

**Associate Originating Positive**

**Result** If the specified monitoring requirement does not exist, the
following message will appear: **The specified Monitoring Requirement
does not exist for the specified Analyte/Analyte Group.** Determination
of the specified monitoring requirement will contain an implied
associated to the TCR Rule. When the user clicks **OK**, the Monitoring
Requirement Maintenance List page will be presented in single-select
mode, listing only monitoring requirements associated to the TCR Rule. .

> An overlap check will be performed for routine schedules as documented
> below.
>
> Routine will be defined as a schedule where the SAMPLE_TYPE_CODE of
> the referenced MONITORING_REQUIREMNT is either RT (routine) or TR
> (temporary routine).

-   The overlap check must consider both the effective period of the
    sample schedule (defined by the BEGIN_DATE and END_DATE in
    SAMPLE_SCHEDULE---not to be confused with attributes of the same
    name in MONITORING_REQUIREMNT) as well as the seasonal period of the
    sample schedule (defined by the period between the START_MONTH plus
    START_DAY and END_MONTH plus END_DAY. If looking at the raw table
    via MS Access, these must not be confused with similar attributes
    with STATE in the front of their name. These are used by non-TCR.
    Also, if START_MONTH and START DAY are later than END MONTH and END
    DAY, the seasonal period will encompass periods in two calendar
    years).

```{=html}
<!-- -->
```
-   This overlap check will be similar to the existing routine overlap
    check for Non-TCR Sample Schedules. The following examples in
    Exhibit 7-35 clarify the routine overlap check for TCR Sample
    Schedules. The error message that will be displayed in the event
    that the software encounters an overlapping routine TCR schedule
    will not change.

+-------+------+------+-------+-----+----+---------+-------+------+
| **MON |      |      |       | *   |    |         |       | **(  |
| ITORI |      |      |       | *SA |    |         |       | Scen |
| NG_RE |      |      |       | MPL |    |         |       | ario |
| QUIRE |      |      |       | E_S |    |         |       | I    |
| MNT** |      |      |       | CHE |    |         |       | D)** |
|       |      |      |       | DUL |    |         |       |      |
|       |      |      |       | E** |    |         |       | **   |
|       |      |      |       |     |    |         |       | Stat |
|       |      |      |       |     |    |         |       | us** |
|       |      |      |       |     |    |         |       |      |
|       |      |      |       |     |    |         |       | **O  |
|       |      |      |       |     |    |         |       | utco |
|       |      |      |       |     |    |         |       | me** |
+-------+------+------+-------+-----+----+---------+-------+------+
| **    | **SA | **SA | **    | **  | *  | **ST    | **EN  |      |
| SAMPL | MPLE | MPLE | SAMPL | BEG | *E | ART\_** | D\_** |      |
| E\_** | \_** | \_** | E\_** | IN\ | ND |         |       |      |
|       |      |      |       | _** | \_ | **MONTH | **    |      |
| **CO  | **   | **   | *     |     | ** | /       | MONTH |      |
| UNT** | TYPE | UNIT | *COUN | **  |    | STAR    | /**   |      |
|       | \_** | \_** | T\_** | DAT | ** | T_DAY** |       |      |
|       |      |      |       | E** | DA |         | *     |      |
|       | **CO | *    | **U   |     | TE |         | *END_ |      |
|       | DE** | *COU | NIT_C |     | ** |         | DAY** |      |
|       |      | NT** | ODE** |     |    |         |       |      |
+-------+------+------+-------+-----+----+---------+-------+------+
| 1     | RT   | 1    | MN    | 1/  | Op | 5/1     | 9/30  | 1a   |
|       |      |      |       | 1/1 | en |         |       |      |
|       |      |      |       | 991 |    |         |       | Exis |
|       |      |      |       |     |    |         |       | ting |
|       |      |      |       |     |    |         |       |      |
|       |      |      |       |     |    |         |       | **   |
|       |      |      |       |     |    |         |       | NA** |
+-------+------+------+-------+-----+----+---------+-------+------+
| 1     | RT   | 1    | QT    | 7/  | Op | 10/1    | 4/30  | 1b   |
|       |      |      |       | 1/1 | en |         |       |      |
| (Does |      | (    | (Does | 999 |    |         |       | New  |
| not   |      | Does | not   |     |    |         |       |      |
|       |      | not  |       |     |    |         |       | **   |
| Ma    |      |      | Ma    |     |    |         |       | OK** |
| tter) |      | Mat  | tter) |     |    |         |       |      |
|       |      | ter) |       |     |    |         |       |      |
+-------+------+------+-------+-----+----+---------+-------+------+
| 5     | TR   | 1    | MN    | 9/  | 9  | 9/1     | 9/30  | 1c   |
|       |      |      |       | 1/2 | /3 |         |       |      |
| (Does |      | (    | (Does | 000 | 0/ |         |       | New  |
| not   |      | Does | not   |     | 20 |         |       |      |
|       |      | not  |       |     | 00 |         |       | **O  |
| Ma    |      |      | Ma    |     |    |         |       | verl |
| tter) |      | Mat  | tter) |     |    |         |       | ap** |
|       |      | ter) |       |     |    |         |       |      |
+-------+------+------+-------+-----+----+---------+-------+------+
|       |      |      |       |     |    |         |       |      |
+-------+------+------+-------+-----+----+---------+-------+------+
| 1     | RT   | 1    | QT    | 4/  | 3  | 1/1     | 12/31 | 2a   |
|       |      |      |       | 1/1 | /3 |         |       |      |
|       |      |      |       | 999 | 1/ |         |       | Exis |
|       |      |      |       |     | 20 |         |       | ting |
|       |      |      |       |     | 01 |         |       |      |
|       |      |      |       |     |    |         |       | **   |
|       |      |      |       |     |    |         |       | NA** |
+-------+------+------+-------+-----+----+---------+-------+------+
| 1     | RT   | 1    | MN    | 9/  | 9  | 9/1     | 9/30  | 2b   |
|       |      |      |       | 1/2 | /3 |         |       |      |
| (Does |      | (    | (Does | 000 | 0/ |         |       | New  |
| not   |      | Does | not   |     | 20 |         |       |      |
|       |      | not  |       |     | 00 |         |       | **O  |
| Ma    |      |      | Ma    |     |    |         |       | verl |
| tter) |      | Mat  | tter) |     |    |         |       | ap** |
|       |      | ter) |       |     |    |         |       |      |
+-------+------+------+-------+-----+----+---------+-------+------+
| 1     | RT   | 1    | MN    | 3/3 | Op | 1/1     | 12/31 | 2c   |
|       |      |      |       | 1/2 | en |         |       |      |
| (Does |      | (    | (Does | 001 |    |         |       | New  |
| not   |      | Does | not   |     |    |         |       |      |
|       |      | not  |       |     |    |         |       | **O  |
| Ma    |      |      | Ma    |     |    |         |       | verl |
| tter) |      | Mat  | tter) |     |    |         |       | ap** |
|       |      | ter) |       |     |    |         |       |      |
+-------+------+------+-------+-----+----+---------+-------+------+

[]{#__RefHeading___Toc139861112 .anchor}**Exhibit 7-35.** TCR Schedules
Overlap Check Example Scenarios

> *Add-Mode* Will create a SAMPLE_SCHEDULE row. The d_initial_userid
> will be set to the current User's ID. The init_mp_begin_dat will be
> set to null. (R0085:A.7.2.2.3.a)

*Change-Mode* Will modify the SAMPLE_SCHEDULE row.

**OK** button in

> either mode: If the schedule is a repeat schedule (type = RP), a check
> will be done to see if it has been associated to a positive sample
> analytical result. If one is not found, the Schedule Not Associated to
> Positive Result advisory (Exhibit 7-36) will be invoked:
>
> ![](media/image41.png){width="3.7604166666666665in"
> height="2.96875in"}

[]{#__RefHeading___Toc139861113 .anchor}**Exhibit 7-36.** Schedule Not
Associated to Positive Result

[Schedule Not Associated to Positive Result Buttons:]{.underline}

**Yes** Will invoke the Originating Positive Sample Result Selection
List.

**No** Will return to the TCR Maintenance List.

**Associate Originating**

**Positive Result**

**Button** In addition to the above duplicate check, the software will
flow to the Originating Positive Sample Result Selection List (described
in section 7.2.2.3.1). This button will only be enabled if the schedule
is a repeat schedule and no originating positive result has already been
associated to the sample schedule.

**Cancel** If no data changes were made, the page will close, no updates
will occur, and the TCR Maintenance List will be invoked.

> If data changes were entered, the standard Cancel Confirm dialog box
> will be invoked.

**Help** Will invoke online Help for this page.

**Disassociate** Will disassociate the originating positive sample
result from the TCR Sample Schedule and remove all data from the
Originating Positive Sample Result group box. This button will only be
enabled if an Originating Positive Sample Result is associated to the
TCR Sample Schedule. The Associate Originating Sample Result button will
become enabled.

[Toolbar Icons]{.underline}:

![](media/image23.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Water System Information page, which will display basic inventory
information for the given Water System.

![](media/image39.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Historical Sampling Information page, which will display protected
information on samples collected for the given water system.

![](media/image24.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Display Points of Contact page, which will display a protected list of
legal entities and individuals (e.g., operators, engineers) associated
with the given Water System.

##### Originating Positive Sample Result Selection List

The Originating Positive Sample Result Selection List (Exhibit 7-37) is
described below:

The list will display the water system's positive sample analytical
results (microbial_analytical_result_presence_indicator = P) that are
for samples of type routine (RT) or repeat (RP), have a collection date
prior to the TCR Schedule begin date, and have not been rejected. The
result must not have already been linked to another repeat TCR schedule.

[List Columns:]{.underline}

*Collection Date* The date the sample was collected.

*Lab Sample No.* The sample identification number assigned by the
laboratory.

*Sample Type* The type of sample. Reference the *Sample* section of this
document for definition of the values that are displayed here.

*P/A* Indicates the Presence (P) or Absence (A) of total coliform in the
sample.

  ------------------------------------------ -----------------------------------------------------
  ![](media/image42.png){width="1.84375in"   ![](media/image43.png){width="4.4743055555555555in"
  height="4.375in"}                          height="3.8305555555555557in"}

  ------------------------------------------ -----------------------------------------------------

[]{#__RefHeading___Toc139861114 .anchor}**Exhibit 7-37.** Originating
Positive Sample Result Selection List

*Sampling Point* The sampling point identification where the sample was
collected.

*Sampling Point*

*Location* The location name of the sampling point where the sample was
collected.

*State Sample No.* The sample identification number assigned by the
state.

[Protected Fields:]{.underline}

*Water System* The number and name of the selected water system.

[Default Sort Order:]{.underline}

Descending collection date.

[Buttons]{.underline}:

**Select** Will be enabled only when a selection has been made in the
list area. A double-click on a sample result will function like a
**Select** button selection. It will create the association between the
selected Sample Analytical Result and the TCR Schedule and return to the
TCR Sample Schedule Maintenance with the Originating Positive Sample
Result information displayed.

**Cancel** Will return to the TCR Sample Schedule Maintenance page.

**Help** Will invoke online Help for this page.

### Non-TCR Sample Schedule Page Flow

SDWIS/STATE will record when, where, and what sampling is necessary by
relating several pieces of information. For example, the requirement
that one routine sample be collected and analyzed for the regulated
volatile organic chemicals (VOC) at Water System Facility #1 every 3
years, with the next sample to be collected between 1/1/1999 and
12/31/2001, will be stored in SDWIS/STATE in six different but related
entities (tables): WATER_SYSTEM_FACILITY (TINWSF), SAMPLE_SCHEDULE_GROUP
(TMNSSGRP), MONITORING_REQUIREMENT (TMNMNR), ANALYTE_GROUP (TSAANGRP),
SAMP_SCHEDULE_MNTRG_PERIOD_ASGMT (TMNSSMPA), and MONITORING_PERIOD
(TMNMPRD). Some refer to all these pieces of information as a sample
schedule. However, in SDWIS/STATE, the term "sample schedule" includes
all these pieces except the period during which the next sample will be
collected. Therefore, in SDWIS/STATE terminology, the above sample
schedule is "one routine sample must be collected and analyzed for the
regulated volatile organic chemicals at Water System Facility #1 every 3
years." SDWIS/STATE calls the last piece of information, "with the next
sample to be collected between 1/1/1999 and 12/31/2001," the Sample
Schedule Monitoring Period Assignment (SSMPA).

As suggested in this example, a Schedule Group will be a schedule
associated with an analyte group to which a "hidden schedule" for each
analyte in the group will be associated. (Schedule Groups are
conceptually similar to Violation Groups and will be maintained in the
Non-TCR Schedule Maintenance page in the same way that Violation Groups
will be maintained on the Violation Maintenance page.) When a user
decides to create a "schedule" and selects an Analyte Group, this action
will trigger the creation of a Schedule Group as well as the creation of
as many "hidden" schedules as there are analytes in the Analyte Group.
Hidden schedules will be "hidden" in the sense that they will not be
displayed on the Non-TCR Schedule Maintenance List, nor will they be
maintained in the Non-TCR Schedule Maintenance page. Only Schedule
Groups and individual non-TCR schedules may be maintained. However,
hidden schedules are important; they will be used by *CDS* processes to
determine compliance. When first created, each hidden schedule in the
Schedule Group will be identical to every other hidden schedule in the
group except for its analyte.

Periodically, the monitoring requirement for one or more of the analytes
in a Schedule Group may change. When this happens, the user may specify
one or more "exception analytes;" that is, analytes that are exceptions
to the monitoring requirement associated with the rest of the hidden
schedules in the group. Specifying an exception analyte will trigger the
closure of its hidden schedule within the Schedule Group. The exception
analyte will be permanently associated with the Schedule Group and the
hidden sample schedule, so that a record exists that the user elected to
specify that the analyte is no longer part of the Schedule Group (even
though the analyte may still be part of the Analyte Group). It will then
be necessary to create a new individual non-TCR schedule for the
exception analyte.

While the previous SSMPA associations are important to overall *CDS*
processing, users do not have to create them and they are not even
created automatically during online non-TCR schedule maintenance. For
these reasons, this subsection does not contain further details
explaining how SSMPA records will be created and used (see the *CDS
Setup* chapter of the SDWIS/STATE System Administration Guide for this
information).

Sampling Point Subschedules for both non-TCR schedule and schedule
groups were implemented in SDWIS/STATE 8.0. In SDWIS/STATE 7.0, a
schedule was linked to a WSF through a sampling point. In SDWIS/STATE
8.0, a schedule was linked directly to a WSF and could optionally be
linked to one or more sampling points. As in SDWIS/STATE 7.0, compliance
determination continues to be done at the WSF level. While the sampling
schedule will apply to the WSF, in order to enable users to optionally
choose to determine compliance at the more detailed sampling point
level, a Sampling Point Subschedule was added to record the requirement
to the sample at one or more sampling points within a WSF. A Sample
Schedule may optionally have one or more Sampling Point Subschedules.

Schedule Packages were implemented in SDWIS/STATE 8.0. This change
addressed a very specific and unique situation specified in the new
Interim Enhanced Surface Water Rule (IESWTR), namely the precursor
monitoring requirements (i.e., total organic carbon monitoring to
determine precursor removal). This change enabled a user to associate a
raw water schedule with its appropriate finished water schedule, thereby
enabling SDWIS/STATE to not only determine M&R compliance but also
treatment technique compliance with the precursor requirements. While
users can package any schedules, other types of packages were not
recognized and analyzed by any compliance determination support
processes.

[]{.mark}

Designation of the appropriate Violation Type for a given Non-TCR
Schedule was implemented in SDWIS/STATE 8.0 by associating a Monitoring
Requirement to a Violation Type. This new relationship is used in two
ways: it is used by the *CDS* compliance processes to determine which
schedules should be assessed by a given process. Second, the associated
Violation Type is used when creating candidate M&R violations. This
relationship is also used in federal reporting to determine the
appropriate code that should be reported as the contaminant code if a
violation is determined.

The capability for the user to override the *CDS* assessed status of a
Non-TCR schedule was implemented in SDWIS/STATE 8.0. In SDWIS/STATE 7.0,
*CDS Setup* assessed whether a schedule is a candidate for increased or
decreased monitoring or should stay the same. In SDWIS/STATE 8.0, this
field is maintainable on the Non-TCR Sample Schedule Maintenance page.

####  Non-TCR Sample Schedule Search

Selecting **Sample Schedules/Non-TCR Schedules** will invoke the Non-TCR
Sample Schedule Search page (Exhibit 7-38). The user must specify a
water system and may optionally specify a WSF for the specific water
system. The additional search by WSF will be required to limit the
search to 1,000 schedules for large water systems.

![](media/image44.png){width="6.559027777777778in"
height="4.496527777777778in"}

[]{#__RefHeading___Toc139861115 .anchor}**Exhibit 7-38.** Non-TCR Sample
Schedule Search

Search by Water System Group Box:

[Protected Field]{.underline}:

*WS Group Used/*

*Regulating Agency*

*Used* This protected field will show the user's current Water System
Group Name or Regulating Agency, depending on which the user has made
current. The software will dynamically change the prompt depending on
whether Water System Group Name or Regulating Agency is current. The
prompt will be "WS Group Used" if the user's current Water System Group
is valued, otherwise the prompt will be "Regulating Agency Used."

[Entry Fields:]{.underline}

*Water System No.* The specific Water System No., which consists of the
two-character state code plus the seven-character number field.

> The state code portion will default to the state_identification_code
> in the SYSTEM_VARIABLE entity view.
>
> The cursor should be located in the first position of the numeric
> portion of the Water System No.

Either Water System No. or Water System Name must be supplied. The **Go
To** button may be pressed to select a water system from a list.

*Water System Name* Standard 40-character Public Water System Name may
be entered completely, partially, or left blank. Either Water System No.
or Water System Name must be supplied.

*WSF State Asgn ID* WSF State Asgn ID field may be entered or the user
may choose a facility from a list by pressing the **Go To** button next
to this field. The WSF State Asgn ID field will be optional. This field
will be protected until a Water System No. is entered and validated. If
the Water System No. is removed, this field will also be removed and
protected.

[Tab Sequence:]{.underline}

Water System No., Water System No. **Go To** button, Water System Name,
WSF State Asgn ID, WSF State Asgn ID **Go To** button, **Search**
button, **Cancel** button, **Help** button.

[Buttons:]{.underline}

Water System No.

**Go To** If the user presses this button, the Water System Maintenance
List will be displayed in single-select mode. If the user has typed part
of the Water System No. or part of the water system name, it will be
used in the search to bring up the Water System Maintenance List. The
user may select a water system from this list.

WSF State Asgn

ID **Go To** If the user presses this button, the WSF list for the water
system in the water system field will be displayed. The user may select
a WSF from among those in the list to look at Schedules for that
specific facility. If the user presses this button without entering a
valid water system, there will be an error message requiring the user to
select a valid water system first.

**Search** The user's current Water System Group/Regulating Agency will
be used as an implied search criterion in all searches for sample
schedule records. This means that the software will retrieve only sample
schedules linked to a water system that is linked to the user's current
Water System Group/Regulating Agency. If an exact Water System No. is
entered, the software will validate that it belongs to the user's
current Water System Group/Regulating Agency. If it does not belong, the
following error message will be invoked: **WS is not part of current
group/agency. Change group/agency to access this WS.**

> If the Non-TCR Sample Schedule Search page was invoked from either the
> *Monitoring* main menu or the Non-TCR Sample Schedule Maintenance List
> and if an exact Water System No. or Water System Name has been
> entered, clicking the **Search** button will display the Non-TCR
> Sample Schedule Maintenance List with all the active current and
> future schedules listed. If a WSF is also entered, the Non-TCR Sample
> Schedule Maintenance List will list only the active current and future
> schedules for the selected WSF. If a partial Water System No. or Water
> System Name has been entered, an error message will be displayed
> instructing the user to type in an appropriate Water System No. or
> select one from the list.
>
> If the Non-TCR Sample Schedule Search page was invoked from the
> Schedule Package Association List, the software will retain the
> finished/principal schedule and retrieve schedules for the specified
> water system and if supplied, WSF, and display them as candidate
> raw/supporting sample schedules in the Schedule Package Association
> List according to the following criterion:
>
> For TOC Packages, this list will display candidate raw TOC schedules
> or schedule groups for the analyte group containing TOC that have not
> already been assigned to the supplied Finished Schedule and that meet
> the following criteria: The schedule or schedule group's

-   Water System (and WSF if specified) will be the same as that
    specified on the Non-TCR Sample Schedule Search page and

-   Monitoring Requirement's Analyte Code will be either 2920, 1067, or
    1927 (or a schedule group containing schedules of these analytes)
    and

-   WSF's type will not be either Distribution System "DS" or Treatment
    Plant "TP."

> For schedule packages of other types, candidate schedules for this
> list should be of the water system (and WSF if specified) as that
> specified on the Non-TCR Sample Schedule Search page and should not
> already be assigned to the supplied Principal Schedule.

Subsection 7.29, Schedule Package Association List, has more information
about this list.

> Regardless of from where the search page was invoked, if no current or
> future schedules are found, the following information message will be
> invoked: **No current or future Non-TCR Sample Schedules exist for the
> selected criteria.** When the user clicks on **OK**, the Non-TCR
> Sample Schedule Maintenance List will be displayed.

**Cancel** The software will disregard any data entered and return the
user to the previous page.

**Help** Will invoke online Help for this page.

####  Non-TCR Sample Schedule Maintenance List

The Non-TCR Sample Schedule Maintenance List will display all non-TCR
sample schedules for the current water system or water system and WSF
(if a WSF has been entered in the search). A Non-TCR Sample Schedule is
any sample schedule (or sample schedule group) associated to a
monitoring requirement that does not have an association to the TCR
Rule. (Rule.abbreviation_text = 'TCR'.)

The user will be able to select a non-TCR sample schedule from the list
to view or update the record using the Non-TCR Sample Schedule
Maintenance List as shown in Exhibit 7-39. The user also will be able to
add new schedules by selecting the **Edit/Add** menu item or add a set
of new schedules using the **Edit/Add using Template** from this page.
This list *will not display the hidden schedules* that are associated
with each schedule group, but will display individual schedules that are
not part of any Schedule Group as well as Sample Schedule Groups (the
only difference in appearance between an individual Sample Schedule and
a Sample Schedule Group is that the former references a single analyte,
whereas the latter references an analyte group).

If invoked from the Violation Sample Schedule Association page, the full
monitoring requirement, including M&R Violation Type, should be returned
to the invoking page. The list should be limited to the supplied Water
System so that a sample schedule of a different water system cannot be
selected and attempted to be associated to the violation.

[List Columns:]{.underline}

WSF State Asgn ID, Water Type, Analyte/Analyte Group Code, Sample Count,
Sample Type, Sample Per., Begin Date, End Date, Initial Mon Prd Begin
Date, Water System Facility, Analyte/Analyte Group Name, FED Rptbl Cont.
Code, Vio. Type, Monitoring Assessment.

![](media/image45.png){width="6.493055555555555in"
height="4.460416666666666in"}

[]{#__RefHeading___Toc139861116 .anchor}**Exhibit 7-39.** Non-TCR Sample
Schedule Maintenance List

[Menu Items]{.underline}:

**File**

> *Exit* Selecting **File/Exit** will return the user to the
> *SDWIS/STATE Home Page.*

**Edit**

> *Add* Selecting **Edit/Add** will display the Non-TCR Sample Schedule
> Maintenance page in Add mode. This option will be enabled even when a
> schedule has been selected in the list.
>
> *Add using*
>
> *Template* Selecting **Edit/Add using Template** will present the
> Non-TCR Schedule Template Maintenance List in single-select mode. Upon
> making a choice, the Non-TCR Schedule Maintenance page will be
> presented in a series; once for each monitoring requirement contained
> within the selected template. The monitoring requirement information
> will be provided and protected from change.
>
> *Change* Selecting **Edit/Change** will display the Non-TCR Sample
> Schedule Maintenance page with the selected sample schedule available
> for change. This option will be enabled only when a sample schedule
> has been selected.
>
> *Delete* Selecting **Edit/Delete** will display the Non-TCR Sample
> Schedule Delete Confirmation page (Exhibit 7-40) for the selected
> schedule. The **Edit/Delete** option will be enabled only when a
> sample schedule has been selected. If the selection is an individual
> sample schedule that is associated with a violation, the sample
> schedule may not be deleted. If the software encounters this
> situation, the following error message will be invoked: **Cannot
> delete this sample schedule because it is referenced by a violation.**
> If the selection is a Sample Schedule Group that is associated with a
> Violation Group, the Sample Schedule Group may not be deleted. If the
> software encounters this situation, the following error message will
> be invoked: **Cannot delete this sample schedule because it is
> referenced by a violation.**
>
> If the sample schedule is found to be associated to a sample summary
> for lead (analyte code = PB90) or copper (analyte code = CU90) that
> was automatically updated by CDS (d_lastupdate_userid = 'CDSSETUP'),
> the following advisory will be presented:

A CDS-generated LCR Sample Summary has been found related to this sample
schedule. Choosing to proceed will also delete all CDS-generated
summaries associated to this schedule as well as any Milestone Events
associated to the CDS-generated summaries. Do you wish to continue?

> [Buttons]{.underline}:
>
> **Yes** Will continue with the delete process.
>
> **No** Will stop the delete request and return to the Non-TCR Sample
> Schedule Maintenance List.
>
> When a Sample Schedule is deleted, the following actions are taken:

-   All associated SSMPAs associated to the sample schedule will be
    deleted. Note that when an SSMPA is deleted, any Sub-SSMPA records
    that reference it are automatically (cascade) deleted.

-   The Last Update Timestamp field of each Sample Analytical Result
    that is associated with the SSMPA or Sub-SSMPA will be set to the
    current timestamp (so that these will be re-assessed by *CDS Setup*
    the next time it runs).

-   Lead and Copper Sample Summary Results with d_lastupdate_userid =
    'CDSSETUP' will be deleted.

-   Lead and Copper Sample Summaries with 'CDSSETUP' as its last update
    User ID will be deleted.

-   Each CALC_MCL_VALUE_MP_AVG_ASGMT associated to the SSMPA will be
    deleted.

-   Each MCL VALUE associated to the SSMPA will be deleted.

-   Each MONITORING_PERIOD_AVERAGE associated to the SSMPA will be
    deleted.

-   Each Sampling Plan Schedule Association will be deleted.
    (R2003:A.7.2.5.2.a)

> *Select* The **Edit/Select** menu item will be enabled only when this
> page is invoked as a selection list. Selecting **Edit/Select** will
> close the page and return the user to the invoking page with the
> selected schedule populating the page's fields. (Note: At this point,
> the software will not have committed any changes to the database. This
> will occur when the user presses **OK** on the invoking page.)
>
> If invoked from the Results Averages Search page, the selection of
> schedules will operate differently in that it will select all hidden
> and non-hidden schedules that meet the user-specified criteria and
> exclude any schedule groups that meet the user-specified criteria. In
> this scenario, the following other Non-TCR Schedule Maintenance List
> menu items will be protected: **Edit/Add**, **Edit/Change**,
> **Edit/Delete**, **Edit/Package Schedules**, and **View/Search**.

*Package*

> *Schedules* Selecting **Edit/Package Schedules** will invoke the
> Schedule Package Maintenance List (Exhibit 7-41) and will enable the
> user to package a finished TOC schedule with one or more raw TOC or
> raw alkalinity schedules or package any other schedule(s). This menu
> item will be enabled only if a schedule is highlighted. If the user
> selects a schedule whose monitoring requirement is for Analyte Code
> 2920 or a Schedule Group whose monitoring requirement's Analyte Group
> contains Analyte 2920, and that schedule's WSF type is not DS or TP,
> the following error message will be invoked: **You must select a
> Finished TOC Schedule to create/maintain a TOC Schedule Package.** The
> user will be returned to the Non-TCR Maintenance List with the
> selected record highlighted.

![](media/image46.png){width="6.354166666666667in"
height="3.9791666666666665in"}

[]{#__RefHeading___Toc139861117 .anchor}**Exhibit 7-40.** Non-TCR Sample
Schedule Delete Confirmation

> If the user picks a Schedule Group whose monitoring requirement's
> Analyte Group contains Analyte 2920 and the schedule is associated to
> a WSF type of DS or TP, the following error message will be invoked:
> **You must select an individual schedule as the Finished Schedule to
> create/maintain a TOC Schedule Package.**

**View**

*Show All*

> *Schedules* Selecting **View/Show All Schedules** will display all
> (past, present, and future) non-TCR sample schedules for the water
> system (or WSF if previously selected during the search). The default
> sort is:

WSF State Asgn ID Asc.

Analyte Code Asc.

Sample Type Asc.

Sample Sched Effective Begin Dt Asc.

*Show Current*

*and Future*

> *Schedules* Selecting **View/Show Current and Future Schedules** will
> display the default view. Current and future non-TCR schedules for the
> water system (or WSF if previously selected during the search) will be
> displayed.
>
> \(1\) Show all schedules for the water system or WSF whose Effective
> Begin Date is  current date and whose Effective End Date is (null or
>  current date)

AND

> \(2\) Show all schedules for the water system or WSF whose Effective
> Begin Date is \> current date.

The default sort will be:

WSF State Asgn ID Asc.

Analyte Code Asc.

> Sample Type Asc.

Sample Sched Effective Begin Dt Asc.

> If no current or future schedules are found, the following information
> message will be invoked: **No current or future Non-TCR Sample
> Schedules exist for the selected criteria.** When the user clicks on
> **OK**, the Non-TCR Sample Schedule Maintenance List will be displayed
> (Exhibit 7-39).
>
> *Search* Selecting **View/Search** will invoke the Non-TCR Sample
> Schedule Search page. Prior search criteria will be present. If the
> page was invoked from the Violation Sample Schedule Association page,
> the supplied Water System will be protected from change) If the page
> was invoked from the Violation Sample Schedule Association page, the
> supplied Water System Facility will be protected from change.
>
> *Sort* Selecting **View/Sort** will display the standard Sort page.
> Three levels of sorting will be supported.
>
> *Filter by* WSF State Asgn ID, Sample Type, Sample Per., Analyte Code,
> Analyte Group Code, Initial Monitoring Period Begin Date, Water Type
> Code, FED Reportable Contaminant Code, Vio. Type, Monitoring
> Assessment. Utilizing the filter by menu item will enable the Refresh
> menu item.
>
> *Refresh* Selecting **View/Refresh** will retrieve the unfiltered list
> (original search criteria).

**Help** Will invoke the online system help.

[Buttons:]{.underline}

**Menu Items** Will present the standard menu items dialog box.

**Scroll Buttons** Will scroll the list box in the direction of the
arrow displayed on the button.

[Default Sort Order:]{.underline}

WSF State Asgn ID ascending, Analyte/Analyte Group Code ascending.

[Protected Fields:]{.underline}

*WS Group Used/*

*Regulating Agency*

*Used* This protected field will show the Water System Group Name or
Regulating Agency used in the search criteria. The software will
dynamically change the prompt depending on whether Water System Group
Name or Regulating Agency is current. The prompt will be "WS Group Used"
if the user's current Water System Group is valued, otherwise the prompt
will be "Regulating Agency Used."

*Number of rows*

*resulting from*

*search criteria*

*entered* This field will show the total number of rows that met the
search criteria. This means this field will display a count of all
non-TCR schedules for the selected Water System or Water System
Facility; not only those currently in effect, which is the default list
presentation. For example, if a user selects a water system and there
are 15 non-TCR sample schedules (excluding hidden schedules) for the
water system and 5 of them have an end date that is earlier than the
current date, this field will say "15" and the next field will say "10."
If the user selects **View/Show All Schedules**, this field will again
say "15" but the next one will change to say "15" as well.

*Number of rows*

*displayed* This field will show the total number of rows that are
displayed in the list, which may be less than the number of rows that
met the search criteria.

[Toolbar Icons:]{.underline}

![](media/image23.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Water System Information page, which will display basic inventory
information for the given Water System.

![](media/image39.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Historical Sampling Information page, which will display protected
information on samples collected for the given water system.

![](media/image24.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Display Points of Contact page, which will display a protected list of
legal entities and individuals (e.g., operators, engineers) associated
with the given Water System.

####  Schedule Package Maintenance List

The Schedule Package Maintenance List (Exhibit 7-41) will display the
principal sample schedule or schedule group (selected from the Non-TCR
Sample Schedule Maintenance List) and the list of supporting
schedules/schedule groups that are assigned to the principal sample
schedule/schedule group. The Schedule Package Maintenance List will
support either schedules or schedule groups. Users will know the
difference by the presence of either an Analyte Code or Analyte Group
Code prompt on the page. The text throughout this subsection uses the
term schedules to mean schedules or schedule groups, unless otherwise
stated.

Users will be able to select one or more supporting schedules to which
to associate or from which to disassociate this principal schedule using
the Schedule Package Association List, Exhibit 7-43. Selecting
**Edit/Disassociate** will disassociate the Supporting Schedule from the
Principal Schedule. If the selected Principal Schedule has been
associated to a Violation of status V or P, the user will not be able to
associate or disassociate any supporting schedules, although the
Schedule Association List will show the schedules.

Prior to displaying the Schedule Package Maintenance List, the software
will check the following:

-   If the user has selected a TOC schedule (Analyte Code 2920)

> then the Principal Schedule group box will dynamically display as the
> Finished Schedule group box and the Supporting Schedule group box will
> dynamically display as the Raw Schedule group box. The Package Type
> will be set to "T- TOC Precursor Package" and stored on the SCHEDULE
> PACKAGE entity type.

If the user has selected any other type of schedule (Analyte Code other
than 2920)

> then the Principal Schedule group box keeps that title, the Supporting
> Schedules group box keeps that title, and Package Type will be set to
> "O-Other Package Type" and stored on the SCHEDULE PACKAGE entity type.

-   If the user has selected a schedule, the prompt for Analyte will be
    Analyte Code and the Analyte Code will display as shown in Exhibit
    7-41. Otherwise, if the user has selected a schedule group, the
    prompt for Analyte will be Analyte Group and the Analyte Group Code
    will display. The presence on the page of either Analyte Code or
    Analyte Group Code will indicate whether a schedule or schedule
    group is being used.

The fields in this list will be Water System No., WSF State Asgn ID,
Analyte/Analyte Group Code, Sample Count, Sample Type, Sample Per.,
Begin Date, End Date, Initial Mon Prd Begin Date, Water Type, Water
System Facility \[Name\], Analyte/Analyte Group \[Name\].

![](media/image47.png){width="6.493055555555555in"
height="4.460416666666666in"}

[]{#__RefHeading___Toc139861118 .anchor}**Exhibit 7-41.** Schedule
Package Maintenance List

[Menu Items]{.underline}:

**File**

> *Exit* Selecting **File/Exit** will return the user to the Non-TCR
> Sample Schedule Maintenance List.

**Edit**

> *Associate* Selecting **Edit/Associate** will display the Schedule
> Package Association List page. This option will be enabled when a Raw
> TOC sample schedule has not been selected.
>
> *Disassociate* Selecting **Edit/Disassociate** will display a
> Supporting Sample Schedule Disassociate Confirmation page (Exhibit
> 7-42) for the selected schedule. This option will be enabled only when
> a Raw TOC sample schedule or Supporting Schedule has been selected.
>
> ![](media/image48.png){width="5.995833333333334in"
> height="2.845833333333333in"}
>
> []{#__RefHeading___Toc139861119 .anchor}**Exhibit 7-42.** Supporting
> Sample Schedule Disassociate Confirmation

[Buttons]{.underline}:

> **Yes** Pressing this button for a schedule or schedule group will
> disassociate the supporting/raw schedule from the principal/finished
> schedule and remove the record from Schedule Package ROLE (table
> TMNSKPAR). If this disassociate removes the last schedule or schedule
> group from the schedule package, the record in Schedule Package
> (TMNSKPAC) will also be deleted. The supporting sample
> schedule/schedule group cannot be disassociated if the principal
> schedule has been linked to a violation whose status is V or P. If the
> software encounters this situation, the following error message will
> be invoked: **The principal sample schedule has been linked to a
> violation of status V or P and cannot be disassociated.**
>
> **No** Pressing this button will perform no action except to close the
> page and return the user to the Schedule Package Maintenance List.

**View**

> *Filter by* WSF State Asgn ID, Sample Type, Sample Periodicity,
> Analyte Code/Analyte Group Code, Initial Monitoring Period Begin Date,
> Water Type Code. Use of the Filter By menu item will enable the
> Refresh menu item.
>
> *Refresh* Selecting **View/Refresh** will retrieve the unfiltered
> list.
>
> *Sort by* Selecting **View/Sort** will display the standard Sort page.
> Three levels of sorting will be supported.

**Help** Will invoke the online system help.

[Buttons:]{.underline}

**Menu Items** Will present the standard menu items dialog box.

**Scroll Buttons** Will scroll the list box in the direction of the
arrow displayed on the button.

[Protected Items]{.underline}:

*Water System/*

*Facility* The Water System No., name, WSF State Asgn ID, and WSF name
of the non-TCR sample schedule selected from the maintenance list.

*Principal Schedule* The monitoring requirement and effective being/end
dates of the non-TCR sample schedule selected from the maintenance list.

*Supporting*

*Schedules* A list of non-TCR sample schedules contained within the
schedule package.

*Number of rows*

*Displayed:* A count of the number of supporting schedules contained in
the list area.

####  Schedule Package Association List

The Schedule Package Association List, a multi-select list (Exhibit
7-43), will allow users to maintain a TOC schedule package by selecting
multiple Raw TOC (Analyte Code 2920) and Alkalinity (Analyte Code 1067
or 1927) schedules and schedule groups to associate with the finished
sample schedule. For other types of packages, this list will allow
selection and association of one or more supporting schedules and
schedule groups to the principal schedule.

Prior to displaying the Schedule Package Association List, the software
will check the following items.

-   For TOC Packages, this list will display candidate raw TOC schedules
    that have not already been assigned to the Finished Schedule and
    that meet the following criteria:

```{=html}
<!-- -->
```
-   The candidate (for listing) raw TOC schedule's Water System is the
    same as that of the Finished Schedule and

-   Monitoring Requirement's Analyte Code is 2920, 1067, or 1927 and

-   WSF's type is not either Distribution System ("DS") or Treatment
    Plant ("TP").

```{=html}
<!-- -->
```
-   For schedule packages of other types, candidate schedules for this
    list should be for the same water system and not already be assigned
    to the Principal Schedule. Note that raw/supporting schedules from a
    different water system may be associated to the finished/principal
    schedule. The user will need to use the **View/Search** menu item to
    retrieve candidate raw/supporting schedules from a different water
    system.

    Schedule Package/Role Data Population Examples

> A finished TOC Sample Schedule is packaged with two raw, Group
> Schedules. The Analyte Group referenced by the Group Schedules
> consists of TOC and alkalinity.

Packaging these schedules will result in the following records:

+-------+-------+-------+---------+-------+------+------+------+-----+
| **Wtr | **WSF |       | *       | **Grp | *    |      | *    |     |
| Sys** | State |       | *Sample | Sch** | *Sch |      | *Sch |     |
|       | A     |       | Sch**   |       | Pkg  |      | P    |     |
| **    | sgn** |       |         | **An  | Ro   |      | kg** |     |
| No.** |       |       | **An    | alyte | le** |      |      |     |
|       |       |       | alyte** | Gr    |      |      |      |     |
|       |       |       |         | oup** |      |      |      |     |
|       |       |       |         |       |      |      |      |     |
|       |       |       |         | **C   |      |      |      |     |
|       |       |       |         | ode** |      |      |      |     |
+-------+-------+-------+---------+-------+------+------+------+-----+
|       | *     | **T   |         |       | **Ty | *    | **IS | **  |
|       | *ID** | ype** |         |       | pe** | *Rel | N    | Typ |
|       |       |       |         |       |      | I    | o.** | e** |
|       |       |       |         |       |      | nd** |      |     |
+-------+-------+-------+---------+-------+------+------+------+-----+
| 1     | 1     | TP    | TOC     |       | F    | SS   | 1    | TOC |
+-------+-------+-------+---------+-------+------+------+------+-----+
| 1     | 2     | WL    |         | PREC  | R    | GS   |      |     |
+-------+-------+-------+---------+-------+------+------+------+-----+
| 1     | 3     | WL    |         | PREC  | R    | GS   |      |     |
+-------+-------+-------+---------+-------+------+------+------+-----+

> A principle Group Schedule for TThm and HAA is packaged with two raw,
> Group Schedules, the same ones used in the first example. This will
> result in the following records:

+-------+-------+-------+---------+-------+------+------+------+-----+
| **Wtr | **WSF |       | *       | **Grp | *    |      | *    |     |
| Sys** | State |       | *Sample | Sch** | *Sch |      | *Sch |     |
|       | A     |       | Sch**   |       | Pkg  |      | P    |     |
| **    | sgn** |       |         | **An  | Ro   |      | kg** |     |
| No.** |       |       | **An    | alyte | le** |      |      |     |
|       |       |       | alyte** | Gr    |      |      |      |     |
|       |       |       |         | oup** |      |      |      |     |
|       |       |       |         |       |      |      |      |     |
|       |       |       |         | **C   |      |      |      |     |
|       |       |       |         | ode** |      |      |      |     |
+-------+-------+-------+---------+-------+------+------+------+-----+
|       | *     | **T   |         |       | **Ty | *    | **IS | **  |
|       | *ID** | ype** |         |       | pe** | *Rel | N    | Typ |
|       |       |       |         |       |      | I    | o.** | e** |
|       |       |       |         |       |      | nd** |      |     |
+-------+-------+-------+---------+-------+------+------+------+-----+
| 1     | 4     | DS    |         | DBP1  | P    | GS   | 2    | OTH |
+-------+-------+-------+---------+-------+------+------+------+-----+
| 1     | 2     | WL    |         | PREC  | S    | GS   |      |     |
+-------+-------+-------+---------+-------+------+------+------+-----+
| 1     | 3     | WL    |         | PREC  | SP   | GS   |      |     |
+-------+-------+-------+---------+-------+------+------+------+-----+

![](media/image49.png){width="6.493055555555555in"
height="4.460416666666666in"}

[]{#__RefHeading___Toc139861120 .anchor}**Exhibit 7-43.** Schedule
Package Association List

[Menu Items]{.underline}:

**File**

> *Exit* Selecting **File/Exit** will return the user to the Schedule
> Package Maintenance List.

**Edit**

> *Select* The **Edit/Select** menu item will be enabled only if one or
> more Supporting Schedules are selected. When the user chooses
> **Edit/Select** for a schedule(s), the selected schedules (supporting
> or raw) will be associated to the Principal Schedule (or Finished),
> and a new Schedule Package Role record will be created for each
> selected schedule and associated to the Schedule Package record and
> the Sample Schedule or Sample Schedule Group.
>
> If the Principal Schedule's monitoring requirement is for Analyte Code
> 2920, the software updates:

-   The Principal/Finished schedule's Package Type Indicator to "F" in
    the Schedule Package Role.

```{=html}
<!-- -->
```
-   Each selected Supporting/Raw schedule's Package Type Indicator to
    "R" in the Schedule Package Role.

```{=html}
<!-- -->
```
-   The type code in Schedule Package will be set to "T" for TOC.

> If the Principal Schedule's monitoring requirement is for Analyte Code
> other than 2920, the software updates:

-   The Principal/Finished schedule's Package Type Indicator to "P" in
    Schedule Package Role.

```{=html}
<!-- -->
```
-   Each selected Supporting/Raw schedule's Package Type Indicator to
    "S" in Schedule Package Role.

```{=html}
<!-- -->
```
-   The type code in Schedule Package will be set to "O" for Other.

> Once all Schedule Package Roles have been created, the selected
> schedules are displayed on the Schedule Package Maintenance List.

**View**

> *Filter by* WSF State Asgn ID, Sample Type, Sample Per., Analyte Code,
> Analyte Group Code, Initial Monitoring Period Begin Date, Water Type
> Code.

*Refresh* Selecting **View/Refresh** will retrieve the unfiltered list.

> *Search* Selecting **View/Search** will display the standard Non-TCR
> Sample Schedule Search page (to enable a user to specify another water
> system and/or WSF from which to select one or more raw/supporting
> sample schedules).

*Sort* Selecting **View/Sort** will display the standard Sort page.

**Help** Will invoke the online system help.

[Buttons:]{.underline}

**Menu Items** Will present the standard menu items dialog box.

**Scroll Buttons** Will scroll the list box in the direction of the
arrow displayed on the button.

[Protected Items]{.underline}:

*Water System/Facility* The Water System No., name, wsf State Asgn ID,
and wsf name of the non-TCR sample schedule selected from the
maintenance list.

*Principal Schedule* The monitoring requirement and effective being/end
dates of the non-TCR sample schedule selected from the maintenance list.

*Supporting Schedules* A list of non-TCR sample schedules available for
packaging with the principal schedule.

*Number of rows*

*Displayed:* A count of the number of supporting schedules contained in
the list area.

*Number of rows*

*Selected:* A count of the number of supporting schedules selected in
the list area.

####  Non-TCR Sample Schedule Maintenance

Exhibit 7-44 shows the Non-TCR Sample Schedule Maintenance page, which
will allow users to add or change Non-TCR Sample Schedules. The WSF,
Analyte, or Analyte Group, and Monitoring Requirement can be entered or
selected from a list.

[Protected Fields:]{.underline}

*Water System/Facility Group Box:*

The Water System/Facility group box contains the Water System No. and
Name of the previously selected Water System as protected fields.

This group box will be protected in Change mode to prevent modification.

*\[Water System Facility\]*

*Name* Contains the name of the selected WSF.

*Monitoring Requirement Group Box:*

*\[Non-TCR Schedule*

*Template name\]* When Non-TCR sample schedules are being created using
a Non-TCR Schedule Template, the name of the selected template will
display here.

*Template Count*

*nn of NN* When Non-TCR sample schedules are being created using a
Non-TCR Schedule Template, these fields will display the sequence number
of the monitoring requirement within the total monitoring requirements
contained within the selected Non-TCR Schedule Template.

*FED Reportable*

*Contaminant*

*Code* Displays the analyte used when creating the candidate violation
and which will be used for Federal reporting. This information will be
retrieved from the linkage between Violation Type and Analyte or, if the
Violation Type is not linked, from the Monitoring Requirement associated
to the Sample Schedule. Note that, in this latter case, if the schedule
is a Group Schedule, display the Analyte Group Code even though
technically, each individual Analyte Code within the group will be
reported. (Each Violation Type sometimes is associated with a federal
reportable contaminant code from one Analyte.)

  ----------------------------------------------------- ------------------------------------------------------------------------
  ![](media/image50.png){width="1.5930555555555554in"   ![](media/image51.png){width="4.719444444444444in"
  height="7.24375in"}                                   height="5.74375in"}![](media/image52.png){width="4.717361111111111in"
                                                        height="1.1604166666666667in"}![](media/image53.png){width="4.71875in"
                                                        height="0.31180555555555556in"}

  ----------------------------------------------------- ------------------------------------------------------------------------

[]{#__RefHeading___Toc139861121 .anchor}**Exhibit 7-44.** Non-TCR Sample
Schedule Maintenance

[Entry Fields:]{.underline}

*WSF State Asgn ID* The State Asgn ID of the WSF for which the schedule
is intended. As the user tabs off this field, check that the supplied
State Asgn ID is valid for the selected Water System. If it is, the name
field will be populated. If not, the following error message will be
invoked: **The Water System Facility State Asgn ID entered does not
belong to this water system.**

WSF State Asgn ID will be a required field.

Sample Schedule Group Box:

Monitoring Requirement Group Box:

If the page was invoked utilizing the Add using Template feature, these
fields will be populated with the monitoring requirement(s) contained
within the template. The seven fields and three **Go To** buttons
contained within the Monitoring Requirement group box will be protected.
The Template name will be displayed. The Template sequence within total
fields will be populated. The **SKIP** button will be enabled.

This group will be protected and may not be modified in Change mode.

> *Analyte Code* The user may enter a valid Analyte Code or use the **Go
> To** button to display the Analyte Maintenance List in single-select
> mode.
>
> As the user enters/changes a value and tabs off the Analyte Code
> field, check that the supplied Analyte is valid, then populate the
> retrieved Analyte's Name value in the protected Analyte Name field.
>
> If the supplied analyte does not exist in the database, do not supply
> a message but directly invoke the Analyte Maintenance List in
> single-select mode from which the user may select a valid analyte.
>
> As the user enters/changes a value and tabs off the Analyte Code
> field, the Analyte Group Code field will be protected. Either Analyte
> Code or Analyte Group Code must be supplied; both may not be supplied.

*Analyte Group*

> *Code* The user may enter a valid Analyte Group Code or use the **Go
> To** button to display the Analyte Group Maintenance List in
> single-select mode.
>
> As the user enters/changes a value and tabs off the Analyte Group Code
> field, check that the supplied Analyte Group is valid, then populate
> the retrieved Analyte Group's Name value in the protected Analyte
> Group Name field.
>
> If the supplied Analyte Group does not exist in the database, do not
> supply a message but directly invoke the Analyte Group Maintenance
> List in single-select mode from where the user may select a valid
> analyte group.
>
> As the user enters/changes a value and tabs off the Analyte Group Code
> field, the Analyte Code field will be protected. Either Analyte Code
> or Analyte Group Code must be supplied; both may not be supplied.

Samples Required Group:

A user can supply data in the four fields (two enterable fields and two
selectable lists) to the right of the prompt or click on the **Go To**
button. The fields will allow entry of a sample count, sample type,
periodicity, and violation type. Clicking on the **Go To** button will
display the Monitoring Requirement Maintenance List to allow the
selection or addition of a monitoring requirement. The Monitoring
Requirement Maintenance List will not list monitoring requirements that
have an association to the TCR Rule (Rule.abbreviation_text = 'TCR'.)

\[Sample Count\] Will be an enterable numeric field.

\[Sample Type\] Will be a selectable list with the following permitted
values:

RT Routine

> CO Confirmation

SP Special

OT Other

> (*CDS* processes will know the explicit Lead & Copper schedule
> requirement by virtue of that schedule's association to a violation
> type.)

\[Periodicity\] Will be a selectable list with the following permitted
values in the order listed:

> 1T One Time.
>
> YR 1 Year.

2Y 2 Years.

3Y 3 Years.

4H 4 Hours.

4Y 4 Years.

5Y 5 Years.

> 2M 2 Months (R3017:A.7.2.5.5.a)

6M 6 Months.

18M 18 Months.

6Y 6 Years.

7Y 7 Years.

8Y 8 Years.

9Y 9 Years.

10Y 10 Years.

DL 1 Day.

> 2 W 2 Weeks.

HR 1 Hour.

MN Month.

QT Quarter.

WK Week.

> If a \[Sample Type\] of Confirmation (CO) is selected, the
> \[Periodicity\] dropdown menu should be automatically set to One Time
> (1T) and protected.
>
> If a \[Sample Type\] of Routine (RT) and \[Periodicity\] of 1T is
> selected, invoke the following advisory page (Exhibit 7-45):
>
> ![](media/image54.png){width="4.28125in"
> height="2.4166666666666665in"}

[]{#__RefHeading___Toc139861122 .anchor}**Exhibit 7-45.** CDS Will Not
Evaluate One-Time Periodicity

> [Buttons]{.underline}:
>
> **Yes** Will store the fact that the user wishes to create the
> schedule anyway. (*CDS Setup* will be unable to determine and create
> an SSMPA because "1T" is not an appropriate type of Monitoring
> Period.)
>
> **No** Will return the user to the Non-TCR Sample Schedule Maintenance
> page.

*Vio. Type* The value that *CDS* processes will use to determine a
violation of the schedule if one is created.

[Button]{.underline}:

**SKIP** This button will be enabled when a series of Non-TCR Sample
Schedules are being added using the "Add using Template" feature from
the Non-TCR Sample Schedule Maintenance List. The button will remain
enabled until the last monitoring requirement within the template is
presented for processing. The button can be used to bypass the current
monitoring requirement and proceed to the next within the template.
There is only forward skipping and once a monitoring requirement has
been presented and skipped, it will not be presented again. Skipping
will advance the Template sequence within total counters.

*Initial Monitoring*

*Period Begin Date* The Initial Monitoring Period Begin Date field will
be optional to indicate to the *CDS Setup* program the begin date of the
first monitoring period for which this schedule will be effective.
*While this field is considered optional, and the user can create a
schedule without valuing it, any schedule that does not have this field
valued cannot be used in CDS processing.* *CDS Setup* will use this date
to create an association between the schedule and the first monitoring
period whose Begin Date is on or after the schedule's Initial Monitoring
Period Begin Date and whose Duration is the same as the Sample Schedule
Periodicity. *CDS Setup* will then create associations between the
schedule and all monitoring periods of the same duration that
arithmetically follow the first monitoring period. Arithmetical sequence
in this case can best be described by the following example. If a
quarterly schedule has an Initial Monitoring Period Begin Date (Non-TCR
Schedule Maintenance Page) of 10/1/2000, *CDS Setup* will first search
for a quarterly monitoring period whose Begin Date is 10/1/2000. If none
exists, it will search for the next monitoring period in arithmetic
sequence that will be a quarterly monitoring period whose begin date is
equal to the Initial Monitoring Period Begin Date (Non-TCR Schedule
Maintenance Page) plus the days of the schedule's duration plus 1. In
this case, it will look for a quarterly monitoring period whose Begin
Date is 1/1/2001. A quarterly monitoring period whose Begin Date is
11/1/2000, for example, will not qualify because it precedes the
arithmetically sequential monitoring period begin date of 1/1/2001.

*Water System*

*Notified Date* The Water System Notified Date field will be optional.
It will be used to enter the date that the Water System was notified
about the Sample Schedule.

Effective Period Group Box:

*Effective Period*

*Begin* Effective Period Begin will be a required field. When a valid
date is provided and the Initial Monitoring Period is not valued, it
will be used to populate the Initial Monitoring Period Begin Date field.

> This field will be protected in Change mode to prevent modification.

*Effective Period*

*End* The Effective Period End field will be optional for the Sample
Schedule end date.

Seasonal Collection Period Group Box:

If a value is supplied for any one of these four fields, values for all
of them must be supplied. If not, the error message will be: **If any
Seasonal Collection parameter is supplied, all four must be supplied.**
If a seasonal collection period is entered, it will be used by *CDS* to
determine compliance with the sample schedule.

*Start Month* Will map to SAMPLE_SCHEDULE_START_MONTH. If a value is
supplied, must be a number from 1-12, else the following error message
will be invoked: **Start Month must be between 1 and 12.** (Return the
cursor to that field.)

*Start Day* Will map to SAMPLE_SCHEDULE_START_DAY. If a value is
supplied, must be a number from 1-31 and valid for the Start Month
specified, else the following error message will be invoked: **Start day
for Sample Schedule is invalid.** (Return the cursor to that field.)

*End Month* Will map to SAMPLE_SCHEDULE_END_MONTH. If a value is
supplied, must be a number from 1-12, else the following error message
will be invoked: **End Month must be between 1 and 12.** (Return the
cursor to that field.)

*End Day* Will map to SAMPLE_SCHEDULE_END_DAY. If a value is supplied,
must be a number from 1-31 and valid for the End Month specified, else
the following error message will be invoked: **End day for Sample
Schedule is invalid.** (Return the cursor to that field.)

State Collection Period Group Box:

If a value is supplied for any one of these month/day fields, values for
all of them must be supplied. If not, the error message will be: **If a
State Collection month/day parameter is supplied, all four must be
supplied.** The Sequence Year field may optionally be valued
irrespective of whether the Month/Day fields are valued. If these fields
are valued, the same edit checks that currently apply to the same fields
on the Seasonal Collection Period page apply here. The information in
these five fields will not be used by SDWIS/STATE in any business logic
(such as compliance assistance).

> *Start Month* Will map to SAMPLE_SCHEDULE_START_MONTH. If a value is
> supplied, must be a number from 1-12, else the following error message
> will be invoked: **Start Month must be between 1 and 12.** (Return the
> cursor to that field.)
>
> *Start Day* Will map to SAMPLE_SCHEDULE_START_DAY. If a value is
> supplied, must be a number from 1-31 and valid for the State Start
> Month specified, else the following error message will be invoked:
> **State Start day for Sample Schedule is invalid.** (Return the cursor
> to that field.)
>
> *End Month* Will map to SAMPLE_SCHEDULE_END_MONTH. If a value is
> supplied, must be a number from 1-12, else the following error message
> will be invoked: **State End Month must be between 1 and 12.** (Return
> the cursor to that field.)
>
> *End Day* Will map to SAMPLE_SCHEDULE_END_DAY. If a value is supplied,
> must be a number from 1-31 and valid for the State End Month
> specified, else the following error message will be invoked: **End
> day** **for Sample Schedule is invalid.** (Return the cursor to that
> field.)
>
> *Sequence Year* Will map to SAMPLE_SCHEDULE_STATE_YEAR. If a value is
> supplied, must be a number from 1-9, else the following error message
> will be invoked: **Sequence Year is invalid.** (Return the cursor to
> that field.)

Sampling Point Subschedules Group Box:

The Sampling Point Subschedules group box will be provided so that the
user can optionally enter the specific locations within the WSF at which
some or all of the samples must be collected. If the entered schedule is
a schedule group (that contains subschedules), all the individual
schedules created for that group schedule will also contain sampling
point subschedules. The sum of the counts of each sampling point
subschedule should be less than or equal to the main schedule's Sample
Count (as shown in the Samples Required field). If the user does not
specify a Sampling Point Subschedule, SDWIS/STATE assumes that the
samples may be collected at any sampling point within the facility.
Examples of when a compliance officer might specify one or more specific
sampling points include: entry point monitoring where a given facility
may have more than one sampling point, disinfection by-products
monitoring where the primacy agency has approved a system's maximum
residence point, or lead and copper tap sampling where the primacy
agency has approved a sampling plan and expects samples to be collected
at those precise locations.

The Sampling Point Subschedules group box will not be activated until
the WSF and monitoring requirement have been entered. This list will
need to display up to 125 sampling point subschedules.

A Sampling Point Subschedule cannot be changed or deleted after *CDS
Setup* processes the schedule (the programming necessary to allow these
to change is complex and considered too expensive to justify). Once *CDS
Setup* has processed a schedule that has a subschedule, the Sample
Schedule's CDS Setup Processed Flag (new attribute) will be set to "Y."
The user will be able to tell that *CDS Setup* has already processed a
schedule with subschedules because its subschedules will appear
"grayed-out" and the **Add**, **Modify**, and **Delete** buttons will be
disabled (that is, the user will not be able to maintain any existing
subschedules nor add any additional subschedules). If the user needs to
add, modify, or delete a sampling point subschedule after *CDS Setup*
has processed the sample schedule/schedule group, it will be necessary
to close out (or delete, if appropriate) the existing sample schedule
and add a new one that includes the desired changes. However, a user
will be able to add a sampling point subschedule if no previous sampling
point subschedule exists, regardless of whether *CDS Setup* has
processed the schedule or not. If the non-TCR schedule has at least one
Sampling Point subschedule and the schedule's CDS Setup Processed Flag
is "Y," the **Add**, **Modify**, and **Delete** buttons should be
disabled.

The group box contains the following buttons: Sampling Point
Subschedules **Add**, Sampling Point Subschedules **Modify**, and
Sampling Point Subschedules **Delete**.

\[Sampling Point

Subschedules\]

**Add** Pressing **Add** will invoke the Sampling Point Maintenance List
in multiple-select mode. Only sampling points in active status will be
listed. Selected sampling points will be returned to the Sampling Point
Subschedules list on the Non-TCR Sample Schedule Maintenance page where
the Sample Count defaults to 1.

This button will remain enabled even if a subschedule has been
highlighted in the list area.

\[Sampling Point

Subschedules\]

**Modify** Pressing **Modify** will invoke the Sampling Point
Subschedule Maintenance page (Exhibit 7-46) displaying the selected
Sampling Point and Count, which can be changed.

\[Sampling Point

Subschedules\]

**Delete** Pressing **Delete** will remove the sampling point
subschedule (or sampling point schedule group subschedule) from the
list, however, the commit to the database will not occur at this point.

> The Sampling Point Subschedule Maintenance page will be used to change
> Sampling Point Subschedules.

[Protected Field:]{.underline}

The protected Sampling Location field will contain sampling location
text.

![](media/image55.png){width="5.729166666666667in"
height="2.5833333333333335in"}

[]{#__RefHeading___Toc139861123 .anchor}**Exhibit 7-46.** Sampling Point
Subschedule Maintenance

[Protected Fields:]{.underline}

> *Sampling Point* Sampling Point is a protected field. To change a
> sampling point either add a new subschedule or delete an existing
> subschedule on the Non-TCR Maintenance page.

[Entry Fields:]{.underline}

> *Sample Count* This field will be used to enter the number of samples
> required to be collected at this sampling point.
>
> Sample Count will be a required field.

[Buttons]{.underline}:

> **OK** Pressing this button will cause the software to check that both
> a sampling point and Sample Count have been entered. If either is
> missing, the following error message will be invoked: **Please provide
> input into required field to complete subschedule.** Return the cursor
> to the first field on Sampling Point Subschedule Maintenance that is
> missing data.
>
> The software will then check that the candidate Sampling Point
> Subschedule does not already exist for the schedule/schedule group.
> The uniqueness criteria for sampling point subschedule will be
> Sampling Point. If the user inadvertently tries to enter a subschedule
> for a Sampling Point that has already been used in a subschedule, the
> following error message will be invoked: **A subschedule has already
> been specified for this sampling point.** Return the cursor to the
> Sampling Point ID field. Otherwise, the page will close, and:
>
> If the user entered an Analyte Code (and the current non-TCR schedule
> is an individual schedule), the software will create a new Sampling
> Point Subschedule record (table TMNSPSUB).
>
> If the user entered an Analyte Group Code (and the current non-TCR
> schedule is a schedule group), the software will create a new Sampling
> Pt Sched Grp Subsched record (table TMNSPSGS).
>
> At this point, the new Sampling Point Subschedule/Sampling Pt Sched
> Grp Subsched will not yet have been committed to the database.
>
> **Cancel** If the user clicks on this button, the software will
> disregard any data entered and return the user to the previous page.
>
> **Help** Will invoke online Help for this page.

*Substitute Result Indicator*

> This indicator will be used by CDS Setup to determine if a sample
> analytical result for an analyte which is different than the analyte
> specified by the monitoring requirement can be used to satisfy this
> sample schedule. The indicators are Always, which means a substitute
> result can always be used to satisfy the schedule even if a matching
> result also exists, Optionally, which means a substitute result can
> optionally be used to satisfy the schedule when a matching result is
> not available, or Never, which means a substitute result can never be
> used to satisfy the schedule even if no matching result exists. The
> rules regarding analyte code substitutions are defined in the CDS
> Setup chapter 9.
>
> This field will be a dropdown list with the following permitted
> values:
>
> A-Always
>
> O-Optionally
>
> N-Never

When CDS Setup creates or updates SSMPAs, it will set the equivalent
field in the SSMPA records to the value set here on the schedule. CDS
Setup uses the value in the SSMPA to determine how to handle substitute
results. The user may override the setting for a single SSMPA by using
the Results Average Maintenance page documented in Chapter 5.

*Monitoring*

*Assessment* The Monitoring Assessment field will be optional. It will
have a dropdown list where the user may specify the monitoring
assessment flag. *CDS Setup* will determine the value for this field
once it has processed the schedule; but the user may override the value
determined by *CDS Setup*. Note that by specifying X for this field, the
user will indicate that the schedule should not be reassessed when *CDS
Setup* executes, and this schedule should not show on future reports.

> Permitted values will be:

I -- Increase

D - Decrease to undetermined frequency

D3 - Decrease to once every three years

D6 - Decrease to once every six years

D9 - Decrease to once every nine years

> I3 - Increase to once every three years
>
> I6 - Increase to once every six years
>
> X - Do Not Reassess
>
> A - Reassess if new data

N - Not Assessed

P -- Return to Principal Analyte Monitoring (R2004:A.7.2.5.5.b)

\<spaces\>

*Comments* An optional scrollable text field in which descriptive
information can be entered for the sample schedule.

*Sampling Plans List Box* (R2003:A.7.2.5.5.c)

Will list Sampling Plans associated to the Sample Schedule. (Sampling
Schedule Association Code values of 'SCHED' and 'GROUP' and do not list
the 'HIDDEN'

[List Box Columns]{.underline} Rule, Analyte Code, Eff. Begin Date, and
Eff. End Date and Approving Agency.

[Sort Order]{.underline} Ascending Rule, Ascending Analyte Code,
Descending Begin Date.

[Tab Sequence]{.underline}:

WSF State Asgn ID, WSF State Asgn ID **Go To** button, Analyte Code,
Analyte Code **Go To** button, Analyte Group Code, Analyte Group Code
**Go To** button, **Skip** button, Samples Required **Go To** button,
sample count, sample type list, periodicity list, Vio. Type, Effective
Period Begin, Effective Period End, Initial Monitoring Period Begin
Date, Water System Notified Date, **Seasonal Collection Period** Start
Month/Day, End Month/Day, **State Collection Period** Start Month/Day,
End Month/Day, Sequence Year, Sampling Point Subschedules **Add**
button, Sampling Point Subschedules **Modify** button, Sampling Point
Subschedules **Delete** button, Substitute Result Indicator, Monitoring
Assessment, Comments, Sampling Plans List box, **Associate,
Disassociate,** **Schedule** **Group Analyte List** button,
**Originating** **Result** button, **OK** button, **Cancel** button,
**Help** button, **View Additional Compliance Data** button. (R2003,
R0013:A.7.2.5.5.d)

[Toolbar Icons:]{.underline}

![](media/image23.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Water System Information page, which will display basic inventory
information for the given Water System.

![](media/image39.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Historical Sampling Information page, which will display protected
information on samples collected for the given water system.

![](media/image24.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Display Points of Contact page, which will display a protected list of
legal entities and individuals (e.g., operators, engineers) associated
with the given Water System.

**[Buttons]{.underline}:**

***\[WSF State Asgn ID\]***

***Go To*** Will present the Water System Facility Maintenance List in
single-select mode where water system facilities controlled by the
provided Water System No. will be listed.

***\[Analyte\] Go To*** Will present the Analyte Maintenance list page
in single-select mode. This button is disabled if the Analyte Group Code
field has a value.

***\[Analyte Group\]***

***Go To*** Will present the Analyte Group Maintenance List page in
single-select mode. This button is disabled if the Analyte Code field
has a value.

***\[Samples Required\]***

***Go To*** Will present the Monitoring Requirement Maintenance List
page in single-select mode. Only Monitoring Requirements that do not
have an association to the TCR Rule (Rule.abbreviation_text = 'TCR')
will be listed. Monitoring Requirements with Analyte Codes of 3100 or
Analyte Groups containing analyte code 3100 are allowed so long as they
do not have the association to the TCR Rule.

**\[Sampling Plan\]**

**Associate** Will present the Sampling Plan Maintenance List in single
select mode for the Water System.

When a selection is returned it will be displayed in the list, but will
not be associated to the Sample Schedule until the **OK** or
**Originating Result** button is clicked. If the selection is a
duplicate Sampling Plan, ignore it. (R2003:A.7.2.5.5.e)

**\[Sampling Plan\]**

**Disassociate** Will present standard disassociate confirmation page.
When **OK** is clicked the Sampling Plan will be removed from the list
display, but will not actually be deleted until either the **OK** or
**Originating Result** button is clicked. (R2003:A.7.2.5.5.f)

**OK** and

**Originating Result** Each of these buttons creates Non-TCR Sample
Schedules or Schedule Groups. The **Originating Result** button will be
enabled only if the non-TCR schedule is type "CO." The following list of
actions applies to both buttons.

> ---Add Mode If the user selects an analyte and presses either button,
> one new Sample Schedule will be created using the information on this
> page and associated to the Monitoring Requirement, Water System, and
> WSF selected. The d_initial_userid will be set to the current user's
> id. The monitoring requirement selected must not have an association
> to the TCR rule. Any Sampling Point Subschedules in the Sampling Point
> Subschedules list will also be committed to the database as new
> TMNSPSUB records associated to the just created schedule.
>
> If the user selects an analyte group and presses either button, one
> new Schedule Group will be created and associated to the Monitoring
> Requirement, Water System, and WSF selected. The d_initial_userid will
> be set to the current user's id. The monitoring requirement selected
> must not have an association to the TCR rule. Any Sampling Point
> Subschedules in the Sampling Point Subschedules list will also be
> committed to the database as new Sampling Pt Sched Grp Subsched
> /TMNSPSGS records associated to the just created schedule group. In
> addition, for each analyte in the Analyte Group, a Sample Schedule
> will be created and associated to the Sample Schedule Group as well as
> to the corresponding Monitoring Requirement for that analyte and to
> the selected Water System and WSF selected. If a monitoring
> requirement that matches the criteria specified by the user in the
> schedule does not exist for an analyte that is part of the analyte
> group specified by the user (using the uniqueness match of same
> analyte, sample count, sample type, sample periodicity, and violation
> type, the system will first create the monitoring requirement, then
> create the Sample Schedule and associate it to the Monitoring
> Requirement, Sample Schedule Group, Water System, and WSF. For each
> hidden sample schedule whose creation is triggered by the schedule
> group, each Sampling Point Subschedule in the Sampling Point
> Subschedules list will also trigger the creation of a new TMNSPSUB
> record associated to the just created hidden schedule.

---Change Mode If the Sample Schedule is for an analyte, then the Sample
Schedule record will be updated with the changed fields. If the Sample
Schedule being changed is for an Analyte Group, then the Schedule Group
record will be updated with the changes, and so will each of the hidden
schedules associated to the Schedule Group. Any hidden schedules in the
Schedule Group that have been closed by specifying an exception analyte
will not be updated. The updating of the Sampling Point Subschedules
fields will be treated in the same way as the other fields except that
if the CDS Setup Processed Flag is set to "Y," the Sampling Point
Subschedules/Sampling Pt Schedule Group Subschedules may not be added
to, modified, or deleted. (The buttons to allow modification/deletion
are disabled under this condition, so the error handling is not
necessary here.)

> For a schedule, any new Sampling Point Subschedules in the Sampling
> Point Subschedules list will be committed to the database as new
> TMNSPSUB records associated to the current schedule.
>
> For a schedule group, any new Sampling Point Subschedules in the
> Sampling Point Subschedules list will be committed to the database as
> new Sampling Pt Sched Grp Subsched (TMNSPSGS) records associated to
> the current schedule group. The software will retrieve each associated
> hidden schedule and for each new Sampling Point Subschedule in the
> Sampling Point Subschedules list will also trigger the creation of a
> new TMNSPSUB record associated to the current hidden schedule.
>
> If the Sample Schedule/Schedule Group is associated to a Violation
> with status "V" or "P" and the proposed End Date is earlier than the
> Federal_Period_Begin_Date of the violation (FED_PRD_BEGIN_DT), do not
> accept the proposed End Date. Instead, the following error message
> will be invoked: **Cannot close the schedule on this date because it
> is associated to a violation with a period begin date that is later.
> You must either disassociate the schedule from the violation or change
> the status of the violation to rejected (R) or deleted (D) if you want
> to close this schedule with this date.** On pressing **OK**, the
> software returns to the maintenance page with the cursor in the
> \[Effective Period\] End field and resets the \[Effective Period\] End
> date to the original date.
>
> Otherwise, SDWIS/STATE will check each hidden schedule for associated
> SSMPA records whose Applicable Period Begin Date is after the changed
> End Date of the Sample Schedule/Schedule Group. If an SSMPA that meets
> these criteria is found, it will be deleted. Note that when an SSMPA
> is deleted, any Sub-SSMPA records that reference it are automatically
> (cascade) deleted. Prior to deleting each SSMPA and Sub-SSMPA, the
> Last Update Timestamp field of each Sample Analytical Result that is
> associated with the SSMPA or Sub-SSMPA will be set to the current
> timestamp (so that these will be re-assessed by *CDS Setup* the next
> time it runs).

Add and Change

Mode The overlap edit check will ensure that one routine (type "RT")
schedule may not overlap another RT schedule for the same Water System,
WSF, and Analyte/Analyte Group, effective period, and seasonal
collection period.

> For example, if a sample schedule for Analyte 2047 (Aldicarb) has been
> recorded for Water System XX3334444, WSF "Well-01" with Sampling
> Requirement 1 RT per YR, starting 1/1/1996 and the open Effective
> Period End date and no seasonal collection period has been specified
> (which is interpreted to mean year-round), the software should not
> allow the entry of an overlapping monitoring schedule for Analyte 2047
> (Aldicarb) for Water System XX3334444, WSF "Well-01" with Sampling
> Requirement 1 RT per QT, starting 1/1/1999 and with an open Effective
> Period End date, regardless of the seasonal collection period entered.

The overlap check will involve two parts:

> One for individual Sample Schedules (associated with a single analyte
> and not associated with a Schedule Group) to make sure that there is
> no existing routine sample schedule for the same water system, the
> same WSF, and for the same analyte with 1 or more days of overlap in
> the Effective Periods and 1 or more days of overlap in the Seasonal
> Collection Periods.
>
> A second for Schedule Groups (associated with an Analyte Group) to
> make sure that for each analyte in the group, there is no existing
> routine sample schedule for the same water system, the same WSF, and
> for the same analyte with 1 or more days of overlap in the Effective
> Periods and 1 or more days of overlap in the Seasonal Collection
> Periods. If for any one analyte in the group, a Sample Schedule is
> found to overlap, then the Sample Schedule Group will be deemed
> overlapping. For any Sample Schedule associated to the Sample Schedule
> Group that has been previously closed as an exception schedule, the
> closed Sample Schedule will be tested for overlap based upon its
> closed date (i.e., the End Date for the hidden schedule), not the
> proposed End Date for the Sample Schedule Group.
>
> If a Sample Schedule for an individual analyte is being added and
> found to overlap with an existing hidden sample schedule that is
> closed because it is an exception schedule (indicated by its
> association to exception analyte), further evaluation is performed as
> follows. If the begin date of the new Sample Schedule is equal to the
> end date of the hidden, exception sample schedule, the situation will
> not be considered an overlap and the new Sample Schedule may be added.
> This test does not apply to sample schedules, hidden or otherwise,
> that are closed, but not due to an exception analyte condition.
>
> The following examples demonstrate the meaning of "at least a day of
> overlap in the Effective Periods and at least a day of overlap in the
> Seasonal Collection Periods." Assume the following Sample Schedule
> already exists:
>
> WSF "Well-01" has been scheduled to collect one routine sample every
> quarter with an Effective Begin Date of 1/1/1999 and an open Effective
> End Date and with a Seasonal Collection Period of 9/1 to 3/31.
>
> \(1\) If the user enters the following Sample Schedule:
>
> WSF "Well-01" is to collect one routine sample every month with an
> Effective Begin Date of 1/1/1999 and an open Effective End Date and
> with a Seasonal Collection Period of 4/1 to 8/31.
>
> It should be allowed, since this schedule overlaps neither by
> Effective Period nor by Seasonal Collection Period.
>
> \(2\) If the user enters the following Sample Schedule:
>
> WSF "Well-01" is to collect 1 routine sample every
> [quarter]{.underline} with an Effective Begin Date of 1/1/1999 and an
> open Effective End Date and with a Seasonal Collection Period of [4/1
> to 8/31]{.underline}.
>
> It should be allowed because, even though this routine schedule's
> Effective Period (1/1/1999 on) overlaps the original's Effective
> Period, its Seasonal Collection Period does not overlap the original
> schedule's Seasonal Collection Period.
>
> \(3\) If the user enters the following Sample Schedule:
>
> WSF "Well-01" is to collect *two* routine samples every month with an
> Effective Begin Date of 1/1/1999 and an open Effective End Date and
> with a Seasonal Collection Period of [4/1 to 8/31]{.underline}.
>
> It should be allowed, because, even though this routine schedule's
> Effective Period (1/1/1999 on) overlaps the original's Effective
> Period, its Seasonal Collection Period does not overlap the original
> schedule's Seasonal Collection Period.
>
> \(4\) If the user enters the following Sample Schedule:
>
> WSF "Well-01" is to collect *two* routine samples every
> [month]{.underline} with an Effective Begin Date of 1/1/1999 and an
> open Effective End Date and with a Seasonal Collection Period of [1/15
> to 4/30]{.underline}.
>
> It should [not]{.underline} be allowed, since this schedule's
> Effective Period (1/1/1999- on) overlaps the original schedule's
> Effective Period AND this schedule's Seasonal Collection Period
> overlaps the original schedule's Seasonal Collection Period.
>
> It is very important to note that this overlap check will apply only
> to Sample Schedules that reference a Monitoring Requirement whose
> Sample Type is RT (routine). Note that in SDWIS/STATE 7.0, Sample
> Types of IN, FR, FE, and SO were treated as equivalent to RT. These
> Sample Types have been removed.

If an overlap exists, the software will invoke the Overlapping Schedule
Warning page (Exhibit 7-47).

> ![](media/image56.png){width="5.604166666666667in"
> height="2.3958333333333335in"}

[]{#__RefHeading___Toc139861124 .anchor}**Exhibit 7-47.** Overlap
Schedule Warning

The following error messages may be displayed upon clicking either
button on the Non-TCR Sample Schedule Maintenance page:

-   If the specified monitoring requirement does not exist, the
    following error message will be invoked: **The specified Monitoring
    Requirement does not exist.** Clicking **OK** on the exit state
    error message will display the Monitoring Requirement Maintenance
    List to allow the user to either create the monitoring requirement
    or select an existing one. If a new monitoring requirement is added,
    the user can then select it from the list. Exiting the Monitoring
    Requirement Maintenance List will return the user to the Non-TCR
    Sample Schedule Maintenance page with the selected monitoring
    requirement. The user can click the **OK** button again to save the
    non-TCR sample schedule. The monitoring requirements used in Non-TCR
    Sample Schedule Maintenance must not have an association to the TCR
    Rule.

```{=html}
<!-- -->
```
-   If the WSF State Asgn ID field is blank, the following error message
    will be invoked: **A Water System Facility must be specified for the
    Schedule.**

```{=html}
<!-- -->
```
-   If both the Analyte and Analyte Group are blank, the following exit
    state message will appear: **Either an Analyte or an Analyte Group
    must be selected for the Schedule.**

```{=html}
<!-- -->
```
-   If a value is supplied for any one of the four Seasonal Collection
    Period page optional Start Month, Start Day, End Month, End Day
    entry fields and if values are not supplied for all four fields, the
    following error message will be invoked: **If any Seasonal
    Collection parameter is supplied, all four must be supplied.**

```{=html}
<!-- -->
```
-   If a value is supplied for any one of the four State Collection
    Period page optional Start Month, Start Day, End Month, End Day
    entry fields and if values are not supplied for all four fields, the
    following error message will be invoked: **If a State Collection
    month/day parameter is supplied, all four must be supplied.**

```{=html}
<!-- -->
```
-   If one or more sampling point subschedules have been added, check
    that the sum of the Counts in the subschedules is not greater than
    the Sample Count for the Sample Schedule/Schedule Group. If it is,
    the following error message will be invoked: **Combined Sampling
    Point Subschedule count cannot exceed main Sample Schedule count.**

-   If the Initial Monitoring Period Begin Date is left blank and the
    Monitoring Requirement is for other than confirmation (CO) type or
    periodicity of other than (1T, HR, 4H, DL, or WK) (B.7.2.5.5.a), the
    following informational message will be presented: **Initial
    Monitoring Period Begin Date does not contain a value. This date is
    needed to determine compliance for this schedule. Choose OK to
    proceed or Cancel to return.**

-   If the date provided for the Initial Monitoring Period Begin Date
    does not match the begin date for a monitoring period of the same
    type code as the monitoring requirement periodicity
    (TMNMNR.sample_count_unit_code) and the Monitoring Requirement is
    for other than confirmation (CO) type or periodicity of other than
    (1T, HR, 4H, DL, or WK) (B.7.2.5.5.b), the following message will be
    presented: **No monitoring period found with begin date matching the
    supplied Initial Monitoring Period Begin Date. Without a match,
    compliance will not be determined. Choose OK to proceed or Cancel to
    return.** (Exhibit 7-48)

> ![](media/image57.png){width="6.020833333333333in"
> height="2.7916666666666665in"}

[]{#__RefHeading___Toc139861125 .anchor}**Exhibit 7-48.** No Matching MP
Web Page Dialog Box

-   If the selected monitoring requirement does not reference a M&R
    Violation Type, the following advisory will be presented: **The
    Monitoring Requirement selected is not associated to a M&R Violation
    Type. M&R candidate violations cannot be determined without a M&R
    Violation Type. Press OK to proceed or Cancel to return.** (Exhibit
    7-49)

> ![](media/image58.png){width="5.96875in"
> height="2.5208333333333335in"}

[]{#__RefHeading___Toc139861126 .anchor}**Exhibit 7-49.** No Violation
Type Web Page Dialog Box

> To this point the software has performed the same actions regardless
> of which button (**OK** or **Originating Result**) has been selected.
> From this point forward, the actions associated with each button are
> different.

If there are rows in the Sampling Plan List box to be processed, this
occurs on the **OK** or **Originating Result** button processing.
(R2003:A.7.2.5.5.g)

> To add a new association between a Sampling Plan and a Sample
> Schedule, create a row in the Sampling Plan Schedule Association table
> and associate it to the Sampling Plan and the Sample Schedule. Set the
> TMNSPSKA_IS_Number using the TINEISN table for table name = TMNSPSKA.
> The Sample_Schedule_Association_Code should be set to 'SCHED'.
>
> To add a new association between a Sampling Plan and a Sample Schedule
> Group, create a row in the Sampling Plan Schedule Association table
> and associate it to the Sampling Plan and the Sample Schedule Group.
> Set the TMNSPSKA_IS_Number using the TINEISN table for table name =
> TMNSPSKA. The sample_Schedule_Association_Code should be set to
> 'GROUP'. For each hidden sample schedule of the sample schedule group
> that is not closed by an exception analyte, also create a row in the
> Sampling Plan Schedule Association table and associate it to the
> Sampling Plan and the hidden Sample Schedule. Set the
> TMNSPSKA_IS_Number using the TINEISN table for table name = TMNSPSKA.
> The Sample_Schedule_Association_Code should be set to 'HIDDEN'.
>
> To remove the association between a Sampling Plan and a selected
> Sample Schedule, delete the Sampling Pland Schedule Association.
>
> To remove the association between a Sampling Plan and a selected
> Sample Schedule Group, delete the Sampling Plan schedule Association.
> For each hidden sample schedule associate to the sample schedule
> group, delete the Sampling Plan Schedule Association for the hidden
> sample schedule and the sampling plan.

**Originating Result**

---Add Mode The software creates the schedule and invokes the
Originating Sample Result Selection List (Exhibit 7-50). Here the user
may select the originating sample result that triggered the need for the
Confirmation schedule. Once the user is at this page, the option to
cancel will be available, but since the schedule has already been
created, cancel in this case means "cancel from selecting an originating
sample result." The user may cancel and not link the schedule to a
result but until the user returns to link the confirmation schedule to
its originating result, this schedule will not be evaluated by the M&R
compliance check process.

> If the Non-TCR Sample Schedule page was invoked using the Add using
> Template feature, after all processing is successfully completed on
> this schedule the page will be re-presented with the next monitoring
> requirement contained within the selected template. The following
> fields will be retained and all those not listed will be cleared:
>
> Water System No. and Name
>
> WSF State Asgn ID and Name
>
> Advance the template sequence number display.
>
> If the Non-TCR Sample Schedule Maintenance page was invoked in either
> single add mode or change mode, the page will close and return to the
> Non-TCR Sample Schedule Maintenance List when all processing is
> successfully completed.

---Change Mode The software will check whether or not the schedule has
previously been associated to an originating result. If it has, this
button will invoke the Originating Sample Result Information page
(Exhibit 7-51). If it has not, this button will invoke the Originating
Sample Result Selection List.

> The Originating Sample Result Selection List will display sample
> results that satisfy the following criteria: routine (RT) sample
> results that are not rejected (Sample Rejection Reason not valued) and
> are for the same Water System, WSF, and Analyte Code as that of the
> confirmation Schedule and whose Sample Collection End Dates are \<
> Schedule Effective Begin Date and which are not already associated to
> a Confirmation sample schedule. The sample results will be sorted by
> Sample Collection (End) Date, descending with the following columns:
>
> Collection Date.
>
> Sample Type.
>
> Lab Sample Number.
>
> State Sample Number.
>
> Sampling Point.
>
> Sample Location.
>
> Data Quality Code.
>
> Reported Measure (Concentration Measure TXT).
>
> Measure Unit.
>
> Less Than Indicator.
>
> Less than Code.
>
> Reporting Level.
>
> Reporting Level UOM.
>
> For Compliance.

![](media/image59.png){width="6.493055555555555in"
height="4.460416666666666in"}

[]{#__RefHeading___Toc139861127 .anchor}**Exhibit 7-50.** Originating
Sample Result Selection List

> The Originating Sample Result Selection List page will have three
> buttons: **Select**, **Cancel**, and **Help**.
>
> **Select** This button will be active only when a record is
> highlighted. When the user clicks on **Select**, the software will
> flow to the Originating Sample Result Information page (Exhibit 7-51)
> with protected fields displaying the information from the selected
> result.
>
> **Cancel** Pressing **Cancel** will return the user to the previous
> page.
>
> **Help** Will invoke online Help for this page.

![](media/image60.png){width="6.492361111111111in"
height="5.144444444444445in"}

[]{#__RefHeading___Toc139861128 .anchor}**Exhibit 7-51.** Originating
Sample Result Information

The Originating Sample Result Information page will have the following
fields and buttons.

[Protected Fields]{.underline}:

> *Lab Sample No.* The ID number that the lab assigned to this sample
> for tracking within the lab.
>
> *State Sample No.* The ID number that the state assigned to this
> sample.
>
> *Water System No.* The Water System No. for the originating sample.

*\[Water System\]*

> *Name* The name of the water system where the originating sample was
> taken.

*Sample Type* The sample type will be either Routine or Repeat.

*Collection Date* The date the sample was collected.

> *WSF State Asgn ID* The State Asgn ID of the water system facility
> where the sample was taken.
>
> *WSF Name* The name of the water system facility where the sample was
> taken.
>
> *Sampling Point* The sampling point ID where the sample was taken.
>
> *Location* The descriptive name of the sample point where the sample
> was taken.
>
> *Analyte Code* The analyte code for the sample.

*\[Analyte\] Name* The name of the analyte.

> Result Group Box:

The results of the sample analysis will be in the Result group box.

*Concentration* and

> *Unit of Measure* The actual resulted measure of the analyte in the
> sample and the unit it was measured with.
>
> *Analysis Date* The date that the sample was analyzed and the reported
> result determined.
>
> *Method Code* The standard method code used to analyze the sample.
>
> *Less Than* This checkbox will be marked if the sample analytical
> result is less than the following indicated reporting level type. If
> it is greater than or equal to the Less Than checkbox, it will not be
> marked.
>
> Reporting Level Type Group Box:
>
> The Reporting Level Type group box will contain two radio buttons
> indicating if the reporting level is Regulatory Minimum Reporting
> Level or Lab Reporting Level. Only one radio button will be valued.

*Level/Level Unit of*

> *Measure* The limit established by the lab below which scientifically
> reliable results can be achieved.
>
> Analysis Group Box:
>
> *Data Quality* Code indicating whether or not the sample analytical
> result met established data quality acceptance criteria.

[Buttons]{.underline}:

> **OK** Pressing this button will close the page and return the user to
> the previous page.
>
> **Disassociate** Pressing this button will disassociate the Result
> from the Schedule. The page will close and the list of results will be
> invoked for selection.
>
> **Help** Will invoke online Help for this page.

**OK**

Add and Change

Modes In either Add or Change mode, if the user presses **OK** after
creating the schedule, the software will perform an edit check for
confirmation sample schedules. If the confirmation sample schedule is
not associated to an originating result, invoke the Schedule Not
Associated to Result page. This page contains the following advisory
(Exhibit 7-52):

> The Schedule Not Associated to Result page has **Yes**, **No** and
> **Help** buttons. If the user presses **Yes**, flow directly to the
> Originating Result Selection List from where the originating result
> may be selected. If the user presses **No**, do not modify the
> confirmation sample schedule.
>
> ![](media/image61.png){width="4.729166666666667in" height="2.75in"}

[]{#__RefHeading___Toc139861129 .anchor}**Exhibit 7-52.** Confirmation
Schedule Not Associated to Result

> If the confirmation sample schedule is already associated to an
> originating result, pressing **OK** will perform the edit checks
> listed.
>
> If the Non-TCR Sample Schedule page was invoked using the Add using
> Template feature, after all processing is successfully completed on
> this schedule the page will be re-presented with the next monitoring
> requirement contained within the selected template. The following
> fields will be retained and all those not listed will be cleared:
>
> Water System No. and Name
>
> WSF State Asgn ID and Name
>
> Advance the template sequence number display.
>
> If the Non-TCR Sample Schedule Maintenance page was invoked in either
> single add mode or change mode, the page will close and return to the
> Non-TCR Sample Schedule Maintenance List when all processing is
> successfully completed.

**Schedule Group**

**Analyte List** Pressing this button will invoke the Schedule Group
Analyte List (Exhibit 7-53) from which users may select an analyte and
make it an exception to a Schedule Group. This button will be enabled
only in Change mode for Schedule Groups.

> The Schedule Group Analyte List will display the list of analytes, one
> for each hidden schedule in the Schedule Group. The end date of the
> hidden sample schedule will be listed in the Close Date column.

**Cancel** If the user clicks on this button, the software will
disregard any data entered and return the user to the previous page.

**Help** Will invoke online Help for this page.

**View Additional**

**Compliance** **Data** Will present the Results Averages Maintenance
List page. (Documented in Chapter 5) If the Non-TCR Schedule is for an
analyte group, present a dialog box with a dropdown of all analytes
within the analyte group Exhibit 7-52a). The **OK** button will remain
disabled until a selection has been made. (R0013:A.7.2.5.5.h)

[Buttons]{.underline}:

**OK** Will proceed to the Results Averages Maintenance List.

**Cancel** Will return to the Non-TCR Schedule Maintenance page.

![](media/image62.png){width="3.5520833333333335in"
height="2.6354166666666665in"}

**Exhibit 7-52a.** Analyte Selection

![](media/image63.png){width="6.493055555555555in"
height="4.460416666666666in"}

[]{#__RefHeading___Toc139861131 .anchor}**Exhibit 7-53.** Schedule Group
Analyte List

**Schedule Group Analyte List**

Schedule Group Group Box:

The fields in the group box, which are protected, will contain the
schedule group reference information from schedule group, monitoring
requirement, and analyte group.

Analyte List Box:

The Analyte list box will list all the analyte codes and their names
that are associated with the schedule group. Also the Close Date column
will be populated with the end date of the hidden sample schedule. This
list will be a single selection list, allowing users to select one row
at a time and close the schedule.

[Menu Items]{.underline}:

**File**

> *Exit* Selecting **File/Exit** will return the user to the Non-TCR
> Sample Schedule Maintenance page

**Edit**

> *Close* **Edit/Close** will be enabled only if an analyte is selected.
> If the user selects a row that contains an analyte that has already
> been closed by the creation of an exception analyte, the following
> error message will be invoked: **The selected analyte has already been
> closed**. If the user selects a row for an analyte that has not been
> closed and chooses the **Edit/Close** menu option, it will invoke the
> Close Hidden Schedule/Create Exception Analyte page (Exhibit 7-54).
>
> Note: Once a user has closed a hidden schedule, it cannot be re-opened
> or otherwise changed. If the user unintentionally creates an exception
> analyte, which in turn closes a hidden schedule or enters an incorrect
> Close Date for the exception analyte, the user will have to delete the
> Schedule Group and re-enter it.

**View**

*Sort* Selecting **View/Sort** will invoke the standard Sort page.

> *Filter by* Selecting **View/Filter by** will filter on Analyte Code,
> Analyte Name, Close Date, Closed, and Open. If a user chooses Closed
> as the filter option, analytes whose Close Date is not valued (and
> are, therefore, open) will be filtered out of the list. Conversely, if
> the user chooses the Open filter option, the list will display all the
> analytes whose Close Date is null.
>
> *Refresh* Selecting **View/Refresh** will retrieve the unfiltered list
> using original search criteria. When the list is re-displayed after
> returning from the Close Hidden Schedule page, the list will be
> displayed with the Close Date valued for any analyte schedule that was
> just closed. If the user cancels from the Close Hidden Schedule page,
> then the list will be displayed without change.
>
> To create a new exception analyte within the Schedule Group, a user
> should select an analyte and choose the **Edit/Close** menu option.
> This will invoke the Close Hidden Schedule/Create Exception Analyte
> page.
>
> This page will have two group boxes: the Schedule Group group box will
> display information about the schedule group related to the new
> exception analyte. All fields in this group box will be protected.
>
> The Exception Analyte group box will display the exception analyte and
> allow the user to enter a close date. The exception Analyte Code and
> Name fields will be protected and the Close Date field will be a
> required field.
>
> The Close Hidden Schedules/Create Exception Analyte page will now
> appear without a Sampling Point.

[Buttons]{.underline}:

**Menu Items** Will present the standard menu items dialog box.

**Scroll Buttons** Will scroll the list box in the direction of the
arrow displayed on the button.

> ![](media/image64.png){width="5.993055555555555in"
> height="3.716666666666667in"}

[]{#__RefHeading___Toc139861132 .anchor}**Exhibit 7-54.** Close Hidden
Schedule/Create Exception Analyte

> **OK** If Close Date is not valued, the following error message will
> be invoked: **Close date is required to create an Exception Analyte.**
>
> Close Date must be either on or after Schedule Group Effective Begin
> Date and prior to its Effective End Date (if valued). If the date is
> valid, a new Exception Analyte record will be created and associated
> to the Schedule Group as well as to the selected Analyte. The new
> Exception Analyte will also be associated to the hidden Sample
> Schedule for the same analyte.

The Close Date value will be used to populate Exception Analyte
Effective Begin Date.

> The Effective End Date field of the hidden schedule corresponding to
> the exception analyte will be updated with the value in Close Date.
>
> Any SSMPA record whose Applicable Period Begin Date is after Close
> Date and is associated to the just-closed hidden schedule will be
> deleted. Note that when an SSMPA is deleted, any Sub-SSMPA records
> that reference it are automatically (cascade) deleted. Prior to
> deleting each SSMPA and Sub-SSMPA, the Last Update Timestamp field of
> each Sample Analytical Result associated with the SSMPA or Sub-SSMPA
> will be set to the current timestamp (so that these will be
> re-assessed by *CDS Setup* the next time it runs).
>
> **Cancel** When the user clicks on this button, the software will
> disregard any data entered and returns the user to the previous page.
>
> **Help** Will invoke online Help for this page.

## Monitoring Waiver

The Monitoring Waivers component supports the ability to record
documentation of a water system's variance from customary monitoring
requirements. Monitoring Waivers are not utilized by any compliance
determination components.

### Model Changes for Monitoring Waiver

No Model changes for this release.

### Monitoring Waiver Page Flow

Selecting Monitoring Waivers/Add from the *Monitoring* menu item on the
SDWIS/STATE Home Page will present the Monitoring Waiver Maintenance
page in add mode. Selecting Monitoring Waivers/Maintain from the
*Monitoring* menu item on the *SDWIS/STATE Home Page* will present the
Monitoring Waiver Search page.

####  Monitoring Waiver Search

Exhibit 7-55 depicts the Monitoring Waiver Search page.

> ![](media/image65.png){width="6.495833333333334in"
> height="5.352777777777778in"}

[]{#__RefHeading___Toc139861133 .anchor}**Exhibit 7-55.** Monitoring
Waiver Search

The Monitoring Waiver Search page supports three sets of searches for
monitoring waivers.

The first search criteria is by Waiver Status and Regulating Agency and
optionally either the Monitoring Requirement or Effective Begin Date
Range (waivers whose Effective Begin Date falls within the range the
user specifies).

-   To specify a Monitoring Requirement, enter either the Analyte Code
    or the Analyte Group Code, or click on the **Go To** button for
    either to select from a list. To specify a complete monitoring
    requirement, continue entering the Samples Required (Sample Count,
    Sample Type, Sample Periodicity, and Vio. Type) fields or click the
    **Go To** button to select from a list of monitoring requirements
    for the specified analyte/analyte group.

-   To specify an Effective Begin Date Range, enter the start date and
    end date of the monitoring waiver in the Effective Begin Date Range
    fields.

The second search criterion is by Monitoring Waiver State Asgn ID.

The third search criterion is by Water System No.

[Protected Fields]{.underline}:

*WS Group Used/Regulating*

*Agency* Will display the current water system group or regulating
agency assigned as current. This value will be used to limit the list of
Monitoring Waivers to only water systems contained within the current
assignment.

*Water System Name* The name of the provided Water System No. to be
utilized in the search.

[Entry Fields]{.underline}:

*Waiver Status* Will use the selection to match the Monitoring Waiver
status. If All Types is selected, the list will display Monitoring
Waivers in any status. The default value is Granted. Other values are:

All Types

Denied

Granted

Proposed

Under Review

This field is disabled if the Waiver State Asgn ID or Water System No.
is supplied.

*Regulating Agency* The regulating agency name. It will default to the
primacy agency but can be change to another regulating agency. If the
value supplied is not a valid LEGAL ENTITY of type 'GA' with the
regulating agency indicator = 'Y,' the Legal Entity Maintenance List
will be presented in single-select mode upon leaving the field. The list
will present only government agencies that have been designated as a
regulating agency with the regulating agency indicator set to 'Y.'

This field is disabled if the Waiver State Asgn ID or Water System No.
is supplied.

*Analyte Code* The analyte code for which a monitoring waiver may be
created. This field will be enabled if the Analyte Group Code does not
contain a value. If an invalid analyte code is entered the Analyte
Maintenance List will be presented in single-select mode.

A change in the analyte code will cause any previous Monitoring
Requirement to be invalid so the values are removed from the samples
required fields display. A new Monitoring Requirement will need to be
supplied.

This field is disabled if the Effective Begin Date Ranges are supplied
or if the State Asgn ID is supplied. Providing a value in this field
will disable the Analyte Group Code, its **Go To** button, the effective
begin date range, the State Asgn ID, and the Water System No. and its
**Go To** button. Providing a value in this field will enable the four
fields and **Go To** button of the monitoring requirement's samples
required.

*Analyte Group Code* The analyte group code for which a monitoring
waiver may be created. This field will be enabled if the Analyte Code
does not contain a value.

If an invalid analyte group code is entered the Analyte Group
Maintenance List will be presented in single-select mode.

> A change in the analyte group code will cause any previous Monitoring
> Requirement to be invalid so the values are removed from the samples
> required fields display. A new Monitoring Requirement will need to be
> supplied.
>
> This field is disabled if the Effective Begin Date Ranges are supplied
> or if the Waiver State Asgn ID or Water System No. is supplied.
> Providing a value in this field will disable the Analyte Code, its
> **Go To** button, the effective begin date range, the Waiver State
> Asgn ID, and the Water System No. and its **Go To** button. Providing
> a value in this field will enable the four fields and **Go To** button
> of the monitoring requirement's samples required.

**Monitor Requirement Group Box**

*Samples Required* These four fields will be enabled when either the
analyte code or the analyte group code contains a valid value. The four
fields represent Sample Count, Sample Type, Sample Periodicity (or
frequency), and Vio. Type.

Sample Count is a numeric value.

Sample Type has the permitted values of:

CO Confirmation

RT Routine

SP Special

> OT Other
>
> RP Repeat
>
> TR Temporary Routine

Sample Periodicity has the permitted values of:

1T One Time

> YR 1 Year

2Y 2 Years

3Y 3 Years

4H 4 Hours

4Y 4 Years

5Y 5 Years

6M 6 Months

18M 18 Months

6Y 6 Years

7Y 7 Years

8Y 8 Years

9Y 9 Years

10Y 10 Years

DL 1 Day

> 2 W 2 Weeks

HR 1 Hour

MN Month

QT Quarter

WK Week.

> Sample Periodicity will be automatically set to one time if the Sample
> Type is set to Confirmation.
>
> Vio. Type is the M&R violation type assigned to the Monitoring
> Requirement.

These fields are disabled if the Effective Begin Date Range or Waiver
State Asgn ID or Water System No. is supplied.

After tabbing of the last field the system will check to see if any of
the samples required fields contain a value. If so the check will
continue to validate that the entered values result in an existing
monitoring requirement. If they do not, the advisory (Exhibit 7-56)
appears.

> ![](media/image66.png){width="4.666666666666667in" height="2.125in"}

[]{#__RefHeading___Toc139861134 .anchor}**Exhibit 7-56.** No Monitoring
Requirement

> After pressing OK the Monitoring Requirement Maintenance List is
> presented in single-select mode where a selection may be made or a new
> monitoring requirement added.

**Effective Period Begin Date Range**

*Between/and*

*\[first date\]* The date that waiver begin dates must be greater than
or equal to in order to satisfy the search criteria.

This field is disabled if either the analyte/analyte group code is
supplied or if the State Asgn ID or Water System No. is supplied.

*\[second date\]* The date that waiver begin dates must be less than or
equal to in order to satisfy the search criteria.

This field is disabled if either the analyte/analyte group code is
supplied or if the State Asgn ID or Water System No. is supplied.

*Waiver*

*State Asgn ID* The Waiver State Asgn ID. This field will become
protected if value is provided in any of the other entry fields. When a
value is entered in this field all other entry fields and corresponding
**Go To** buttons will become protected.

*Water System No.* The number of a specified water system. When tabbing
off or clicking out of this field the Water System will be retrieved and
the Water System Name displayed. If a valid Water System cannot be
found, the Water System Maintenance list will be presented in
single-select mode. The number will consist of two input fields. The
first is the state code and will be filled with the state ID code from
the software installation. It can be changed. The second field is the
numeric portion of the water system No.

A value in the numeric portion of the Water System No. field will cause
all other input fields to become protected.

[Buttons:]{.underline}

**\[Regulating Agency\]**

**Go To** When pressed the Legal Entity Maintenance List will be
presented in single-select mode upon leaving the field. The list will
present only government agencies that have been designated as a
regulating agency with the regulating agency indicator set to 'Y.' The
value in the Regulating Agency field will be used to start the list with
names greater than or equal the provided value. Remove the default
primacy agency name to start the list prior to the primacy agency name
value.

This button is disabled if the State Asgn ID is supplied. It will be
enabled if the State Asgn ID is removed.

**\[Analyte Code\]**

**Go To** Will invoke the Analyte Maintenance List in single-select
mode.

If no selection is made from the list (i.e. the Cancel button is chosen)
any previous value in Analyte Code will be retained on the page. When a
selection is made and returned to this page, the Analyte Group Code and
**Go To** button will become disabled. If any of the monitoring
requirement's samples required fields contained a value, they will be
removed and a new monitoring requirement must be chosen.

This button is disabled if the Analyte Group Code is supplied, if the
Effective Begin Date Ranges are supplied or if the State Asgn ID is
supplied.

**\[Analyte Group Code\]**

**Go To** Will invoke the Analyte Group Code Maintenance List in
single-select mode.

> If no selection is made from the list (i.e. the Cancel button is
> chosen) any previous value in Analyte Group Code will be retained on
> the page. When a selection is made and returned to this page, the
> Analyte Code and **Go To** button will become disabled. If any of the
> monitoring requirement's samples required fields contained a value,
> they will be removed and a new monitoring requirement must be chosen.
>
> This button is disabled if the Analyte Code is supplied, if the
> Effective Begin Date Ranges are supplied or if the State Asgn ID is
> supplied.

**\[Monitoring Requirement\]**

**Go To** Will invoke the Monitoring Requirement Maintenance List in
single-select mode.

> If no selection is made from the list (i.e., the Cancel button is
> chosen) any previous value in Monitoring Requirement will be retained
> on the page.
>
> This button is disabled until either the analyte code or the analyte
> group code contains a valid value.

\[Water System\]

**Go To** Will invoke the Water System Maintenance List in single-select
mode. When a selected value is returned, the Water System Name field
will be populated.

This button is disabled if any of the following fields contain a value:

Analyte Code

Analyte Group Code

Effective Begin Date Range

Waiver State Asgn ID

**Search** The following edits are performed:

If Waiver State Asgn ID is blank and:

> Regulating Agency is blank, the following error message will be
> invoked: **Regulating Agency is a required field.**
>
> If all fields contained in the Monitoring Requirement group box and
> both fields contained in the Effective Begin Date Range are blank, the
> following error message will be invoked: **Either a Monitoring Reqt or
> an Effective Begin Date Range is a required field.**
>
> If an end date is provided in the Effective Begin Date Range group box
> but a start date is not, the following error message will be invoked:
> **Cannot enter an End Date without a Begin Date.**
>
> If both dates are provided in the Effective Begin Date Range group box
> and the end date is before the start date, the following error message
> will be invoked: **End Date cannot be earlier than the Begin Date.**
>
> After passing these edits the Monitoring Waiver Maintenance List will
> be presented with the qualifying list of Monitoring Waivers. The
> search combinations are:

-   Status selection of All Types, a Regulating Agency, and a Monitoring
    Requirement will list all Monitoring Waivers in any status that are
    approved by the specified Regulating Agency and that are waiving the
    specified Monitoring Requirement.

-   Status selection of any value other than 'All Types', a Regulating
    Agency, and a Monitoring Requirement will list all Monitoring
    Waivers in status = the specified value that are approved by the
    specified Regulating Agency and that are waiving the specified
    Monitoring Requirement.

-   Status selection of All Types, a Regulating Agency, a start date and
    no end date will list all Monitoring Waivers in any status that are
    approved by the specified Regulating Agency, that are waiving any
    Monitoring Requirement, and that have a begin_date \>= the specified
    start date or begin_date = null.

-   Status selection of All Types, a Regulating Agency, a start date and
    an end date will list all Monitoring Waivers in any status, that are
    approved by the specified Regulating Agency, that are waiving any
    Monitoring Requirement, and that have a begin_date \>= the specified
    start date and a begin_date \<= the specified end date or begin_date
    = null.

-   Status selection of any value other than 'All Types', a Regulating
    Agency, a start date and no end date will list all Monitoring
    Waivers with status = the selected value, that are approved by the
    specified Regulating Agency, that are waiving any Monitoring
    Requirement, and that have a begin_date \>= the specified start date
    or begin_date = null.

-   Status selection of any value other than 'All Types', a Regulating
    Agency, a start date and an end date will list all Monitoring
    Waivers with status = the selected value, that are approved by the
    specified Regulating Agency, that are waiving any Monitoring
    Requirement, and that have a begin_date \>= the specified start date
    and a begin_date \<= the specified end date or begin_date = null.

-   All Monitoring Waivers associated to the specified Water System No.

-   Status selection of All Types, a Regulating Agency, and an Analyte
    Code with no Monitoring Requirement will list all Monitoring Waivers
    in any status that are approved by the specified Regulating Agency
    and that are waiving any Monitoring Requirement for the specified
    Analyte Code.

-   Status selection of any value other than 'All Types', a Regulating
    Agency, and an Analyte Code with no Monitoring Requirement will list
    all Monitoring Waivers in status = the specified value that are
    approved by the specified Regulating Agency and that are waiving any
    Monitoring Requirement for the specified Analyte Code.

-   Status selection of All Types, a Regulating Agency, and an Analyte
    Group Code with no Monitoring Requirement will list all Monitoring
    Waivers in any status that are approved by the specified Regulating
    Agency and that are waiving any Monitoring Requirement for the
    specified Analyte Group Code.

-   Status selection of any value other than 'All Types', a Regulating
    Agency, and an Analyte Group Code with no Monitoring Requirement
    will list all Monitoring Waivers in status = the specified value
    that are approved by the specified Regulating Agency and that are
    waiving any Monitoring Requirement for the specified Analyte Group
    Code.

> If no Monitoring Waivers meet the search criteria, the following
> advisory (Exhibit 7-57) will be presented.
>
> ![](media/image67.png){width="4.395833333333333in" height="1.9375in"}

[]{#__RefHeading___Toc139861135 .anchor}**Exhibit 7-57.** No Monitoring
Waiver

> Pressing the **OK** button will present the Monitoring Waiver
> Maintenance List with no records presented so that a waiver may be
> added by using the Edit/Add menu item.
>
> If the Waiver State Asgn ID has a valid value, the Monitoring Waiver
> Maintenance List Page will not be displayed and the Monitoring Waiver
> will be presented in change mode on the Monitoring Waiver Maintenance
> page.

**Clear** Will reset all values to their default value. The Regulating
Agency resets to spaces and the status resets to All Types.

**Cancel** Will return to the *SDWIS/STATE Home Page*.

**Help** Will invoke online Help for this page.

####  Monitoring Waiver Maintenance List

Exhibit 7-58 depicts the Monitoring Waiver Maintenance List page.

![](media/image68.png){width="6.495833333333334in"
height="3.9583333333333335in"}

[]{#__RefHeading___Toc139861136 .anchor}**Exhibit 7-58.** Monitoring
Waiver Maintenance List

The Monitoring Waiver Maintenance List will list Monitoring Waivers
based upon criteria entered on the search page.

[Default Sort Order]{.underline}: Descending Begin date, Descending End
date, Ascending Analyte.

[Protected Fields]{.underline}:

*Number of rows resulting from the*

*search criteria entered:* Displays a number representing the number of
rows in the database that met the search criteria.

*Number of rows displayed:* Displays a number representing the number of
rows invoked on the page and viewable using the vertical scroll bar.
This number is affected by the filter criteria.

[List Items]{.underline}:

*Waiver State Asgn ID* The identification number assigned to the
monitoring waiver by the state.

*Regulating Agency Name* The name of the regulating agency granting the
waiver.

*Status* The current status of the monitoring waiver.

*Begin Date* The begin date of the monitoring waiver.

*End Date* The end date of the monitoring waiver.

*Analyte Code* The analyte (or analyte group) code for which the waiver
is being considered.

*Sample Count* The sample count of the monitoring requirement for which
the monitoring waiver is being considered.

*Sample Type* The sample type of the monitoring requirement for which
the monitoring waiver is being considered.

*Sample Per.* The sample periodicity (or frequency) of the monitoring
requirement for which the monitoring waiver is being considered.

*Vio. Type* The Violation Type associated to the monitoring requirement
for which the monitoring waiver is being considered.

[Menu Items]{.underline}:

**File**

*Exit* Returns to the page that invoked the maintenance list. In most
cases this will return to the *SDWIS/STATE Home Page*.

**Edit**

*Add* Will invoke the Monitoring Waiver Maintenance in add-mode. This
item will be available regardless of selection being highlighted in the
list box.

*Change* Will invoke the Monitoring Waiver Maintenance in change-mode.
This item will only be available when a monitoring waiver is selected in
the list area. A double-click on a list box row will function as a
Change menu item.

*Delete* Will invoke the delete confirmation page (Exhibit 7-59).

> ![](media/image69.png){width="5.78125in" height="3.4375in"}

[]{#__RefHeading___Toc139861137 .anchor}**Exhibit 7-59.** Delete
Monitoring Waiver

> [Buttons]{.underline}:
>
> **Yes** Will delete the Monitoring Waiver and return to the
> maintenance list with the row removed. All WAIVER_WATER_SYSTEM_ASGMT
> and WAIVER_SAMPLING_POINT_ASGMT records will also be deleted.
>
> **No** Will abort the delete request and return to the maintenance
> list.

**View**

> *Search* Will invoke the Monitoring Waiver Search page where new
> search criteria can be entered. Prior search criteria will be present.
>
> *Sort* Will invoke the standard sort options dialog box.
>
> This item will only be available if there are rows in the list area.
> Three levels of sorting will be supported with options on all list
> columns.
>
> *Filter By* Will invoke the standard filter options so that the
> resulting rows can be focused to a smaller set. Using this item will
> modify the value of the Number of Rows Displayed field and enable the
> View/Refresh menu item.
>
> This item will only be available if there are rows in the list area.
> Filter options will be available on all List columns.
>
> *Refresh* Will undo the effects of the Filter By request and
> re-display all rows in the list area.
>
> This items will only be available if there are rows filtered out of
> the list area display.

**Help** Will invoke the online system help.

[Buttons:]{.underline}

**Menu Items** Will present the standard menu items dialog box.

**Scroll Buttons** Will scroll the list box in the direction of the
arrow displayed on the button.

####  Monitoring Waiver Maintenance 

Exhibit 7-60 depicts the Monitoring Waiver Maintenance page.

![](media/image70.png){width="6.495833333333334in"
height="7.626388888888889in"}

[]{#__RefHeading___Toc139861138 .anchor}**Exhibit 7-60.** Monitoring
Waiver Maintenance

[Entry fields:]{.underline}

*State Asgn ID* The identification code assigned by the state to this
waiver.

> The State Asgn ID field will be optional.

*Status* The current status of the waiver. The permitted values will be:

Granted

Proposed

Denied

Under Review

Status will be a required field and will default to Granted.

*Effective Begin*

*Date* The first date of effectiveness for the monitoring waiver.

> The Effective Begin Date field will be optional unless the status is
> Granted, then it will be required. If left blank, the following error
> message will be invoked: **Begin Date is required when the waiver
> status is Granted.** Future dates are allowed.

*Effective End*

*Date* The last date of effectiveness for the monitoring waiver.

The Effective End Date field will be optional.

> If it is supplied, the effective begin date must also be supplied. If
> it is not, the following error message will be invoked: **Cannot enter
> an End Date without a Begin Date.**
>
> It cannot be prior to the supplied begin date. If it is, the following
> error message will be invoked: **End Date cannot be earlier than the
> Begin Date.** Future dates are allowed.

*Application Date* The date that the water system applied for the
waiver. It may not be a future date and if it is, the following error
message will be invoked: **Application Date must not be a future date.**

> The Application Date field will be optional.

**Comments** A free-form text area.

**Denial**

**Comments** A free-form text area.

Monitoring Requirement being Waived:

*Analyte Code* The analyte code for which a monitoring waiver may be
created. This field will be enabled if the Analyte Group Code does not
contain a value. If an invalid analyte code is entered the Analyte
Maintenance List will be presented in single-select mode.

A change in the analyte code will cause any previous Monitoring
Requirement to be invalid so the values in samples required will be
removed from the display. A new Monitoring Requirement will need to be
supplied.

If the analyte code is provided, the Analyte Group Code and **Go To**
button will become protected. If the Analyte Code is removed, the
Analyte Group Code and **Go To** button will become unprotected and all
samples required fields will be removed.

*Analyte Group Code* The analyte group code for which a monitoring
waiver may be created. This field will be enabled if the Analyte Code
does not contain a value.

If an invalid analyte group code is entered the Analyte Group
Maintenance List will be presented in single-select mode.

> A change in the analyte group code will cause any previous Monitoring
> Requirement to be invalid so the values in samples required will be
> removed from the display. A new Monitoring Requirement will need to be
> supplied.
>
> If the analyte group code is provided, the Analyte Code and **Go To**
> button will become protected. If the Analyte Group Code is removed,
> the Analyte Code and **Go To** button will become unprotected and all
> samples required fields will be removed.

*Samples Required* These four fields will be enabled when either the
analyte code or the analyte group code contains a valid value. The four
fields of Samples Required are Sample Count, Sample Type, and Sample
Periodicity (or frequency) and Vio. Type.

Sample Count is a numeric value and is a required field.

Sample Type has the permitted values of:

CO Confirmation

RT Routine

SP Special

> OT Other
>
> RP Repeat
>
> TR Temporary Routine

Sample Periodicity has the permitted values of:

1T One Time

> YR 1 Year

2Y 2 Years

3Y 3 Years

4H 4 Hours

4Y 4 Years

5Y 5 Years

6M 6 Months

18M 18 Months

6Y 6 Years

7Y 7 Years

8Y 8 Years

9Y 9 Years

10Y 10 Years

DL 1 Day

> 2 W 2 Weeks

HR 1 Hour

MN Month

QT Quarter

WK Week.

Sample Periodicity will be automatically set to one time if the Sample
Type is set to Confirmation.

Vio. Type specifies the M&R violation type linked to the monitoring
requirement. It is not required but does participate in the unique
identification of a monitoring requirement.

*Regulating Agency* The primacy government regulating agency. It can be
change to another regulating agency. If the value supplied is not a
valid government agency with regulating agency indicator = 'Y,' the
Legal Entity Maintenance List will be presented in single-select mode
upon tabbing off the field. The list will display only Legal Entities of
type 'GA' that have a regulating agency indicator = 'Y'.

This is a required field and if not supplied, the following error
message will be invoked: **A regulating Agency is a required field.**

*Agency Response* The date that the regulating agency responded to the
request for waiver. It may not be a future date and if it is the
following error message will be invoked: **Agency Response Date must not
be a future date.** The date may not be before the Date Applied and if
it is the error message will be **Agency Response Date must not be
before Application Date.**

*Compliance Officer* A compliance officer's name may be entered. The
name should be entered in the format last name, comma, space, first
name. (Example Johnson, Larry.) The value will be edited when leaving
the field for an existing legal entity with type = 'IN'. If the
compliance officer is not found the Legal Entity Maintenance List will
be presented in single-select mode. The list will present Legal Entities
with type = 'IN'.

The Compliance Officer field will be optional.

[Water Systems List Box]{.underline}

This list box will list up to 1000 water systems that are associated to
the waiver. Multiple selections may be made.

List Columns: Water System No., Name, Status, Type, Primary Source Type,
Principal County Served, All GW Protected?

Default Sort Order: Water System No. ascending.

[Buttons]{.underline}:

**Associate** Will perform all processing as if the OK button was
selected. It will then present the Water System search page where
criteria can be entered list qualifying water system on the Water System
Maintenance List. The Water System Maintenance List will be presented in
multiple-select mode. Upon selection of one or more water systems, the
selections will be associated to the Monitoring Waiver by creating a
WAIVER_WATER_SYSTEM_ASGMT associated to the MONITORING_WAIVER and the
WATER_SYSTEM. In situations where the selected water system is already
associated to the monitoring waiver, the duplicate selection will be
ignored.

**Disassociate** Will present the Disassociate Waiver Water System
confirmation (Exhibit 7-61) where a list of the selected water system(s)
will be presented. This button will only be enabled when at least one
water system has been selected.

[Buttons]{.underline}:

> **Yes** Will delete the WAIVER_WATER_SYSTEM_ASGMT between the
> MONITORING_WAIVER and each of the selected WATER_SYSTEMS. When the
> monitoring waiver is associated to sampling points of the same water
> system that is being disassociated, remove the waiver to sampling
> point associations also. (B.7.3.2.3.a)
>
> **No** Will close the dialog box and return to the maintenance page
> with no action taken.
>
> ![](media/image71.png){width="6.135416666666667in" height="3.1875in"}

[]{#__RefHeading___Toc139861139 .anchor}**Exhibit 7-61.** Disassociate
Water System Confirmation

[Sampling Points List Box]{.underline}

This list box will list up to 1000 sampling points that are associated
to the waiver. Multiple selections may be made.

List Columns: Water System No., WSF State Asgn ID, Sampling Point, Water
System Name, WSF Type, WSF Name, Sampling Point Type, Sampling Point
Location, Water System Type, WSF Availability Code, WSF No Treatment Ind
Code, Water Type, and Sampling Point Type.

Default Sort Order: Water System No. ascending, WSF State Asgn ID,
ascending, Sampling Point, ascending.

[Buttons]{.underline}:

**Associate** Will perform all processing as if the OK button was
selected. It will then present the Sampling Point Maintenance List page
in multiple-select mode. Upon selection of one or more sampling points,
the selections will be associated to the Monitoring Waiver by creating a
WAIVER_SAMPLING_POINT_ASGMT associated to the MONITORING_WAIVER and the
SAMPLING_POINT. In situations where the selected sampling point is
already associated to the monitoring waiver, the duplicate selection
will be ignored.

This button will only be enabled when a Water System has been selected
in the Associated Water Systems list box.

**Disassociate** Will present the Disassociate Waiver Sampling Point
(Exhibit 7-62) confirmation where a list of the selected sampling
point(s) will be presented. This button will only be enabled when at
least one sampling point has been selected.

[Buttons]{.underline}:

> **Yes** Will delete the WAIVER_SAMPLING_POINT_ASGMT between the
> MONITORING_WAIVER and each of the selected SAMPLING_POINTs.
>
> **No** Will close the dialog box and return to the maintenance page
> with no action taken.
>
> ![](media/image72.png){width="5.416666666666667in"
> height="3.2291666666666665in"}

[]{#__RefHeading___Toc139861140 .anchor}**Exhibit 7-62.** Disassociate
Sampling Point Confirm

[Buttons]{.underline}:

*\[Analyte Code\]*

**Go To** Will invoke the Analyte Maintenance List in single-select
mode. This button will not be available if the Analyte Group Code
contains a value.

*\[Analyte Group Code\]*

**Go To** Will invoke the Analyte Group Maintenance List in
single-select mode. This button will not be available if the Analyte
Code contains a value.

*\[Samples Required\]*

**Go To** Will invoke the Monitoring Requirement Maintenance List. This
button will only be available if the Analyte Code or Analyte Group Code
contains a value.

*\[Regulating Agency\]*

**Go To** Will invoke the Legal Entity Maintenance List in single-select
mode. The list will display legal entities of type 'GA' that have a
regulating_agency_indicator = 'Y'.

*\[Compliance Officer\]*

**Go To** Will invoke the Legal Entity Maintenance List in single-select
mode. The list will display legal entities of type 'IN'.

**OK** The following edits are performed:

-   If the Monitoring Requirement Addressed by Waiver does not provide
    complete information for a monitoring requirement to be selected,
    the exit state message will be **A monitoring requirement has not
    been specified.** This occurs if any of the analyte/analyte group
    code or samples required fields are left blank.

-   The Samples Required data will be edited to ensure a monitoring
    requirement exists for the analyte/analyte group code and samples
    required data supplied. If no monitoring requirement is found, the
    following advisory (Exhibit 7-63) is invoked.

> ![](media/image66.png){width="4.666666666666667in" height="2.125in"}

[]{#__RefHeading___Toc139861141 .anchor}**Exhibit 7-63.** No Monitoring
Requirement

> [Button]{.underline}:
>
> **OK** Will invoke the Monitoring Requirement Maintenance List in
> single-select mode for the specified analyte/analyte group code so
> that a valid selection can be made.

-   An overlap check will be performed using the waiver effective begin
    date, effective end date, and selected monitoring requirement for
    waivers in Granted status. All other statuses will bypass the
    overlap check. Future dates are allowed in both the begin and end
    date fields and must be considered in the overlap check. The end
    date is not required and a null value should be considered as
    infinitely open, thereby triggering the overlap advisory for any
    displayed waiver with a begin date greater or equal to any existing
    waiver's begin date with a nulled end date. Examples of the overlap
    check for Granted Waivers with the same Monitoring Requirement are:

> Potential Waiver Existing Waiver Overlap?

a\. Begin Date=1/1/2000 Begin Date = 1/1/1999 N

End Date = null End Date = 12/31/1999

b\. Begin Date=1/1/2000 Begin Date = 1/1/1999 Y

End Date = null End Date = null

c\. Begin Date=1/1/2000 Begin Date = 1/1/1999 Y

End Date = null End Date = 12/31/2005

d\. Begin Date=1/1/2000 Begin Date = 1/1/2002 Y

End Date = null End Date = 12/31/2002

e\. Begin Date=1/1/2000 Begin Date = 1/1/2002 N

End Date = 12/31/2000 End Date = 12/31/2002

> If an overlapping waiver is found, the following confirmation (Exhibit
> 7-64) will be invoked: A waiver already exists for this monitoring
> requirement and part of the effective period covered by the begin and
> end dates. Do you want to continue?
>
> ![](media/image73.png){width="5.1875in" height="2.375in"}

[]{#__RefHeading___Toc139861142 .anchor}**Exhibit 7-64.** Overlap
Confirm

[Buttons]{.underline}:

> **Yes** Will continue with the requested Add or Change as if no
> overlap had been found.
>
> **No** Will cancel the add request and return to the maintenance list
> page.

*Add-mode* Will create the monitoring waiver setting the
d_initial_timestamp, d_last_update_timestamp and d_userid_code to
current values and associate it to the monitoring requirement and the
GOVERNMENT AGENCY. If a compliance officer was provided, it will also be
associated to that individual. If any of the Effective Begin Date,
Effective End Date, Date Applied or Date Agency Approved is not
provided, the date field will be set to null.

*Change-mode* Will update the monitoring waiver setting, the
d_last_update_timestamp, and d_userid_code to current values.

> If any of the Effective Begin Date, Effective End Date, Date Applied
> or Date Agency Approved is not provided, the date field will be set to
> null.
>
> If the Monitoring Requirement was changed, the MONITORING_WAIVER will
> be transferred from the old Monitoring Requirement to the new
> Monitoring Requirement.
>
> If the Regulating Agency was changed, the MONITORING_WAIVER will be
> transferred from the old GOVERNMENT AGENCY to the new GOVERNMENT
> AGENCY.
>
> If a Compliance Officer was provided or changed, it will also be
> associated to that individual. If the Compliance Officer was removed,
> the MONITORING_WAIVER will be disassociated from the INDIVIDUAL.

**Cancel** If no changes have been made, the page will close and return
to the Monitoring Waiver Maintenance List. If changes have been made,
the standard cancel confirmation dialog will be presented.

**Help** Will invoke online Help for this page.

## Monitoring Period Transfer

### Model Changes for Monitoring Period Transfer

No model changes planned for this release.

### Monitoring Period Transfer Page Flow

####  Monitoring Period Transfer Search

When the user selects **Monitoring Period Transfers** from *the
SDWIS/STATE Home Page* *Monitoring* menu item, the Monitoring Period
Transfer Search page (Exhibit 7-65) will be presented where search
criteria can be specified.

  ----------------------------------------------------- ----------------------------------------------------
  ![](media/image42.png){width="1.7493055555555554in"   ![](media/image74.png){width="4.178472222222222in"
  height="4.247222222222222in"}                         height="2.53125in"}

  ----------------------------------------------------- ----------------------------------------------------

[]{#__RefHeading___Toc139861143 .anchor}**Exhibit 7-65.** Monitoring
Period Transfer Search

Allows the transfer of a sample from one monitoring period to another.

**[Entry fields]{.underline}:**

*Water System No.* The specific Water System No. from which the samples
were taken, which consists of the two-character state code plus the
seven-character number field.

> The state code portion will default to the state_identification_code
> in the SYSTEM_VARIABLE entity view.
>
> The cursor should be located in the first position of the numeric
> portion of the Water System No.
>
> If the value supplied is not a valid water system, the Water System
> Maintenance List will be presented in single-select mode when tabbing
> off the entry field. When a valid value is supplied, the Water System
> Name will be displayed.
>
> The water system must be contained within the user's current water
> system group/regulating agency designation. If not, the error message
> will be: **WS is not part of current group/agency. Change group/agency
> to access this WS.**

This is a required field.

*Rule Abbreviation* The rule for which the sample is being analyzed. If
the value supplied is not a valid rule abbreviation, the Rule Selection
List will be invoked when tabbing off the entry field. When a valid
value is supplied, the rule name will be displayed.

This is a required field.

*Monitoring Period Name* The name of the selected monitoring period
returned from selection.

[Protected Fields]{.underline}:

*Water System Name* The name associated to the specified Water System
No.

*Rule Name* The name associated to the specified Rule abbreviation.

*Monitoring Period*

*Start Date* The start date of the monitoring period to which the
samples are currently associated.

> This is a required field but can only be populated by making a
> selection utilizing the **Go To** button.

[Buttons]{.underline}:

**\[***Water System No.\]*

**Go To** Will invoke the Water System Maintenance List in single-select
mode listing only water systems contained in the user's current water
system group/regulating agency designation.

*\[Rule Abbreviation\]*

**Go To** Will invoke the Rule Selection List.

\[*Monitoring Period Start Date\]*

**Go To** Will invoke the Monitoring Period Maintenance List in
single-select mode. This list will present only monitoring periods
associated to the specified water system and rule.

**Search** Will utilize the search criteria to invoke the Monitoring
Period Transfer Maintenance. This button will not be enabled until all
three search fields contain valid values.

If no results are found for the input criteria, the error message will
be **No Results exist for this Water System, Monitoring period and
Rule.**

If the compliance_run_indicator_code = "Y" in the RULE_WS_MP_ASGMT table
for the selected Water System No., rule number, and monitoring period,
the error message will be **Compliance has already been run for this
monitoring period.**

**Clear** Will clear all values from the entry and protected fields.

**Cancel** Will return to the *SDWIS/State Home Page.*

**Help** Will invoke online Help for this page.

##### Rule Selection List

Exhibit 7-66 depicts the Rule Selection List page.

[List Items]{.underline}:

*Rule*

*(abbreviation)* The abbreviation for the rule.

*Name* The name of the rule.

[Default Sort Order]{.underline}: Internal rule number ascending.

[Buttons]{.underline}:

**Select** Will return the selected rule to the invoking page. This
button will only be enabled if a rule has been selected.

**Cancel** Will return to the invoking page but no rule will be
returned.

  ----------------------------------------------------- ----------------------------------------------------
  ![](media/image42.png){width="1.7493055555555554in"   ![](media/image75.png){width="4.633333333333334in"
  height="4.35625in"}                                   height="4.311805555555556in"}

  ----------------------------------------------------- ----------------------------------------------------

[]{#__RefHeading___Toc139861144 .anchor}**Exhibit 7-66.** Rule Selection
List

##### Monitoring Period Selection List

**This page has been replaced with the Monitoring Period Maintenance
list and will no longer be implemented.**

Exhibit 7-67 depicts the Monitoring Period Selection List page.

Will list the monitoring periods for which the selected water system has
an association for the selected rule.

**[List Items]{.underline}:**

*Type* The monitoring period type code.

*Name* The monitoring period name.

*Begin Date* The date on which the monitoring period begins.

*End Date* The date on which the monitoring period ends.

  ----------------------------------------------------- -----------------------------------------------------
  ![](media/image42.png){width="1.7493055555555554in"   ![](media/image76.png){width="4.5256944444444445in"
  height="4.247222222222222in"}                         height="3.563888888888889in"}

  ----------------------------------------------------- -----------------------------------------------------

[]{#__RefHeading___Toc139861145 .anchor}**Exhibit 7-67.** Monitoring
Period Selection List

**[Buttons]{.underline}:**

**Select** Will take the selected monitoring period back to the
Monitoring Period Transfer Search. This button will only be enabled when
a selection has been made in the list area.

**Cancel** Will return to the Monitoring Period Transfer Search but no
selection will be carried back.

**Help** Will invoke online Help for this page.

####  Monitoring Period Transfer Maintenance

Exhibit 7-68 depicts the Monitoring Period Transfer Maintenance page.

  ----------------------------------------------------- ----------------------------------------------------
  ![](media/image42.png){width="1.7493055555555554in"   ![](media/image77.png){width="4.473611111111111in"
  height="4.247222222222222in"}                         height="4.64375in"}

  ----------------------------------------------------- ----------------------------------------------------

[]{#__RefHeading___Toc139861146 .anchor}**Exhibit 7-68.** Monitoring
Period Transfer Maintenance

**[Protected Items]{.underline}**:

*Water System* The number and name of the selected water system to which
the samples belong.

*From Monitoring*

*Period* The type, name, begin and end dates of the current monitoring
period to which the samples are associated.

*To Monitoring*

*Period* The type, name, begin and end dates of the monitoring period to
which the sample(s) will be transferred. This area is populated by using
the **List** button.

**[List Items]{.underline}:** Multiple samples may be selected in this
list area. If compliance has already run for this water system, rule,
and monitoring period, the transfer cannot take place and the samples
will not be displayed.

*\[From Sample List\]*

*Sample \[Type\]* The type of sample. Reference the *Sampling Component*
section of this document for definition of the displayed values.

*Collection Date* The date the sample was collected.

*Lab Sample No.* The sample number assigned by the laboratory.

*Sampling Point* The sampling point that the sample was taken from.

*Location* The sampling point location description.

*Analyte Code* The analyte for which this sample was analyzed.

*Name* The name of the rule under which this sample was analyzed.

*State Sample No.* The sample number assigned by the state.

*\[To Sample List\]*

*Sample \[Type\]* The type of sample. Reference the *Sampling Component*
section of this document for definition of the displayed values.

*Collection Date* The date the sample was collected.

*Lab Sample No.* The sample number assigned by the laboratory.

*Sampling Point* The sampling point from which the sample was taken.

*Location* The sampling point location description.

*Analyte Code* The analyte for which this sample was analyzed.

*Name* The name of the rule under which this sample was analyzed.

*State Sample No.* The sample number assigned by the state.

[Buttons]{.underline}:

**List** Will invoke the Monitoring Period Maintenance List in
single-select mode. A selection on that list will populate the *To
Monitoring Period* group box and represents the new monitoring period to
which the selected samples will be associated.

This button will only be enabled while the *To Monitoring Period* group
box is unpopulated.

**Transfer** Will populate the second (to) sample list area with the
samples selected in the first (from) sample list area.

> This button will only be enabled if a sample is selected in the first
> (from) list area. It can be selected several times.

**OK** Will perform the monitoring period transfer for the samples
listed in the second (to) list area. When complete, the page will close
and return to the *SDWIS/STATE Home Page.*

**Cancel** Will perform no transfer and return to the *SDWIS/STATE Home
Page.*

**Help** Will invoke online Help for this page.

[Toolbar Icons]{.underline}:

![](media/image23.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Water System Information page, which will display basic inventory
information for the given Water System.

![](media/image24.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Display Points of Contact page, which will display a protected list of
legal entities and individuals (e.g., operators, engineers) associated
with the given Water System.

## Milestone 

Changes to EPA's reporting requirements for the Lead and Copper Rule and
the need for regions to report regionally owned data have triggered
minor changes to the Milestone Event function. In particular, EPA
eliminated the requirement for primacy agencies to report the completion
of several of the interim milestones, however, the minor revisions do
not eliminate corresponding record keeping requirements.

### Model Changes for Milestones

No model changes planned for this release.

### Milestones Page Flow

####  Milestone Event Search

Exhibit 7-69 depicts the Milestone Event Search page.

![](media/image78.png){width="6.49375in" height="4.995833333333334in"}

[]{#__RefHeading___Toc139861147 .anchor}**Exhibit 7-69.** Milestone
Event Search

[Protected Fields]{.underline}:

*WS Group Used/*

*Regulating Agency*

*Used* This protected field will show the user's current Water System
Group Name or Regulating Agency depending on which the user has made
current. The software will dynamically change the prompt depending on
whether Water System Group Name or Regulating Agency is current. The
prompt will be "WS Group Used" if the user's current Water System Group
is valued, otherwise the prompt will be "Regulating Agency Used."

*\[Water System*

*Name\]* The name of the Water System associated to the presented Water
System No.

[Entry Fields]{.underline}:

*Water System No.* The specific Water System No. which consists of the
two-character state code plus the seven-character number field.

> The state code portion will default to the state_identification_code
> in the SYSTEM_VARIABLE entity view.
>
> The cursor should be located in the first position of the numeric
> portion of the Water System No.
>
> If the value supplied is not a valid water system, the Water System
> Maintenance List will be presented in single-select mode when tabbing
> off the entry field. When a valid value is supplied, the Water System
> Name will be displayed.

Only milestones that belong to this Water System No. will be listed on
the result page.

> If a valid water system is entered but is not part of the user's
> current Water System Group or Regulating Agency, the following error
> message will be invoked: **WS is not part of current group/agency.
> Change group/agency to access this WS.**
>
> The Water System No. field will be optional but once it is entered, it
> cannot be deleted without triggering the Water System Maintenance
> List. If this occurs, simply choose File/Exit. This will return to the
> search page with no selection but does not enable the *Search by
> Milestone* fields. To delete the value, use the Clear Key to avoid
> this situation.
>
> Entering a Water System No. will disable entry of the Search by
> Milestone fields.

*Milestone Event*

*Type* The type of milestones to be listed on result page. Selection
values are:

CSSR -- Corrosion Control Study Required

CCSC -- Corrosion Control Study Completed

CU90 -- Copper Action Level Exceedence

DEEM -- System deemed optimized without OCCT

DONE -- System done with OCCT

LSLR -- Lead service line replacement required.

MPLS -- Maximum permissible levels in source water

OTDE -- OCCT treatment designated and approved

OTIN -- OCCT treatment installed

PB90 -- Lead 90^th^ action level exceedence

STDE -- SOWT designated and approved

STIN -- SOWT treatment installed

WQPS -- Water Quality Parameters

MIF -- Must install filtration

> The Milestone Event Type field will be optional. If an option is
> selected, it will disable entry into the *Water System No.* field. To
> remove the selection, use the Clear key.

*Milestones Between*

\[start date\] The milestone date. This field will default to current
date -- 1 year but will be removed if the Clear key is pressed. This
field will be used to list milestones with a milestone date equal to or
after the date provided.

The Milestones Between field will be optional.

*and*

\[end date\] The milestone end date. The Milestones Between field will
be optional but if supplied, will be used to list milestones with a
milestone \[start\] date earlier or equal to the date supplied. If
supplied, this field must be after the supplied start date. If it is
not, the following error message will be invoked: **End Date cannot be
earlier than Begin Date.**

[Buttons]{.underline}:

**Search** Will utilize the criteria entered and invoke the Milestone
Event Maintenance list.

**Clear** Will remove all values from the enterable fields and the
protected water system name.

**Cancel** Will return to the *SDWIS/STATE Home Page.*

**Help** Will invoke online Help for this page.

####  Milestone Event Maintenance List

Exhibit 7-70 depicts the Milestone Event Maintenance List.

[Protected Fields]{.underline}:

*Number of rows resulting*

*from search criteria entered*

> Displays the total number of rows in the database satisfying the
> search criteria.

*Number of rows*

*Displayed:* Displays the total number of rows available for viewing in
the list area. This number is affected by the use of the *filter by*
menu item.

![](media/image79.png){width="6.497916666666667in"
height="4.465972222222222in"}

[]{#__RefHeading___Toc139861148 .anchor}**Exhibit 7-70.** Milestone
Event Maintenance List

*WS Group Used/*

*Regulating Agency*

*Used* This protected field will show the user's current Water System
Group Name or Regulating Agency, depending on which the user has made
current. The software will dynamically change the prompt, depending on
whether Water System Group Name or Regulating Agency is current. The
prompt will be "WS Group Used" if the user's current Water System Group
is valued, otherwise the prompt will be "Regulating Agency Used."

[List Items:]{.underline}

*Activity Status* The current status of the water system.

*Water System*

*No.* The number of the water system.

*Water System*

*Name* The name of the water system.

*Milestone Type* The type of the milestone. Displayed values are:

> CCSR Corrosion control study required
>
> CCSC Corrosion control study completed
>
> CU90 Copper action level exceedence
>
> DEEM System deemed optimized without Optimal Corrosion Control
> Treatment (OCCT)
>
> DONE System done with OCCT
>
> LSLR Lead service line replacement required
>
> MPLS Maximum permissible levels in source water
>
> OTDE OCCT treatment designated and approved.
>
> OTIN OCCT treatment installed
>
> PB90 Lead 90th action level exceedence
>
> STDE Source Water Treatment (SOWT) treatment designated and approved
>
> STIN SOWT treatment installed
>
> WQPS Water quality parameters
>
> MIF Must install filtration

*Milestone Date* The date the milestone event occurred.

*.*

FedRep ID The unique number identifying the milestone.
(TFRMEVNT_IS_NUMBER) (B.7.5.2.2.a)

*Milestone Value* The actual value of the milestone.

[Menu Items]{.underline}:

**File**

*Exit* Will return to the *SDWIS/STATE Home Page.*

**Edit**

> *Add* If a Water System No. was used in the search criteria, it will
> be presented on the Milestone Maintenance page. If no Water System No.
> was used in the search criteria, will invoke the Water System Search
> page where criteria may optionally be provided to search for a water
> system to which the Milestone will be associated. If the selected
> water system is in inactive status, the following advisory (Exhibit
> 7-71) will be invoked:
>
> [Buttons]{.underline}:
>
> **Yes** Will invoke the Milestone Event Maintenange page.
>
> **No** Will return to the Milestone Maintenance page or the
> *SDWIS/STATE Home Page*, depending on from where the Add request was
> initiated.
>
> This item is available regardless of a selection having been made in
> the list area.
>
> ![](media/image80.png){width="5.229166666666667in"
> height="2.3541666666666665in"}

[]{#__RefHeading___Toc139861149 .anchor}**Exhibit 7-71.** Milestone
Confirm Advisory

> *Change* Will invoke the Milestone Maintenance Page in Change mode
> with the selected milestone displayed.
>
> This item is only available when a milestone has been selected in the
> list area.
>
> *Delete* Will invoke the delete confirmation (Exhibit 7-72).
>
> ![](media/image81.png){width="3.71875in"
> height="2.1666666666666665in"}

[]{#__RefHeading___Toc139861150 .anchor}**Exhibit 7-72.** Milestone
Delete Confirmation

> [Buttons]{.underline}:
>
> **OK** Will delete the selected Milestone and return to the Milestone
> Event Maintenance List with the deleted milestone removed from the
> display.
>
> **Cancel** Will abort the delete request and return to the Milestone
> Maintenance List.

**View**

> *Search* Will invoke the Milestone Event Search page. Prior search
> criteria will be present.

*Filter By* Will invoke the following additional selections:

> *Water System No.* Will allow entry of a Water System No. to limit the
> display to milestones for that water system only. This item is
> disabled if the search was performed using a Water System No.
>
> *Milestone Type* Will allow entry of a milestone type to limit the
> display to milestones for that type. This item is disabled if the
> display search was performed using a milestone type.
>
> *Milestone Date*
>
> *Range* Will allow entry of two dates to limit the display to within
> that date range. This item is disabled if the display search was
> performed using a milestone date range.

*Sort* Will invoke the standard Sort window.

*Refresh* Will eliminate all filtering criteria and redisplay the full
result from a search action. This item is only enabled if filter
criteria have been applied to the display area.

**Help** Will invoke the online system help.

[Buttons:]{.underline}

**Menu Items** Will present the standard menu items dialog box.

**Scroll Buttons** Will scroll the list box in the direction of the
arrow displayed on the button.

####  Milestone Event Maintenance

Exhibit 7-73 depicts the Milestone Event Maintenance page.

[Protected Fields]{.underline}:

*Water System* This group box contains information about the selected
Water System. The information consists of the Water System Name, federal
and state type classification type codes, federal primary water source
code, population served, and activity status.

*FedRep ID* This is the unique identifier (tfrmevnt_is_number) for the
milestone event and will be system-generated in the add mode upon
selection of the **OK** button. (B.7.5.2.3.a)

![](media/image82.png){width="6.492361111111111in"
height="4.792361111111111in"}

[]{#__RefHeading___Toc139861151 .anchor}**Exhibit 7-73.** Milestone
Event Maintenance

[Entry Fields]{.underline}: (In tab sequence)

*Water System No.* Will present the Water System number as two fields
representing the two-character state code and the seven-character
number.

In change mode these two fields will be populated and protected.

In add mode the two-character state code will be pre-populated with the
system default state code (TINPRT where installed_indicator_code = 1).
Both fields are required and must represent a valid water system number
contained within the user's current water system group/regulating agency
assignment.

When the value in either field is changed and the combination does not
represent a valid water system number, the name will be blank and the
Water System Maintenance List will be presented in single-select mode
listing only water systems contained within the user's current water
system group/regulating agency assignment.

If the value in either field is changed and the combination represents a
valid water system number that is not contained within the user's
current water system group/regulating agency assignment, the name will
be blank and the error message will be WS is not part of current
group/agency. Change group/agency to access this WS.

If the combination of both fields represents a valid water system number
that is contained within the user's current water system
group/regulating agency assignment, the name will be populated.

*Data Origin* If the Primacy Agency (Government Agency where Primacy
Indicator is "Y") is defined as type Regional (RG), the DATA_ORIGIN_CODE
should default to "R." If the Primacy Agency is defined as type State
(ST), the DATA_ORIGIN_CODE continues to default to "S."

This is a required field.

If the Data Origin is selected as "R" (region), the following
confirmation (Exhibit 7-74) will be invoked.

The text will be reworded to say "Milestone Events with Data Origin of
'R' will not be federally reported. Do you wish to continue?

> ![](media/image83.png){width="4.729166666666667in" height="2.25in"}

[]{#__RefHeading___Toc139861152 .anchor}**Exhibit 7-74.** Data Origin
Confirmation

> [Buttons]{.underline}:
>
> **Yes** Will return to the Maintenance page with "R" as the origin.
>
> **No** Will return to the Maintenance page with "S" as the origin.

*Milestone Date* The date that the milestone occurred. This must be a
valid date and has a calendar function available to assist in selection.

Milestone Date is a required field. If it is not supplied, the following
error message will be invoked: **To create a milestone, the Milestone
Date must be supplied.**

The date may only be after current date if the Milestone Type is CU90 or
PB90 or if the milestone status is Preliminary (P). For all other types
with a future date, the following error message will be invoked: **Date
should not be greater than current date.**

*Milestone Type* The milestone type. Valid selections will be:

> CCSR Corrosion control study required
>
> CCSC Corrosion control study completed
>
> CU90 Copper action level exceedence
>
> DEEM System deemed optimized without Optimal Corrosion Control
> Treatment (OCCT)
>
> DONE System done with OCCT
>
> LSLR Lead service line replacement required
>
> MPLS Maximum permissible levels in source water
>
> OTDE OCCT treatment designated and approved.
>
> OTIN OCCT treatment installed
>
> PB90 Lead 90th percentile action level exceedence
>
> STDE Source Water Treatment (SOWT) treatment designated and approved
>
> STIN SOWT treatment installed
>
> WQPS Water quality parameters
>
> MIF Must install filtration

*Milestone Value* The actual value of the milestone.

-   For milestone Type PB90, if the value does not exceed 0.015 mg/L,
    the following advisory message appears: **Value does not exceed
    federally defined action level for the milestone type.** Milestone
    value is required for this type and if it is not provided, the
    following error message will be invoked: **To create a milestone of
    this type, Milestone value must be supplied.**

-   For milestone Type CU90, if the value does not exceed 1.3 mg/L, the
    following advisory message also appears: **Value does not exceed
    federally defined action level for the milestone type.** Again, as
    with PB90, users can enter a CU90 value that does not exceed the
    federal action level. Milestone value is required for this type and
    if it is not provided, the following error message will be invoked:
    **To create a milestone of this type, Milestone value must be
    supplied.**

-   For milestone Type LSLR, the value must be less than or equal to
    1.00 or the following error message will be invoked: **Value cannot
    exceed 1.00 for this milestone type.** This Milestone Value field
    will be optional when Milestone Type is LSLR.

-   This field is unavailable and protected for all other milestone
    types.

*Reason Code* The reason for the milestone event.

-   If the type code is DEEM, the reason code is required and may only
    be one of the following selections:

> B1 Serving fewer than 50,000 (met action level)
>
> B3 Serving greater than 50,000 (met action level)
>
> WQP Water Quality Parameters

-   If the type code is DONE, the reason code is optional, but if
    supplied, may only be one of the following selections:

> B1 Serving fewer than 50,000 (met action level)
>
> B3 Serving greater than 50,000 (met action level)
>
> WQP Water Quality Parameters

-   For all other types, the reason code is optional but may be entered.

*Comment* A free-form text area where descriptive comments can be
documented. The Comment field will be optional.

*Status* The current status of the milestone. Valid selections are:

P - Preliminary

V - Validated

R - Rejected

This is a required field and will default to Validated. If it is not
supplied, the following error message will be invoked: **To create a
Milestone, the Status must be supplied.**

*\[Status\] Date* The date that the milestone entered the current
status.

This is a required field and will default to current date. If it is not
supplied, the following error message will be invoked: **To create a
Milestone, the Status Date must be supplied.** The date cannot be after
the current date. If it is, the following error message will be invoked:
**Milestone Status Date cannot be after current date.**

*Milestone End*

*Date* The date the milestone is considered "Done." This date will be
enabled only when Milestone Type is DONE and it must be after the
Milestone Date (Planned Date). If Milestone Date entered is on/before
Planned Date, the following error message will be invoked: **Milestone
End Date must be after Milestone Date.** Return the cursor to Milestone
End Date.

[Buttons]{.underline}:

Water System No.

**Go To** Pressing this button will invoke the Water System Maintenance
List in single-select mode. The list will be limited to those water
systems included in the users current water system group designation.
This button will not be available in change mode.

**OK** Will perform edits on the entry fields as described above.

> If either of the water system number fields is blank, the error
> message will be **Water System No. must not be blank.**

If the milestone is a type of PB90 or CU90, a duplicate check is
performed using the type code, milestone date, and a status of Validated
for the same water system. If a matching milestone is found, the
following advisory (Exhibit 7-75) is displayed:

> ![](media/image84.png){width="4.697916666666667in" height="2.5in"}

[]{#__RefHeading___Toc139861153 .anchor}**Exhibit 7-75.** PB90/CU90
Milestone Confirmation Advisory

> [Buttons]{.underline}:
>
> **Yes** Will continue with the addition or change and when completed
> return to the Milestone Event Maintenance List.
>
> **No** Will abort the addition or change and return to the Milestone
> Event Maintenance List.
>
> For all other types of milestones, a duplicate check is performed
> using the type code, and a status of Validated for the same water
> system. If a matching milestone is found, the following advisory
> (Exhibit 7-76) is displayed.
>
> ![](media/image85.png){width="4.635416666666667in"
> height="2.2708333333333335in"}

[]{#__RefHeading___Toc139861154 .anchor}**Exhibit 7-76.** Milestone
Confirmation Advisory

> [Buttons]{.underline}:
>
> **Yes** Will continue with the addition or change and when completed
> return to the Milestone Event Maintenance List.
>
> **No** Will abort the addition or change and return to the Milestone
> Event Maintenance List.

If no duplicates are found, the milestone will be added or updated and
when completed, return to the Milestone Event Maintenance List.

**Cancel** If no changes have been made to the existing milestone, the
page will close and return to the Milestone Event Maintenance List.

If changes have been made, the standard cancel confirm page will be
invoked.

**Help** Will invoke online Help for this page.

**Associated Sample**

**Summary** This button will display the sample summaries associated to
the displayed Milestone Event. This button will only be available in
change mode if the milestone has sample summaries associated with it.

> Note that while the PBCU Summary Maintenance page (in *Sampling*
> component) no longer prompts the user to create an associated
> Milestone Event, the **Associated Sample Summary** button remains on
> the page so the user can review historical associations. In addition,
> while SDWIS/STATE no longer federally reports milestones of type PB90,
> CU90, CCSR, CCSC, OTDE, STDE, OTIN, STIN, WQPS, or MPLS, states may
> continue to maintain these milestone types.

[Toolbar Icons:]{.underline}

![](media/image23.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Water System Information page, which will display basic inventory
information for the given Water System.

![](media/image39.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Historical Sampling Information page, which will display protected
information on samples collected for the given water system.

## Violations

### Model Changes 

Changes for VIOLATION (TMNVIOL):

-   Attribute Changes

```{=html}
<!-- -->
```
-   Rename d_data_origin_code to data_origin_code. (attribute and
    column)

-   Rename d_current_status_type_code to status_type_code (attribute and
    column).

-   Rename d_tier_level_number to obs_d_tier_lvl_nbr. (attribute only)

-   Add status_reason_cd (text, 5, optional). Description: A System
    Administration-controlled code of the reason a violation has the
    status indicated. (R0123:A.7.6.1.a)

```{=html}
<!-- -->
```
-   VIOLATION_DATA_COMPLETENESS_RULE (TMNVDCR):

> \- Add attribute d_userid_code (char, 8, mandatory). Description: The
> User ID of the last person to modify this record. (R0066:A.7.6.1.b)
>
> Table Content Change: The d_userid_code of all records should be
> initially set with "SSWR1". This change should apply to both base and
> startup schemas. (R0066:A.7.6.1.c)
>
> \- Add attribute d_last_updt_ts (timestamp, mandatory). Description:
> The timestamp at the update of the record. (R0066:A.7.6.1.d)
>
> Table Content Change: The d_last_updt_ts of all records should be
> initially set with "01/01/2005". This change should apply to both base
> and startup schemas. (R0066:A.7.6.1.e)
>
> \- Remove row with TMNVDCR_IS_NUMBER = 19. This row was restricting
> violation type 53 to analyte code 5000 and is in error. (B.7.6.1.a)

-   VIOLATION_PERIOD_RULE (TMNVPRDR):

> \- Add attribute d_userid_code (char, 8, mandatory). Description: The
> User ID of the last person to modify this record. (R0066:A.7.6.1.f)
>
> Table Content Change: The d_userid_code of all records should be
> initially set with "SSWR1". This change should apply to both base and
> startup schemas. (R0066:A.7.6.1.g)
>
> \- Add attribute d_last_updt_ts (timestamp, mandatory). Description:
> The timestamp at the update of the record. (R0066:A.7.6.1.h)

-   

-   Table Content Change: The d_last_updt_ts of all records should be
    initially set with "01/01/2005". This change should apply to both
    base and startup schemas. (R0066:A.7.6.1.i)

-   Changes for CODE (TINCODE):

```{=html}
<!-- -->
```
-   Add a new row to CODE table with the following values:
    (R0123:A.7.6.1.j)

> Code Name: VIOSTATRSN
>
> Code Characteristics: T (text)
>
> Value Length: 5
>
> Decimal Length: 0
>
> Delete Flag: A
>
> Ownership Code: ST
>
> Referenced Attribute Name: TMNVIOL.STATUS_REASON_CD
>
> Description: A code field that controls the permitted values for field
> STATUS_REASON_CD in the Violation table. This field in Violation is
> used to record the reason a violation has the status indicated using a
> code (rather than a free-hand text).

### Violation Page Flow

To add a violation, the user will select **Add** from the
*Monitoring/Violations* menu to invoke the Water System Search. A water
system must be selected in order to create a violation. Once a water
system has been selected the application will flow directly to the
Violation Maintenance page.

To change a violation, the user will select **Maintain** from the
*Monitoring/Violations* menu which will invoke the Violation Search
page.

####  Violation Search

The user may access the Violation Search page from the
*Monitoring/Violations* menu by selecting **Maintain**. This page is
used to search violation records according to the search options shown
in the page (Exhibit 7-77).

The user's current Water System Group/Regulating Agency will be used as
an implied search criterion in all searches for Violation records. This
means that the software will retrieve only violations linked to water
systems that are, in turn, linked to the user's current Water System
Group/Regulating Agency.

![](media/image86.png){width="7.344444444444444in"
height="5.733333333333333in"}

[]{#__RefHeading___Toc139861155 .anchor}**Exhibit 7-77.** Violation
Search

[Protected Fields]{.underline}:

*WS Group Used/*

*Regulating Agency*

*Used* This protected field will show the user's current Water System
Group Name or Regulating Agency depending on which the user has made
current. The software will dynamically change the prompt depending on
whether Water System Group Name or Regulating Agency is current. The
prompt will be "WS Group Used" if the user's current Water System Group
is valued, otherwise the prompt will be "Regulating Agency Used."

*Water System Name* The name of the selected water system.

*\[Individual Analyte*

*Code Name\]* This protected field will display the name of the selected
analyte.

*\[Analyte Group*

*Code Name\]* This protected field will display the name of the selected
analyte group.

[Entry Fields]{.underline}:

Search by Violation Group Box:

If any Search by Violation Group Box field is valued, all fields and
buttons within the Search by Analyte/Type Current Status and Date Range
group box will be protected, with the exception of the Determination
Date Ranges. The date ranges will continue to accept values but will be
ignored in the processing of the search.

*Water System No.* The specific Water System No., which consists of the
two-character state code plus the seven-character number field.

> The state code portion will default to the state_identification_code
> in the SYSTEM_VARIABLE entity view.

Once a valid Water System No. has been entered, the water system name
will be displayed.

When the supplied Water System No. is not valid, the Water System
Maintenance List will be presented in single-select mode displaying the
closest matching Water System No. at the top of the list. (Closest
matching means a match with the Water System No., sorted alphabetically,
that starts with the same text string as supplied.) Only Water Systems
that are part of the users current group designation will be presented.

> If a valid water system is entered but is not part of the user's
> current Water System Group or Government Agency, the following error
> message will be invoked: **WS is not part of current group/agency.
> Change group/agency to access this WS.**

*Violation Year* The violation fiscal year.

This is an optional field.

*FedRep ID.* The External System Number. This field has been expanded to
18 characters.

This is an optional field.

> Entering a specific water system and both a Violation Year and FedRep
> ID can retrieve a unique Violation.

The user can enter any combination of the three fields in this group
box.

Search by Analyte/Type/Current Status and Date Range Group Box:

When any field within this search group box contains a value the fields
and buttons within the Search by Violation group box will become
protected.

*Individual*

*\[Analyte Code\]* The four-character analyte code that references an
analyte.

When a valid analyte code is provided the analyte name will be displayed
and the \[Analyte\]Group and its **Go To** button will become protected.
When the value is removed the \[Analyte\] Group field and its **Go To**
button will become unprotected.

When an invalid value is provided the Analyte Maintenance List will be
presented in single-select mode where a selection can be made and
returned to this page, along with the analyte name.

Individual \[Analyte Code\] is an optional field.

*\[Analyte\] Group*

*\[Code\]* The four-character analyte group code.

> When a valid analyte group code is provided the analyte group name
> will be displayed and the Individual \[Analyte\] and its **Go To**
> button will become protected. When the value is removed the Individual
> field and its **Go To** button will become unprotected.

When an invalid value is provided the Analyte Group Maintenance List
will be presented in single-select mode where a selection can be made
and returned to this page, along with the analyte name.

Group \[Analyte Code\] is an optional field.

*Violation Type* The Violation Type code.

> When an invalid value is provided the Violation Type Maintenance List
> will be presented in single-select mode where a selection can be made
> and returned to this page.
>
> Violation Type will be an optional field.

*Violation Status* The status of the violation. Selections available in
the dropdown list are:

> P=Preliminary
>
> V=Validated
>
> R=Rejected
>
> D=Deleted
>
> Violation Status will be an optional field. A selection can be removed
> by using the **Clear** button.

Determination Date Range Group Box:

*\[Determination Date*

*Range Begin\]* The date range begin date that will be used to search
for violations with a determination date greater than or equal to the
provided value.

The begin date will default to the current date minus one year. It can
be removed by using the **Clear** button. If the begin date is changed
and is greater than the provided end date, the error message will be
**End Date cannot be less than Begin Date.**

Begin Date range will be an optional field.

*\[Determination Date*

*Range End\]* The date range end date that will be used to search for
violations with a determination date less than or equal to the provided
value.

End Date range will be an optional field.

If the end date provided is before the begin date provided, the error
message will be **End Date cannot be less than Begin Date** and the end
date will be valued with the begin date value**.** The end date can be
provided without a begin date.

> The end date can be removed by using the **Clear** button.

[Tab Sequence]{.underline}:

Water System No., Water System **Go To** button, Violation Year, FedRep
ID., Individual Analyte Code, Individual Analyte Code **Go To**, Analyte
Group Code, Analyte Group Code **Go To**, Violation Type, Violation Type
**Go To**, Violation Status, \[Determination Date Range Begin\],
\[Determination Date Range End\], **Search** button, **Clear** button,
**Cancel** button, **Help** button.

[Buttons:]{.underline}

Water System

**Go To** Pressing this button will invoke the Water System Maintenance
List in single-select mode; if the user has typed part of the Water
System No., it will be used in the search to invoke the Water System
Maintenance List. The user may select a water system from this list and
return to this page with both the Water System No. and name fields
populated.

Individual \[Analyte

Code\] **Go To** Will present the Analyte Maintenance List in
single-select mode.

\[Analyte\] Group

\[Code\] **Go To** Will present the Analyte Group Maintenance List in
single-select mode.

\[Violation\] Type

**Go To** Will present the Violation Type Maintenance List in
single-select mode.

**Search**

> The user's current Water System Group/Regulating Agency will be used
> as an implied search criterion in all searches for Violation records.
> This means that the software will retrieve only violations linked to a
> water system that is linked to the user's current Water System
> Group/Regulating Agency. If an exact Water System No. is entered, the
> software will validate that it belongs to the user's current Water
> System Group/Regulating Agency.

-   When searching by Violation the following options will be available:

> -- exact match on Water System No
>
> -- exact match on Violation Year
>
> -- exact match on Water System No. and Violation Year
>
> -- exact match on Water System No., Violation Year, and FedRep ID

-   When searching by Analyte, Violation Type, Current Status, and Date
    Range, the following options will be available:

> -- exact match on Analyte Code
>
> -- exact match on Analyte Group Code
>
> -- exact match on Violation Type
>
> -- exact match on Violation Status
>
> -- violation's Determination Date greater than or equal to
> Determination Date Range begin date
>
> -- violation's Determination Date less than or equal to Determination
> Date Range end date
>
> -- violation's Determination Date greater than or equal to
> Determination Date Range begin date and less than or equal to
> Determination Date Range end date
>
> -- exact match on Analyte Code and violation type
>
> -- exact match on Analyte Code and Violation Status
>
> -- exact match on Analyte Code and violation's Determination Date
> greater than or equal to Determination Date Range begin date
>
> -- exact match on Analyte Code and violation's Determination Date less
> than or equal to Determination Date Range end date
>
> -- exact match on Analyte Code and violation's Determination Date
> greater than or equal to Determination Date Range begin date and less
> than or equal to Determination Date Range end date
>
> -- exact match on Analyte Code, violation type, and violation status
>
> -- exact match on Analyte Code, violation type, and violation's
> Determination Date greater than or equal to Determination Date Range
> begin date
>
> -- exact match on Analyte Code, violation type, and violation's
> Determination Date less than or equal to Determination Date Range end
> date
>
> -- exact match on Analyte Code, violation type, and violation's
> Determination Date greater than or equal to Determination Date Range
> begin date and less than or equal to Determination Date Range end date
>
> -- exact match on Analyte Code, violation status, and violation's
> Determination Date greater than or equal to Determination Date Range
> begin date
>
> -- exact match on Analyte Code, violation status, and violation's
> Determination Date less than or equal to Determination Date Range end
> date
>
> -- exact match on Analyte Code, violation status, and violation's
> Determination Date greater than or equal to Determination Date Range
> begin date and less than or equal to Determination Date Range end date
>
> -- exact match on Analyte Code, violation type, violation status and
> violation's Determination Date greater than or equal to Determination
> Date Range begin date
>
> -- exact match on Analyte Code, violation type, violation status and
> violation's Determination Date less than or equal to Determination
> Date Range end date
>
> -- exact match on Analyte Code, violation type, violation status and
> violation's Determination Date greater than or equal to Determination
> Date Range begin date and less than or equal to Determination Date
> Range end date
>
> -- exact match on Analyte Group Code and violation type
>
> -- exact match on Analyte Group Code and Violation Status
>
> -- exact match on Analyte Group Code and violation's Determination
> Date greater than or equal to Determination Date Range begin date
>
> -- exact match on Analyte Group Code and violation's Determination
> Date less than or equal to Determination Date Range end date
>
> -- exact match on Analyte Group Code and violation's Determination
> Date greater than or equal to Determination Date Range begin date and
> less than or equal to Determination Date Range end date
>
> -- exact match on Analyte Group Code, violation type, and violation
> status
>
> -- exact match on Analyte Group Code, violation type, and violation's
> Determination Date greater than or equal to Determination Date Range
> begin date
>
> -- exact match on Analyte Group Code, violation type, and violation's
> Determination Date less than or equal to Determination Date Range end
> date
>
> -- exact match on Analyte Group Code, violation type, and violation's
> Determination Date greater than or equal to Determination Date Range
> begin date and less than or equal to Determination Date Range end date
>
> -- exact match on Analyte Group Code, violation status, and
> violation's Determination Date greater than or equal to Determination
> Date Range begin date
>
> -- exact match on Analyte Group Code, violation status, and
> violation's Determination Date less than or equal to Determination
> Date Range end date
>
> -- exact match on Analyte Group Code, violation status, and
> violation's Determination Date greater than or equal to Determination
> Date Range begin date and less than or equal to Determination Date
> Range end date
>
> -- exact match on Analyte Group Code, violation type, violation status
> and violation's Determination Date greater than or equal to
> Determination Date Range begin date
>
> -- exact match on Analyte Group Code, violation type, violation status
> and violation's Determination Date less than or equal to Determination
> Date Range end date
>
> -- exact match on Analyte Group Code, violation type, violation status
> and violation's Determination Date greater than or equal to
> Determination Date Range begin date and less than or equal to
> Determination Date Range end date
>
> -- exact match violation type, violation status and violation's
> Determination Date greater than or equal to Determination Date Range
> begin date
>
> -- exact match on violation type, violation status and violation's
> Determination Date less than or equal to Determination Date Range end
> date
>
> -- exact match on violation type, violation status and violation's
> Determination Date greater than or equal to Determination Date Range
> begin date and less than or equal to Determination Date Range end date
>
> -- exact match on violation status and violation's Determination Date
> greater than or equal to Determination Date Range begin date
>
> -- exact match on violation status and violation's Determination Date
> less than or equal to Determination Date Range end date
>
> -- exact match on violation status and violation's Determination Date
> greater than or equal to Determination Date Range begin date and less
> than or equal to Determination Date Range end date
>
> -- exact match on violation type and violation's Determination Date
> greater than or equal to Determination Date Range begin date
>
> -- exact match on violation type and violation's Determination Date
> less than or equal to Determination Date Range end date
>
> -- exact match on violation type and violation's Determination Date
> greater than or equal to Determination Date Range begin date and less
> than or equal to Determination Date Range end date

-   Search with no filtering criteria. If the user opts not to specify
    anything on the search page, the user's current Water System
    Group/Regulating Agency will still be used in retrieving records
    that will be displayed in the Violation Maintenance List.

**Clear** Will clear all input fields on the page so the user may enter
new search criteria. (The two-character state code of the Water System
No. will not be cleared and will be reset to the default installation
state code.)

**Cancel** Will close the page and return to the invoking page.

**Help** Will invoke online Help for this page.

####  Violation Maintenance List

The Violation Maintenance List (Exhibit 7-78) will be invoked in most
cases by the Violation Search page and list the violations matching the
search criteria the user enters or from various other pages in the form
of a violation selection list.

If the list is invoked from the Enforcement Action Maintenance or the PN
Violation Association List page, it will be in multi-select mode. Only
the Edit/Select item under Edit will be available. The list will be
filtered for violations associated to the supplied water system. The
View/Search will be enabled but when the Violation Search page is
presented, the Water System No. and **Go To** button will be
pre-populated and protected. The **Clear** button on the Violation
Search page will not remove the protected Water System No. This way the
search can still be utilized to focus the resulting list of violations
to less then the 1000 list limit.

If the list is invoked from the Water System Modification page, the list
will be presented in maintenance mode and Edit/Select will not be
available. The list of violations will be filtered by the supplied Water
System No. provided from the Water System Modification page. The
View/Search will be enabled but when the Violation Search page is
presented, the Water System No. and **Go To** button will be
pre-populated and protected. The **Clear** button on the Violation
Search page will not remove the protected Water System No. This way the
search can still be utilized to focus the resulting list of violations
to less then the 1000 list limit.

If the list is invoked from the CDS Candidate Violation Migration
Complete dialog box (Section 10), the list will be presented in
maintenance mode and Edit/Select will not be available. The list of
violations will be filtered by the supplied initial User ID and with
initial timetamp greater than or equal to the supplied initial timestamp
(the intent is to filter the list to the same violations that the user
just migrated). (R0128:A.7.6.2.2.a)

The list box will display the following fields: Violation Year, FedRep
ID, Status, Vio. Type, Analyte Code, State Vio Prd Begin Date, State Vio
Prd End Date, Water System No., Water System Name, WSF State Asgn ID,
Fed Vio Prd Begin Date, Fed Vio Prd End Date, Package Number, Report
Pckgd Vio?, Monitoring Period, Analyte Name, Analysis Result/UOM,
Determination Date.

The list of violations will exclude those in deleted ("D") status unless
the invoking page specifically indicates that they should be listed.

[Violation Group's]{.underline} [Individual Violations]{.underline}
[List Box]{.underline} (R0029:A.7.6.2.2.b)

This list box will enable the users to view (for violation group) the
individual violations with their individual Analytes and individual
Violation IDs. It will support multi-select in order to support the
ability to change the Report to Fed value. (Event 12537:B.7.6.2.2.a)

When a violation group is highlighted in the Violations list box, the
Violation Group's Individual Violations list box will display any hidden
individual violations that comprise the highlighted violation group.
When no violation group is highlighted or when more than one violation
group is highlighted, the list box should be empty.

The Report to Fed column will display an 'N' when the indicator is set
to 'N', and a 'Y' when it is set to either 'Y' or spaces. (Event
12537:B.7.6.2.2.b)

List Columns: FedRep ID, Analyte Code, Analyte Name, Report to Fed
(Event 12537:B.7.6.2.2.c)

Default Sort Order: ascending FedRep ID

*Number of rows*

*Displayed:* This proctected field will show the total number of
individual violations displayed in the list box associated to the
highlighted violation group.

[Menu Items]{.underline}:

**File**

> *Exit* Selecting **File/Exit** will return the user to the
> *SDWIS/STATE Home Page*.

  ---------------------------------------------------- ----------------------------------------------------
  ![](media/image1.png){width="1.5979166666666667in"   ![](media/image87.png){width="4.71875in"
  height="4.325in"}                                    height="4.24375in"}

  ---------------------------------------------------- ----------------------------------------------------

[]{#__RefHeading___Toc139861156 .anchor}**Exhibit 7-78.** Violation
Maintenance List

**Edit**

> *Add* Selecting **Edit/Add** will display the Violation Maintenance
> page in Add mode. This option will be enabled regardless of a
> selection having been made in the list area.
>
> If a Water System No. was provided as search criteria or other input
> into the creation of this list, the page will flow directly to the
> Violation Maintenance page in add-mode with the Water System No. and
> name displayed. If no Water System No. was provided as input into the
> maintenance list, the water system search page will be presented so
> that a water system can be selected prior to the presentation of the
> Violation Maintenance page.
>
> *Apply Standard*
>
> *Response* Will ensure that all selected Violations are in status of
> either validated (V) or preliminary (P). If not, the error message
> will be **One or more of the selected violations are not in V or P
> status.**
>
> If all selections are in the appropriate status, the Standard Response
> Maintenance List (Exhibit 7-79) will be presented in single-select
> mode where a selection can be made. The list will display only
> standard responses for violations (i.e., Standard Response_Type_Code =
> "V). When a selection has been made, a confirmation page will be
> presented asking **Do you want to associate this Standard Response to
> these Violations?** The dialog will display the Standard Response Name
> and a list of the selected violations including the water system,
> violation type, year, FedRep ID, state violation period begin date and
> state violation period end date.
>
> [Buttons]{.underline}:
>
> **Yes** The following actions will be performed for each selected
> violation:
>
> An enforcement action will be created and associated to the violation
> for each action type associated with the standard response.
>
> If an enforcement action of action type SIE or EIE was created, a PN
> Schedule activity will be created and associated to the new
> enforcement action for each activity type associated to the selected
> Standard Response.
>
> The dialog will close and return to the Violation Maintenance List.
>
> **No** Will close the dialog and return to the Violation Maintenance
> List with no further action performed.
>
> This menu item will only be available if one or more violations have
> been selected in the list area.
>
> ![](media/image88.png){width="5.999305555555556in"
> height="3.2805555555555554in"}

[]{#__RefHeading___Toc139861157 .anchor}**Exhibit 7-79.** Apply Standard
Response

> *Change* Selecting **Edit/Change** will display the Violation
> Maintenance page with the selected violation available for change.
> This option will be enabled only when one and only one violation has
> been selected.
>
> *Change*
>
> *Report to Fed* Selecting **Edit/Change** **Report to Fed** will
> toggle the Report to Fed value for the selected Individual Violations
> of a violation group. This menu item will only be enabled when one or
> more individuals has been highlighted in the Violation Group's
> Individual Violations group box.
>
> For each selected Invidual Violation, if the Report to Fed indivicator
> is currently set to 'Y' or spaces, update the violation to set it to
> 'N'. If the Report to Fed indicator is currently set to 'N', update
> the violation to set it to 'Y'. (Event 12537:B.7.6.2.2.d)
>
> *Delete* Selecting **Edit/Delete** will display either the Delete
> Violation confirmation page (Exhibit 7-80) or the Delete Violation
> Group confirmation page (Exhibit 7-80a) for the selected violation.
> This option will be enabled only when one and only one violation has
> been selected. If the violation selected for deletion is associated to
> an enforcement action or sample schedule or result or MDBP summary or
> facility analyte level or PN activity or compliance schedule activity
> or deficiency or sampling point, in addition to changing the violation
> status to deleted, remove all the association(s). In addition, if the
> violation is associated to an enforcement action and is the only
> violation associated to the enforcement action, change the status of
> the enforcement action to Rejected and the Status Date of the
> enforcement action to today's date.

[Buttons]{.underline}:

> **Yes** Will complete the following database actions for an individual
> violation:

-   Update the VIOLATION setting the status_code to 'D' and the
    d_last_update_timestamp and d_userid_code set to current values.

-   If a VIOLATION_STATUS record already exists with type_code = 'D' it
    will be updated with the determination date, d_last_update_timestamp
    and d_userid_code set to current values.

> ![](media/image89.png){width="5.997916666666667in"
> height="3.884027777777778in"}

[]{#__RefHeading___Toc139861158 .anchor}**Exhibit 7-80**. Delete
Violation

> If no VIOLATION_STATUS record exists with type_code = 'D', one will be
> created and associated to the VIOLATION. The type_code will be set to
> 'D' and the determination date, d_last_update_timestamp and
> d_userid_code will be set to current values.
>
> Any associated SAMPLE_SCHEDULE will be disassociated.
>
> Each associated ENFORCEMENT_ACTION associated via the
> VIOLATION_END_ACTION_ASGMT will be disassociated by the deletion of
> the VIOLATION_END_ACTION_ASGMT. If the disassociation of this
> violation from the ENFORCEMENT_ACTION leave the ENFORCEMENT_ACTION
> with no associations to any VIOLATION, the ENFORCEMENT_ACTION will be
> updated with its status_code set to rejected (R) and its status_date
> to current date.
>
> Each associated SAMPLE_ANALYTICAL_RESULT via
> VIOLATION_SAMPLE_RESULT_ASGMT will be disassociated by the deletion of
> the VIOLATION_SAMPLE_RESULT_ASGMT.
>
> Each associated MDBP_SUMMARY will be disassociated.
>
> Each associated DEFICIENCY will be disassociated.
>
> Each associated FACILITY_ANALYTE_LEVEL will be disassociated.
>
> Each associated PUBLIC_NOTIFICATION_ACTIVITY will be disassociated.
>
> Each associated SCHEDULE_ACTIVITY will be disassociated.
>
> Each associated SAMPLING_POINT via VIOLATION_SAMPLING_POINT_ASGMT will
> be disassociated by the deletion of the
> VIOLATION_SAMPLING_POINT_ASGMT.
>
> Or for a Violation Group:
>
> Disassociated any associated Sample Schedule Group
>
> For each VIOLATION within the VIOLATION GROUP:
>
> -- Update the VIOLATION setting the status_code to 'D' and the
> d_last_update_timestamp and d_userid_code set to current values.
>
> -- If a VIOLATION_STATUS record already exists with type_code = 'D' it
> will be updated with the determination date, d_last_update_timestamp
> and d_userid_code set to current values.
>
> -- If no VIOLATION_STATUS record exists with type_code = 'D', one will
> be created and associated to the VIOLATION. The type_code will be set
> to 'D' and the determination date, d_last_update_timestamp and
> d_userid_code will be set to current values.
>
> -- Any associated SAMPLE_SCHEDULE will be disassociated.
>
> -- Each associated ENFORCEMENT_ACTION associated via the
> VIOLATION_END_ACTION_ASGMT will be disassociated by the deletion of
> the VIOLATION_END_ACTION_ASGMT. If the disassociation of this
> violation from the ENFORCEMENT_ACTION leave the ENFORCEMENT_ACTION
> with no associations to any VIOLATION, the ENFORCEMENT_ACTION will be
> updated with its status_code set to rejected (R) and its status_date
> to current date.
>
> -- Each associated SAMPLE_ANALYTICAL_RESULT via
> VIOLATION_SAMPLE_RESULT_ASGMT will be disassociated by the deletion of
> the VIOLATION_SAMPLE_RESULT_ASGMT.
>
> -- Each associated MDBP_SUMMARY will be disassociated.
>
> -- Each associated DEFICIENCY will be disassociated.
>
> -- Each associated FACILITY_ANALYTE_LEVEL will be disassociated.
>
> -- Each associated PUBLIC_NOTIFICATION_ACTIVITY will be disassociated.
>
> -- Each associated SCHEDULE_ACTIVITY will be disassociated.
>
> -- Each associated SAMPLING_POINT via VIOLATION_SAMPLING_POINT_ASGMT
> will be disassociated by the deletion of the
> VIOLATION_SAMPLING_POINT_ASGMT.
>
> ![](media/image90.png){width="5.9944444444444445in"
> height="3.701388888888889in"}

[]{#__RefHeading___Toc139861159 .anchor}**Exhibit 7-80a.** Delete
Violation Group

> The page will close and return to the Violation Maintenance List where
> this violation will be displayed with status of 'D'.
>
> **No** Will abort the delete request and return to the Violation
> Maintenance page.
>
> *Deselect* Will remove all highlighting from the selected violations
> in the list area.
>
> *Package* The **Edit/Package** menu item will be enabled only if more
> than one violation in the Violation Maintenance List has been
> selected. Selecting **Edit/Package** will set the Package Number for
> each selected violation to the same auto-generated value and set
> REPORT_PACKAGED_VIO_TO_FED_FLG to Y. If all the selected violations'
> Package Numbers are not the same (excluding 0), the following error
> message will be invoked: **Cannot package. You selected violations
> with different package numbers.** The intention here is to prevent a
> user from packaging a violation that has already been packaged with
> another set of violations. Users, however, must be able to add new
> violations (i.e., violations with 0 for their package number) to an
> existing package. The Violation Maintenance List will keep the user's
> highlighted violations. (Note: Zero is excluded because if a user
> wishes to add one or more new violations to the package, the
> violations selected to be part of the package will have 0 in field
> PACKAGE_NUMBER.
>
> If one or more selected violations are NOT duplicate by data
> (duplicate check in this case should be an exact match on Water System
> No., Violation Type Code (actual Type Code), Federal Violation Period
> Begin Date and Federal Reportable Analyte Code (using the analyte
> associated to the violation type if it exists, else using the analyte
> associated to the violation), the following advisory message will be
> invoked: **One or more selected violations do not have the same Water
> System Number, Violation Type Code, Federal Violation Period Begin
> Date** **and Federal Reportable Analyte Code. If you still want to
> proceed to package the violations, press the Continue button.
> Otherwise, press the Cancel button to return to the Violation
> Maintenance List.** Pressing **Continue** will proceed with the
> package request. Pressing **Cancel** will stop the package request and
> return the user to the current page. (R0016:A.7.6.2.2.c)
>
> After successful packaging an advisory, **The Violation(s) were
> successfully packaged,** will be presented.
>
> *Reject* Selecting **Edit/Reject** will display the Violation
> Rejection Remarks Page. The user can select multiple violations to
> reject

*Remove from*

> *Package* Selecting **Edit/Remove from Package** will reset
> PACKAGE_NUMBER to 0 and REPORT_PACKAGED_VIO_TO_FED_FLG to spaces.
> After successful removal, an advisory: **The Violation(s) were
> successfully removed from the package.** will be presented.

*Select* Will return the selection violation(s) to the invoking page.
This option will only be available when invoked as a selection list and
at least one violation has been selected in the list area.

> When the user chooses **Edit/Select** the selected violations will be
> returned to the invoking page.

*Update Year/Reason/Comments*

Will be enabled only when one or more violations are selected in the
list. Selecting **Edit/Specify User Attributes** will display the
Specify User Attributes dialog box (Exhibit 7-80b). (R0123:A.7.6.2.2.a)

![](media/image91.png){width="4.510416666666667in"
height="4.677083333333333in"}

**Exhibit 7-80b.** Specify User Attributes

[Entry Fields:]{.underline}

*Specify* *Violation* *Year*

*for* *all selected*

*Violation(s)* This checkbox will be default valued to "unchecked." If
the user wants to enter violation year, the user will need to "check"
this checkbox. If this checkbox is "unchecked", the Violation Year field
will become protected and processing will ignore any value entered in
that field.

*Violation*

*Year* This field will be optional.

*Specify* *Status Reason*

*for* *all selected*

*Violation(s)* This checkbox will be default valued to "unchecked." If
the user wants to specify status reason, the user will need to "check"
this checkbox. If this checkbox is "unchecked", the Status Reason will
become protected and processing will ignore any value selected in the
Status Reason dropdown list.

*Status Reason* A user-defined code of why a violation has the status
indicated. The permitted values available from the dropdown list will be
retrieved from the PERMITTED_VALUE table with code_name of VIOSTATRSN.

*Specify* *Comments*

*to all selected*

*Violation(s)* This checkbox will be default valued to "unchecked." If
the user wants to enter comments, the user will need to "check" this
checkbox. If this checkbox is "unchecked", the Comments field will
become protected and processing will ignore any value entered in that
field.

*Comments* The user may optionally enter any desired comments. If valued
and the specify comments checkbox is on, it will be concatenated to the
existing value if any. The following literal will be displayed beneath
the Comments field: **(Any comments entered will be concatenated to the
existing** **violation comments** **with a space in between.)**

[Buttons:]{.underline}

**OK** If all the checkboxes are off, will close the dialog box. If at
least one of the checkboxes is on, will trigger the following actions
for each violation selected:

For Individual Violation:

-   If the Violation Year checkbox is checked, the violation year will
    be updated with the entered value.

-   If the Status Reason checkbox is checked, the status reason will be
    updated with the selected value.

-   If the Comments checkbox is checked, the comments will be updated
    with the concatenation of the existing value and the entered value.

-   The last update timestamp and userid code will be set to the current
    values.

> Or for a Violation Group:

-   If the Violation Year checkbox is checked, the violation year will
    be updated with the entered value.

-   The last update timestamp and userid code will be set to the current
    values.

-   For each hidden violations within the violation group, perform the
    same actions specified in the Individual Violation above.

    **Cancel** When the user presses this button, the software will
    disregard data entered and return the user to the Violation
    Maintenance List with no action taken on the selected violation(s).

    **Help** Will open the online Help for this page.

> *Validate* Selecting **Edit/Validate** will display the Violation
> Validation page. The user can select multiple violations to validate.
> Only violations that are not validated can be processed using this
> function. If one or more violations selected for validation is already
> validated, the following error message will be invoked: **One or more
> selected violations are already validated.**

**View**

> *Filter by* Selecting **View/Filter by** will let the user filter by
> the same fields listed for **View/Sort**. Use of this menu item will
> enable **View/Refresh**.
>
> *Refresh* Selecting **View/Refresh** will remove the filter and
> refresh the listing to the original search criteria. The menu item
> will then become disabled.
>
> *Search* Selecting **Edit/Search** will invoke the Violation Search
> page. Prior search criteria will be present. Use the **Clear** button
> to remove all values, unless specifically restricted by a
> pre-determined page flow.
>
> *Sort* Selecting **View/Sort** will invoke the standard Sort page with
> the following fields available for sorting: FedRep ID., Violation
> Year, Status, Vio. Type, Analyte Code, State Violation Period Begin
> Date, State Violation Period End Date, Federal Violation Period Begin
> Date, Federal Violation Period End Date, Water System No., Water
> System Name, WSF State Asgn No., Monitoring Period, Analyte Name,
> Analyte Result/UM, Determination Date, Package Number, Report Pckgd
> Vio?.

[Buttons:]{.underline}

**Menu Items** Will present the standard menu items dialog box.

**Scroll Buttons** Will scroll the list box in the direction of the
arrow displayed on the button.

[Protected Fields]{.underline}:

*WS Group Used/*

*Regulating Agency*

*Used* This protected field will show the user's current Water System
Group Name or Regulating Agency depending on which the user has made
current. The software will dynamically change the prompt depending on
whether Water System Group Name or Regulating Agency is current. The
prompt will be "WS Group Used" if the user's current Water System Group
is valued, otherwise the prompt will be "Regulating Agency Used."

*Number of rows*

*resulting from search*

*criteria used:* This protected field will show the total number of rows
that met the search criteria.

*Number of rows*

*displayed:* This protected field will show the total number of rows
that displayed in the list.

*Number of rows*

*selected:* This protected field will show the total number of rows
highlighted in the list.

[Default Sort Order:]{.underline} State violation period begin date
descending, State violation period end date descending, Water System
name ascending.

[Toolbar Icons]{.underline}:

![](media/image23.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Water System Information page, which will display basic inventory
information for the water system associated with the selected record.
This icon will be disabled when no record is highlighted.

![](media/image39.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Historical Sampling Information page, which will display protected
information on samples collected for the water system. This icon will be
disabled when no record is highlighted.

![](media/image24.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Display Points of Contact page, which will display a protected list of
legal entities and individuals (such as operators, engineers, etc.)
associated with the water system linked to the selected record. This
icon will be disabled when no record is highlighted.

####  Violation Validation Pages

Highlighting one or more violations and then selecting Edit/Validate
from the Violation Maintenance List invokes the Violation Validation
Page as shown below in Exhibit 7-81. Highlighting one or more violations
and then selecting Edit/Reject from the Violation Maintenance List
invokes the Violation Rejection Remarks Page as shown in Exhibit 7-82.

![](media/image92.png){width="5.998611111111111in"
height="2.6020833333333333in"}

[]{#__RefHeading___Toc139861161 .anchor}**Exhibit 7-81.** Violation
Validation

[Entry Fields]{.underline}:

*Apply Standard Response*

*To all selected*

*Violation(s)* This checkbox will enable the Standard Response **Go To**
button where a standard response can be selected for application to all
violations being validated.

[Buttons]{.underline}:

**Standard Response**

**Go To** The Standard Response Maintenance List is invoked in
single-select mode. The list will display only standard responses for
violations (i.e., Standard Response_Type_Code = "V). The name of the
selected standard response will be displayed upon return.

**Validate** For each violation selected for validation:

-   The VIOLATION will be updated with d_current_status_code set to
    validated 'V' and the d_last_update_timestamp and d_userid_code set
    to current values.

-   If a VIOLATION_STATUS with type_code 'V' already exists for the
    violation, its d_last_update_timestamp and d_userid_code will be set
    to current values. If none is found, a new VIOLATION_STATUS will be
    created with type_code set to validated ('V'),
    d_last_update_timestamp, d_userid_code and determination_date set to
    current values. The TMNVIOST_is_number will be set from the next
    number in the TINEISN table with name = TMNVIOST.

-   If the selection is a violation group, each violation within the
    violation group will have the above processing applied in addition
    to the violation group d_last_update_timestamp and d_userid_code
    being set to current values.

-   If the Apply Standard Response checkbox is checked, an enforcement
    action will be created and associated to the violation for each
    action type associated with the standard response.

-   If an enforcement action of action type SIE or EIE was created, a PN
    Schedule activity will be created and associated to the new
    enforcement action for each activity type associated to the selected
    Standard Response.

> The page will close and return to the Violation Maintenance List.

**Cancel** Pressing the **Cancel** button will close the page without
changing the Status, then either flow back to the previous page if the
Violation processed was the last one selected for validation, or flow to
the Violation Validation page populated with the next violation record
selected if there is another Violation that was initially selected for
validation.

![](media/image93.png){width="5.9944444444444445in" height="3.44375in"}

[]{#__RefHeading___Toc139861162 .anchor}**Exhibit 7-82.** Violation
Rejection Remarks

[Entry Fields]{.underline}:

*Remarks* A free-form text box where comments can be made documenting
the business case for rejecting the violation. These remarks will be
updated on all violations selected for rejection.

[Buttons]{.underline}:

**Reject** For each violation selected for rejection:

-   The VIOLATION will be updated with d_current_status_code set to
    validated 'R' and the d_last_update_timestamp and d_userid_code set
    to current values. The remarks_text will be updated with the entered
    text.

-   If a VIOLATION_STATUS with type_code 'R' already exists for the
    violation, its d_last_update_timestamp and d_userid_code will be set
    to current values. If none is found, a new VIOLATION_STATUS will be
    created with type_code set to validated ('R'),
    d_last_update_timestamp, d_userid_code and determination_date set to
    current values. The TMNVIOST_is_number will be set from the next
    number in the TINEISN table with name = TMNVIOST.

-   If the selection is a violation group, each violation within the
    violation group will have the above processing applied in addition
    to the violation group d_last_update_timestamp and d_userid_code
    being set to current values.

**Cancel** Pressing the **Cancel** button will close the page without
changing the Status, then either flow back to the previous page if the
Violation processed was the last one selected for validation, or flow to
the Violation Validation page populated with the next violation record
selected if there is another Violation that was initially selected for
validation.

####  Violation Maintenance Page

The Violation Maintenance page (Exhibit 7-83) will be used to maintain
both individual and group violations.

Group violations will allow users to maintain what appears to be a
single violation record for a group of analytes/contaminants. For
instance, a monitoring violation for the 21 regulated volatile organic
compounds (VOC) could be entered and maintained in SDWIS/STATE as if it
were one violation. In reality, a violation will be created in the
background for each of the analytes in the analyte group. A change to
the group violation record will change all the individual violation
records linked to it.

An individual violation record will be created by selecting an analyte
code and other relevant fields on the page. Both individual and members
of group violations can be linked to enforcement actions and sample
schedules. Only individual violations (not members of group violations)
can be linked to sample analytical results. A standard response may be
applied to both individual and members of group violations.

[Protected Fields:]{.underline}

*Water System No.* Water System No. selected by the user on the previous
page.

*\[Water System\]*

*Name* Name of Public Water System selected by the user on the previous
page.

*FedRep ID*

> *\[EXSN\]* Maps to EXTERNAL_SYS_NUM (EXSN) in VIOLATION. The EXSN for
> each violation will be unique by water system. When a new violation is
> added, the software will check entity EXTERNAL_SYSTEM_NUMBER (table
> TINEXSN) (where Table Name is TMNVIOL and related to current Water
> System) to determine the next EXSN.

*\[Violation Type\]*

*Name* Name of user-specified violation type.

*\[Violation Type\]*

*Category* Violation Category that classifies the type of violation
(e.g., MCL, MON, PN, RPT, SS, TT, and V/E).

*Monitoring*

*Violation Type* This field maps to attribute SAMPLE_TYPE_CODE in
VIOLATION_TYPE.

*Package Number* This field maps to attribute PACKAGE_NUMBER in
VIOLATION. This attribute will be only valued for violations that have
been packaged using Violation Maintenance List and Package Violations

*\[WSF Name\]* Name of user-specified WSF.

*Created by/at* The userid and timestamp for when the Violation record
was created.

*Last Updated by/at* The userid and timestamp for when the Violation
record was last updated.

  ---------------------------------------------------- ------------------------------------------------------
  ![](media/image1.png){width="1.4951388888888888in"   ![](media/image94.png){width="4.669444444444444in"
  height="8.127777777777778in"}                        height="8.135416666666666in"}

  ---------------------------------------------------- ------------------------------------------------------

[]{#__RefHeading___Toc139861163 .anchor}**Exhibit 7-83.** Violation
Maintenance

[Entry Fields]{.underline}:

*Violation Year* Maps to FISCAL_YEAR and is a four digit field. In ADD
mode, this field defaults to the Federal Fiscal Year in which the
Determination Date falls. The Federal Fiscal Year starts on October 1 of
the previous calendar year and runs through September 30 of the calendar
year that matches the fiscal year (e.g., 10/1/2001 to 9/30/2002 is the
2002 federal fiscal year). The default can be changed.

> In previous Releases this attribute was reported to the federal
> database. Since it is not longer reported advisory messages regarding
> the changing of this attribute have been eliminated.
>
> The Violation Year is optional.

*Determination Date* Determination Date is the date the violation was
determined or created.

> Determination Date will be a required field.

*Data*

*Origin* Data Origin will be a required field. Permitted values will be:

> H - Headquarters.
>
> R - Region.
>
> S - State.
>
> If the Primacy Agency is defined as type Region (i.e.,
> GOVERNMENT_AGENCY_TYPE_CODE = "RG" where
> GOVERNMENT_AGENCY_PRIMACY_INDICATOR_CODE = "Y"), the DATA_ORIGIN_CODE
> default value will be "R." If the Primacy Agency is defined as type
> State (ST), the DATA_ORIGIN_CODE default value will be "S."

Violation Type Group Box:

*\[Violation\] Type* The user may enter a valid Violation Type or use
the **Go To** button to display the Violation Type Maintenance List in
single-select mode.

> Type will be a required field.
>
> As the user enters/changes a value and tabs off the Violation Type
> field, check that the supplied Violation Type is valid. If the
> Violation Type entered is valid but there is more than one record with
> the entered value, invoke the Violation Type Maintenance List and
> display all the violation type records that match the entered value,
> forcing the user to pick the appropriate violation type record. If
> there is only one violation type record that matches the value
> entered, then populate the retrieved Violation Type's Name, Category,
> and Monitoring Violation Type value in the corresponding, protected
> fields.
>
> If the supplied Violation Type does not exist in the database, do not
> supply a message, but directly invoke the Violation Type Maintenance
> List from which the user may select a valid Violation Type.
>
> The other three fields are protected and provide additional
> information about the selected Violation Type. The additional
> information provided is: \[Violation Type\] Name, Category, and
> Monitoring Violation Type. These are carried over from Violation Type.

Analyte Code Group Box:

The prompt for the Analyte Code group box will be blue and underlined to
indicate that mandatory information is required in this group.

*Individual \[Analyte Code\]*

> If the Violation Type has not yet been selected, the following error
> message will be invoked: **A Violation Type must be selected before
> picking an Analyte or Analyte Group.**
>
> As the user enters/changes a value and tabs off the Individual
> \[Analyte Code\] field, check that the supplied analyte is valid for
> the selected Violation Type if the supplied Violation Type has
> ownership = 'HQ'.
>
> If entered analyte is associated to the violation type thru TMNVTAA
> and
>
> If TMNVTAA.rule code = \"DENY\", do not accept the entered analyte and
> invoke the analyte maintenance list.
>
> If TMNVTAA.rule code = \"ALLOW\", accept the entered analyte
>
> If entered analyte is not associated to the violation type thru
> TMNVTAA and the violation type is associated to other analytes TMNVTAA
>
> Reject the analyte and present the Analyte Maintenance list for
> selection
>
> Else
>
> Reject the analyte since this violation type does not accept an
> analyte specification.
>
> If it is not or if the analyte is not found at all, the Analyte
> Maintenance List will be presented in single-select mode. The list
> will present only analytes valid for the provided "HQ" violation type
> as follows:
>
> If selected violation type is associated to TMNVTAA with rule code =
> \"DENY\" then list all the analytes in TSAANLYT except those analytes
> that are associated to the given violation type thru TMNVTAA with rule
> code = \"DENY\".
>
> If selected violation type is associated to TMNVTAA with rule code =
> \"ALLOW\" then list all the analytes associated to the given violation
> type thru TMNVTAA with rule code = \"ALLOW\".

If selected violation type has no TMNVTAA records list is empty.

> If the supplied Violation Type is state-owned and the analyte is not
> found, the Analyte Maintenance List will be presented in single-select
> mode. All analyte codes will be presented. On selecting **OK**, the
> software will remove the entered analyte code and return to the
> Violation Maintenance page with the cursor in the \[Violation\] Type
> field.
>
> As the user enters/changes a value and tabs off the Individual
> \[Analyte Code\] field, the \[Analyte\] Group \[Code\] field will be
> disabled. Either Individual \[Analyte Code\] or \[Analyte\] Group
> \[Code\] must be supplied; both may not be supplied. If the provided
> value is not a valid Analyte Code or is not valid Analyte pairing with
> the provided violation type, no error message will be provided and the
> Analyte Maintenance List will be presented in single-select mode. If
> the violation type provided is ownership ="HQ", only Analyte Codes
> associated to the selected Violation type will be listed. (via the
> TMNVTAA table). For state-owned violation types, all analytes will be
> listed.
>
> This field will be protected in change mode if the violation is a
> group violation. For an individual violation the analyte code can be
> changed.

*\[Analyte\] Group*

*\[Code\]*

> As the user enters/changes a value and tabs off the \[Analyte\] Group
> \[Code\] field, check that the supplied analyte group is valid. If the
> supplied analyte group does not exist in the database, do not supply a
> message but directly invoke the Analyte Group Maintenance List from
> where the user may select a valid analyte group.
>
> As the user enters/changes a value and tabs off the \[Analyte\] Group
> \[Code\] field, the Analyte Code field will be disabled. Either
> Analyte Code or Analyte Group Code must be supplied; both may not be
> supplied.
>
> If the specified violation type has an associated
> DATA_COMPLETENESS_RULE with name = 'ANALYTE GROUP' and code =
> 'RESTRICT', protect the analyte group code field and its **Go To**
> button. This indicates that the violation type selected does not allow
> use of analyte group codes. If the violation type changes the
> protection should be removed.
>
> This field will be protected in change mode.

State Violation Period Group Box:

State Violation Period Begin date will be mandatory.

SDWIS/STATE will automate entry of the following state violation period
information:

If the user enters a \[State Violation Period\] Begin Date and Duration
on the Violation Maintenance page and tabs from one of those fields, the
software will check if a monitoring period exists for that time period
and automatically populate the \[State Violation Period\] End Date and
Mon. Period fields accordingly.

If the user enters a \[State Violation Period\] Begin Date and a \[State
Violation Period\] End Date that matches an existing monitoring period,
the software will automatically populate the Mon. Period and Duration
fields.

If the user enters an existing monitoring period from the selection
list, the software will automatically populate all other fields in the
State Violation Period group box.

The following rules also apply to how a State Violation period can be
set up for a violation:

If the \[State Violation Period\] Begin Date is entered with a Duration
equal to or greater than one month, the \[State Violation Period\] Begin
Date must be the first day of the month.

If the \[State Violation Period\] End Date is entered with a Duration
equal to or greater than one month, the \[State Violation Period\] End
Date must be the last day of the month.

If a \[State Violation Period\] Begin Date, \[State Violation Period\]
End Date, and Duration are entered, the Duration must match the time
period between the beginning and ending dates.

The user must either enter one date and a Duration, a \[State Violation
Period\] Begin Date and a \[State Violation Period\] End Date, or the
name of a Monitoring Period to define a state violation period.

A standard state violation period begins on the first day of a month and
ends on the last day of a month.

*Begin Date* The user must enter the first day of the violation period.

> This will be a required field. If not valued, the following error
> message will be invoked: **Violation Period Begin Date is required for
> this violation type.** A calendar function will allow the user to more
> easily enter dates for this field.
>
> (B.7.6.2.4.e)

*Duration* The user may enter a valid violation period duration or
select a value from the dropdown list. Permitted values for this field
will be:

> Spaces.
>
> 1T=One Time.
>
> HR=One Hour.
>
> 4H=4 Hours.
>
> DL=Daily.
>
> WK=Week.
>
> 2W = 2 Weeks (R2013:A.7.6.2.4.a)
>
> MN=Month.
>
> QT=Quarter.
>
> 2M = 2 Months (R3017:A.7.6.2.4.b)
>
> 6M=6 Months.
>
> 18M = 18 Months
>
> YR=Year.
>
> 2Y=2 Years.
>
> 3Y=3 Years.
>
> 4Y=4 Years.
>
> 5Y=5 Years.
>
> 6Y=6 Years.
>
> 7Y=7 Years.
>
> 8Y=8 Years.
>
> 9Y=9 Years.
>
> 10Y=10 Years.
>
> NA=Not Applicable.

*\[State Violation Period\]*

*End Date* Last day of the state violation period.

*Mon. Period* The user may enter the name of the monitoring period.

-   When the user enters a \[State Violation Period\] Begin Date and
    Duration and tabs from one of those fields, if a monitoring period
    already exists for that time period, then the \[State Violation
    Period\] End Date and Mon. Period fields will be automatically
    populated.

```{=html}
<!-- -->
```
-   When the user enters a \[State Violation Period\] Begin Date and
    then enters a \[State Violation Period\] End Date that matches an
    already existing monitoring period, the other two fields in the
    State Violation Period group box will be automatically populated as
    soon as the user tabs from the \[State Violation Period\] End Date
    field.

```{=html}
<!-- -->
```
-   If the user enters a Mon. Period that already exists or selects a
    Mon. Period from the selection list, all other fields in the State
    Violation Period group box will be automatically populated.

> \- If the user enters a Mon. Period name and data in at least two of
> the other three fields and the data in the other fields match an
> existing monitoring period, then the monitoring name entered will be
> disregarded and overwritten with the monitoring period name of the
> existing Monitoring Period record that matches.
>
> \- If the user does not enter a Mon. Period but does enter data [into
> the duration field]{.underline} and [at least one of the date
> fields]{.underline} and if there is no matching Mon. Period record,
> and the user had entered a name in the name field, then invoke the
> Monitoring Period Maintenance List in single-select mode and with the
> add-function enabled so that a new monitoring period may be added if
> necessary.

*Report to Fed?* This field will map to attribute
REPORT_PACKAGED_VIO_TO_FED_FLG in entity VIOLATION. This attribute will
be visible only for (and available for valuing when Package Number is
greater than 0.)

Federal Violation Period Group Box:

These violation period begin and end dates are the dates that will be
used for federal reporting. The values will be populated using rules
defined for the violation type and in some cases violation type/analyte
combination. The rules will be applied to the values provided in the
State Violation Period fields. For example, for violation type of 02,
analyte code of 1011, the State Periods may be the monthly monitoring
period of 02/01/2005 and 02/28/2005. The guideline for federal reporting
of this violation says the violation period should be the calendar
quarter. Applying the rule to the state periods would set the federal
periods to be 01/01/2005 and 3/31/2005. The default dates are modifiable
by the state. Once modified, SDWIS/STATE will not change a federal
violation period date even if the user subsequently changes a state
violation period date.

VIOLATION_PERIOD_BEGIN_DATE will be mandatoryVIOLATION_PERIOD_END_DATE
will be conditionally optional, depending on the rules defined for the
violation type.

Default values will be determined by:

-   If a VIOLATION_PERIOD_RULE does NOT exist for the specified
    violation type with (effective_begin_date \<= state period begin
    date and (effective_end_date = null or \>= state period begin date))
    and ownership = 'HQ', set the begin date to the State Period begin
    date and the end date to the State Period end date.

-   If a VIOLATION_PERIOD_RULE does exist for the specified violation
    type with (effective_begin_date \<= state period begin date and
    (effective_end_date = null or \>= state period begin date)) and
    ownership = 'HQ'

\- If the VIOLATION_PERIOD_RULE is constrained by an analyte, and the
analyte does not match the specified analyte, look for another
VIOLATION_PERIOD_RULE that does match the analyte. If none is found, set
the begin date to the State Period begin date and the end date to the
State Period end date. If one is found, continue.

\- If the VIOLATION_PERIOD_RULE begin_date_code = 'ST' set the begin
date to the State Period begin date and the end date to the State Period
end date.

\- If VIOLATION_PERIOD_RULE begin_date_code = 'MP', the rule is to use
the monitoring period. If the state periods correspond to a monitoring
period, set the federal periods to the state periods. If the state
periods do not correspond to a monitoring period, use the state period
begin date to find the monthly monitoring period in which the state
period begin date exists. When found set the federal period begin date
to the first date of the monitoring period and the federal period end
date to the last date of the monitoring period.

\- If the VIOLATION_PERIOD_RULE begin_date_code = 'NMP', the rule is to
use the next monitoring period. If the provided StatePeriod Begin and
End dates correspond to a monitoring period, use that monitoring period
and find the next monitoring period of the same type code and set the
federal periods to the begin and end dates of that next monitoring
period. If the state periods do not correspond to a monitoring period,
use the state period begin date to find the monthly monitoring period in
which the state period begin date exists. Then find the next monthly
monitoring period. When found set the federal period dates to the begin
and end dates of that next monitoring period.

\- If the VIOLATION_PERIOD_RULE begin_date_code = 'QT', the rule is to
use the calendar quarter. Use the state period begin date and find the
calendar quarter in which the state period begin date exists. Set both
the federal period begin and end dates to the corresponding quarterly
begin and end dates.

\- If the VIOLATION_PERIOD_RULE begin_date_code = 'MN', the rule is to
use the calendar month. Use the state period begin date and find the
calendar month in which the state period begin date exists. Set both the
federal period begin and end dates to the corresponding monthly begin
and end dates.

\- If the VIOLATION_PERIOD_RULE begin_date_code = 'SS', the rule is to
use the begin and end dates of the sample schedule associated to the
violation. Set both the federal period begin and end dates to the
corresponding sample schedule begin and end dates.

*\[Federal Violation Period\]*

*Begin Date* The violation period begin date to be used in federal
reporting.

This field will be mandatory. The default value will be set according to
the business rules described above.

> Violation type 71 must have violation period begin date of 10/19/1999
> or July 1 of any year greater than 1999. If not, the following error
> message will be invoked: **Violation Period Begin Date must be
> 10/19/1999 or 07/01/YR after 1999.** The Violation Period End Date is
> optional.
>
> Violation type 72 must have violation period begin date greater or
> equal to 10/19/1999. If not, the following error message will be
> invoked: **Violation Period Begin Date must be on/after 10/19/1999.**
> The Violation Period End Date is optional. (B.7.6.2.4.f)

*\[Federal Violation Period\]*

*End Date* The end date of the violation period to be used for Federal
Reporting. If End Date is before Begin Date, the following error message
will be invoked: **Violation Period End Date must be on/after Begin
Date.**

Federal Period End Date is required for specific violation types or
violation type/analyte code combinations.

*\[Violation\] Tier*

*Level* This field will record the Tier Level for certain violation
records. This value will be initially defaulted to the Tier Level from
the violation type record, but the user can change it. This field is
intended to record the Tier Level relative to the Public Notification
Rule.

Water System Facility Group Box:

*WSF State Asgn ID* The user may enter the State Asgn ID of the WSF to
which the violation belongs.

> When assigning a WSF State Asgn ID, a check will be made ensuring that
> any associated Sampling Points are for the same water system facility.
> If a discrepancy is found, an denial advisory will be presented
> indicating that one or more sampling points for a different water
> system facility exists and must be disassociated before the secified
> water system facility can be associated to the violation. When the
> denial advisory is acknowledged, the WSF State Asgn ID field will be
> blank.

Sampling Info Group Box:

*Analysis Result* The numeric measure value of the analysis result.

> This field is required if Violation Type is either 01 or 02. This can
> be determined by checking the DATA_COMPLETENESS_RULE associated to the
> specified violation type with data_element_name = 'ANALYSIS RESULT'
> and rule_code = 'REQUIRE'. (This method should replace the hardcoding
> in action diagram MBS_C_MAINTAIN_VIOLATION.)

*\[Analysis Result*

*Unit of Measure\]* The UOM will be required when Analysis Result is
valued.

> 'Ratio' will be added as a selection in the drop down list.
> (R0021:A.7.6.2.4.f)

*MCL Violated* This field will be enabled if the violation type is
category of "MCL." The user may click on the **MCL Violated** button to
set to set the value in this field and set the value in the adjoining
UOM field to the comparable value in TMNALRA.

> If the user changes the value in the MCL Violated field, it will be
> compared with the value in the Analysis Result field. If the numeric
> value in Analysis Result is not greater than the numeric value in the
> MCL Violated field, the following error message will be invoked:
> **Violation Analysis Result must be greater than MCL Violated value.**

*\[MCL Violated*

*Unit of Measure\]* The UOM will be required when MCL Violated is
valued.

> 'Ratio' will be added as a selection in the drop down list.
> (R0021:A.7.6.2.4.g)

*Number of*

*Exceedences* The number of exceedences used for reporting chlorite MCL
and type 43 Single Comb Filter Effluent (EWSWTR) violations to Fed.

This field is required if Violation Type has a Report Exceedences
Indicator = 'Y'.

*Number of*

*Required Samples* Used to record the number of required samples. Can be
used to draw comparisons with Samples Missing count to determine
severity of the violation.

This is an optional field.

*Number of*

*Missing Samples* Used to record the number of samples missing.

> This field is required if Violation Type has a Report Missing Samples
> Indicator = 'Y'.

*Issuing Agency* Defaults to the Legal Entity---Government Agency marked
as the primacy agency.

This is a required field.

*Rule* Defaults to TCR if the Violation Type is 21 - 26.

This is an optional field.

*CFR No.* The Code of Federal Regulations (CFR) number for the rule that
is the basis of the violation. The Rule field must contain a valid rule
before the CFR No. can be validated. If a value is provided in the CFR
No. prior to a valid rule being supplied the error message will be **The
Rule field must be picked first to show the valid** **CFR No.**
**list.** If the value entered is not a valid CFR number for the
specified rule, the Code of Regulations Selection List will be presented
for a selection to be made.

This is an optional field. (R0123:A.7.6.2.4.d)

*Status* If violation status is changed to other than preliminary (P) or
validated (V), any previously selected standard response (for the
current session) will be ignored/discarded.

> If the user changes the status to Deleted, the following delete
> confirmation (Exhibit 7-84) will be presented:
>
> ![](media/image89.png){width="5.997916666666667in"
> height="3.884027777777778in"}

[]{#__RefHeading___Toc139861164 .anchor}**Exhibit 7-84.** Delete
Violation Confirmation

[Buttons]{.underline}:

**Yes** Will continue with the violation deletion. Refer to the
Violation Maintenance List for complete processing documentation.

**No** Will abort the change in status, return the status field to the
prior value, and present the Violation Maintenance page.

*\[Status\] Date* The date that the violation entered the current
status. It cannot be greater than the current date.

This is a required field.

*\[Status\]* *Reason* A user-defined code of why a violation has the
status indicated. The permitted values available from the dropdown list
will be retrieved from the PERMITTED_VALUE table with code_name of
VIOSTATRSN.

This is an optional field. (R0123:A.7.6.2.4.c)

Enforcement Actions List Box

This list box displayed the enforcement actions associated to this
violation. The Enforcement Actions list box will display the following
fields: \[Enforcement Action\]Year, FedRep ID, Action Type, Status,
Status Date.

[Buttons]{.underline}:

**Associate**

**Enforcement**

**Action(s)** This button will invoke the Enforcement Action Maintenance
List in maintenance mode from which the user may add and then select one
or more enforcement actions to which to associate the violation.
(B.7.6.2.4.a)

**Disassociate**

**Enforcement**

**Action(s)** The user may highlight one record and press **Disassociate
Enforcement Action(s)**. This action will cause the software to remove
the highlighted record from the list (that is, remove the
VIOLATION_ENFORCEMENT_ACTION_ASGMT record (table TMNVIEAA)). Note that
the software does not commit the removal to the database at this point;
the removal will be committed to the database when the user presses
**OK** on the Violation Maintenance page.

**Change Enforcement**

**Action** The user may highlight one record and press the **Change
Enforcement Action** button. This presents the selected enforcement
action on the Enforcement Action Maintenance Page in change mode.

*Comments* A scrollable text field in which descriptive information can
be entered

for the violation.

This is an optional field.

[Tab Sequence]{.underline}:

Determination Date, Data Origin, \[Violation\] Type, \[Violation\] Type
**Go To** button, Tier Level, Individual \[Analyte Code\], Individual
\[Analyte Code\] **Go To** button, \[Analyte\] Group \[Code\],
\[Analyte\] Group \[Code\] **Go To** button, \[State Violation Period\]
Begin Date, Duration, \[State Violation Period\] End Date, Mon. Period,
Mon. Period **Go To** button, Report to Fed?, \[Federal Violation
Period\] Begin Date, \[Federal Violation Period\] End Date, WSF State
Asgn ID, \[WSF State Asgn ID\] **Go To** button, Analysis Result,
\[Analysis Result Unit of Measure\], MCL Violated, \[MCL Violated Unit
of Measure\], Number of Exceedences, Number of Samples Taken, Number of
Samples Missing, Issuing Agency, Issuing Agency **Go To** button, Rule,
Rule **Go To** button, CFR No., CFR No. **Go To** button, Status,
\[Status\] Date, \[Status\] Reason, **Enforcement Action(s)** List box,
**Associate Enforcement Action(s)** button, **Disassociate Enforcement
Action(s)** button, **Change Enforcement Action** button Comments,
**Standard Response** button, **Record MCL** button, **Sample Schedule**
button, **Originating Violation** button, **Sample Analytical
Result(s)** button, **Sampling Point(s)** button, **Facility Analyte
Level** button, **MDBP Summary** button, **PN Schedule Activity**
button, C**omp Sched Activity(s)** button, **Deficiency** button, **OK**
button, **Cancel** button, Violation Year. (R0123:A.7.6.2.4.e)

[Buttons]{.underline}:

Button descriptions are not necessarily listed in the order in which
they appear on the page.

\[Violation\] Type

**Go To** Pressing this button will invoke the Violation Type
Maintenance List in single-select mode.

Individual \[Analyte

Code\] **Go To** Pressing this button will invoke the Analyte
Maintenance List in single-select mode. The list will present only
analytes allowed by the supplied Violation Type (via the TMNVTAA table)
if the suppied violation type is ownership of 'HQ'. For state-owned
violation types all analytes will be listed. This button is disabled
when the Analyte Code field is protected.

\[Analyte\] Group

\[Code\] **Go To** Pressing this button will invoke the Analyte Group
Maintenance List in single-select mode. This button is disabled when the
Analyte Group code is protected.

Mon. Period

**Go To** Pressing this button will invoke the Monitoring Period
Maintenance List in single-select mode. The Edit/Add button will be
enabled.

Water System

Facility **Go To** Pressing this button will present the Water System
Facility Maintenance List in single-select mode from where the user may
select a valid WSF. Once a valid WSF has been entered or selected, the
WSF name will be displayed on the page in the protected \[WSF Name\]
field. This button is disabled if the WSF State Asgn ID is protected.

> When assigning a WSF State Asgn ID, a check will be made ensuring that
> any associated Sampling Points are for the same water system facility.
> If a discrepancy is found, an denial advisory will be presented
> indicating that one or more sampling points for a different water
> system facility exists and must be disassociated before the secified
> water system facility can be associated to the violation. When the
> denial advisory is acknowledged, the WSF State Asgn ID field will be
> blank.

Issuing Agency

**Go To** Pressing this button will present the Legal Entity Maintenance
List in single-select mode where only government agencies with a
regulating_agency_indicator = 'Y' will be displayed.

Rule **Go To** Pressing this button will present the Rule Selection List
(Exhibit 7-84a) where a rule can be selected and returned to this page.

> ![](media/image95.png){width="5.21875in"
> height="3.5833333333333335in"}

[]{#__RefHeading___Toc139861165 .anchor}**Exhibit 7-84a.** Rule
Selection List

CFR No. **Go To** Pressing this button will display the Code of Federal
Regulations List (Exhibit 7-85) and select the number appropriate for
the selected rule.

> ![](media/image96.png){width="5.999305555555556in"
> height="3.5722222222222224in"}

[]{#__RefHeading___Toc139861166 .anchor}**Exhibit 7-85.** Code of
Regulation Selection List

**Standard Response** The user may click on the **Standard Response**
button to display the Standard Response Maintenance List in
single-select mode which shows standard responses of Type 'V.' If this
button is clicked and the violation status is other than P or V, the
following error message will be invoked: **Only P or V violations may
have a standard response applied.**

**Originating**

**Violation** Pressing this button will invoke the PN Violation
Association page, which will display either the originating violation(s)
that is/are already associated to the PN violation or empty fields, if
one has not been associated.

> If the violation type is not 75 or 76, the error message will be **The
> violation type must be 75 or 76 to associate an originating
> violation.**

**Record MCL** The **Record MCL** button will be enabled only if the
user selects an MCL violation type (Violation Type Category = MCL).

> When the user clicks on this button, the software will read the value
> in Analyte Level Rule Assignment (TMNALRA) Measure Text, where the
> record is for the current analyte and where the Threshold Type = "MCL"
> and Analyte Level Rule Assignment Begin Date less than or equal
> Violation Compliance Period End Date and Analyte Level Rule Assignment
> End Date is (null or greater than Compliance Period Begin Date). The
> MCL Violated field will be set to that value and the adjoining UOM
> field will be set to the comparable value in TMNALRA.
>
> If the user changes the value in the MCL Violated field, it will be
> compared with the value in the Analysis Result field. If the numeric
> value in Analysis Result  the numeric value in the MCL Violated
> field, the following error message will be invoked: **Violation
> Analysis Result must be greater than MCL Violated value.**

**Sample Schedule** The user may click on the **Sample Schedule** button
to select the appropriate schedule with which to associate the
violation. Pressing this button will invoke the Violation Sample
Schedule Association page.

**Sample Analytical**

**Result(s)** The user may click on the **Sample Analytical Result(s)**
button to access the Violation Sample Analytical Result Association List
and choose one or more results for the violation. Pressing this button
will invoke the Violation Sample Analytical Result Association List.

**MDBP**

**Summary** Pressing this button will invoke the Violation MDBP Summary
Association page, displaying either the MDBP Summary that is already
associated to the violation or empty fields, if an MDBP Summary has not
been associated with the violation. From here, users can
associate/disassociate an MDBP Summary with a violation.

**Sampling**

**Point(s)** Pressing this button will invoke the Violation Sampling
Point Association List which will display any sampling points that may
already be associated to the violation. From this page, users may
associate/disassociate one or more sampling points with a violation.

**Facility Analyte**

**Level** Pressing this button will invoke the Violation Facility
Analyte Level Association page, which will display either the Facility
Analyte Level that is already associated to the violation or empty
fields, if a Facility Analyte Level has not been associated with the
violation. From this page, users can associate/disassociate a Facility
Analyte Level with a violation.

**Deficiency(s)** Pressing this button will invoke the Violation
Deficiency Association page, which will display either the Deficiencies
that are already associated to the violation or empty fields, if a
Deficiency has not been associated with the violation. From this page,
users can associate/disassociate Deficiencies with a violation.

**PN Schedule**

**Activity(s)** Pressing this button will invoke the Violation PN
Schedule Activity Association List, which will display either the PN
Schedule Activities that are already associated to the violation or
empty fields, if a PN Schedule Activity has not been associated with the
violation. From the association page, users can associate/disassociate
PN Schedule Activities with a violation. If the violation does not have
an association to an originating PN violation, the error message will be
**There is no originating violation associated to this violation** and
the Violation PN Schedule Activity Association List page will not be
presented.

**Compliance Schedule**

**Activity(s)** Pressing this button will invoke the Violation
Compliance Schedule Activity Association List, which will display either
the Compliance Schedule Activities that are already associated to the
violation or empty fields, if a Compliance Schedule Activity has not
been associated with the violation. From the association page, users can
associate/disassociate Compliance Schedule Activities with a violation.

**OK** Pressing this button will commit additions and updates and invoke
the following actions:

-   If State Period Begin date is not valued the error message will be
    **State Period Begin Date is required for this violation type.**

-   If Violation type = 71 and Federal Period Begin Date value is not
    10/19/1999 or July 1 of any year greater than 1999 the following
    error message will be invoked: **Violation** **Period Begin Date
    must be 10/19/1999 or 07/01/YR after 1999**. (B.7.6.2.4.c)

-   If Violation type = 72 and Federal Period Begin Date is not greater
    or equal to 10/19/1999 the following error message will be invoked:
    **Federal** **Period Begin Date must be on/after 10/19/1999**.
    (B.7.6.2.4.d)

-   If Violation type = 51 or 52

```{=html}
<!-- -->
```
-   If the state violation period end date is not valued, set the
    federal violation period begin date to the state violation period
    begin date and set the federal violation period end date to null, if
    no federal violation period end date is provided. (B.7.6.2.4.j).

-   If the state violation period end date is valued and (if the
    monitoring period is not specified or the specified duration is
    other than six month, yearly, every 18 months, or three years), the
    error message will be **A 6M, YR, 18M,** **or 3Y Mon. Period is
    required for Fed Violation Dates to be calculated.**
    **(B.7.6.2.4.k)**

-   If the state violation period end date is valued and the monitoring
    period is a duration of six months and the state violation period
    begin date month is January through June, then set the Federal
    Violation Period Begin date to July 1 in the same year as the state
    violation period begin date and set the federal violation period end
    date to null, if no federal violation period end date is provided.
    (B.7.6.2.4.g)

-   If the state violation period end date is valued and the monitoring
    period is a duration of six months and the state violation period
    begin date month is July through December, then set the Federal
    Violation Period Begin date to January 1 in the year following the
    state violation period begin date and set the federal violation
    period end date to null, if no federal violation period end date is
    provided. (B.7.6.2.4.h).

-   If the state violation period end date is valued and the monitoring
    period is a duration of (yearly, 18 month, or every three years),
    then set the Federal Violation Period Begin date to October 1 in the
    year of the state violation period end date and set the federal
    violation period end date to null, if no federal violation period
    end date is provided. (B.7.6.2.4.i).

```{=html}
<!-- -->
```
-   If Violation Period Rule exists for the specified Violation Type
    with an effective_begin_date\<= Violation determination date and an
    effective_end_date (not null or greater than or equal to the
    Violation determination date) and that Violation Period Rule (has no
    association to a specific analyte or it has an association to the
    specified analyte) and the Ownership = 'ST' (note: No ownership =
    'ST' rows are provided in the TMNVPRDR table. Contact SDWIS User
    Support for assistance adding them.):

> \- If the end_date_nullable_indicator = 'N' and the State Period End
> Date does not contain a value, the error message will be **State
> Period End Date is required for this violation type.**
>
> \- If the future_begin_date_allowed_indicator = 'N' and the State
> Period Begin Date is greater than the current date, the error message
> will be **State Period Begin Date cannot be greater than current
> date.**
>
> \- If the begin_date_low_value is not null and the provided State
> Period Begin Date is \< the begin_date_low_value, the error message
> will be **State Period Begin Date is before the allowed start date.**
>
> \- If the begin_date_high_value is not null and the provided State
> Period Begin Date is \> the begin_date_high_value, the error message
> will be **State Period Begin Date is after the allowed start date.**
>
> \- If the end_date_low_value is not null and the provided State Period
> End Date is \< the end_date_low_value, the error message will be
> **State Period End Date is before the allowed end date.**
>
> \- If the end_date_high_value is not null and the provided State
> Period End Date is \> the end_date_high_value, the error message will
> be **State Period End Date is after the allowed end date.**

-   If Federal Period Begin date is not valued the error message will be
    **Federal Period Begin Date is required for this violation type.**

-   If Violation Period Rule exists for the specified Violation Type
    with an effective_begin_date\<= Violation determination date and an
    effective_end_date (not null or greater than or equal to the
    Violation determination date) and that Violation Period Rule (has no
    association to a specific analyte or it has an association to the
    specified analyte) and the Ownership = 'HQ':

> \- If the end_date_nullable_indicator = 'N' and the Federal Period End
> Date does not contain a value, the error message will be **Federal**
> **Period End Date is required for this violation type.**
>
> \- If the future_begin_date_allowed_indicator = 'N' and the Federal
> Period Begin Date is greater than the current date, the error message
> will be **Federal** **Period Begin Date cannot be greater than current
> date.**
>
> \- If the begin_date_low_value is not null and the provided Federal
> Period Begin Date is \< the begin_date_low_value, the error message
> will be **Federal** **Period Begin Date is before the allowed start
> date.**
>
> \- If the begin_date_high_value is not null and the provided Federal
> Period Begin Date is \> the begin_date_high_value, the error message
> will be **Federal** **Period Begin Date is after the allowed start
> date.**
>
> \- If the end_date_low_value is not null and the provided Federal
> Period End Date is \< the end_date_low_value, the error message will
> be **Federal** **Period End Date is before the allowed end date.**
>
> \- If the end_date_high_value is not null and the provided Federal
> Period End Date is \> the end_date_high_value, the error message will
> be **Federal Period End Date is after the allowed end date.**

-   The Status Date cannot be prior to the State Period Begin date. If
    it is the error message will be **End Date cannot be less than Begin
    Date**.

-   If the \[Sampling Info\] Analysis Result is valued, the
    corresponding UOM code must also be provided. If the UOM field is
    left blank the error message will be **The Analysis Unit of Measure
    code is required when the measure is entered**

-   When both the \[Sampling Info\] Analysis Result and MCL Violated
    fields are populated, the corresponding UOM codes must be the same
    value. If they are different the error message will be **Analysis
    Result and MCL Violated units of measure must be the same.** Also,
    with both fields are valued, the Analysis Result value must be
    greater than the MCL Violated value. If it is not the error message
    will be **Violation Analysis Result must be greater than MCL
    Violated Value.**

-   If Issuing Agency is left blank the error message will be **Issuing
    Agency must not be blank.**

-   If the \[Sampling Info\] MCL Violated is valued, the corresponding
    UOM code must also be provided. If the UOM field is left blank the
    error message will be **The Analysis Unit of Measure code is
    required when the measure is entered.**

-   For Violation types between 21 and 26, inclusive, the Rule must
    specify the TCR rule. If it does not the error message will be **The
    Rule must be TCR for the Violation Type you selected.**

```{=html}
<!-- -->
```
-   If Violation Type is 75 and the violation has not been associated to
    an originating violation, the following error message will be
    invoked: **PN Violations of Type 75 must be associated to an
    originating violation using the PN Violation Association button.**
    On pressing **OK**, return the cursor to this button on the
    Violation Maintenance page. This can be determined by checking if
    the specified violation type has an associated
    DATA_COMPLETENESS_RULE with data_element_name = 'ORIGINATING
    VIOLATION' and rule_code = 'REQUIRE'. (This method replaces
    hardcoding in action diagram MBS_C_MAINTAIN_VIOLATION.)

-   The following are revised edits for the violation type and analyte
    code processing replacing hardcoding within action diagram
    MBS_C_MAINTAIN_VIOLATION:

> \- If analyte code and analyte group code are both spaces AND the
> contaminant required code on the violation type = 'MUST', error
> message will be **Analyte Code is necessary for this particular
> Violation Type**.
>
> \- If the analyte group code is provided
>
> \-- If the contaminant required code on the violation type = 'NOT',
> error message will be **Analyte Group Code is not allowed for this
> particular Violation Type**.
>
> \-- If the specified violation type has an associated
> DATA_COMPLETENESS_RULE with data_element_name = 'ANALYTE GROUP' and
> rule_code = 'RESTRICT.' The error message will be **Analyte Group is
> not allowed for this particular Violation Type**.
>
> \-- If analyte group is allowed, each individual analyte within the
> analyte group must pass the following edit checks as if the single
> analyte code was entered.
>
> \- If analyte code is provided or for each member of an analyte group:
>
> \-- If the contaminant required code on the violation type = 'NOT',
> error message will be **Analyte Code is not allowed for this
> particular Violation Type**.
>
> \-- For federally-owned (HQ) violation types, if a VIOLATION TYPE
> ANALYTE ASGMT (TMNVTAA) exists between the specified violation type
> and the specified analyte code

If the VIOLATION TYPE ANALYTE ASGMT (TMNVTAA) rule_code = 'ALLOW'
analyte code is allowed for the violation type.

If the VIOLATION TYPE ANALYTE ASGMT (TMNVTAA) rule_code = 'DENY' the
error message will be either **Analyte Code is not allowed for this
particular Violation Type** or **Analyte Group contains an analyte not
allowed for this Violation Type.**

> \-- If no VIOLATION TYPE ANALYTE ASGMT (TMNVTAA) exists between the
> specified violation type and the specified analyte code

If any VIOLATION TYPE ANALYTE ASGMT (TMNVTAA) with rule_code = 'DENY'
exists for the specified Violation Type, the analyte code is allowed for
the violation type.

Otherwise, the error message will be **Analyte Code is not allowed for
this particular Violation Type** or **Analyte Group contains an analyte
not allowed for this Violation Type.**

> If the specified Violation Type has a Report Missing Samples Indicator
> = 'Y' and the Samples Missing field is zero, the error message will be
> **This Violation Type requires a Number of Samples Missing count**.
>
> If the specified Violation Type has a Report Number of Exceedences =
> 'Y' and the Number of Exceedences field is 0, the error message will
> be **This Violation Type requires a Number of Exceedences count**.
>
> If the specified Violation Type has an associated
> DATA_COMPLETENESS_RULE with data_element_name = 'SAMPLING POINT' and
> rule_code = 'RESTRICT' and the WSF State Asgn ID has a value, the
> error message will be **WSF State Asgn ID not allowed for this
> violation type**. (This method should replace the hardcoding in action
> diagram MBS_C_MAINTAIN_VIOLATION.)
>
> The software performs the following duplicate checks:
>
> \- In Change mode for Violations, check that the "duplicate by number"
> edit has not been violated by checking for the existence of a
> violation for the same Water System AND External System Number. If one
> is found, the following error message will be invoked: **A Violation
> of the same PWS and FedRep ID already exists.** (Exhibit 7-86).
>
> ![](media/image97.png){width="4.78125in"
> height="2.2083333333333335in"}

[]{#__RefHeading___Toc139861167 .anchor}**Exhibit 7-86.**
Violation/Violation Group Duplicate by Number Error Message

> \- The following [Duplicate by Data]{.underline} check is performed on
> both new violations and changes to existing violations.
>
> If the Violation Type is Ownership equal "HQ" and
>
> an existing violation with matching Water System, WSF State Asgn ID,
> violation type, analyte code, and state violation period begin and
> Status ("V" or "P" or "R") is found the error message will be **A
> potential, validated or rejected violation of this type, for this
> water system, state violation period begin date, analyte (if supplied)
> and water system facility (if supplied) already exists. Duplicates are
> not permitted.** (Exhibit 7-87).
>
> Additional for PN Violations (violation type 75 or 76) the duplicate
> by data check includes the association to the originating violation.
> In addition to the fields listed above for the duplicate by data
> check, PN Violations will only be considered duplicate if they attempt
> to reference the same originating violation.
>
> ![](media/image98.png){width="5.302083333333333in" height="2.0625in"}

[]{#__RefHeading___Toc139861168 .anchor}**Exhibit 7-87.** Violation
Duplicate Encountered Advisory

> If the Violation Type is Ownership not equal "HQ" and
>
> an existing violation with matching Water System, WSF State Asgn ID,
> violation type, analyte code, and state violation period begin date
> and Status ("V" or "P" or "R") is found the advisory message will be
> provided warning user of the potential duplication. User can choose to
> proceed from the advisory and continue or cancel and return to the
> Violation Maintenance page.
>
> The WSF State Asgn ID is optional. For a violation of the same Water
> System, Violation Type, Analyte Code, State Violation period begin
> date and Status ("V" or "P" or "R"), only one may exist with a blank
> WSF State Asgn ID or the appropriate duplicate by data message will be
> generated based on the ownership of the violation type.
>
> The Analyte is optional. For a violation of the same Water System, WSF
> State Asgn ID, Violation Type, State Violation period begin date and
> Status ("V" or "P" or "R"), only one may exist with a blank Analyte or
> the appropriate duplicate by data message will be generated based on
> the ownership of the violation type.
>
> \-- For Violation Groups each candidate hidden violation within the
> Analyte Group will be passed through the duplicate by data check as
> defined above for individual violations. If the violation type is
> owned by 'HQ', the existence of a duplicate for any candidate hidden
> violation will result in the add or change of the Violation Group
> being rejected and no hidden violations be created or updated.
>
> If the violation type is not owned by 'HQ', the existence of a
> duplicate for any candidate hidden violation will result in the
> advisory message (Exhibit 7-88) whereby the user can choose to proceed
> with adding the duplicate hidden violation.
>
> ![](media/image99.png){width="5.302083333333333in"
> height="2.5833333333333335in"}

[]{#__RefHeading___Toc139861169 .anchor}**Exhibit 7-88.** Violation
Duplicate Advisory

> If cancel is selected from the advisory, the violation group will not
> be added or changed and none of the hidden violations will be created
> or changed.
>
> The Violation Group cannot be created if one of its hidden violations
> cannot be created. If one of the hidden violations that would be
> created already exists in the database (either as an individual
> violation or as a hidden violation) when either duplicate check is
> run, the software invokes the Hidden Violation Duplicate Encountered
> page with the following message: **One of the hidden violation(s) that
> would belong to the Violation Group you wish to create already exists.
> The hidden violation(s) that cannot be created is/are because it/they
> already exist for these Analyte Codes: \[A list box displaying the
> (Analyte Code/Name) is displayed\].**(Exhibit 7-89). The Hidden
> Violation Duplicate Encountered page will have an **OK** button.
> Pushing **OK** will stop any further processing and return the user to
> the Violation Maintenance page.
>
> ![](media/image100.png){width="5.083333333333333in"
> height="3.2291666666666665in"}

[]{#__RefHeading___Toc139861170 .anchor}**Exhibit 7-89.** Hidden
Violation Duplicate Encountered Advisory

-   For a violation with a violation type of ownership "HQ", check for a
    potential federal duplication if the violation has not already been
    packaged. If an existing violation is found that references the same
    Water System, Water System Facility, Violation Type, Analyte and
    Federal Violation Period Begin Date, the following advisory will be
    displayed: **This violation should be packaged with one or more
    other violations for the same Water System, Water System Facility,
    Violation Type, Analyte and Federal Violation Period Begin Date so
    that only one will be reported to EPA (use field "Report to
    FED?").** (Exhibit 7-90).

> ![](media/image101.png){width="5.9375in" height="2.0625in"}

[]{#__RefHeading___Toc139861171 .anchor}**Exhibit 7-90.** Violation
Federal Duplicate Advisory

-   When the violation status is changed to deleted (D), all
    associations between the Violation and the Sampling Point will be
    removed.

-   Commits all changes to the database including any new association
    records that may have been selected in the association pages.

-   A violation for an analyte may only be associated to a sample
    schedule. If a selection was made to a sample schedule group, the
    selection will be ignored with no error. A sample schedule for an
    anlyte different than the analyte from the violation will be
    accepted.

-   A violation for an Analyte group may only be associated to a sample
    schedule group. If a selection was made to a sample schedule, the
    selection will be ignored with no error. A sample schedule group for
    an Analyte group different than the Analyte group of the violation
    will be accepted.

-   A violation for a water system facility may be associated to a
    sample schedule or sample schedule group for a different facility.
    No edit is performed preventing this occurrence.

```{=html}
<!-- -->
```
-   Display the "Create SOX/EOX Advisory" page

> \- (If the *\[Federal Violation Period*\] End Date is entered or (the
> violation type has a violation period rule with
> end-date-nullalble-indicator = 'Y' and the ownership = 'HQ')) and
>
> \- An Enforcement Action of Action Type SOX or EOX with a Status of
> Taken and a Status Date equal to the entered Federal violation period
> end date does not exist.
>
> The "Create SOX/EOX Advisory" (Exhibit 7-91) will display the
> following text.
>
> Message should say:
>
> It appears that you are returning this violation to compliance. No
> existing enforcement action record in Taken status with a status date
> equal to the federal violation period end date has been found.
>
> You may want to create an equaivalent SOX/EOX enforcement action using
> the Associate Enforcement Action(s) button. Choose **OK** to proceed
> without an enforcement action or Cancel to return to the Violation
> Maintenance Page.

[]{#__RefHeading___Toc139861172 .anchor}**Exhibit 7-91.** Create SOX/EOX
Advisory

> **OK** Clicking the OK button will ignore the advisory and procced
> with the processing of the Violation Maintenance page changes.
>
> **Cancel** Cancel will return to the Violation Maintenance page so
> that an enforcement action can be associated. (B.7.6.2.4.b)

**Cancel** When the user presses this button, the software will
disregard any data entered and return the user to the previous page.

**Help** Will invoke the system online help facility.

[Toolbar Icons]{.underline}:

![](media/image23.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Water System Information page, which will display basic inventory
information for the water system associated with the selected record.
This icon will be disabled when no record is highlighted.

![](media/image39.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Historical Sampling Information page, which will display protected
information on samples collected for the water system. This icon will be
disabled when no record is highlighted.

![](media/image24.png){width="0.22361111111111112in"
height="0.22361111111111112in"} Clicking on this icon will invoke the
Related Points of Contact Maintenance List page, which will display a
protected list of legal entities and individuals (such as operators,
engineers, etc.) associated with the water system linked to the selected
record. This icon will be disabled when no record is highlighted.

####  Violation Sample Schedule Association Page

Exhibit 7-92 depicts the Violation Sample Schedule Association page.

![](media/image103.png){width="5.997222222222222in" height="3.6in"}

[]{#__RefHeading___Toc139861173 .anchor}**Exhibit 7-92.** Violation
Sample Schedule Association

-   A Violation Group may be associated with a Schedule Group. If the
    user is maintaining a Violation Group (Analyte Group is valued on
    the Violation maintenance page) and presses the Sample Schedule
    button, the software will invoke the Violation Sample Schedule
    Association page showing the currently associated schedule group. If
    no schedule group has previously been associated, the fields will be
    empty. The user may press the **Select Sample Schedule** button to
    invoke the Non-TCR Schedule Maintenance List showing schedule
    groups.

```{=html}
<!-- -->
```
-   If the user wishes to associate an individual violation with a
    schedule from the existing Violation Sample Schedule Association
    page, when the user presses the **Select Sample Schedule** button,
    the software will invoke the TCR Schedule Maintenance List (for
    3100/TCR violations) (see Subsection 7.4.2.2) or the non-TCR
    Schedule Maintenance List (all others) (see Subsection 7.2.6.2).
    These lists have new **Edit/Select** menu items to accommodate these
    associations.

> *(Developer Note: On the existing Violation Sample Schedule
> Association page, it will be necessary to retain the logic that checks
> for the flags (to be associated/disassociated) when the violation is
> being committed (user pressing **OK** on Violation Maintenance
> page)*.)

####  Violation Sample Analytical Result Association Lists

When selecting the Sample Analytical Results(s) button from the
Violation Maintenance Page, the category code of the violation's
associated analyte will determine which of the Violation Chem/Rad
Association List or Violation Microbiological Association List is
presented. Both will list all Sample Analytical Results associated to
the Violation.

##### Violation Chem/Rad Association List

Exhibit 7-93 depicts the Violation Chem/Rad Association List page.

  ---------------------------------------------------- ----------------------------------------------------
  ![](media/image1.png){width="1.5979166666666667in"   ![](media/image104.png){width="4.71875in"
  height="4.325in"}                                    height="4.334027777777778in"}

  ---------------------------------------------------- ----------------------------------------------------

[]{#__RefHeading___Toc139861174 .anchor}**Exhibit 7-93.** Violation
Chem/Rad Association List

[Protected Fields]{.underline}:

*Water System*

*Group Box* The Water System No. and Name of the displayed violation.

*Violation Group*

*Box* Information about the displayed violation including its Year,
FedRep ID, Status, Determination Date, Analyte Code and Name,
\[Violation\] Type \[Name and Code\], \[Violation Type\] Tier Level,
\[Violation Type\] Category, \[Violation Type\] Severity Level.

*List Box of*

*Association Sample*

*Analytical Results* List Columns: Collection date, Lab Sample No.
Sample Type, Concentration, Measure Unit, Sampling Point, Sampling
Location, State Sample No.

[Buttons]{.underline}:

**Associate Result to**

**Violation** Will present the Violation Chem/Rad Selection List
(Exhibit 7-94) listing Sample Analytical Results for the same Water
System and Analyte Code that are either accepted or validated. The list
will be initially limited to Sample Analytical Results with collection
end date within the last 12 months of the State Violation Period End
Date indicated in the Violation. If State Violation Period End Date is
not supplied, the State Violation Period Begin Date will be used.
(R0057:A.7.6.2.6.1.a)

Multiple selections can be made and will be returned to the Violation
Chem/Rad Association List List Box. The Actual association will not be
made until the OK button is selected on the Violation Maintenance Page.

![](media/image105.png){width="5.993055555555555in"
height="4.355555555555555in"}

[]{#__RefHeading___Toc139861175 .anchor}**Exhibit 7-94.** Violation
Chem/Rad Selection List

[Violation Chem/Rad Selection List Protected Fields:]{.underline}

*Water System*

> *Group Box* See design specifications for the same group box in
> Violation Chem/Rad Association List described above.
>
> *Violation*
>
> *Group Box* See design specifications for the same group box in
> Violation Chem/Rad Association List described above.
>
> *List Box of Selection*
>
> *Sample Analytical*
>
> *Results* See design specifications for the same list box in Violation
> Chem/Rad Association List described above.
>
> *Number of rows*
>
> *resulting from the*
>
> *search criteria*
>
> *used:* Will indicate how many rows exist in the database that matched
> the search criteria. (R0057:A.7.6.2.6.1.b)
>
> *Number of rows*
>
> *displayed:* Will indicate how many of the rows that exist in the
> database are displayed in the list page via the vertical scroll
> feature. The list will be limited to display only 500 sample
> analytical results. If more than 500 sample analytical results
> resulted from the search, use the **Search** button to enter search
> criteria to narrow the search. (R0057:A.7.6.2.6.1.c)
>
> [Violation Chem/Rad Selection List Buttons:]{.underline}
>
> **Search** Will present the Sample Collection Date Range dialog box
> (Exhibit 7-95) presenting the previous criteria so that new criteria
> can be provided. The Search feature is useful for narrowing a search
> when too many rows are returned or to widen a search if too few are
> returned. (R0057:A.7.6.2.1.d)
>
> ![](media/image106.png){width="5.995138888888889in"
> height="1.7965277777777777in"}

**Exhibit 7-95.** Sample Collection Date Range

> [Sample Collection Date Range]{.underline} [Entry]{.underline}
> [Fields:]{.underline}
>
> *Sample Collection Date Range*
>
> *from*
>
> *\[begin date\]* This field will specify the begin date of the Sample
> Collection Date range. Edit checks for date will be done later when
> the user clicks the **Search** button. A calendar function will allow
> the user to more easily enter dates for this field.
>
> The default value for this field will be State Violation Period End
> Date less 1 year. If the State Violation Period End Date is not
> supplied, the State Violation Period Begin Date will be used.
>
> The Sample Collection Date Range From field will be optional. If
> supplied, it will be used to list sample analytical results with a
> collection end date equal to or after the date provided.
>
> *\[Sample Collection Date Range\]*
>
> *to \[end date\]* This field will specify the end date of the Sample
> Collection Date range. Edit checks for date will be done later when
> the user clicks the **Search** button. A calendar function will allow
> the user to more easily enter dates for this field.
>
> The default value for this field will be State Violation Period End
> Date. If the State Violation Period End Date is not supplied, the
> State Violation Period Begin Date will be used.
>
> The Sample Collection Date Range To field will be optional. If
> supplied, it will be used to list sample analytical results with a
> collection end date earlier or equal to the date supplied.

[Sample Collection Date Range Buttons:]{.underline}

> **Search** Will perform the edit checks on dates. If both are
> supplied, the end date must be later or equal to the begin date. If it
> is not, the following error message will be invoked: **End Date cannot
> be earlier than Begin Date.**
>
> Will utilize the provided search criteria and display the results on
> the invoking selection list page. Sample Analytical Results with
> Data_Quality_Code of "A" (accepted) or "V" (validated) that are for
> the same Water System and Analyte Code indicated in the Violation will
> be used as implied search criteria in all searches.
>
> Will close the Sample Collection Date Range dialog box and return to
> the invoking dialog box.
>
> **Cancel** Will close the Sample Collection Date Range dialog box and
> return to the invoking dialog box.
>
> **Select** Will return the selected sample analytical result(s) to the
> invoking page. This button will be available when at least one sample
> analytical result has been selected in the list area.
>
> **Cancel** Will close the dialog box and return to the invoking page.
> Any selections made will be ignored.
>
> **Help** Will invoke the online Help system for this page.

**Disassociate Result from**

**Violation** Will mark the selected Sample Analytical Results for
disassociation from the Violation and remove it from the list area. The
disassociation will occur when the OK button is selected on the
Violation Maintenance Page.

**OK** Will close the page and return to the Violation Maintenance page.
No database activities occur at this point. All changes are held until
the **OK** button is selected on the Violation Maintenance page.

**Cancel** Will close the page and return to the Violation Maintenance
page. All changes are ignored.

**Help** Will invoke the online Help system for this page.

##### Violation Microbiological Result Association List

Exhibit 7-96 depicts the Violation Microbiological Result Association
List page.

  ---------------------------------------------------- ----------------------------------------------------
  ![](media/image1.png){width="1.5979166666666667in"   ![](media/image107.png){width="4.71875in"
  height="4.325in"}                                    height="4.270833333333333in"}

  ---------------------------------------------------- ----------------------------------------------------

[]{#__RefHeading___Toc139861177 .anchor}**Exhibit 7-96.** Violation
Microbiological Result Association List

[Protected Fields]{.underline}:

*Water System*

*Group Box* The Water System No. and Name of the displayed violation.

*Violation Group*

*Box* Information about the displayed violation including its Year,
FedRep ID, Status, Determination Date, Analyte Code and Name,
\[Violation\] Type \[Name and Code\], \[Violation Type\] Tier Level,
\[Violation Type\] Category, \[Violation Type\] Severity Level.

*List Box of*

*Association Sample*

*Analytical Results* List Columns: Collection date, Lab Sample No.
Sample Type, P/A Ind, Sampling Point, Sampling Location, Rpt Loc, and
State Sample No.

[Buttons]{.underline}:

**Associate Result to**

**Violation** Will present the Violation Microbiological Selection List
listing Sample Analytical Results for the same Water System and Analyte
Code that are either approved or validated. The list will be limited to
Sample Analytical Results with collection end date within the last 12
months of the State Violation Period End Date indicated in the
Violation. If State Violation Period End Date is not supplied, the State
Violation Period Begin Date will be used. (R0057:A.7.6.2.6.2.a)

Multiple selections can be made and will be returned to the Violation
Microbiological Association List List Box (Exhibit 7-97). The Actual
association will not be made until the OK button is selected on the
Violation Maintenance page.

![](media/image108.png){width="5.992361111111111in"
height="4.809722222222222in"}

[]{#__RefHeading___Toc139861178 .anchor}**Exhibit 7-97.**
Microbiological Results Selection List

[Microbiological Results Selection List Protected Fields:]{.underline}

*Water System*

> *Group Box* See design specifications for the same group box in
> Violation Microbiological Result Association List described above.
>
> *Violation*
>
> *Group Box* See design specifications for the same group box in
> Violation Microbiological Result Association List described above.
>
> *List Box of Selection*
>
> *Sample Analytical*
>
> *Results* See design specifications for the same list box in Violation
> Microbiological Result Association List described above.
>
> *Number of rows*
>
> *resulting from the*
>
> *search criteria*
>
> *used:* Will indicate how many rows exist in the database that matched
> the search criteria. (R0057:A.7.6.2.6.2.b)
>
> *Number of rows*
>
> *displayed:* Will indicate how many of the rows that exist in the
> database are displayed in the list page via the vertical scroll
> feature. The list will be limited to display only 500 sample
> analytical results. If more than 500 sample analytical results
> resulted from the search, use the **Search** button to enter search
> criteria to narrow the search. R0057:A.7.6.2.6.2.c)
>
> [Microbiological Results Selection List Buttons:]{.underline}
>
> **Search** Will present the Sample Collection Date Range dialog box
> desribed above (Exhibit 7-95) presenting the previous criteria so that
> new criteria can be provided. The Search feature is useful for
> narrowing a search when too many rows are returned or to widen a
> search if too few are returned. (R0057:A.7.6.2.6.2.d)
>
> **Select** Will return the selected sample analytical result(s) to the
> invoking page. This button will be available when at least one sample
> analytical result has been selected in the list area.
>
> **Cancel** Will close the dialog box and return to the invoking page.
> Any selections made will be ignored.
>
> **Help** Will invoke the online Help system for this page.

**Disassociate Result**

**From Violation** Will mark selected result(s) to be disassociated from
the Violation. The result will be removed from the list display. No
action will be taken to actually delete the association between the
Violation and the Sample Analytical Result until the **OK** button is
pressed on the Violation Maintenance page.

**OK** Will close the page and return to the Violation Maintenance page.
No database activities occur at this point. All changes are held until
the **OK** button is selected on the Violation Maintenance page.

**Cancel** Will close the page and return to the Violation Maintenance
page. All changes are ignored.

**Help** Will invoke the online Help system for this page.

####  Violation MDBP Summary Association 

The Violation MDBP Summary Association page (Exhibit 7-98) will be
invoked from the Violation Maintenance page by pressing the **MDBP
Summary** button. It will list the MDBP Summary that the user has
already associated with the violation. The user may associate one MDBP
Summary to the violation by pressing the **Associate MDBP Summary**
button and disassociate an MDBP Summary displayed by pressing **the
Disassociate MDBP Summary**. The protected fields in this page, all
attributes/fields of MDBP Summary, will be: Summary Type, Samples
Collected, Samples Required, and M&R Compliance Indicator as well as the
Begin Date and End Date of the Monitoring Period that is associated with
the MDBP Summary.

![](media/image109.png){width="7.348611111111111in"
height="5.965972222222222in"}

[]{#__RefHeading___Toc139861179 .anchor}**Exhibit 7-98.** Violation MDBP
Summary Association

[Protected Fields]{.underline}:

*Water System/*

*Facility Group*

> *Box* The Water System No. and Name and WSF State Asgn ID and WSF Name
> of the displayed violation.

*Violation Group*

*Box* Information about the displayed violation including its Year,
FedRep ID, Determination Date, \[Violation\] Type \[Name and Code\].

*Violation Period*

*Group Box* Contains the State Period Begin and End Dates and the
Federal Period Begin and End Dates.

MDBP Summary

Group Box Information about the associated MDBP Summary. Fields will be
blank until an MDBP Summary is selected.

[Buttons]{.underline}:

**Associate MDBP**

**Summary** Pressing this button will invoke the MDBP Summary
Maintenance List, as described in Chapter 5.

> The user may select an MDBP Summary to which to associate with the
> violation. MDBP Summaries are selected for display on this list
> according to the following criteria: Summary is for the current Water
> System. If a WSF is supplied for the violation, it will be used to
> limit the MDBP Summary list to only those MDBP summaries for the
> supplied WSF.

**Disassociate MDBP**

**Summary** The user can press **Disassociate MDBP Summary** to remove
the currently associated MDBP Summary from the page. Note that the
software will not commit the removal to the database at this point; the
removal of the association to the current MDBP summary will be committed
to the database when the user presses **OK** on the Violation
Maintenance page.

**OK** Will close the page and return to the Violation Maintenance Page.
No database activities occur at this point. All changes are held until
the **OK** button is selected on the Violation Maintenance page.

**Cancel** Will close the page and return to the Violation Maintenance
Page. All changes are ignored.

**Help** Will invoke the online Help system for this page.

####  Violation Sampling Point Association List

The Violation Sampling Point Association List (Exhibit 7-99) will be
invoked from the Violation Maintenance page by pressing the **Sampling
Point(s)** button. It will list the sampling points that the user has
already associated with the violation. The user may associate additional
sampling points to the violation by pressing the **Associate Sampling
Points** button and disassociate sampling points displayed on the list
by highlighting one record and pressing **Disassociate Sampling Point**.

The Sampling Points list box will display the following fields: Activity
Status of Sampling Point, Status Date of Sampling Point, Type Code of
Sampling Point, Sampling Point \[which maps to Identification Code\],
Location \[which maps to Description Text\], and Pb/Cu Tier Level.

![](media/image110.png){width="7.341666666666667in"
height="5.635416666666667in"}

[]{#__RefHeading___Toc139861180 .anchor}**Exhibit 7-99.** Violation
Sampling Point Association List

[Protected Fields]{.underline}:

*Water System/*

*Facility Group*

> *Box* The Water System No. and Name and WSF State Asgn ID and WSF Name
> of the displayed violation.

*Violation Group*

*Box* Information about the displayed violation including its Year,
FedRep ID, Determination Date, \[Violation\] Type \[Name and Code\].

*Violation Period*

*Group Box* Contains the State Period Begin and End Dates and the
Federal Period Begin and End Dates.

*Sampling Points*

*List Box* Will list the Sampling Points associated to the Violation.
The list columns will be Status, \[Status\] Date, Type, WSF State Asgn
ID, Sampling Point, Location, and \[Pb/Cu\] Tier Level.

[Buttons:]{.underline}

**Associate Sampling**

**Points If a WSF State Asgn ID has been associated to the violation,
t**his button will invoke the WSF Sampling Point Maintenance List in
multi-select mode from which the user may select one or more sampling
points to associate with the violation. If no WSF State Asgn ID has been
associated to the violation, this button will invoke the Sampling Point
Maintenance List in multi-select mode from which the user may select one
or more sampling points for the supplied Water System to associate with
the violation.

The list of selected Sampling Points will be returned to this list area
but will not actually be associated to the Violation until the OK button
is selected on the Violation Maintenance Page.

**Disassociate**

**Sampling Point**s The user may highlight one or more records and press
**Disassociate Sampling Points**. This action will cause the software to
remove the highlighted record from the list (that is, remove the
VIOLATION_SAMPLING_POINT_ASGMT record (table TMNVISPA). Note that the
software will not commit the removal to the database at this point; the
removal will be committed to the database when the user presses **OK**
on the Violation Maintenance page.

**OK** Will close the page and return to the Violation Maintenance Page.
No database activities occur at this point. All changes are held until
the **OK** button is selected on the Violation Maintenance page.

**Cancel** Will close the page and return to the Violation Maintenance
Page. All changes are ignored.

**Help** Will invoke the online Help system for this page.

####  Violation Facility Analyte Level Association

The Violation Facility Analyte Level Association page (Exhibit 7-100)
will be invoked from the Violation Maintenance page by pressing the
**FANL** button. It will display the FANL that the user has already
associated with the Violation. The user may associate a FANL to the
Violation by pressing the **Associate FANL** button and disassociate the
FANL displayed by pressing **Disassociate FANL**.

![](media/image111.png){width="7.343055555555556in"
height="6.194444444444445in"}

[]{#__RefHeading___Toc139861181 .anchor}**Exhibit 7-100.** Violation
Facility Analyte Level Association

[Protected Fields]{.underline}:

*Water System/*

*Facility Group*

*Box* The Water System No. and Name and WSF State Asgn ID and WSF Name
of the displayed violation.

*Violation Group*

*Box* Information about the displayed violation including its Year,
FedRep ID, Determination Date, \[Violation\] Type \[Name and Code\].

*Violation Period*

*Group Box* Contains the State Period Begin and End Dates and the
Federal Period Begin and End Dates.

*Facility Analyte Level*

*Group Box* Control Level Type, Level, Effective Begin Date, and
Effective End Date of the associate Facility Analyte Level.

[Buttons]{.underline}:

**Associate FANL** Pressing this button will invoke the Facility Analyte
Level Maintenance List in single-select mode. The user may select a FANL
to associate with the Violation.

> If an analyte and/or WSF are provided on the Violation Maintenance
> page, these two values will be used, along with the Water System
> associated to the violation, to limit the list of FANLs presented on
> the Facility Analyte Level Maintenance list. If neither are valued,
> the water system associated to the violation will still be used to
> limit the display.
>
> The selected Facility Analyte Level will be returned to the Violation
> Facility Analyte Level Association page but will not be associated to
> the Violation until the OK button is selected on the Violation
> Maintenance Page.

**Disassociate FANL** The user may highlight one record and press
**Disassociate FANL**. This action will cause the software to remove the
highlighted record from the list. Note that the software will not commit
the removal to the database at this point; the removal of the
association to the highlighted FANL will be committed to the database
when the user presses **OK** on the Violation Maintenance page.

**OK** Will close the page and return to the Violation Maintenance Page.
No database activities occur at this point. All changes are held until
the **OK** button is selected on the Violation Maintenance page.

**Cancel** Will close the page and return to the Violation Maintenance
Page. All changes are ignored.

**Help** Will invoke the online Help system for this page.

#### Violation Deficiency Association Page

The Violation Deficiency Association page (Exhibit 7-101) will be
invoked from the Violation Maintenance page by pressing the
**Deficiency** button. It will list the Deficiency that the user has
already associated with the Violation. The user may disassociate the
Deficiency displayed on the page by pressing **Disassociate
Deficiency**.

![](media/image112.png){width="6.685416666666667in"
height="5.231944444444444in"}

[]{#__RefHeading___Toc139861182 .anchor}**Exhibit 7-101.** Violation
Deficiency Association

[Protected Fields]{.underline}:

*Water System/*

*Facility Group*

*Box* The Water System No. and Name and WSF State Asgn ID and WSF Name
of the displayed violation.

*Violation Group*

*Box* Information about the displayed violation including its Year,
FedRep ID, Determination Date, \[Violation\] Type \[Name and Code\].

*Violation Period*

*Group Box* Contains the State Period Begin and End Dates and the
Federal Period Begin and End Dates.

*Deficiency Group*

*Box* The Deficiency No., Severity of Deficiency, Category of
Deficiency, Date Identified, Resolved Date, and Description of the
associated Deficiency. The Description will be presented as a
concatenation of the permitted value and its text description.

[Buttons]{.underline}:

**Associate**

**Deficiency** Pressing this button will invoke the Deficiency
Maintenance List in single-select mode, as described in Chapter 8. The
user may select one deficiency with which to associate the violation.
Deficiencies will be selected for display on this list according to the
following criteria: The Deficiencies displayed will be limited by the
Water System.

> The selected Deficiency will be returned to the Violation Deficiency
> Association page but will not be associated to the Violation until the
> OK button is selected on the Violation Maintenance Page.

**Disassociate**

**Deficiency** The user may press **Disassociate Deficiency** to
disassociate the Deficiency displayed. Note that the software will not
commit the removal to the database at this point; the removal of the
association to the highlighted deficiency will be committed to the
database when the user presses **OK** on the Violation Maintenance page.

**OK** Will close the page and return to the Violation Maintenance Page.
No database activities occur at this point. All changes are held until
the **OK** button is selected on the Violation Maintenance page.

**Cancel** Will close the page and return to the Violation Maintenance
Page. All changes are ignored.

**Help** Will invoke the online Help system for this page.

#### PN Violation Association List Page

The PN Violation Association List page (Exhibit 7-102) will be invoked
by pressing the **Violation** button on the More Buttons page. The page
will show if one or more originating Violations has already been
associated with the current Violation of the Violation Maintenance page.
The user may use the **Associate Violation** button to select a
Violation or may use the **Disassociate Violation** button to
disassociate one selected in error.

![](media/image113.png){width="7.059027777777778in"
height="5.976388888888889in"}

[]{#__RefHeading___Toc139861183 .anchor}**Exhibit 7-102.** PN Violation
Association List

[Protected Fields]{.underline}:

*Water System/*

*Facility Group*

> *Box* The Water System No. and Name and WSF State Asgn ID and WSF Name
> of the displayed violation.

*PN Violation Group*

*Box* Information about the displayed violation including its Year,
FedRep ID, Determination Date, \[Violation\] Type \[Name and Code\].

*Violation Period*

*Group Box* Contains the State Period Begin and End Dates and the
Federal Period Begin and End Dates.

*Originating*

*Violations* The list columns will be \[Violation\] Type, Year, FedRep
ID, Determination Date and the Begin and End Dates of the State
Violation Period.

[Buttons:]{.underline}

**Associate**

**Violation(s)** Pressing this button will invoke the Violation
Maintenance List in multi-select mode. The user may select one or more
originating violations to which to associate this PN violation.
Violations are selected for display on this list according to the
following criteria: The Violations displayed will be limited to
non-hidden Violations and Group Violations for the current Water System
of the following statuses of the Violation (V, P, R,). Sort by State
Period Begin Date descending. Enable the user to filter by Fiscal Year +
FedRep ID. Do not allow a user to associate a validated PN Violation to
a non-validated originating Violation.

The list of selected violations will be returned to the list box area
but will not be associated to the PN Violation until the **OK** button
is selected on the Violation Maintenance Page.

**Disassociate**

**Violation(s)** The user may press **Disassociate Violation(s)** to
disassociate the Violation currently displayed as associated. Note that
the software will not commit the removal to the database at this point;
the removal of the association to the Violation will be committed to the
database when the user presses **OK** on the Violation Maintenance page.

**OK** Will close the page and return to the Violation Maintenance Page.
No database activities occur at this point. All changes are held until
the **OK** button is selected on the Violation Maintenance page.

**Cancel** Will close the page and return to the Violation Maintenance
Page. All changes are ignored.

**Help** Will invoke the online Help system for this page.

#### Violation PN Schedule Activity Association List

The Violation PN Schedule Activity Association List (Exhibit 7-103) will
be invoked from the Violation Maintenance page by pressing the **PN
Schedule Activity(s)** button. It will list the Public Notification
Activities that have already been associated with the Violation. The
user may associate additional Public Notification Activities by pressing
the **PN Schedule Activity** button and disassociate PN Schedule
Activities by highlighting one record and pressing **Disassociate PN
Schedule Activity**.

![](media/image114.png){width="7.344444444444444in"
height="6.226388888888889in"}

[]{#__RefHeading___Toc139861184 .anchor}**Exhibit 7-103.** Violation PN
Schedule Activity Association List

[Protected Fields]{.underline}:

*Water System/*

*Facility Group*

*Box* The Water System No. and Name and WSF State Asgn ID and WSF Name
of the displayed violation.

*Violation Group*

*Box* Information about the displayed violation including its Year,
FedRep ID, Determination Date, \[Violation\] Type \[Name and Code\].

*Violation Period*

*Group Box* Contains the State Period Begin and End Dates and the
Federal Period Begin and End Dates.

*PN Schedule Activities*

*List Box* The PN Schedule Activities list box will display the Name of
the Activity (actually the Name of its Activity Type), PN Required Date,
PN Performed Date, and the Close Date.

[Buttons]{.underline}:

**Associate PN Schedule**

**Activities** Pressing this button will invoke the multi-select PN
Schedule Activities Selection List (Exhibit 7-103a), from which the user
may select one or more Public Notification Activities to associate with
the violation. The software will select Public Notification Activities
that are associated to the Originating Violation(s) for the current PN
Violation (these are associated to the Originating Violation(s) through
the EIE or SIE enforcement actions that are linked to the originating
violations). If there are no Public Notification Activities associated
to the originating violations, the selection list will be blank. Sort
order the candidate Public Notification Activities by PN Required date
descending. If the user selects a Group Violation as the Originating
Violation, then use the first hidden Violation for the Group Violation
to read candidate Public Notification Activity records.

![](media/image115.png){width="5.998611111111111in"
height="2.8868055555555556in"}

[]{#__RefHeading___Toc139861185 .anchor}**Exhibit 7-103a.** PN Schedule
Activity Selection List

> The list of selected PN Schedule Activities will be returned to the
> list box area but will not be associated to the Violation until the
> **OK** button is selected on the Violation Maintenance Page.

**Disassociate PN**

**Schedule Activities** The user may highlight one or more records and
press **Disassociate PN Schedule Activities**. This action will cause
the software to remove the highlighted records from the list. Note that
the software will not commit the removal to the database at this point;
the removal will be committed to the database when the user presses
**OK** on the Violation Maintenance page.

**OK** Will close the page and return to the Violation Maintenance Page.
No database activities occur at this point. All changes are held until
the **OK** button is selected on the Violation Maintenance page.

**Cancel** Will close the page and return to the Violation Maintenance
Page. All changes are ignored.

**Help** Will invoke the online Help system for this page.

#### Violation Compliance Schedule Activity Association List

The Violation Compliance Schedule Activity Association List (Exhibit
7-104) will be invoked from the Violation Maintenance page by pressing
the **Compliance Schedule Activity(s)** button. It will list the
Compliance Schedule Activities that have already been associated with
the Violation. The user may associate additional Compliance Schedule
Activities by pressing the **Compliance Schedule Activity** button and
disassociate Compliance Schedule Activities by highlighting one record
and pressing **Disassociate Compliance Schedule Activity**.

![](media/image116.png){width="7.346527777777778in"
height="5.771527777777778in"}

[]{#__RefHeading___Toc139861186 .anchor}**Exhibit 7-104.** Violation
Compliance Schedule Activity Association List

[Protected Fields]{.underline}:

*Water System/*

*Facility Group*

*Box* The Water System No. and Name and WSF State Asgn ID and WSF Name
of the displayed violation.

*Violation Group*

*Box* Information about the displayed violation including its Year,
FedRep ID, Determination Date, \[Violation\] Type \[Code and Name\].

*Violation Period*

*Group Box* Contains the State Period Begin and End Dates and the
Federal Period Begin and End Dates.

*Compliance Schedule*

*Activities List box* The Compliance Schedule Activities list box will
display the Name of the Activity (actually Name of its Activity Type),
Due Date, Achieved Date, Reported Date, and Projected Date. Select
Compliance Schedule Activities that are associated to the violation.

[Buttons]{.underline}:

**Associate Compliance**

**Schedule Activities** Pressing this button will invoke the Compliance
Schedule Activities Selection List (Exhibit 7-105) in multi-select mode
from which the user may select one or more compliance schedule
activities to associate with the violation. The software will select
compliance schedule activities that are valid for the current Water
System and WSF.

![](media/image117.png){width="5.99375in" height="2.66875in"}

[]{#__RefHeading___Toc139861187 .anchor}**Exhibit 7-105.** Compliance
Schedule Activity Selection List Dialog Box

> The list of selected Compliance Schedule Activities will be returned
> to the list box area but will not be associated to the Violation until
> the **OK** button is selected on the Violation Maintenance Page.

**Disassociate**

**Compliance**

**Schedule Activity** The user may highlight one record and press
**Disassociate Compliance Schedule Activity**. This action will cause
the software to remove the highlighted record from the list (i.e.,
remove the foreign key of the Violation from the compliance schedule
activity record). Note that the software will not commit the removal to
the database at this point; the removal will be committed to the
database when the user presses **OK** on the Violation Maintenance page.

**OK** Will close the page and return to the Violation Maintenance Page.
No database activities occur at this point. All changes are held until
the **OK** button is selected on the Violation Maintenance page.

**Cancel** Will close the page and return to the Violation Maintenance
Page. All changes are ignored.

**Help** Will invoke the online Help system for this page.

## Exemptions/Variances

The *Exemptions/Variances* module supports maintenance of exemptions and
variances from a MCL or treatment technique for a public water system.

### Model Changes

Make the following changes to the existing (but unused) Deviation Table
(TFRDEVIA): (R5000:A.7.7.1.a)

Attribute Changes:

-   Remove Permitted values from Reason Code field (will be controlled
    by Sys Adm)

-   Increase size of Reason Code to 10.

-   Increase size of Reason Text to 2000 (varchar) and allow mixed case.

-   Increase size of Federal_fiscal_year_number to 4.

-   Add field d_initial_userid.

-   . (B.7.7.1.a)

-   Add field modified_mcl_measure_uom (text, 10, optional)

-   Change State Asgn Identification Number to be text, 10.

-   Remove:

> \-- D_generated_id_source_code
>
> \-- D_data_origin_code
>
> \-- D_first_identified_timestamp

Relationship Changes

-   Add relationship to FANL

> \-- Each Deviation sometimes (50%) authorizes a change to one or more
> Facility Analyte Levels. (disassociate)
>
> \-- Each FANL sometimes (1%) is a change authorized by one and only
> one Deviation. (disassociate)

-   Change relationship to Analyte Level Rule Assignment to be:

> \-- Each Deviation always is granted from one and only one Analyte
> Level Rule Assignment. (disassociate)
>
> \-- Each Analyte Level Rule Assignment can sometimes (1%) be granted
> one or more Deviations. (restrict)

New Code Table Row:

  -----------------------------------------------------------------------
  **Column Name**               **Value**
  ----------------------------- -----------------------------------------
  Code_Name                     EXRSNCD

  Cod_Characteristic            T

  Value_Length                  10

  Delete_Flag                   A

  Ownership_Code                ST

  D_Userid_Code                 SS2.0

  D_Last_Updt_Ts                1/1/2007

  Ref_Attribute_Name            TFRDEVIA.REASON_CODE

  Description_of_Cod            The coded value for exemption/variance
                                (deviation) reason code.
  -----------------------------------------------------------------------

### Page Flows

To add an Exemption or Variance, the user will select **Add** from the
*Monitoring/Exemption/Variances* menu to invoke the Water System Search.
A water system must be selected in order to create an exemption or
variance. Once a water system has been selected the application will
flow directly to the Exemption/Variance Maintenance page.

To change an Exemption/Variance, the user will select **Maintain** from
the *Monitoring/Exemptions/Variances* menu, which will invoke the
Exemption/Variance Search page.

####  Exemption/Variance Search

The user may access the Exemptions/Variances Search page from the
*Monitoring/Exemptions/Variances* menu by selecting **Maintain**. This
page is used to search records according to the search options shown in
the page (Exhibit 7-106). (R5000:A7.7.2.1.a)

The user's current Water System Group/Regulating Agency will be used as
an implied search criterion in all searches for records. This means that
the software will retrieve only Exemptions and Variances linked to water
systems that are, in turn, linked to the user's current Water System
Group/Regulating Agency.

  ---------------------------------------------------- ----------------------------------------------------
  ![](media/image1.png){width="1.5979166666666667in"   ![](media/image118.png){width="4.71875in"
  height="4.325in"}                                    height="4.303472222222222in"}

  ---------------------------------------------------- ----------------------------------------------------

**Exhibit 7-106.** Exemption/Variance Search

[Protected Fields]{.underline}:

*WS Group Used/*

*Regulating Agency*

*Used* This protected field will show the user's current Water System
Group Name or Regulating Agency depending on which the user has made
current. The software will dynamically change the prompt depending on
whether Water System Group Name or Regulating Agency is current. The
prompt will be "WS Group Used" if the user's current Water System Group
is valued, otherwise the prompt will be "Regulating Agency Used."

*Water System Name* The name of the selected water system.

*\[Analyte*

*Name\]* This protected field will display the name of the selected
analyte.

[Entry Fields]{.underline}:

*Water System No.* The specific Water System No., which consists of the
two-character state code plus the seven-character number field.

> The state code portion will default to the state_identification_code
> in the SYSTEM_VARIABLE entity view.

Once a valid Water System No. has been entered, the water system name
will be displayed.

When the supplied Water System No. is not valid, the Water System
Maintenance List will be presented in single-select mode displaying the
closest matching Water System No. at the top of the list. (Closest
matching means a match with the Water System No., sorted alphabetically,
that starts with the same text string as supplied.) Only Water Systems
that are part of the users current group designation will be presented.

> If a valid water system is entered but is not part of the user's
> current Water System Group or Government Agency, the following error
> message will be invoked: **WS is not part of current group/agency.
> Change group/agency to access this WS.**

*Analyte* *\[Code\]* The four-character analyte code that references an
analyte.

When a valid analyte code is provided the analyte name will be displayed
and the \[Analyte Name\] field and its **Go To** button will become
protected. When the value is removed the \[Analyte Name\] field and its
**Go To** button will become unprotected.

When an invalid value is provided the Analyte Maintenance List will be
presented in single-select mode where a selection can be made and
returned to this page, along with the analyte name.

**(B.7.7.2.1.a)**

*State Asgn ID* The state assigned identification number for the
Exemption or Variance. State Asgn ID is unique by database.

*Type Code* The type code of the instrument. Permitted values will be:

EX -- Exemption

VA -- Variance

> *Type Code* is an optional field.

*Effective Date*

*Range begin/end* The date range begin and end dates that will be used
to search for exemptions in effect at any time during the specified date
range.

If the begin date is entered and is greater than the provided end date,
the error message will be **End Date cannot be less than Begin Date.**

The begin date will be an optional field. The end date will be an
optional field and can be provided without a begin date.

> The end date can be removed by using the **Clear** button.

[Tab Sequence]{.underline}:

Water System No., Water System **Go To** button, Analyte \[Code\],
Analyte Code **Go To**, State Asgn ID, Type Code, Effective Date Range
Begin Date, Effectie Date Range End Date, **Search** button, **Clear**
button, **Cancel** button, **Help** button.

[Buttons:]{.underline}

Water System

**Go To** Pressing this button will invoke the Water System Maintenance
List in single-select mode; if the user has typed part of the Water
System No., it will be used in the search to invoke the Water System
Maintenance List. The user may select a water system from this list and
return to this page with both the Water System No. and name fields
populated.

Analyte

\[Code\] **Go To** Will present the Analyte Maintenance List in
single-select mode.

**Search**

> The user's current Water System Group/Regulating Agency will be used
> as an implied search criterion in all searches for Exemption/Variance
> records. This means that the software will retrieve only exemptions
> linked to a water system that is linked to the user's current Water
> System Group/Regulating Agency. If an exact Water System No. is
> entered, the software will validate that it belongs to the user's
> current Water System Group/Regulating Agency.

-   When searching the following options will be available:

    -   exact match on State Asgn ID This option will take precendence
        over all other criteria input.

> or

-   exact match on Water System No.

-   exact match on Type Code

-   exact match on Analyte Code (via the association to ALRA)

-   Overlap of exemption effective period with specified Effective Date
    Range

-   exact match on Water System No. and Type Code

-   exact match on Type Code and Analyte Code (via the association to
    ANALYTE)

> -- exact match on Water System No. and Analyte Code (via the
> association to ALRA)

-   exact match on Water System No., and Effective Date Range

-   exact match on Water System No., Analyte Code (via the association
    to ALRA), and Effective Date Range

> All resulting rows will be listed on the Exemption/Variance
> Maintenance List. If only one matching row is found, it will be
> presented directly on the Exemption/Variance Maintenance page in
> change mode.

**Clear** Will clear all input fields on the page so the user may enter
new search criteria. (The two-character state code of the Water System
No. will not be cleared and will be reset to the default installation
state code.)

**Cancel** Will close the page and return to the invoking page.

**Help** Will invoke online Help for this page.

####  Exemption/Variance Maintenance List

The user may access the Exemption/Variance Maintenance List (Exhibit
7-107) page from the *Monitoring/Exemption/Variances* menu by selecting
**Maintain** and requesting a search. This page is used to list
exemption records according to the search options provided on the
Exemption/Variance Search page. (R5000:A7.7.2.2.a)

  ---------------------------------------------------- ----------------------------------------------------
  ![](media/image1.png){width="1.5979166666666667in"   ![](media/image119.png){width="4.71875in"
  height="4.325in"}                                    height="4.24375in"}

  ---------------------------------------------------- ----------------------------------------------------

**Exhibit 7-107.** Exemption/Variance Maintenance List

[List Columns]{.underline}:

*State Asgn ID* The state assigned identification number for the
Exemption or Variance.

*Type Code* The type code of the instrument.

*Water System*

*No.* The water system to who the Exemption/Variance was established.

*Analyte* *Code* The Analyte Code for which the exemption was
established.

*Rule* The Rule abbreviation text for which the exemption was
established

*Begin Date* The exemption's effective date.

*End Date* The exemption's expiration date.

*Reason Code* The reason the exemption was established.

*Water System*

*Name* The name of the water system.

*Analyte Name* The name of the analyte.

[Menu Items]{.underline}:

**File**

> *Exit* Selecting **File/Exit** will return the user to the
> *SDWIS/STATE Home Page*.

**Edit**

> *Add* Selecting **Edit/Add** will display the Exemption/Variance
> Maintenance page in Add mode. This option will be enabled regardless
> of a selection having been made in the list area.
>
> If a Water System No. was provided as search criteria or other input
> into the creation of this list, the page will flow directly to the
> Exemption/Variance Maintenance page in add-mode with the Water System
> No. and name displayed. If no Water System No. was provided as input
> into the maintenance list, the water system search page will be
> presented so that a water system can be selected prior to the
> presentation of the Exemption/Variance Maintenance page.
>
> *Change* Selecting **Edit/Change** will display the Exemption/Variance
> Maintenance page with the selected exemption available for change.
> This option will be enabled only when one and only one exemption has
> been selected.
>
> *Delete* Selecting **Edit/Delete** will display the Exemption/Variance
> Delete Confirmation page (Exhibit 7-108) for the selected exemption.
> This option will be enabled only when one and only one exemption has
> been selected.
>
> ![](media/image120.png){width="3.7291666666666665in"
> height="3.3541666666666665in"}

**Exhibit 7-108.** Exemption/Variance Delete Confirmation

[Buttons]{.underline}:

-   **Yes** Will delete the Deviation table row

-   **No** Will cancel the delete request.

    **View**

> *Filter by* Selecting **View/Filter by** will let the user filter by
> the same fields listed for **View/Sort**. Use of this menu item will
> enable **View/Refresh**.
>
> *Refresh* Selecting **View/Refresh** will remove the filter and
> refresh the listing to the original search criteria. The menu item
> will then become disabled.
>
> *Search* Selecting **Edit/Search** will invoke the Exemption/Variance
> Search page. Prior search criteria will be present. Use the **Clear**
> button to remove all values, unless specifically restricted by a
> pre-determined page flow.
>
> *Sort* Selecting **View/Sort** will invoke the standard Sort page with
> the following fields available for sorting:

[Buttons:]{.underline}

**Menu Items** Will present the standard menu items dialog box.

**Scroll Buttons** Will scroll the list box in the direction of the
arrow displayed on the button.

[Protected Fields]{.underline}:

*WS Group Used/*

*Regulating Agency*

*Used* This protected field will show the user's current Water System
Group Name or Regulating Agency depending on which the user has made
current. The software will dynamically change the prompt depending on
whether Water System Group Name or Regulating Agency is current. The
prompt will be "WS Group Used" if the user's current Water System Group
is valued, otherwise the prompt will be "Regulating Agency Used."

*Number of rows*

*resulting from search*

*criteria used:* This protected field will show the total number of rows
that met the search criteria.

*Number of rows*

*displayed:* This protected field will show the total number of rows
that displayed in the list.

[Default Sort Order:]{.underline} Water System No. Ascending, Analyte
Code Ascending Begin date descending.

####  Exemption/Variance Maintenance

The user may access the Exemption/Variance Maintenance page in add mode
from the *Monitoring/Exemption/Variances* menu by selecting **Add** or
from the Exemption/Variance Maintenance List and selecting either
**Edit/Add or Edit/Change**. (R5000:A7.7.2.3.a)

  ---------------------------------------------------- ----------------------------------------------------
  ![](media/image1.png){width="1.5979166666666667in"   ![](media/image121.png){width="4.71875in"
  height="4.325in"}                                    height="4.270833333333333in"}

  ---------------------------------------------------- ----------------------------------------------------

> .

**Exhibit 7-109.** Exemption/Variance Maintenance

[Protected Fields]{.underline}

*Water System No.*

*and Name* The number and name of the water system to which the
exemption is established.

*\[Analyte\]* *Name* The name of the Analyte for which the Exemption or
Variance is granted (via direct association to Analyte).

*\[Rule\] Name* The Rule name for which the Exemption or Variance is
established.

*Level* *Type* The level type of the Analyte Level Rule Assignment. If
the threshold level type code is valued in the ALRA, it will display
'Contaminant'. If the measure level type code is valued in the ALRA, it
will display Detection.

*\[Level\]* *Measure* Will display either the threshold level type code
or the measure level type code from the ALRA.

*Create By/on* The d_initial_userid and d_initial_timestamp of when the
exemption was created.

*Last Updated by/on* The d_lastupdate_userid and d_lastupdate_timestamp
of when the exemption was last updated.

#### [Entry Fields]{.underline} {#entry-fields .unnumbered}

*Rule* The Rule abbreviation text. Rule is a required field and if left
blank the error message will be **Rule** **is a required field.**

> This field may not be modified in Change mode.

*Analyte* *Code* The 4-character, Analyte Code for which the Exemption
or Variances has been granted. Analyte Code is a required field and if
left blank the error message will be **Analyte Code is a required
field.**

> This field may not be modified in Change mode.

*State Asgn ID* The number assigned by the state to identify the
exemption. The value, which is alpha numeric, should be unique within
the Deviation table.

The State Asgn ID will be a required field. If not provided the error
message will be **State Asgn ID** **cannot be blank.**

This field will be protected in change mode.

*Type Code* The type code of the exemption. Permitted values will be:

EX -- Exemption

VA -- Variance

Type code is a required field. It will be protected in change mode.
(B.7.7.2.3.a)

*Approving* *Agency*

The name of the government agency that approved the exemption. When
tabbing off this field, if a value is supplied for which a government
agency cannot be found the Legal Entity Maintenance page will be
presented in single-select mode listing legal entities of type = 'GA'

> Approving Agency will be a required field*.* If left blank, the
> following error message will be invoked: **Approving Agency cannot be
> blank.**

*Effective Begin Date* The begin date of the exemption.

Effective Begin Date will be a required field and will be protected in
change mode. If not provided the error message will be **Begin Date is a
required field.**

*Effective End Date* The last date of effectiveness for the exemption.

Effective End Date will be an optional field. If provided, it cannot be
prior to the Effective Begin Date or the message will be **End Date
cannot be prior to Begin Date.**

*Reason Code* The reason for the exemption. The permitted values will be
retrieved from the permitted values table where code-name = 'EXRSNCD'

Reason Code will be an optional field.

*Reason Text* A free-form text area for documenting the exemption.

Reason Text will be an optional field.

*Alternate Compliance Level* *List Box*

A listing of alternate compliance levels by water system facilities with
which the water system must comply during the effective period of the
exemption or variance to insure there is no unreasonable risk to health.
When a Facility Analyte Level of MAX is recorded for a facility,
SDWIS/STATE checks MCL compliance against that level rather than the MCL
recorded as an Analyte Level.

[List Columns]{.underline}: WSF State Assgn ID, Control Level Type,
Measure, UOM Code, FANL Begin Date, FANL End Date.

Default Sort Order: Ascending WSF State Assgn ID.

[Tab Sequence]{.underline}:

Rule, Analyte \[Code\], \[Analyte Code\], Analyte Level Rule **Go To**,
**State Asgn ID**, **Type Code**, **Approving Agency**, **Approving
Agency** **Go To**, Effective Begin Date, Effective End Date, Reason
Code, Reason Text, Alternate Compliance Level **Add,** Alternate
Compliance Level **Change**, Alternate Compliance Level **Delete**,
**OK**, **Cancel**, **Help**.

[Buttons]{.underline}:

*\[Analyte Level Rule\]*

***Go To*** Will invoke the Analyte Level Rule Maintenance List in
single-select mode. This button will be disabled in change mode.

*\[Approving Agency\]*

***Go To*** Will invoke the Legal Entity Maintenance page in
single-select mode listing legal entities of type = 'GA.' This button
will be disabled in change mode.

*\[Alternate Compliance Level\]*

***Add*** Will present the Facility Analyte Level Maintenance page in
multi-select mode. The list will present all existing FANLs for all
water system facilities of the supplied Water System for the same
Analyte. The maintenance functions of Edit/Add and Edit/Change will also
be enabled.

The selected FANLs will be returned to the list but the associations
will not be made until the **OK** button is clicked on the
Exemption/Variance Maintenance Page.

If new FANLs are added or changed while in the FANL Maintenance
component, those changes are committed from the FANL Maintenance page.

*\[Alternate Compliance Level\]*

***Change*** Will present the Facility Analyte Level Maintenance page in
change mode. Any changes made to the FANL will be committed with the
**OK** button is clicked on the FANL Maintenance page.

*\[Alternate Compliance Level\]*

***Delete*** Will present the delete confirmation. If confirmed, the row
will be removed from the list but the association will not be deleted
until the **OK** button is clicked. This delete request only
disassociates the FANL from the Exemption/Variance. It does not delete
FANLS.

***OK*** The Analyte Level Rule is required. If one has not been
selected, present the Analyte Level Rule Maintenance List in
single-select mode.

All required fields as indicated above must be valued. If not, provide
the error message indicated.

*Duplicate check* The Exemption/Variance must be unique for the Water
System and Type Code and ALRA and with no overlap in effective begin/end
dates with any other exemption for the same water system and Type Code
and ALRA. If a duplicate is found, the error message will be **An**
**existing** **Exemption/Variance** **for this WS and ALRA**
**overlaps** **the** **proposed** **effective period.**

*Add-mode* Create a row in Deviation. Associate it to the Water System,
Government Agency, and Analyte Level Rule Asgmt specified.

Attribute processing:

-   Set Expiration Date to null if not provided.

-   Set d_initial userid and d_lastupdate_userid to the current userid

-   Set the d_initial_timestamp and d_lastupdate_timestamp to the
    current timestamp.

*Change-mode* Update the Deviation.

> Attribute processing:

-   Set Expiration Date to null if removed.

-   Set d_lastupdate_userid to the current userid

-   Set the d_lastupdate_timestamp to the current timestamp.

Both Modes If there are Alternate Compliance Levels to process in the
Alternate Level group box:

To add, associate the selected FANL to the Deviation.

To remove, disassociate the selected FANL from the Deviation.

**Cancel** Will present the standard cancel confirmation page.

**Help** Will invoke online Help for this page.