+------------------------+---------------------------------------------+
| ![](me                 | **Advisories, Known**                       |
| dia/image1.wmf){width= |                                             |
| "2.2083333333333335in" | **Issues, and Questions for SDWIS/STATE Web |
| height=                | Release 1.0 and Compatible SDWIS**          |
| "1.229861111111111in"} |                                             |
|                        | **Product Suite**                           |
| United States          |                                             |
| Environmental          |                                             |
| Protection Agency      |                                             |
|                        |                                             |
| Office of Ground Water |                                             |
| and Drinking Water     |                                             |
|                        |                                             |
| Contract No. EPA BPA   |                                             |
| OARMSC-SYS-04          |                                             |
|                        |                                             |
| SDWIS Project          |                                             |
|                        |                                             |
| Product Control No.    |                                             |
|                        |                                             |
| Sy                     |                                             |
| stalex-SDWIS-01-2.1d1B |                                             |
|                        |                                             |
| Deliverable No. 2.1d1  |                                             |
|                        |                                             |
| June 29, 2007          |                                             |
+------------------------+---------------------------------------------+

**ADVISORIES, KNOWN ISSUES, AND QUESTIONS**

**FOR SDWIS/STATE WEB RELEASE 1.0 AND COMPATIBLE SDWIS PRODUCT SUITE**

**CONTRACT NO. EPA BPA OARMSC-SYS-04**

**SDWIS PROJECT**

**Prepared for:**

**United States Environmental Protection Agency**

**Office of Ground Water and Drinking Water**

**Drinking Water Protection Division**

**1200 Pennsylvania Ave., NW**

**Washington, DC 20460**

**Contracting Officer Representative**

**Edward Cottrill**

**Prepared by:**

**SAIC Solutions Delivery Center**

**Science Applications International Corporation**

**6565 Arlington Boulevard**

**Falls Church, VA 22042**

**CONTENTS**

[1.0 INTRODUCTION 1](#introduction)

[2.0 SDWIS products 1](#sdwis-products)

[2.1 SDWIS Product Compatibility Matrix
1](#sdwis-product-compatibility-matrix)

[2.2 Installation, DBA and Administrator Issues (Web Server, SDWIS
Administrator)
2](#installation-dba-and-administrator-issues-web-server-sdwis-administrator)

[2.2.1 SDWIS Current Products List \-- Most Current Software
2](#sdwis-current-products-list----most-current-software)

[2.2.2 Adjust Tomcat Java Memory Settings on Web Server to Optimize
Performance
2](#adjust-tomcat-java-memory-settings-on-web-server-to-optimize-performance)

[2.2.3 Optimizing Performance for Client Server Components
4](#optimizing-performance-for-client-server-components)

[2.2.4 SDWIS/STATE Client Components and SDWIS/XML Sampling on Same
Stand-Alone Workstation
6](#sdwisstate-client-components-and-sdwisxml-sampling-on-same-stand-alone-workstation)

[2.2.5 CDS Setup Auto-Login/Scheduler and SDWIS/STATE 1.0.3 Client for
Oracle
6](#cds-setup-auto-loginscheduler-and-sdwisstate-1.0.3-client-for-oracle)

[2.2.6 Resetting Tomcat Timeout Variable
7](#resetting-tomcat-timeout-variable)

[2.2.7 ODBC Errors and SDWIS/STATE Client Components
7](#odbc-errors-and-sdwisstate-client-components)

[2.2.8 Running SDWIS/STATE and SQL Server 2005
9](#running-sdwisstate-and-sql-server-2005)

[2.2.9 Specify System DSN on ODBC Data Administrator Window
10](#specify-system-dsn-on-odbc-data-administrator-window)

[2.2.10 Using SDWIS/STATE with Select Only
10](#using-sdwisstate-with-select-only)

[2.2.11 Adding State Classification Codes During Schema Migration
11](#adding-state-classification-codes-during-schema-migration)

[3.0 SDWIS/STATE Web Release 1.0.3 12](#sdwisstate-web-release-1.0.3)

[3.1 SDWIS/STATE System Administration
12](#sdwisstate-system-administration)

[3.1.1 Cancel From Monitoring Period Maintenance List
12](#cancel-from-monitoring-period-maintenance-list)

[3.1.2 Cannot Delete User from System Administration User Maintenance
12](#cannot-delete-user-from-system-administration-user-maintenance)

[3.1.3 Maintaining User IDs in SDWIS/STATE
12](#maintaining-user-ids-in-sdwisstate)

[3.2 Legal Entities 13](#legal-entities)

[3.2.1 Legal Entity Association List 13](#legal-entity-association-list)

[3.3 Inventory 13](#inventory)

[3.3.1 \"Active\" PWS Can Be Changed to \"Proposed"
13](#active-pws-can-be-changed-to-proposed)

[3.3.2 Inactivating Water System and Non-TCR Schedules
13](#inactivating-water-system-and-non-tcr-schedules)

[3.3.3 Community Water System Needs Residential Population of at Least 1
13](#community-water-system-needs-residential-population-of-at-least-1)

[3.3.4 Dynamic WS Group Federal Type Combinations C + NC/ C+NTNC
13](#dynamic-ws-group-federal-type-combinations-c-nc-cntnc)

[3.3.5 Water System Modification Page and Last Listed Sampling Point
14](#water-system-modification-page-and-last-listed-sampling-point)

[3.3.6 Water System Modification Page -- Print Function
14](#water-system-modification-page-print-function)

[3.3.7 Sampling Point Maintenance List (by Water System) Information
15](#sampling-point-maintenance-list-by-water-system-information)

[3.3.8 Water System Facility Flows Maintenance -- Changing Water Type
15](#water-system-facility-flows-maintenance-changing-water-type)

[3.3.9 Presentation Order for TCR Sample Schedule Changes
15](#presentation-order-for-tcr-sample-schedule-changes)

[3.4 Site Visits 16](#site-visits)

[3.4.1 Highest Deficiency Severity Level Defaults to NON.
16](#highest-deficiency-severity-level-defaults-to-non.)

[3.4.2 Setting Schedule Type When Creating Schedule from Site Visit
Maintenance
16](#setting-schedule-type-when-creating-schedule-from-site-visit-maintenance)

[3.4.3 Site Visit Maintenance to Custom Compliance Schedule \-- Select
Schedule Type
16](#site-visit-maintenance-to-custom-compliance-schedule----select-schedule-type)

[3.5 Sampling 16](#sampling)

[3.5.1 Sample Result Uniqueness Criteria
16](#sample-result-uniqueness-criteria)

[3.5.2 State Classification Code Drop Down May be Blank on Sample
Maintenance
16](#state-classification-code-drop-down-may-be-blank-on-sample-maintenance)

[3.5.3 Sample With No Sampling Point \-- Under One Scenario
17](#sample-with-no-sampling-point----under-one-scenario)

[3.5.4 Lab State ID No. Not Saved on Lead and Copper Sample Maintenance
17](#lab-state-id-no.-not-saved-on-lead-and-copper-sample-maintenance)

[3.5.5 Adding Individual Composite Sample Members
17](#adding-individual-composite-sample-members)

[3.5.6 Non-Numeric Data and MRDL Chlorine/Chloramines Summary -- DS
18](#non-numeric-data-and-mrdl-chlorinechloramines-summary-ds)

[3.5.7 Data Validation Check for General Sample Result Page Measure
18](#data-validation-check-for-general-sample-result-page-measure)

[3.5.8 SOC Sample Result \"Less Than\" Reporting Limit UOM
18](#soc-sample-result-less-than-reporting-limit-uom)

[3.5.9 LCR Sample Maintenance -- Two Issues
18](#lcr-sample-maintenance-two-issues)

[3.5.10 Dates Not Saved \-- LCR Sample Summary Modification
18](#dates-not-saved----lcr-sample-summary-modification)

[3.5.11 LCR Sample Summary Maintenance -- 90^th^ % With Value of 0
19](#lcr-sample-summary-maintenance-90th-with-value-of-0)

[3.5.12 Sample/Sample Summary Search Not Limited to Selected Lab
19](#samplesample-summary-search-not-limited-to-selected-lab)

[3.5.13 Coliform Sample Summary Maintenance Date Summary Received
19](#coliform-sample-summary-maintenance-date-summary-received)

[3.5.14 Scenario Where Standard Method Erroneously Linked to TCR Sample
19](#scenario-where-standard-method-erroneously-linked-to-tcr-sample)

[3.5.15 Coliform Sample List 20](#coliform-sample-list)

[3.5.16 MDBP Summary Maintenance\-- Number of Samples Exceeded
20](#mdbp-summary-maintenance---number-of-samples-exceeded)

[3.5.17 General Result Maintenance - Add New Result Does Not Carry Data
Forward
20](#general-result-maintenance---add-new-result-does-not-carry-data-forward)

[3.5.18 General Sample Maintenance New Sample and Retention of Analyte
Group
20](#general-sample-maintenance-new-sample-and-retention-of-analyte-group)

[3.6 Monitoring 20](#monitoring)

[3.6.1 Error Using Sample Schedule Template to Enter Schedule's Sampling
Points
20](#error-using-sample-schedule-template-to-enter-schedules-sampling-points)

[3.6.2 Update of Sample Schedule Templates Not Limited to System
Administrator
21](#update-of-sample-schedule-templates-not-limited-to-system-administrator)

[3.6.3 Disassociate Violations To Close Non-TCR Sample Schedule
21](#disassociate-violations-to-close-non-tcr-sample-schedule)

[3.6.4 Non-TCR Sample Schedule In Sample Schedule Package
21](#non-tcr-sample-schedule-in-sample-schedule-package)

[3.6.5 Unnecessary Warning Messages On Entering Confirmation Schedules
22](#unnecessary-warning-messages-on-entering-confirmation-schedules)

[3.6.6 Total Coliform Source Water Monitoring Requirement
22](#total-coliform-source-water-monitoring-requirement)

[3.6.7 Deactivating Water System with Open TCR Schedule
22](#deactivating-water-system-with-open-tcr-schedule)

[3.6.8 TCR Positive Results not in Positive TCR Result Validation List
23](#tcr-positive-results-not-in-positive-tcr-result-validation-list)

[3.6.9 Enforcement Action on Violation Maintenance
23](#enforcement-action-on-violation-maintenance)

[3.6.10 Federal Violation Period End Date for Violation Types 51 and 52
23](#federal-violation-period-end-date-for-violation-types-51-and-52)

[3.6.11 Associating Sample Results to Violation.
23](#associating-sample-results-to-violation.)

[3.7 Enforcement 24](#enforcement)

[3.7.1 Compliance Schedule Activity Maintenance
24](#compliance-schedule-activity-maintenance)

[3.7.2 Listing Government Agencies In Enforcement Action Maintenance
24](#listing-government-agencies-in-enforcement-action-maintenance)

[3.7.3 Compliance Schedule Activity 24](#compliance-schedule-activity)

[3.8 CDS Setup 24](#cds-setup)

[3.8.1 CDS Setup Producing MCL Violations for Future Monitoring Periods
24](#cds-setup-producing-mcl-violations-for-future-monitoring-periods)

[3.8.2 Report for Candidate MCL Violations
25](#report-for-candidate-mcl-violations)

[3.8.3 Generating MCL Violations 25](#generating-mcl-violations)

[3.8.4 CDS Setup Needs Inactivated Water System Activity Date Valued
25](#cds-setup-needs-inactivated-water-system-activity-date-valued)

[3.8.5 Gross Alpha Substitute for Adjusted Gross Alpha, Uranium, and
Rad-226
26](#gross-alpha-substitute-for-adjusted-gross-alpha-uranium-and-rad-226)

[3.8.6 Duplicate Combined Results 27](#duplicate-combined-results)

[3.8.7 User-Entered MRDL Summaries Not Included in RAA Calculation
28](#user-entered-mrdl-summaries-not-included-in-raa-calculation)

[3.8.8 Confirmation Samples Not Used in Calculating Monitoring Period
Averages
28](#confirmation-samples-not-used-in-calculating-monitoring-period-averages)

[3.8.9 CDS_GET_DECIMAL_PRECISION Error
28](#cds_get_decimal_precision-error)

[3.8.10 CDS Setup Advisory 55 29](#cds-setup-advisory-55)

[3.8.11 DELETE-MDBP_SUMMARY Error 29](#delete-mdbp_summary-error)

[3.8.12 Advisory - CDS Setup Calculation of Lead and Copper 90^th^
Percentiles
30](#advisory---cds-setup-calculation-of-lead-and-copper-90th-percentiles)

[3.8.13 Sometime Erroneous Advisory About Missing DSRD or SDRD
30](#sometime-erroneous-advisory-about-missing-dsrd-or-sdrd)

[3.8.14 CDS Setup Sometimes Creates Two Combined Radium Results
31](#cds-setup-sometimes-creates-two-combined-radium-results)

[3.9 Compliance Determination 31](#compliance-determination)

[3.9.1 Unexpected Preliminary TCR Violations After TCR Compliance
31](#unexpected-preliminary-tcr-violations-after-tcr-compliance)

[3.9.2 TCR Compliance Report 33](#tcr-compliance-report)

[3.9.3 TCR Compliance Report Error Message
34](#tcr-compliance-report-error-message)

[3.9.4 TCR Compliance Report - Run Time
34](#tcr-compliance-report---run-time)

[3.9.5 Chem/Rad M&R Compliance and Unexpected Candidate Violations
34](#chemrad-mr-compliance-and-unexpected-candidate-violations)

[3.9.6 Chlorine Dioxide Exceedence 34](#chlorine-dioxide-exceedence)

[3.9.7 MRDL Compliance Report Not Including Samples Required/Missing
35](#mrdl-compliance-report-not-including-samples-requiredmissing)

[3.9.8 Results Alert Report and Results Taken Outside Selected
Monitoring Period
37](#results-alert-report-and-results-taken-outside-selected-monitoring-period)

[3.9.9 Analyte Code Not Migrated for Compliance Schedule Activity
Violation
37](#analyte-code-not-migrated-for-compliance-schedule-activity-violation)

[3.9.10 Candidate M&R Violation When WS Samples for Substitute Analyte
37](#candidate-mr-violation-when-ws-samples-for-substitute-analyte)

[3.9.11 Compliance Decision Report Processing Error Message
38](#compliance-decision-report-processing-error-message)

[3.9.12 CDS Report Log Maintenance List Filter
38](#cds-report-log-maintenance-list-filter)

[3.10 RELATION.MDB 38](#relation.mdb)

[3.10.1 Some Tables Need to be Re-linked and Relationships Changed
38](#some-tables-need-to-be-re-linked-and-relationships-changed)

[3.10.2 SS-TC Rpl Smpls Qry Not Working
39](#ss-tc-rpl-smpls-qry-not-working)

[3.11 CCR Fact Sheet 39](#ccr-fact-sheet)

[3.12 Performance Advisories for Specific SDWIS/STATE Web Pages
39](#performance-advisories-for-specific-sdwisstate-web-pages)

[4.0 SDWIS/XML Sampling 1.0.3 40](#sdwisxml-sampling-1.0.3)

[4.1 XML Files Limited to Data From One Lab per File
40](#xml-files-limited-to-data-from-one-lab-per-file)

[4.2 Flagging Results that Exceed Lab Reporting Level
41](#flagging-results-that-exceed-lab-reporting-level)

[4.3 Navigation Bar Links Do Not Show on All Pages
41](#navigation-bar-links-do-not-show-on-all-pages)

[4.4 Delete Option Not Working When Viewing Emailed Report
41](#delete-option-not-working-when-viewing-emailed-report)

[4.5 Method Code Part of Uniqueness for Sample Analytical Result
41](#method-code-part-of-uniqueness-for-sample-analytical-result)

[5.0 SDWIS/Migration to STATE 1.0 41](#sdwismigration-to-state-1.0)

[5.1 Error "Requested Resource (/MTS/jsp/secure) Not Available."
41](#error-requested-resource-mtsjspsecure-not-available.)

[5.2 Processing Enforcement Actions 42](#processing-enforcement-actions)

[5.3 Exception Message When Importing XML File To Staging Table
42](#exception-message-when-importing-xml-file-to-staging-table)

[6.0 SDWIS/FedRep 2.0 and SDWIS/ODS 2.0
42](#sdwisfedrep-2.0-and-sdwisods-2.0)

[6.1 Reasons SDWIS/FedRep Extraction May Not Create XML Document
42](#reasons-sdwisfedrep-extraction-may-not-create-xml-document)

[6.2 Does SDWIS/FedRep Work with a JDBC Driver Instead of ODBC?
42](#does-sdwisfedrep-work-with-a-jdbc-driver-instead-of-odbc)

[6.3 SDWIS/FedRep and MS IIS on Web Server
43](#sdwisfedrep-and-ms-iis-on-web-server)

[6.4 SDWIS/FedRep Extracts Expected Data, but Validation Rejects 100%
43](#sdwisfedrep-extracts-expected-data-but-validation-rejects-100)

[6.5 SDWIS/FedRep and Generating Expected HTML Reports
43](#sdwisfedrep-and-generating-expected-html-reports)

[6.6 403 Error \-- Access Not Permitted
43](#error----access-not-permitted)

[6.7 Missing Extraction Begin Date for Inventory
44](#missing-extraction-begin-date-for-inventory)

[6.8 Missing State Counts on SDWIS/FedRep Summary Report
44](#missing-state-counts-on-sdwisfedrep-summary-report)

[6.9 Transfer XML document to the State Node
44](#transfer-xml-document-to-the-state-node)

[6.10 Extraction creates an empty XML document.
44](#extraction-creates-an-empty-xml-document.)

[6.11 SDWIS/FedRep and SDWIS/STATE Web Release 1.0
44](#sdwisfedrep-and-sdwisstate-web-release-1.0)

[6.12 Reporting Inactive Water System and Facilities
45](#reporting-inactive-water-system-and-facilities)

[6.13 Reporting Water System Facility Flows
45](#reporting-water-system-facility-flows)

[6.14 Reporting Locational Information
45](#reporting-locational-information)

[6.15 Reporting Geographical Information
46](#reporting-geographical-information)

[6.16 Reporting Legal Entities 46](#reporting-legal-entities)

[6.17 Configuring User IDs and Roles
46](#configuring-user-ids-and-roles)

[6.18 Refresh SDWIS/ODS Test Database
46](#refresh-sdwisods-test-database)

[6.19 Associate Violations to Enforcements
46](#associate-violations-to-enforcements)

[6.20 Submitting Data Outside of the Domain
46](#submitting-data-outside-of-the-domain)

[6.21 Duplicate-by-Data Site Visits 47](#duplicate-by-data-site-visits)

[6.22 Active Historical/Unreported Water System Facilities.
47](#active-historicalunreported-water-system-facilities.)

[7.0 DRINKING WATER WATCH 1.2 47](#drinking-water-watch-1.2)

[7.1 Contact List is Individuals 47](#contact-list-is-individuals)

[7.2 Criteria for Analytical Results In Non-Coliform Sample/Results by
Analyte
47](#criteria-for-analytical-results-in-non-coliform-sampleresults-by-analyte)

[7.3 Multiple Analytical Results In Non-Coliform Sample/Results by
Analyte
48](#multiple-analytical-results-in-non-coliform-sampleresults-by-analyte)

[7.4 Multiple PBCU Summary Results -- Appearance of Duplicates
48](#multiple-pbcu-summary-results-appearance-of-duplicates)

[7.5 Lowercase for DWW.War File 48](#lowercase-for-dww.war-file)

[7.6 Getting State Map to Work Where County Name Has Spaces
48](#getting-state-map-to-work-where-county-name-has-spaces)

[8.0 SDWIS/LAB TO STATE 1.0 49](#sdwislab-to-state-1.0)

[8.1 Exception Errors When Validating XML Document
49](#exception-errors-when-validating-xml-document)

[8.2 Transfer XML document to SDWIS/XML Sampling
49](#transfer-xml-document-to-sdwisxml-sampling)

**APPENDIX A** Summary of RELATION.MDB Queries

+-----------------------------------------------------------------------+
| ![](media/image3.wmf){width="0.5111111111111111in"                    |
| height="0.2611111111111111in"}**NOTE:**                               |
|                                                                       |
| **The page numbers on the Contents page work as hyperlinks. Once you  |
| have used a hyperlink, a toolbar with back and front arrows will      |
| appear, enabling you to navigate through the document.**              |
+-----------------------------------------------------------------------+

# INTRODUCTION

The *Advisories, Known Issues, and Questions for the SDWIS/STATE Web
Release1.0 and Compatible SDWIS Product Suite* document contains a
collection of advisories, known issues, and frequently asked questions
to assist you as you use the SDWIS Product Suite. Most items originated
as user support questions, and in some cases, you have supplied the
"workaround." This document is intended as a living resource for SDWIS
product users, where you can quickly search for and find answers to
questions you may have about how the software works, or more quickly
find a workaround for a known discrepancy. This document updates the
previous version of this document, published in April 2005 (which
targeted SDWIS/STATE 8.0 and its compatible product suite).

This document contains sections covering SDWIS/STATE Web Release 1.0.3
online components, SDWIS/FedRep 2.0, SDWIS/ODS 2.0, SDWIS/XML Sampling
1.0.3, SDWIS/Migration to SDWIS/STATE 1.0, Drinking Water Watch 1.2, and
other compatible SDWIS products. At your request, this document is
organized by function, to provide a single place for you to check when
you have a question or problem while working in a specific SDWIS area.
Prior to using a SDWIS product, it is still essential to read the
release notes, installation guides, and user guides that accompany them.

Most of the SDWIS software/software user documentation referenced in
this document is available from EPA's web site:
<http://www.epa.gov/safewater/sdwis_st/aboutstate.html>

If the software or documentation for which you are searching has not yet
been posted to this web site, contact SDWIS User Support to obtain a
copy:

-   SDWIS User Support Hotline: 703-292-6298.

```{=html}
<!-- -->
```
-   SDWIS User Support Email: <sdwis@saic.com>.

# SDWIS products 

## SDWIS Product Compatibility Matrix

Exhibit 1 lists SDWIS product versions which work with each other. This
document contains information about most of the products listed under
column **Product Name -- Current**. For information about products
listed under column **Product Name -- Previous**, consult *Advisories,
Known Issues, and Questions for the SDWIS Product Suite*, released April
13, 2005.

  -----------------------------------------------------------------------
  **Product Name -        **Product Name -        **Product Name -
  Current**               Future**                Previous**
  ----------------------- ----------------------- -----------------------
  SDWIS/STATE Web 1.0.3   SDWIS/STATE 2.0         SDWIS/STATE 8.0

  SDWIS/FedRep 2.0        SDWIS/FedRep 3.0        SDWIS/FedRep 1.2.2

  SDWIS/ODS 2.0           SDWIS/ODS 3.0           N/A

  SDWIS/XML Sampling      SDWIS/XML Sampling 2.0  SDWIS/Sampling via EDI
  1.0.3                                           8.0

  SDWIS/Lab to State 1.0  SDWIS/Lab to State 2.0  N/A

  SDWIS/Migration to      SDWIS/Migration to      SDWIS/Migration to
  STATE 1.0               STATE 2.0               STATE 8.0/8.1

  Drinking Water Watch    Drinking Water Watch    Drinking Water Watch
  1.2                     2.0                     1.1

                          SDWIS/STATE ToGo Oracle SDWIS/STATE ToGo Oracle
                          2.0                     1.1

  SDWIS/eDV 1.0           SDWIS/eDV 2.0           SDWIS/eDV Prototype

                                                  SDWIS ESS Bridge 8.0 --
                                                  Oracle and SQL Server

  SDWIS/ODS QA Import     SDWIS/ODS QA Import     N/A
  Utility 2.0             Utility 3.0             

  SDWIS/ODSWeb 2.0        SDWIS/ODSWeb 3.0        N/A

  \*Local SNC Tool 2.0                            
  -----------------------------------------------------------------------

**Exhibit 1.** SDWIS Compatibility Matrix

## Installation, DBA and Administrator Issues (Web Server, SDWIS Administrator)

### SDWIS Current Products List \-- Most Current Software

Question: I\'m about to install a new SDWIS product. How can I make sure
I have the most current software?

Answer: Use the SDWIS Current Products List---this gives you the most
current SDWIS product releases. **As of publication of this document,
the SDWIS Current Products List was last updated May 1, 2007.** Any
previous version of this list is no longer valid. If you aren't sure you
have the most recent list, please contact SDWIS User Support.

### Adjust Tomcat Java Memory Settings on Web Server to Optimize Performance

You may need to adjust your Java memory settings in Apache Tomcat to
optimize SDWIS product performance -- especially web pages. The two most
important JVM settings are MaxPermSize and Max JVM Heap Allocation.
Since the release of the SDWIS/STATE Web Rel 1.0 Installation Guide,
recommendations for these settings have been revised. In general, the
following guidelines apply:

-   MaxPermSize + Max JVM Heap Allocation \< 75% of web server's total
    RAM.

-   Initial PermSize = Minimum PermSize = MaxPermSize

-   Initial JVM Heap = Minimum JVM Heap = Max JVM Heap

Note: The official term Sun uses is "minimum" but in the context of JVM
settings, Apache Tomcat uses the term "initial". Also, Windows 2000/2003
Server documentation (excluding Enterprise Edition and 64-bit OS)
indicates the maximum amount of memory that can be supported is 4GB with
a maximum of 2GB allocated to any application (e.g., Tomcat).

If your web server has 1 GB RAM, the following JVM settings are
suggested:

-   Initial PermSize = Minimum PermSize = MaxPermSize = 256 MB

-   Initial JVM Heap = Minimum JVM Heap = Max JVM Heap = 512 MB

If your web server has 2 GB RAM (or more), the following JVM settings
are suggested:

-   Initial PermSize = Minimum PermSize = MaxPermSize = 512 MB

-   Initial JVM Heap = Minimum JVM Heap = Max JVM Heap = 1024 MB

To set or change the JVM settings, access the Apache Tomcat Properties
page by selecting Desktop Start-\>Programs-\>Apache Tomcat
5.0-\>Configure Tomcat or by going directly to the folder where Tomcat
is installed (i.e. C:\\Tomcat-5.0.28\\bin) and clicking on tomcat5w.exe.

A.  To set JVM PermSize, add the following under the Java Options box of
    the Apache Tomcat Properties page:

```{=html}
<!-- -->
```
(1) If your web server has 1 GB RAM

-   -Dserver

-   -XX:PermSize=256m (this is initial or minimum PermSize)

-   -XX:MaxPermSize=256m

(2) If your web server has 2 GB RAM (or more)

-   -Dserver

-   -XX:PermSize=512m (this is initial or minimum PermSize)

-   -XX:MaxPermSize=512m

B.  To set JVM Heap Size, use the same Apache Tomcat Properties page

```{=html}
<!-- -->
```
(1) If your web server has 1 GB RAM

-   Set the Initial/Minimum memory pool to 512MB

-   Set the Maximum memory pool to 512MB.

(2) If your web server has 2 GB RAM (or more)

-   Set the Initial/Minimum memory pool to 1024MB

-   Set the Maximum memory pool to 1024MB.

After you change the settings, restart Tomcat by starting Apache Tomcat
service in the Control Panel\>\>Administrative Tools\>\> Services (or by
double-clicking startup.bat located under Tomcat Home\\bin folder, for
example c:\\tomcat-5.0.28\\bin).

Using the above settings, you should not need to stop/restart the Tomcat
service on your web application server on a regular basis (i.e.
nightly). However, if you wish to do this, the easiest way is to install
Tomcat as a service in your Windows environment (as shown in the
SDWIS/STATE Web 1.0 Installation Guide), then use the Windows Task
Scheduler to nightly stop and start the Apache Tomcat service.  You
create a batch file (e.g. ReSTART_Tomcat.Bat) using the following two
sample commands:

%windir%\\system32\\net.exe stop \"Apache Tomcat\"

%windir%\\system32\\net.exe start \"Apache Tomcat\"

Add a new task using Windows "Add Scheduled Task" wizard, selecting the
batch file to be run nightly at any specified time (on week nights
and/or week ends).

### Optimizing Performance for Client Server Components

[*For Oracle Users:*]{.underline}

If you find the performance of the client-server component of
SDWIS/STATE Web Rel 1.0 to be slower than you expect for a new
installation, consider fine-tuning memory allocation storage parameters
for the database instance.

If performance declines over a period of time, you may need to optimize
your data schema. To optimize performance, run the REBUILD_INDEXES.SQL
script (included under the SSWR10_DBUTILITIES\\DBASCRIPTS directory of
the installation package), followed by the Oracle 9i Analyze utility at
least once a week. Length of running time may vary from a few minutes to
a several hours, depending on the size of the database.

When running the Oracle 9i Analyze utility, note that Oracle provides
two optimizer modes that determine the best access path to the data. The
rule-based optimizer is older and is based strictly on the syntax of the
SQL being run. The cost-based optimizer is newer and is based on
statistics available internally to the optimizer engine. The Oracle
Database Administrator needs to ensure that the value for the
optimizer_mode parameter in the init.ora file is set to \"CHOOSE.\"
Starting from Oracle 9i (9.02), the default value for optimizer_mode is
\"CHOOSE.\" So if you do not see the optimizer_mode parameter in the
init.ora file, it has already defaulted to \"CHOOSE.\" The Oracle engine
uses table/index statistics and chooses the most cost-effective
execution plan thereby reducing the response time. Oracle provides a
PL/SQL package called dbms_utility that contains the procedure
analyze_schema. By executing the following in SQL\*Plus, the appropriate
statistics are generated and available to the optimizer. \"XX\" in the
example below should be replaced with the two-letter state code (e.g.,
NY).

**execute sys.dbms_utility.analyze_schema (\'XXR10\', \'COMPUTE\');**

Running the REBUILD_INDEXES.SQL script or the Analyze utility should
improve many performance issues.

Most importantly, if you use resource plans in the database, make sure
the user who runs batch processes (e.g., CDS Setup) belongs to the
highest-level resource consumer group. It is recommended that you run
these resource-intensive batch processes during off-peak hours so as not
to affect other SDWIS/STATE Client functions.

[*For SQL Server Users:*]{.underline}

If you find the performance of the client-server component of
SDWIS/STATE Web Rel 1.0 to be slower at all times (i.e., both peak and
off-peak times) for a brand new installation, consider fine-tuning
memory allocation parameters for the database. The following
recommendations may help if performance degrades over time:

Make sure up-to-date table/index statistics are available for the SQL
Server engine to use Cost-Based Optimization (CBO) wisely in choosing
the right execution plan, thereby reducing response time. This can be
achieved by enabling \"Auto Create Statistics\" and \"Auto Update
Statistics\" options on the database level or by executing system stored
procedure sp_dboption with appropriate values. Though online
applications benefit significantly from this, other resource intensive
batch operations such as *CDS Setup*, CDS Reports, and TCR Compliance
Determination/TCR NCD slow down. For performance reasons you should run
these batch processes during off-peak hours, making sure you disable the
\"Auto Create Statistics\" and \"Auto Update Statistics\" options during
that time.

Try to minimize Input/Output (I/O) calls by reorganizing table and index
spaces. More I/O calls adversely impact application performance.
Executing DBCC DBREINDEX or DBCC INDEXDEFRAG commands frequently can
consolidate index space that gets fragmented more quickly. Reorganizing
table and index spaces can be scheduled to run on a specific time and
day using a \"database maintenance plan\" for the database. Care should
be taken that \"database maintenance plan\" is not scheduled to run
during the time of other resource intensive batch operations such as
*CDS Setup*, CDS Reports, and TCR Compliance Determination/TCR NCD.

[*For MS Access Queries:*]{.underline}

You may find that some MS Access queries perform slowly or may actually
time-out before completion. If you have performed the previously
mentioned steps to increase the performance of the database, you may
need to change the way that you are pulling data from the database. A
standard select query from MSACCESS places the processing burden on the
client computer. This means that the processing power of the client
computer can have a significant impact on the time it takes a specific
query to run. The number of tables included in the query along with the
amount of data in those tables will also have a significant impact on
the time it takes an MS Access query to run. With this in mind, if you
are going to build an MS Access query that looks for monitoring period
averages and the sample results that make up that monitoring period
average, your query will include many of the largest tables in
SDWIS/STATE: TINWSYS, TINWSF, TMNSASCH, TMNMNR, TSAANLYT, TMNMPRD,
TMNSSMPA, TMNCMCLV, TMNMPA, TSASAMPL, TSASAR, TSASMPPT. Any query that
includes all of these tables may run into performance problems on a
computer that does not have sufficient processing power. The best way to
increase performance in this situation is to create a Pass-Through query
in MSACCESS. This will require you to be able to write an SQL-specific
query - that is to say, a SQL query that conforms to the syntax required
by the SQL database server to which you are sending the query (see MS
Access help for more information). By creating a pass-through query, the
processing power required to run the query is transferred to the
database server rather than the client computer. This will result in a
significant increase in performance from the query.

### SDWIS/STATE Client Components and SDWIS/XML Sampling on Same Stand-Alone Workstation

Issue: When I try to log into CDS Setup (or any SDWIS/STATE Client
component), I get a message that states either \"invalid
username/password; logon denied\" or \"The following User ID is not a
valid SDWIS ID. Please see the SDWIS Administrator to obtain access.\"
Why does this happen?

Answer: This happens when the UserID/password that is being used to log
in with is not a valid username in both Oracle and SSWr1. One cause of
this message is if the computer you are using also has SDWIS/XML
Sampling installed onto it. As part of installing SDWIS/XML Sampling,
you are required to run the SchemaUtility.bat file. This file updates
the C:\\WINDOWS\\iefgdic.ini file with username/password information
used by SDIWS/XML Sampling. The iefgdic.ini file is also used by the
SSWr1 client applications to store connection information, including
UserID. If you try to log into the SSWr1 Client after the
SchemaUtility.bat file has been run, the SSWr1 Client will try logging
into the database using the logon information stored in the iefgdic.ini
file, if the UserID/password isn\'t a valid pair to log into the
database with, you will get the previously mentioned error.

Resolution: Following are the available workarounds for this issue:

1.  Install SDWIS/XML Sampling and SSWr1 Compliance Determination
    (client components) on separate workstations

2.  Make the schema owner a valid SDWIS user

3.  After running the SchemaUtility.bat, edit the iefgdic.ini file so
    that it no longer stores a schema password, in the following example
    you would remove Schema Password: SQLPassword1=Schema Password
    (would require you to manually log in when using both the SSWr1
    Client and SDWIS/XML Sampling)

4.  Set up batch files that copy the appropriate version of the
    iefgdic.ini file to the Windows directory prior to the scheduled
    running of either SDWIS/XML Sampling or CDS Setup.

### CDS Setup Auto-Login/Scheduler and SDWIS/STATE 1.0.3 Client for Oracle

Issue: If your [first]{.underline} installation of SDWIS/STATE Web 1.0
for Oracle is with the SDWIS/STATE 1.0.3 package, once you install
SDWIS/STATE 1.0.3 Client software, there is a problem with establishing
the CDS Setup Auto-Login/Scheduler. [This issue does not apply to all
primacy agencies.]{.underline} This issue does *not* apply to your
agency if you are (1) using SQL Server or (2) you installed/were using
SDWIS/STATE Web Rel. 1.0 Oracle with CDS Setup Auto- Login -- prior to
installing SDWIS/STATE 1.0.3 Client Server for Oracle.

Workaround: SDWIS/STATE 1.0.3 Client assumes you have installed
SDWIS/STATE Web Rel. 1.0. If you want to run the CDS Setup
Auto-Login/Scheduler, make sure to set it up while you are using the
SDWIS/STATE Web Rel. 1.0 Client software -- before you SDWIS/STATE 1.0.3
Client. The steps to do this are as follows:

-   Backup any items in the C:\\SDWIS folder that may be needed (i.e.
    C:\\SDWIS\\CDS\\SETUP folder, relation.mdb, etc.)

-   Delete the C:\\APPS\\SSWr1 folder

-   Delete the C:\\SDWIS folder

-   Install the SDWIS/STATE Web Rel. 1.0 client

-   Configure the Auto-Login using the 1.0 client

-   Install the SDWIS/STATE 1.0.3 Patch

-   Restore the backed up contents of the C:\\SDWIS folder

-   At this point the auto-login carries over the login info previously
    entered and will work

###  Resetting Tomcat Timeout Variable

The Tomcat timeout variable can be set by the Web Administrator. It is
stored in:

\[Tomcat Directory\]\\webapps\\SDWIS\\WEB-INF\\web.xml

Towards the bottom of the document you will find:

> \<session-config\>
>
> \<session-timeout\>30\</session-timeout\>
>
> \</session-config\>

Time is stored in minutes. Replace the default '30' with the desired
minutes and reboot Tomcat. Some primacy agencies are using 60 minutes as
default; others have kept 30 minutes as default.

### ODBC Errors and SDWIS/STATE Client Components

Question: Why do I get ODBC errors when I run the client server part of
SSWr1?

Answer: For Oracle users, when an ODBC error occurs, a combination of
the following errors may display while using MSACCESS:

-   "ODBC-call failed."

-   "\[Oracle\]\[ODBC Oracle Driver\]\[Oracle OCI\]ORA-00904: invalid
    column name \[#904\]."

-   "Microsoft Access can't open the table in Datasheet view."

An ODBC error may occur for several reasons. Generally, resolving an
issue with one of the following items will also resolve this error.

-   First, verify that only one System or User Data Source Name (DSN) is
    created for the database driver (e.g., Oracle ODBC driver) and is
    named SDWIS. We recommend that you create a System DSN rather than a
    User DSN. A System DSN is available to all users who log into the
    workstation. A User DSN is available only to the User who originally
    created the DSN (in other words, it is tied to a User ID).

-   Verify that software installation is complete and that you can log
    into your SDWIS/STATE database. If login fails, address installation
    and database issues and then attempt to use the MS Access databases.

-   Typically, rerunning the MAP_MSACCESS.SQL script resolves this
    issue. For example, a password may have been mistyped when the
    script was first initiated.

-   Verify that a system DSN named SDWIS has been created. In some
    cases, the DSN may have become corrupt. You may want to remove the
    existing one (named SDWIS) and then recreate it.

-   For each of the delivered SDWIS/STATE databases that incorporate
    linked tables, the following standards apply:

> \- SDWIS is used as the DSN name.
>
> \- DBPWSS01 is the Net Service Name (also referred to as database
> alias name).
>
> \- MSACCESS is the password for the MSACCESS user name.
>
> If you deviate from these standards, you must refresh or relink tables
> for all SDWIS/STATE databases that use linked tables and then rerun
> MAP_MSACCESS.SQL using their new naming conventions.\
> \
> Refreshing linked tables can be done by using the Link Table Manager
> utility in MS Access. In MS Access 2000, it is located in the
> Tools\\Database Utilities directory. If you have only deviated from
> the standard naming convention for the Password, you can use the
> Linked Table Manager utility to refresh the existing links with your
> new password.
>
> If you have deviated from the standard naming convention for DSN Name
> and database alias name, you must completely relink the existing
> tables. (Note that relinking tables for RELATION.MDB will drop all
> drawn relationships.)

-   If a table must be relinked, use the following steps:

```{=html}
<!-- -->
```
-   Press **\<F11\>** to view the main database window.

-   From the pull down menu, select **File**/**Get External
    Data**/**Link Tables**. This will open the **Link** dialog box.

-   From the Files of type, select **ODBC Databases ()**. This will open
    a Select Data Source dialog box.

-   Select **SDWIS (**not shareable**).dsn**, then click **OK**.

-   Enter the Oracle User Name and Password at the Logon to Oracle
    prompt (e.g., to relink a table(s) for RELATION.MDB, enter MSACCESS
    as user name and password).

-   From the Link Tables dialog box, select the tables required for
    import (these will be the tables that produced the error message
    listed above).

-   Make sure you retain the old name of the linked table, e.g.,
    TMGLGENTOra.

> Correctly linked tables are represented by a black arrow pointing to a
> globe. After the table has been linked, highlight the table name and
> click on the **Open** button to test the link; you will see the data
> from Oracle in a table view.

### Running SDWIS/STATE and SQL Server 2005

Question: Can we run SSWr1 with SQL Server 2005?

Answer: SDWIS/STATE Web Rel 1.0 was certified with SQL Server 2000.
However, some primacy agencies are using SDWIS/STATE Web Rel 1.0 with
SQL Server 2005. These agencies have had to upgrade the jdbc driver as
well as apply a service pack to 2005.

Microsoft recommends using the MS SQL Server 2005 jdbc driver to access
both MS SQL Server 2000 and MS SQL Server 2005 databases. You can
download/install the MS SQL Server 2005 jdbc driver from the Microsoft
web site:

> Link to download MSSQL/Server 2005 jdbc driver (with references to JDK
> 1.4 and MSSQL/Server 2000 database compatibility):
> http://www.microsoft.com/downloads/detail
> .aspx?FamilyID=6D483869-816A-44CB-9787 A866235EFC7C&displaylang=en
>
> Unzip the file into a temporary location (C:\\Temp) Copy sqljdbc.jar
> (from the C:\\Temp sub-folders) into the Tomcat home\\common\\lib
> folder.
>
> Stop SDWIS/STATE using the Tomcat Manager console, then using
> theTomcat Administration console, update jdbc datasource properties as
> follows:
>
> In the left pane of the Tomcat Administration console, expand Tomcat
> Server, Service (Catalina), Host (localhost), Context (SDWIS), and
> Resources.
>
> Click on Data Sources
>
> On the Data Source details window (right side of the Tomcat
> Administration console), click on jdbc/DBPWSS01 link under JNDI Name
> property
>
> In the Data Source URL property, enter text similar to the following:
>
> jdbc:sqlserver://Saturn:1433;DatabaseNam
> =VTR10;integratedSecurity=false
>
> ;SelectMethod=cursor
>
> In the JDBC Driver Class property, enter the following text:
>
> com.microsoft.sqlserver.jdbc.SQLServerDriver
>
> Made sure you have appropriate values for User Name and Password
> properties.
>
> Click Save button.
>
> Click Commit button.
>
> Close Tomcat Administration console.
>
> Open a new Tomcat Administration console. Check whether the Data
> Source URL and JDBC Class properties have been updated.
>
> Open a new Tomcat Manager console and start SDWIS/STATE
>
> Microsoft site also suggests a service pack be installed for SQL
> Server 2005 to alleviate the sp_cursoropen error. You can see it at
> http://support.microsoft.com/kb/913371.

### Specify System DSN on ODBC Data Administrator Window

***Issue:*** In the SSWr1 Installation Guide*,* in the chapter covering
installing SDWIS/STATE application/client software files, Phase 6 ODBC
Administration, note that after the ODBC Data Administrator window
appears, select the System DSN tab rather than the User DSN tab. The
Guide does not specify which tab (User DSN or System DSN) to use in the
documentation because this is generally understood to be a user
preference.

*Resolution:* User DSN would mean that another user logging into your
machine would need to create his/her own data source. For this reason,
you should specify System DSN so that anyone logging into the
workstation can use the data source. If you do recreate the Oracle data
source under System DSN, remove it from the User DSN.

### Using SDWIS/STATE with Select Only 

Question: How do you implement a \"View Only\" role for the SSWr1 web
pages?

[]{.mark}

Answer: In SDWIS/STATE 8.0, view-only access was enabled by granting a
given UserID select-only privileges to the database -- that is, access
to the database was granted at the UserID level. With SSWr1, you can
still set up view-only users, but the authority to update the database
is controlled by the jdbc/datasource connection established for the
application in the SDWIS.xml file. You do need to have a different
instance of Tomcat and SDWIS/STATE, but the instance can target the same
database. (The reason for the second Tomcat is because the first level
of authentication is via Tomcat using the SSWR1 role and the SDWIS
context, currently the only role and context acknowledged by
SDWIS/STATE. We will modify SDWIS/STATE 2.0 so that a second instance of
Tomcat is not required.) To proceed, define another SDWIS instance
within the new Tomcat accessed via a different url and establish the
database connection using a different UserID that has select-only
privileges. Here are the steps:

1\. Create Oracle UserID (and password) with select-only privilege and
stop Tomcat.

2\. Navigate to webapps folder and copy SDWIS.war and rename it to
SDWISVIEW.war

3\. Restart Tomcat and check that SDWISVIEW application has been created
in webapps folder.

4\. Stop Tomcat again and navigate to conf/Catalina/localhost directory;
copy SDWIS.xml and rename it to SDWISVIEW.XML.

5\. Use text editor to open SDWISVIEW.xml; change \"SDWIS\" to
\"SDWISVIEW\" except SDWIS_HOME.

6\. Update UserID and password schema element values to be the UserID
and password created in step 1 and save SDWISVIEW.xml

7\. Navigate to webapps/SDWISVIEW/web-inf folder.

8\. Use text editor to open web.xml and change security constraint role
from SSWr1 to SSWRVIEW.

9\. Navigate to conf directory, open Tomcat_user.xml, add new role with
rolename SSWRVIEW and add select-only users with usernames and passwords
for the new SSWRVIEW role.

10\. Restart Tomcat and log in to SSWRVIEW application.

### Adding State Classification Codes During Schema Migration

There are a couple of ways that you can add state classification codes:
(1) integrate the change during schema migration, or (2) make the change
after schema migration. During schema migration, samples are associated
to the State Classification Code of the first analyte that the schema
migration software encounters for the result. This association is based
on the state classification codes in BASER10 (the source database for
federal schema migration changes). If you want to create new state
classification codes and have them as part of the association that takes
place during schema migration, you need to enter those state
classification codes into your primacy agency's copy of BASER10, which
you import at the start of the schema migration process. Enter the state
classification codes into BASER10 prior to starting the schema migration
script. Below are the steps. If you don\'t want the new codes to be
associated to any samples during schema migration but you want users to
be able to select them for new samples as they are added, you can
proceed to step 2. It is strongly recommended that you to test this
process in your test environment prior to your production migration.

Two steps are required to make changes to the State Classification
Codes:

Step 1: During the schema migration process, after the BaseR10.dmp has
been imported, this will populate the ZZR10 schema with the federal
analytes along with their respective default State Classification Code.
After you import BaseR10 and [before]{.underline} you run the
..\\sswr10_dbutilities\\migrate2sswr10\\migrate2sswr10.sql script, make
the changes to the State Classification Codes in the TSAANLYT table. Use
either SQL Plus (Oracle), Query Analyzer (SQL Server) or MS Access
(connected as ZZR10) to make the desired changes.

Take care to only make changes in the TSAANLYT.STATE_CLASS_CODE field;
changes to other fields may corrupt your database. Note the field is
limited to three characters.

Step 2: After you complete schema migration and finish installation, log
into SSWr1 as a user with administrative privileges. Navigate into the
System Administration\\Permitted Values and for the code value of
\"SMPSTCLASS\" add the new values that you created in the
TSAANLYT.STATE_CLASS_CODE field.

# SDWIS/STATE Web Release 1.0.3 

The following sections provide information about the SDWIS/STATE 1.0.3
components. Most components are available from the SDWIS/STATE 1.0.3
blue menu pane. Some, such as Compliance Determination and CDS Setup are
installed as client server components.

## SDWIS/STATE System Administration

### Cancel From Monitoring Period Maintenance List 

Issue: If you click Cancel on the Monitoring Period Maintenance List,
you are returned to the SSWr1 Home Page instead of the Monitoring Period
Maintenance List.

Resolution: This will be addressed in SDWIS/STATE 2.0

### Cannot Delete User from System Administration User Maintenance 

Issue: If you try to delete a user from the System Administration\\User
Maintenance function, the user is not deleted.

Resolution: This will be addressed in SDWIS/STATE 2.0

Workaround: Delete the user from the Legal Entity component rather than
the System Administration component.

### Maintaining User IDs in SDWIS/STATE

*Question:* I am setting up the demo database for SDWIS/STATE Web 1.0,
and see the following users were added to the TINUSER table. I do not
see that database ID\'s for these users were created. I thought all the
application ID\'s were now retained at the application level, and that
separate database IDs are not created for each application user. Do I
need a corresponding Database ID for each User ID in TINUSER?

*Answer:* You do not need a corresponding database ID for each user in
TINUSER, but you do need a corresponding username in the
Tomcat-users.xml file as discussed in section 5-5 of the SDWIS/STATE Web
Rel 1.0 Installation Guide.

##  Legal Entities

###  Legal Entity Association List

Issue: The list of associations between a legal entity and water system
does not display properly if the selected legal entity is not an
individual (Type = Individual).

Resolution: This will be addressed in SDWIS/STATE 2.0

## Inventory

### \"Active\" PWS Can Be Changed to \"Proposed" 

In SDWIS/STATE 8.0, once a Water System was entered as \"Active,\" it
could not be changed to \"Proposed\". However, in SDWIS/STATE Web Rel.
1.0, an \"Active\" Water System can be changed to \"Proposed.\" Please
note, however, schedules will not be closed when this occurs.

### Inactivating Water System and Non-TCR Schedules 

Issue: When you inactivate a water system, it is essential to also
change the water system's Activity Date, even though the software does
not require you to do so. The reason you need to do this is when CDS
Setup evaluates inventory changes, when a water system is inactivated,
it tries to delete non-TCR schedules that begin after the water system
inactivity date, and these may include schedules you do not wish to have
deleted.

Resolution: This will be addressed in SDWIS/STATE 2.0

Workaround: Until SDWIS/STATE 2.0, the workaround is when you inactivate
a water system, always update the water system activity date to the
appropriate date -- that is, the date after which it is alright for CDS
Setup to delete schedules for the water system.

### Community Water System Needs Residential Population of at Least 1

***Issue:*** By design, a water system that does not have a
**residential** population of at least 1 will be classified as
Non-Public.

***Resolution:*** To classify a water system as a Community Water
System, you need to have a **residential** population of at least 1.

### Dynamic WS Group Federal Type Combinations C + NC/ C+NTNC 

Issue: Dynamic Water System Group Federal Type Combination of "C + NC"
is working as "C + NTNC" and the "C + NC" selection is working as "C +
NTNC"

Resolution: This will be addressed in SDWIS/STATE 2.0

### Water System Modification Page and Last Listed Sampling Point 

Issue: When clicking the Sampling Points button from the Water System
Modification page, depending on the number of sampling points returned,
the last sampling point is either partially cut off, or not visible at
all. This may also happen on other lists.

Resolution: This will be addressed in SDWIS/STATE 2.0

Workaround: Filter the list to either the facility or sampling point
type you need so that the number of sampling points returned is less
than the maximum the maintenance list displays without scrolling down.

### Water System Modification Page -- Print Function 

Issue: If you are targeting MS SQL Server or using Mozilla Firefox as
your browser, pressing Print WS Detail button on the Water System
Modification page results in an error with the following showing in the
Tomcat log files:

java.io.FileNotFoundException:
ile:\\C:\\Tomcat\\weba\\webapps\\SDWIS\\reports\\SSWR1ADM_20070425103921683000_WS_DETAILS.html

at java.io.FileOutputStream.open(Native Method)

at java.io.FileOutputStream.\<init\>(Unknown Source)

at java.io.FileOutputStream.\<init\>(Unknown Source)

at java.io.FileWriter.\<init\>(Unknown Source)

at SDWIS.PRINTWS.createNewHtmlFile(PRINTWS.java:273)

at SDWIS.PRINTWS.f_23724053(PRINTWS.java:240)

at SDWIS.PRINTWS.\_PRINTWS(PRINTWS.java:226)

at SDWIS.PRINTWS.PRINTWS(PRINTWS.java:219)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at com.ca.gen65.fmrt.ActionBlockLoader.callInstance(Unknown Source)

at com.ca.gen65.fmrt.ActionBlockLoader.invoke(Unknown Source)

at com.ca.gen65.fmrt.ActionBlockLoader.executeActionBlock(Unknown
Source)

at com.ca.gen65.fmrt.ProcedureStep.executeActionBlock(Unknown Source)

at com.ca.gen65.fmrt.ProcedureStep.useActionBlock(Unknown Source)

at SDWIS.IBS0120C.\_ibs0120c_print_ws_details_cli19(Unknown Source)

at SDWIS.IBS0120C.ibs0120c_print_ws_details_cli19(Unknown Source)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at com.ca.gen65.fmrt.ActionBlockLoader.callInstance(Unknown Source)

Resolution: This will be fixed in SDWIS/STATE 2.0.

### Sampling Point Maintenance List (by Water System) Information 

Issue: There is an issue with Sampling Point information incorrectly
carried over from the previous sampling point on the Sampling Point
Maintenance List (by Water System) when you take the following steps:

> Modify Water/System
>
> On WS Modification page, click Sampling Point button
>
> On Sampling Point Maintenance List - Edit/Add -- to display the Water
> System Facility Maintenance List page
>
> Select a WSF - Edit/Select \-- Sampling Point Maintenance page in Add
> mode is presented.
>
> Enter information for Sampling Point - including Sampling Point Type
>
> Click OK to save \-- returns to Sampling Point Maintenance List
>
> Select Edit/Add - software invokes the Water System Facility
> Maintenance List page
>
> Select a WSF and go to the Sampling Point Maintenance page in Add mode
> again \-- the Sampling Point type, source water type, tier level, and
> tier type fields are valued with values you entered for the previous
> sampling point -- which may not be correct for the new one.

This happens even if you change the WSF when redisplaying the WSF
Maintenance page.

Resolution: This will be addressed in SDWIS/STATE 2.0.

Workaround: Change Sampling Point type, source water type, tier level,
and tier type fields to correct values.

### Water System Facility Flows Maintenance -- Changing Water Type

Issue: Water System Facility Flows Maintenance - Change Process Water
Type field does not allow you to change your choice back to \<none\>.

Resolution: This will be addressed in SDWIS/STATE 2.0.

### Presentation Order for TCR Sample Schedule Changes

Issue: Under a certain scenario, your Inventory change may result in the
closure of an existing TCR sample schedule so that its End Date is one
day prior to its Begin Date. When this happens, you are presented with
the TCR Sample Schedule Evaluation page with two schedules listed: (1)
the new candidate schedule and (2) the just closed schedule. If you try
to accept the changes for the new schedule first, you will receive an
error about duplicate schedules.

Resolution: In this situation, you should accept the second, just-closed
TCR schedule first; then accept the new candidate TCR schedule.

## Site Visits

### Highest Deficiency Severity Level Defaults to NON. 

Issue: If no specific deficiencies are associated to a site visit, the
Highest Deficiency Severity Level defaults to NON, even if you set Minor
for the Category Evaluation Summary.

Resolution: This will be addressed in SDWIS/STATE 2.0.

### Setting Schedule Type When Creating Schedule from Site Visit Maintenance 

Issue: When you press the \"Custom Compliance Schedule\" button from
Site Visit Maintenance Page, you are taken to the Compliance Schedule
Maintenance Page. On the Compliance Schedule Maintenance page, the
Schedule Type defaults to \"\<NONE\>\" and cannot be changed.

Resolution: This will be fixed in SDWIS/STATE Web Release 2.0.

Workaround: If you use the Compliance Schedule function, you can select
and save the desired Schedule Type for the Compliance Schedule.

### Site Visit Maintenance to Custom Compliance Schedule \-- Select Schedule Type 

Issue: When you press the \"Custom Compliance Schedule\" button from
Site Visit Maintenance Page, you are taken to the Compliance Schedule
Maintenance Page. On the Compliance Schedule Maintenance page, the
Schedule Type defaults to \"\<NONE\>\" and cannot be changed.

Resolution: This will be addressed in a SDWIS/STATE 2.0.

## Sampling

### Sample Result Uniqueness Criteria 

Question: Why does it seem I can enter the same result twice?

Answer: With SDWIS/STATE Web Rel 1.0, the uniqueness criteria for a
sample result changed. The new criteria is parent sample, analyte code,
analytical method, and UOM category code.

Make sure to provide all uniqueness criteria -- especially method code
-- when entering a sample to avoid the situation where it appears the
software is accepting duplicate results.

### State Classification Code Drop Down May be Blank on Sample Maintenance

Issue: If your primacy agency elected to create your own State
Classification Codes and use them with existing samples prior to running
SDWIS/STATE schema migration, you need to take an additional step in
order for those codes to be available for selection by users on the
Sample Maintenance and search pages. Otherwise, the State Classification
Code field dropdown selection will be blank when you open a sample in
maintenance mode.

Resolution: After the migration is complete and the installation is
finished, the administrator will need to log into SDWIS/STATE as a user
with administrative privileges. Navigate to the System
Administration\\Permitted Values function and for the code value of
\"SMPSTCLASS\", add the new values that you created in the
TSAANLYT.STATE_CLASS_CODE field. You can tell that your additions are
working, when the sample maintenance State Classification Code field
dropdown selection shows your additions as permitted values.

### Sample With No Sampling Point \-- Under One Scenario 

Issue: When entering a TCR sample, if you enter a facility, and then
enter an invalid sampling point, you are presented with the sampling
point list. If you click File\\Exit instead of selecting a valid
sampling point, you are returned to the sample entry page and allowed to
finish entering data (still leaving the sampling point with an invalid
entry), and save the sample. The software saves the sample with no
values in the TSASAMPL.TSASMPPT_IS_NUMBER AND TSASAMPL.TSASMPPT_ST_CODE
fields. When you maintain the sample after this, you are required to
enter a valid facility and sampling point.

Resolution: This will be addressed in a SDWIS/STATE 2.0.

### Lab State ID No. Not Saved on Lead and Copper Sample Maintenance

Issue: When changing the lab for a PBCU sample on the LCR Sample
Maintenance page -- Change page, if you change *only* the Lab State ID
No. field and click OK, the software does not save the change.

Resolution: This will be addressed in SDWIS/STATE 2.0.

Workaround: If you make another change to the page, i.e. adding a period
to the comment field, the change is then saved.

### Adding Individual Composite Sample Members 

Issue: If you change information about the parent composite sample and
then add additional individual composite sample members, the change made
to the parent composite is not saved to the database.

Resolution: This will be addressed in SDWIS/STATE 2.0.

Workaround: Either first save the change made to the parent composite
sample or make the change to the parent composite record after flowing
to the Add Individual Sample Member Information page.

### Non-Numeric Data and MRDL Chlorine/Chloramines Summary -- DS 

Issue: On the MRDL Chlorine/Chloramines DS -- Change web page, if you
enter non-numeric data in both the Monitoring Period Average field and
the Running Annual Average fields, you receive the following warning
message: \"Reported Measure may only be a valid number\". If you don't
correct the data and press the \<OK\> button, the software accepts the
non-numeric data---it should not.

Resolution: This will be addressed in SDWIS/STATE 2.0.

### Data Validation Check for General Sample Result Page Measure 

Issue: The software is not checking/alerting you of the existence of
more than one decimal point entered erroneously on the General Sample
Result Page, Measure Field. This may result in a problem with CDS Setup
at Process 10B.

Resolution: This will be addressed in SDWIS/STATE 2.0.

### SOC Sample Result \"Less Than\" Reporting Limit UOM 

Issue: Went entering an SOC sample result with \"less than\" the
reporting limit, the software is incorrectly giving an error message
that the reporting limit is greater than the MCL. The edit check does
not take unit of measure (UOM) into consideration.

Resolution: This will be addressed in SDWIS/STATE 2.0.

Workaround: Divide the result by 1000 and use a mg/l as the unit of
measure.

### LCR Sample Maintenance -- Two Issues

Issue: There are two issues with the Lead and Copper Sample Maintenance
page:

-   If you click the Reset Monitoring Period Association on the Lead and
    Copper Sample Maintenance -- Change page, it locks up the page and
    the Tomcat window shows an error.

-   If you type in an exact match for a Water System Name, the Water
    System is not selected and the Water System List does not display.

Resolution: This will be addressed in SDWIS/STATE 2.0.

Workaround: (for second item) Enter a partial Water System name, which
will present the Water System Maintenance List page from which you can
select your desired Water System.

### Dates Not Saved \-- LCR Sample Summary Modification 

Issue: On the Lead and Copper Sample Summary Maintenance page, when you
change the optional collection begin date, end date, and/or date summary
received fields, the values are not saved, even if they previously
existed. (These dates are not used in compliance determination). When
CDS Setup creates the summary, the sample collection dates are saved.

Resolution: This will be addressed in SDWIS/STATE 2.0.

### LCR Sample Summary Maintenance -- 90^th^ % With Value of 0 

When manually entering lead/copper sample summaries, I am noticing an
error relative to 90th percentiles with a value of zero. When entering a
sample summary, if both the lead and the copper 90th are zero, the
following message appears: "Error \-- Must specify the 90th percentile
for Lead, Copper, or both."

Resolution: This will be addressed in SDWIS/STATE 2.0. You will be able
to create either a lead or copper 90^th^ percentile result of 0.

### Sample/Sample Summary Search Not Limited to Selected Lab 

Issue: On the Sample/Sample Summary Search page, when using 'Group Box
4' (Both Samples and Summaries), if you select a lab and enter a begin
date for the search, the search is not limited to the lab that was
selected, but the results are limited to the date range entered. If you
enter only a lab but no begin date, the results are limited to the
selected lab.

Resolution: This will be addressed in SDWIS/STATE 2.0.

Workaround: Enter your criteria, and when the results are presented, use
the View:Filter by:Lab State ID No. (Note this workaround does not work
if the original search resulted in \> 1000 results, because the filter
will only filter the results initially displayed, not the entire result
set, so if a desired result was in the 1000+ range of the result, it
won't be displayed even after the filter).

### Coliform Sample Summary Maintenance Date Summary Received

Issue: On the Coliform Sample Summary Maintenance page, when you change
Date Summary Received field, the software does not retain the date---it
goes back to blank.

Resolution: This will be addressed in SDWIS/STATE 2.0.

### Scenario Where Standard Method Erroneously Linked to TCR Sample 

Issue: The software erroneously associates a TCR Sample to the method
that was associated to a result. If you either mistype a method code or
click the GoTo button to get to the Standard Method Maintenance List and
then either double-click or Edit/Select the desired method, the method
selected is associated to both the Sample and the Sample Result --
(populating both the TSASAMPL.TSASMN_IS_NUMBER and the
TSASAR.TSASMN_IS_NUMBER fields.) If you enter a valid method code, the
method is correctly associated to only the sample result.

Resolution: This will be fixed in SDWIS/STATE 2.0

### Coliform Sample List 

Issue: The Count field does not show up on the Coliform Sample List.

Resolution: This will be fixed in SDWIS/STATE 2.0

### MDBP Summary Maintenance\-- Number of Samples Exceeded

Issue: On the \"MDBP Summary Maintenance\" page, the Number of Samples
Exceeded field is not consistently checking for precision; when you
press the OK button, you may receive a DMBS error message indicating
"value larger than specified precision allows for this column"

Resolution: This will be fixed in SDWIS/STATE 2.0

### General Result Maintenance - Add New Result Does Not Carry Data Forward 

Issue: When you use the General Result Maintenance page and click the
Add New Result button, data that is supposed to be carried forward from
the last sample result to the new sample result is not being carried
forward (Less Than, Reporting level type, UOM, Method Code, Analysis
date and time, State and Water System Notification dates, Data Quality,
Data Quality Reason).

Resolution: This will be fixed in SDWIS/STATE 2.0

### General Sample Maintenance New Sample and Retention of Analyte Group

Issue: When you use the General Sample Maintenance page and click the
Add New Sample button, if an Analyte Group was used to add the last
sample and results, the Analyte Group is not being carried forward for
possible use with the new sample.

Resolution: A design clarification has been made with SDWIS/STATE 2.0 so
that Analyte Group information is retained and the GO TO button (for
analyte group) is enabled after the Add New Sample button is clicked.

## Monitoring

### Error Using Sample Schedule Template to Enter Schedule's Sampling Points 

Issue: When you create a sampling schedule template with multiple
analytes and apply it in sample scheduling, using it to add the first
sampling schedule works, but there is a problem with the second, third,
etc.  sampling schedule -- you receive a message \"error sampling point
not found passing keys.\"  At this point, your selected sampling point
has moved from the first row into the second row of the sampling point
table, and it appears you cannot save the schedule. 

Resolution:  This issue will be addressed in SDWIS/STATE 2.0.

Workaround: On the Sample Schedule Maintenance page, press the Water
System Facility GoTo button and re-select the WSF, even if it's the same
one.  This clears out the residual sampling point information from the
prior sample schedule and allows you to save your second sample
schedule. 

### Update of Sample Schedule Templates Not Limited to System Administrator 

Issue: When using a Schedule Template to add non-TCR Schedules, you can
create a new template, modify an existing one, or delete an existing
one. You should only be able to select an existing one with update
authority limited to SDWIS system administrators.

Resolution:  This issue will be addressed in SDWIS/STATE 2.0.

### Disassociate Violations To Close Non-TCR Sample Schedule 

Issue: If you wish to close a non-TCR sample schedule, first either
disassociate the schedule from the violation(s) to which it is linked or
change the status of the linked violation(s) to rejected (R) or deleted
(D).

### Non-TCR Sample Schedule In Sample Schedule Package 

Issue: You may receive the following error when deleting a non-TCR
sample schedule that is part of a schedule package.

TIRM030E: Application failed -- Updates have been backed out

TIRM031E: Failing procedure exit data flows:

TIRM032E: Last or current action block id = 0052691138

TIRM033E: Last or current action block name =
DIS-SAMPLING_PT_SCHED_GRP_SUBSC

TIRM034E: Last or current database statement = 0

TIRM035E: Current statement being processed = 0000000009

TIRM038E: Fatal Database error was encountered \*\*\*

TIRM039E: DB last status = NF

TIRM046E: Processing terminated \*\*\*

TIRM044E: Press OK to continue \*\*\*

Button (OK)

If you try again, you get the following message:

TIRM030E: Application failed -- Updates have been backed out

TIRM031E: Failing procedure exit data flows:

TIRM032E: Last or current action block id = 0028835861

TIRM033E: Last or current action block name = DELETE_SSMPA

TIRM034E: Last or current database statement = 0

TIRM035E: Current statement being processed = 0000000018

TIRM038E: Fatal Database error was encountered \*\*\*

TIRM039E: DB last status = NF

TIRM046E: Processing terminated \*\*\*

TIRM044E: Press OK to continue \*\*\*

Button (OK)

Resolution: This will be addressed in SDWIS/STATE 2.0.

Workaround: Select the schedule you are trying to delete and choose
Edit\\Package Schedules, and select the associated schedule(s) from the
list of Supporting Schedules and choose Edit\\Disassociate, Yes to
accept the change, then File\\Exit. You can then delete the schedule.

### Unnecessary Warning Messages On Entering Confirmation Schedules 

Issue: When entering a confirmation schedule, the Initial Monitoring
Period Begin Date (IMPBD) is being valued with the Begin Date of the
Effective Period \-- unnecessary on a confirmation schedule. You receive
two unnecessary warning messages, which you may ignore.

\(a\) : Because of the IMPBD being valued, when you try to save the
schedule, you receive a warning that the software cannot find a
monitoring period with the Initial Monitoring Period's Begin Date. (This
happens as there are no "1T = One Time" monitoring periods to match
against.)

\(b\) If you blank out the IMPBD and save the schedule, you receive a
warning that since there is no IMPBD, compliance cannot be run on the
schedule.

Resolution: This will be addressed in SDWIS/STATE 2.0.

### Total Coliform Source Water Monitoring Requirement 

When using Monitoring/Planning/Monitoring Requirements to add a
monitoring requirement for total coliform (3100) to use for source water
monitoring, the software does not allow the requirement if it matches a
current TCR monitoring requirement in terms of sample number, type and
Periodicity\-- and if you do not select a violation type.

Resolution: For SDWIS/STATE 2.0, you will be able to add a non-TCR
(3100) monitoring requirement without a rule and optionally with a
violation type.

### Deactivating Water System with Open TCR Schedule 

Issue: When you deactivate a water system with an open TCR schedule, you
should be presented

the TCR Schedule Modification page. However, that is not happening.

[]{.mark}

Resolution: This will be addressed in SDWIS/STATE 2.0.

[]{.mark}

Workaround: Until the next release, you need to enter an end date into
the TCR Sample Schedule under Monitoring\\Sample Schedule\\TCR Schedules
after you change a system from Active to Inactive.

### TCR Positive Results not in Positive TCR Result Validation List

Question: Why are TCR positive results not available in the Positive TCR
Result Validation List?

Answer: Your sample results may be coming into SDWIS/STATE, possibly via
SDWIS/XML Sampling, with the TSASAR.DATA_QUALITY_CODE valued with a
\"V\". You may want to change the source files being used to migrate
data into SDWIS/STATE (EDI or XML) so that the value is set to an \"A\"
versus \"V\".

###  Enforcement Action on Violation Maintenance

*Issue:* When you try to add an enforcement action to a violation (e.g.
an SOX) from the Violation Maintenance page, after you click the
**Associate Enforcement Action(s)** button, you are presented with a
list of available enforcement actions. If you click the **Edit** menu
option, **Add** is not available.

Resolution: This will be addressed in SDWIS/STATE 2.0. The SDWIS/STATE
2.0 Design Document contains a design clarification that allows Add to
be available when you associate Enforcement Action(s) from the Violation
Maintenance page.

*Work Around**: ***Create the new enforcement action and associate it to
the appropriate violation(s) from the Enforcement menu option rather
than the Violation Maintenance page.

### Federal Violation Period End Date for Violation Types 51 and 52 

*Issue:* The software does not let you enter a Federal Violation Period
End Date for violation types 51 and 52.

Resolution: A design clarification has been made in the SDWIS/STATE 2.0
Design Document, so you will be able to enter Federal Violation Period
End Date for violation types 51 and 52.

### Associating Sample Results to Violation. 

Issue: The selection list only lists 500 results. The query to list the
results does not have a sort on the query. The array is sorted after the
500 are filled, but the result set is not sorted prior to picking the
500. Therefore it is most likely reading them in the order that the
database is storing them, sorted on IS number ascending order, if that
is the table clustering primary key.

Resolution: This is being addressed as design change in SDWIS/STATE 2.0
\-\-- the initial list of results presented will be constrained by a
sensible date range that you may change if you wish. Details are covered
under R0057 of the SDWIS/STATE 2.0 Design Document.

## Enforcement

### Compliance Schedule Activity Maintenance 

Issue: On the compliance schedule activity maintenance page, the
violation status is not displayed even if the schedule activity is
associated to a violation.

Resolution: This will be addressed in SDWIS/STATE 2.0.

### Listing Government Agencies In Enforcement Action Maintenance 

Issue: You need to associate at least one water system to the government
agency in order for it to be displayed from the Enforcement Action
Maintenance page.

Resolution: This will be addressed in SDWIS/STATE 2.0.

### Compliance Schedule Activity

Issue: When you use the Enforcement maintenance pages to maintain a
scheduled activity and press either the Activity or Violation GoTo
buttons, the software correctly presents the appropriate selection list.
However, the list is not in select only mode---you are able to add.

Resolution: This will be addressed in SDWIS/STATE 2.0.

Workaround: Take precautions not to select Add when intending to select
"Select."

## CDS Setup

### CDS Setup Producing MCL Violations for Future Monitoring Periods

Question: Why is CDS Setup producing MCL violations for future
monitoring periods?

Answer: If a water system is on quarterly or monthly monitoring for an
analyte to which the running annual average method applies (e.g., TTHM)
and the water system has a sample with a result that is greater than two
or more times the analyte's MCL, that single result will cause the
running annual average for one or more periods following the current
period to also exceed its MCL regardless of the result(s) for the(se)
future periods. When this occurs, CDS Setup creates candidate MCL
violations for future periods.

For example, a benzene result is entered at 17.2 ug/l for the current
quarter. Of course this will exceed the MCL for the current quarter, but
even if benzene is not detected in either of the next two quarters, its
running annual average for those periods will also exceed the MCL: 17.2
divided by 2 periods divided by 1000 and then rounded = 0.009 mg/l for
the second quarter; 17.2 divided by 3 periods divided by 1000 and then
rounded = 0.006 mgl/ for the third quarter.

You should not process these future candidate MCL violations until a
result has been entered for the monitoring period or the period has
ended. If you delete a candidate, future, MCL violation and the water
system does not collect a sample in that future monitoring period, you
may miss the MCL violation.

### Report for Candidate MCL Violations

MCL Candidate Violations are determined by CDS Setup. Although copies of
the data that led to the MCL determination are created in the CDS table,
there is not a report to display this information.

A small MS Access database is available at
<http://peterson-s-rich.com/sdwis/> in folder "Add Ons/MCL Cand Rpt/."
There is a version for SDWIS/STATE Web Rel. 1.0 (as well as one for
SDWIS/STATE 8.0).

### Generating MCL Violations

Question: My SDWIS/STATE database has TTHM/HAA5 sample results that are
over the MCL; why are no MCL violations generated when I run compliance?

Answer: Make sure that the water system facility for the water system in
question has a Facility Analyte Level (FANL) entered into SDWIS/STATE
for TTHM and HAA5. These two analytes, along with others, require a FANL
in order to determine compliance with the Disinfectant/Disinfection
By-Products Rule. Additional information can be found in the SDWIS/STATE
User's Guide in Chapter 6.

### CDS Setup Needs Inactivated Water System Activity Date Valued

Issue: When you inactivate a water system's status from active to
inactive, CDS Setup is picking up the status change and using the
Activity Date to determine that associated information after that date
is irrelevant and incorrect due to the status appearing to have become
effective on the activity date. If the Activity Date does not reflect
the new inactive status, CDS Setup tries to remove information that is
actually valid---but that it thinks is invalid\--including those sample
schedules. It encounters an error when it finds the schedule has an
associated violation(s):

> When running CDS Setup the following error may occur:
>
> TIRM030E: Application failed - Updates have been backed out
>
> TIRM031E: Failing procedure exit data follows:
>
> TIRM032E: Last or current action block id = 0008126577
>
> TIRM033E: Last or current action block name =DELETE-SAMPLE_SCHEDULE
>
> TIRM034E: Last or current database statement = 0
>
> TIRM035E: Current statement being processed = 0000000008
>
> TIRM038E: \*\*\* Fatal database error was encountered \*\*\*
>
> TIRM039E: DB last status = RE
>
> TIRM152E: Data cannot be deleted because a relationship restricts the
> deletion
>
> TIRM046E: \*\*\* Processing terminated \*\*\*
>
> TIRM044E: \*\*\* Press OK to continue \*\*\*

The above error is a result of CDS Setup processing a water system that
has been inactivated and is trying to delete any sample schedules that
begin after the Activity Date of the water system. When a water system
is inactivated, CDS Setup deletes any future schedules for that water
system, i.e. schedules that begin after the Activity Date of the water
system. The error is a result of CDS Setup trying to delete a sample
schedule that is associated to a violation.

Resolution: CDS Setup should be closing the schedules of inactivated
water systems as it tells you in the report \-- this is what it\'s
designed to do. For SDWIS/STATE 2.0, the Activity Date will be required
when you change the status.

Workaround: Procedurally update the Water System Activity Date to a date
*after* the begin date of any of its non-TCR sampling schedules that are
associated to a violation or manually disassociate the sample schedule
from the violation so that CDS Setup can delete it.

### Gross Alpha Substitute for Adjusted Gross Alpha, Uranium, and Rad-226

Question: Does SDWIS/STATE "automatically" substitute an adjusted gross
alpha (analyte code 4000) analytical result for uranium (analyte code
4006) if the adjusted gross alpha result is \<15 pCi/L (as is allowed by
rule)? We would like to have one radionuclide contaminant group for
every community PWS consisting of adjusted gross alpha (4000), combined
radium 226/228 (4010) and uranium (4006).

Answer: SDWIS/STATE does -- but should not allow a combined radium
(4010) schedule to be satisfied until both a radium-226 (or substitute)
and radium-228 result have been obtained. Currently, if a substitute
gross alpha is obtained, it will satisfy a combined radium schedule even
if a radium-228 (4030) result is not obtained.

Resolution: SDWIS/STATE 2.0 design has been changed so that a combined
radium schedule is not satisfied until both a radium-226 (or substitute)
and radium-228 result have been obtained.

Workaround: To address this, there are a couple of options:

-   Create schedules for all three radium analytes, i.e., radium-226,
    radium-228 and combined radium and use the chart in SDWIS/STATE 2.0
    Design Document Appendix B to determine which candidate violations
    to migrate.

-   Create schedule for 4010 and create and run a query that identifies
    combined radium schedules that have either a gross alpha result
    (4002 or 4109), a radium-228 result, or a radium-226 result
    associated to them. For each of the schedules identified in the
    query, enter a 4010 M&R violation.

+--------+--------+-------------------+-------------------------------+
| **Sa   | **Re   | **Candidate**     | **Comments**                  |
| mple** | sult** |                   |                               |
|        |        | **Violation**     |                               |
| **Sche | **     |                   |                               |
| dule** | Analyt | **Analyte(s)**    |                               |
|        | e(s)** |                   |                               |
| **     |        |                   |                               |
| Analyt |        |                   |                               |
| e(s)** |        |                   |                               |
+--------+--------+-------------------+-------------------------------+
| 4010   | None   | 4010 x 03MJ       | Migrate 4010 x 03MJ           |
|        |        |                   |                               |
| 4020   |        | 4020 x 03MJ       | Delete other two              |
|        |        |                   |                               |
| 4030   |        | 4030 x 03MJ       |                               |
+--------+--------+-------------------+-------------------------------+
| 4010   | 4002   | 4030 x 03MJ       | Migrate                       |
|        |        |                   |                               |
| 4020   |        |                   | Optionally change to 4010 x   |
|        |        |                   | 03MJ                          |
| 4030   |        |                   |                               |
+--------+--------+-------------------+-------------------------------+
| 4010   | 4020   | 4030 x 03MJ       | Migrate                       |
|        |        |                   |                               |
| 4020   |        |                   | Optionally change to 4010 x   |
|        |        |                   | 03MJ                          |
| 4030   |        |                   |                               |
+--------+--------+-------------------+-------------------------------+
| 4010   | 4030   | 4020 x 03MJ       | Migrate                       |
|        |        |                   |                               |
| 4020   |        |                   | Optionally change to 4010 x   |
|        |        |                   | 03MJ                          |
| 4030   |        |                   |                               |
+--------+--------+-------------------+-------------------------------+
| 4010   | 4002   | No violation      |                               |
|        |        | determined as     |                               |
| 4020   | 4030   | expected          |                               |
|        |        |                   |                               |
| 4030   |        |                   |                               |
+--------+--------+-------------------+-------------------------------+
| 4010   | 4020   | No violation      |                               |
|        |        | determined as     |                               |
| 4020   | 4030   | expected          |                               |
|        |        |                   |                               |
| 4030   |        |                   |                               |
+--------+--------+-------------------+-------------------------------+
| 4010   | None   | 4010 x 03MJ       | Migrate                       |
+--------+--------+-------------------+-------------------------------+
| 4010   | 4002   | No violations     | Use a query to identify       |
|        |        | determined but    | combined radium schedules     |
|        |        | should create     | associated to 4002 result.    |
|        |        | 4010 x 03MJ       |                               |
|        |        |                   | For each, enter a 4010 x 03MJ |
|        |        |                   | violation.                    |
+--------+--------+-------------------+-------------------------------+
| 4010   | 4020   | No violations     | Use query to identify         |
|        |        | determined but    | combined radium schedules     |
|        |        | should create     | with no radium-228 result for |
|        |        | 4010 x 03MJ       | the same time period.         |
|        |        |                   |                               |
|        |        |                   | For each, enter a 4010 x 03MJ |
|        |        |                   | violation.                    |
+--------+--------+-------------------+-------------------------------+
| 4010   | 4030   | No violations     | Use a query to identify       |
|        |        | determined but    | combined radium schedules     |
|        |        | should create     | associated to 4030 result.    |
|        |        | 4010 x 03MJ       |                               |
|        |        |                   | For each, enter a 4010 x 03MJ |
|        |        |                   | violation.                    |
+--------+--------+-------------------+-------------------------------+
| 4010   | 4002   | No violation      |                               |
|        |        | determined as     |                               |
|        | 4030   | expected          |                               |
+--------+--------+-------------------+-------------------------------+
| 4010   | 4020   | No violation      |                               |
|        |        | determined as     |                               |
|        | 4030   | expected          |                               |
+--------+--------+-------------------+-------------------------------+

### Duplicate Combined Results 

Issue: If you enter a sample with results for radium-226 (4020) and
radium-228 (4030) without entering a result for combined, SDWIS/STATE
creates two results for combined radium (4010). One of the results is
rounded to the same significant digits as the MCL. The other is rounded
to the least significant digits of the results used to calculate the
combined result.

Resolution: This will be addressed in SDWIS/STATE 2.0.

Workaround: To avoid this issue, you can use any one of the following
options:

-   Enter a result for combined radium anytime you enter a single sample
    that has a result for radium-226 and radium-228

-   Delete the combined radium result that has been rounded to the same
    significant digits as the MCL and then go to the Result Average
    corresponding to the remaining result and click the \"Recalc Using
    CDS Setup\" button.

-   Enter the radium-226 result, run CDS Setup, and then enter the
    radium-228 result.

-   Enter a different sample for the radium-226 result than for the
    radium-228 result.

### User-Entered MRDL Summaries Not Included in RAA Calculation

Issue: CDS Setup does not calculate the Chlorine Summary Running Annual
Averages when the MRDL User ID is not CDS Setup, that is, where it is
has been manually entered by a user.

Resolution: This will be addressed in SDWIS/STATE 2.0.

Workaround: Obtain script MRDL_DATES.sql from SDWIS User Support.
Contact SDWIS User Support and request the
SSWr1_Scripts_ServiceRelease_2.zip for your DBMS.

Run the MRDL_DATES.sql script as explained in SDWIS/STATE Web Release
1.0 Service Release 2 \[for your DBMS\].doc **prior to every CDS Setup
execution.**

### Confirmation Samples Not Used in Calculating Monitoring Period Averages 

Issue: Confirmation samples are not being used in the calculation of
monitoring period averages because the CDS timestamp of the originating
sample is not being updated when the confirmation sample is added.

Workaround: Obtain script Updt_orig_smpl_ts.sql and patch13508.bat from
SDWIS User Support. Contact SDWIS User Support and request the
SSWr1_Scripts_ServiceRelease_2.zip for your DBMS.

Run script Updt_orig_smpl_ts.sql and patch13508.bat **one time** as
explained in SDWIS/STATE Web Release 1.0 Service Release 2 \[for your
DBMS\].doc and this addresses the issue.

### CDS_GET_DECIMAL_PRECISION Error

Issue: When running CDS Setup the following error may occur:

> TIRM030E: Application failed - Updates have been backed out
>
> TIRM031E: Failing procedure exit data follows:
>
> TIRM032E: Last or current action block id = 0026673173
>
> TIRM033E: Last or current action block name =CDS_GET_DECIMAL_PRECISION
>
> TIRM034E: Last or current database statement = 0
>
> TIRM035E: Current statement being processed = 0000000054
>
> TIRM037E: \*\*\* Fatal database error was encountered \*\*\*
>
> TIRM149E: Error occurred in Advantage(tm) Gen supplied function:
> TIRFNUM
>
> TIRM143E: Invalid input string: cannot convert to numeric
>
> TIRM046E: \*\*\* Processing terminated \*\*\*
>
> TIRM044E: \*\*\* Press OK to continue \*\*\*

Resolution: SDWIS/STATE 2.0 will be fixed in the Sampling component
(Results Maintenance page, Concentration (text) field to make sure that
the value entered only has one decimal. (The software is already
checking to ensure the value is a valid number -- it is just not
checking for extraneous decimals.)

Workaround: If CDS Setup presents this error, review the
TSASAR.CONCENTRATION_MSR field for results (entered/edited since the
last successful CDS Setup run) that may not be a valid number: (e.g. a
result with two decimal points such as 4..16).

### CDS Setup Advisory 55 

Issue: The following advisory is created whether the MRDL Summary does
not have "CDSSETUP" as the User ID or does: "The following MDBP Summary
was not updated even though there may be new or changed residual
disinfectant results for the WS, WSF and monitoring period. It was not
changed because it was last modified by a user and not be CDS Setup."
This advisory should only appear if the UserID is not "CDSSETUP." The
issue is only with the advisory. CDS Setup correctly updates the MRDL
Summary if the User ID is CDSSETUP and does not update it if it is not
CDSSETUP.

Resolution: This will be addressed in SDWIS/STATE 2.0

Workaround: The resolution is to look at the User ID for the MRDL
Summary, which can be seen on the bottom of the MRDL
Chlorine/Chloramines DS page. If is it not CDSSETUP, you likely need to
check it to make sure the new field result has been incorporated. Note
that CDS Setup will recalculate the Running Annual Average regardless of
the User ID for the MRDL Summary.

### DELETE-MDBP_SUMMARY Error 

Issue: If you have overlapping routine TCR schedules (in terms of
effective dates but not truly overlapping because of the Seasonal
Periods) and enter chlorine residuals as field results, these
"overlapping" TCR schedules cause the following error in CDS Setup:

> When running CDS Setup the following error may occur:
>
> TIRM030E: Application failed - Updates have been backed out
>
> TIRM031E: Failing procedure exit data follows:
>
> TIRM032E: Last or current action block id = 0008323185
>
> TIRM033E: Last or current action block name =DELETE-MDBP_SUMMARY
>
> TIRM034E: Last or current database statement = 0
>
> TIRM035E: Current statement being processed = 0000000124
>
> TIRM038E: \*\*\* Fatal database error was encountered \*\*\*
>
> TIRM039E: DB last status = RE
>
> TIRM152E: Data cannot be deleted because a relationship restricts the
> deletion
>
> TIRM046E: \*\*\* Processing terminated \*\*\*
>
> TIRM044E: \*\*\* Press OK to continue \*\*\*

Resolution: This will be addressed in SDWIS/STATE 2.0

Workaround: If *CDS Setup* displays the above error, perform the
following steps for water systems that have a MRDL FANL:

1.  Eliminate concurrent TCR schedules

2.  Eliminate cases where a MRDL FANL has an end date that is before the
    begin date of a monitoring period to which it is associated

In step 1, verify that the water system does not have any open or closed
concurrent TCR Sample Schedules. If there are any, delete and or modify
them so they are not concurrent.

In step 2, create a query that lists MRDL FANLs with an end date and the
monitoring periods to which they are associated. If a FANL is found to
be associated with monitoring periods that have a begin date after the
end date of the FANL, the FANL end date needs to be modified so it is
after the begin date of the latest monitoring period's begin date.

### Advisory - CDS Setup Calculation of Lead and Copper 90^th^ Percentiles

Issue: If the 90^th^ percentile sample number is not a factor of 9 and
one of the two sample results used to calculate the 90^th^ percentile is
a No Detect and the other sample result is a detect, CDS Setup assigns a
value of 0 for the 90^th^ percentile. After the calculation to obtain
the 90^th^ percentile, CDS Setup uses the two results (used in the
calculation) to determine the least number of significant digits and
applies that to the result. In these cases, one of the results being
used is 0, which has one significant digit, therefore the 90^th^
percentile is rounded to 1 significant digit. In most cases for lead,
this will lead to a result of 0 versus 0.004 mg/L, for example.

Resolution: This will be addressed in SDWIS/STATE 2.0

Workaround: Manually calculate the correct 90^th^ percentile and update
the Sample Summary value stored in SDWIS/STATE -- you can enter the
detection limit as its concentration. Note: once you manually update
this field, CDS Setup will no longer update the result if additional
results are entered into SDWIS/STATE.

### Sometime Erroneous Advisory About Missing DSRD or SDRD 

Issue: If you do not enter both a federal and a state minimum residual
disinfection level for your Subpart H distribution systems, you will
receive the following advisory: \"The following current, active Subpart
H PWS does not have a minimum residual disinfectant level (a DSRD or
SDRD or both) set. You should check the Facility Analyte (FANL) records
for this system.\" This message should only be issued if there is
neither a DSRD nor a SDRD but is instead being issued if both do not
exist.

Resolution: This will be fixed in SDWIS/STATE 2.0.

Workaround: Ignore the advisory. You may, however, want to create a
query that identifies Subpart H systems that should have a DSRD but do
not and then run it prior to running your SWT Compliance Report.

### CDS Setup Sometimes Creates Two Combined Radium Results

Issue: CDS Setup, under certain circumstances, creates two combined
radium results (analyte code 4010). If you entered a sample with results
for radium-226 (4020) and radium-228 (4030) without entering a result
for combined, SDWIS/STATE will create two results for combined radium
(4010). One of the results will be rounded to the same significant
digits as the MCL. The other will be rounded to the least significant
digits of the results used to calculate the combined result.

Resolution: This will be fixed in SDWIS/STATE 2.0.

Workaround: To avoid this issue, you can use any one of the following
options:

-   Enter a result for combined radium anytime you enter a single sample
    that has a result for radium-226 and radium-228

-   Delete the combined radium result that has been rounded to the same
    significant digits as the MCL and then go to the Result Average
    corresponding to the remaining result and click the \"Recalc Using
    CDS Setup\" button.

-   Enter the radium-226 result, run CDS Setup, and then enter the
    radium-228 result

-   Enter a different sample for the radium-226 result than for the
    radium-228 result

## Compliance Determination

### Unexpected Preliminary TCR Violations After TCR Compliance

Question: Why am I receiving unexpected preliminary TCR violations when
I run TCR Compliance?

[Type 22 Violation Issue]{.underline}: A PWS has already been issued a
type 21 violation but when TCR Compliance is run, a type 22 violation is
also generated.

***Discussion:*** Almost always, when a PWS incurs a type 21 violation,
it also incurs a type 22 violation. That is to say, a type 21 violation
requires at least two positive results for the period and, for most PWS,
2 or more positive results are also sufficient to exceed the "monthly"
MCL definition. According to EPA reporting guidance, "if both a monthly
(**\"22\"**) and acute MCL violation (**\"21\"**) occur during the same
compliance period, both should be reported."[^1] In accordance with
these requirements, TCR Compliance will create a preliminary, "monthly"
MCL violation ("22") whenever a PWS meets the definition, regardless of
whether an acute MCL violation ("21") exists or not.

[Type 23 Violation Issue]{.underline}: TCR Compliance has generated a
type 23 violation even though a sufficient number of samples have been
entered into SDWIS/STATE for the PWS and monitoring period.

***Discussion:*** There are several possible reasons why TCR Compliance
is creating this preliminary violation:

> Reason 1: When TCR Compliance performs M&R compliance for a monitoring
> period, it does not look at the collection date of the samples, it
> looks at the monitoring period assigned to the results. Therefore if
> the results entered were assigned by someone to a different monitoring
> period they would not count towards compliance for the selected
> monitoring period. To investigate this, you need to verify that each
> total coliform result for the PWS is assigned to the expected
> monitoring period. If the results were assigned to the wrong
> monitoring period, reassign them to the correct monitoring period by
> using the Monitoring Period Transfer option in the Monitoring
> component.
>
> Reason 2: One or more of the samples are not marked as "For
> Compliance" samples. To correct this, check the "For Compliance" check
> box, which is found at the upper left corner on the TCR Sample
> Maintenance window.

Reason 3: One or more the samples are not recorded as routine ("RT")
samples. If the samples are of any other type, they will not satisfy the
routine sample requirements for TCR Compliance.

**Note**: Reasons 1, 2, and 3 apply to all of the samples that would be
used for compliance during the monitoring period in question.

[Type 24 Violation Issue]{.underline}: TCR Compliance has generated a
type 24 violation even though a sufficient number of samples have been
entered into SDWIS/STATE for the PWS and monitoring period.

***Discussion*:** Each of the three reasons given above for the "Type 23
Violation" issue also apply to this issue.

[Type 25 Violation Issue]{.underline}: TCR Compliance has generated a
type 25 violation even though a sufficient number of samples have been
entered into SDWIS/STATE for the PWS and monitoring period.

***Discussion:*** Several possible reasons may cause TCR Compliance to
create this preliminary violation:

Reason 1: Not all repeat samples were collected between the begin and
end date of the repeat schedule.

> Reason 2: Not repeat samples are linked back to the same original
> positive result to which the repeat schedule is linked. If the water
> system has multiple routine positive samples and is only required to
> collect a set of repeats for one of the routine positives, be sure the
> repeat sample schedule and repeat samples are linked back to the same
> original positive. If the water system has multiple routine positive
> samples and is required to complete repeat samples for each routine
> positive, be sure to link enough samples to each original positive to
> satisfy the requirements of each repeat schedule.
>
> Reason 3: One or more repeat samples was not entered as a repeat "RP"
> sample. If the samples are of any other type, they will not satisfy a
> repeat schedule.
>
> Reason 4: One or more repeat samples was not entered as a "For
> Compliance" sample.
>
> Reason 5: If one or more repeat samples is marked as replacement and
> is taken outside of the repeat sample schedule, TCR Compliance
> generates a violation.

[Type 26 Violation Issue]{.underline}: TCR Compliance has generated a
type 26 violation even though a sufficient number of repeat samples have
been entered into SDWIS/STATE for the PWS and monitoring period.

***Discussion:*** Each of the reasons given above for the "Type 25
Violation" issue also applies to this issue. In addition, if one or more
of the results (whether a routine or repeat) is positive for total
coliform and there is neither a fecal or *E. coli* result (i.e., the
result was not speciated), TCR Compliance will create a preliminary type
26 violation, which is in accordance with EPA reporting
requirements.[^2]

### TCR Compliance Report

SDWIS/STATE Web Rel. 1.0 no longer has a locally-stored MS Access
database called Precomp.mdb in which preliminary violations are created.
Instead, there is one TCR Compliance Report that creates candidate
violations just like the compliance reports for the other rules. The
report that displays TCR candidate violations is significantly different
than the report in Precomp.mdb.

North Dakota decided to continue using the TCR Report from SDWIS/STATE
8.0 Precomp.mdb with SDWIS/STATE Web Rel. 1.0. This database can be
obtained at <http://peterson-s-rich.com/sdwis/> in folder "Add Ons/ND
TCR Comp Rpt/."

### TCR Compliance Report Error Message

Issue: The TCR Compliance report is not showing multiple error records.
The message is:

> "A positive, RT, TC sample, collected on 'Date' from WS 'PWS-PWSNAME'
> with Lab Samp. No. \### does not have a Repeat Schedule associated to
> it and so compliance for repeat M&R will fail and for non-acute MCL is
> likely wrong.

This is not an issue with the compliance determination software, but
rather an issue with the design of the TCR Report.

Workaround: This can be resolved by using the database developed by
North Dakota or by changing the report named "TCR-VIO" in the
cdsrpts.mdb.

### TCR Compliance Report - Run Time 

Issue: Some primacy agencies find the TCR Compliance Report to take
longer to run than other types of reports.

Resolution: This will be addressed in SDWIS/STATE 2.0. The software will
be modified so this report will run more efficiently.

### Chem/Rad M&R Compliance and Unexpected Candidate Violations

Question: When I run the Chem/Rad M&R Compliance Report, SDWIS/STATE is
creating M&R candidate violations for systems for which the database has
valid sample results. Why?

Answer: You need to verify several things: (1) the result has been
assigned to the correct monitoring period; (2) the sample is of a type
that will satisfy the schedule (usually a routine sample); (3) and the
sample is marked as a compliance sample. If the above are all OK, then
check to see if the sample schedule has a seasonal period. If it does,
check to see if the sample is collected outside of the seasonal period
time frame. If it was, it does not satisfy the schedule, resulting in a
candidate M&R violation.

### Chlorine Dioxide Exceedence 

Issue: The Chorine Dioxide/Chlorite (Entry Point) check is supposed to
report when the Level Complied is set to No for a Chorine
Dioxide/Chlorite (Entry Point) MDBP. However, it does not. Two SIRs
cause this:

-   First, when you enter 1 or greater in the \"Number of Chlorine
    Samples Exceeded\" field on the Entry Point Chlorine
    Dioxide/Chlorite maintenance page (in the SWTR Summary set of
    pages), the software is not setting the Level Complied Indicator to
    "N" (No) as it should.

> To address this, you need to use the General MDBP Summary to set the
> Level Complied field to "N" (this field is not available on the Entry
> Point Chlorine Dioxide/Chlorite maintenance page).

-   The report that displays at the results of the Chorine
    Dioxide/Chlorite (Entry Point) check does not include the necessary
    queries and report to display these (the check itself does create a
    copy of the MDBP Summary in the Candidate MDBP Summary table). An
    additional sub-query and sub-report are needed and the main report
    needs to have the new sub-report added to it.

Resolution: This will be addressed in SDWIS/STATE 2.0

Workaround: Add one query and one report to your CDSRPTS.mdb
(C:\\SDWIS\\CDS\\) and then modify your DBP-VIO report in this same
database. The attached database includes these two new items and a
revised DBP-VIO report. You can try them by importing them into your
CDSRPTS.mdb. Be sure to rename the DBP-VIO report to something like
DBP-VIO-Orig before importing these so that you can always revert to it.

### MRDL Compliance Report Not Including Samples Required/Missing 

Issue: The MRDL Compliance Report does not include the number of samples
required or the number of samples missing.

Resolution: This will be addressed in SDWIS/STATE 2.0

Workaround: The data needed to value these two fields on the report are
populated in the CDS MDBP Summary record (table name TCDMDBPS), so you
can change one of the queries in CDSRpts.mdb to take the data from
TCDMDBPS instead of from TCDSVIOL. Here are the steps to follow:

1.  Copy your existing DBP-VIO-FANL-SubQ query (call it
    DBP-VIO-FANL-SubQ-orig or something like that).

2.  View the DBP-VIO-FANL-SubQ query in SQL View.

3.  Replace what you current have in your SQL View with what follows:

SELECT TCDSVIOL.TCDSRLOG_IS_NUMBER, TCDSVIOL.TCDSRLOG_ST_CODE,
TCDFANL.SUM_TYPE_CODE_CV AS FANL_SUM_TYPE_CODE_CV, TCDSVIOL.PWS_NUMBER,
TCDSVIOL.PWS_NAME, TCDSVIOL.PWS_ACTIV_STAT_CD,
TCDSVIOL.PWS_FED_PRI_SRC_CD, TCDSVIOL.PWS_FED_TYPE_CD,
TCDSVIOL.WSF_ST_ASGN_ID, TCDSVIOL.WSF_NAME, TCDSVIOL.WSF_TYPE_CD,
TCDSVIOL.WSF_ACTIVITY_DAT, TCDSVIOL.WSF_AVAIL_CD,
TCDSVIOL.VIOL_FED_VP_BEG_DT, TCDSVIOL.VIOL_FED_VP_END_DT,
TCDSVIOL.VIOL_ST_VP_BEG_DT, TCDSVIOL.VIOL_ST_VP_END_DT,
TCDSVIOL.MP_MON_PER_NAME, TCDSVIOL.VTYPE_CODE, TCDSVIOL.VTYPE_NAME,
TCDSVIOL.VTYPE_CAT_CD, TCDSVIOL.VTYPE_SEV_LVL, TCDSVIOL.ANALYTE_CODE AS
VIO_ANALYTE_CODE, TCDSVIOL.ANALYTE_NAME AS VIO_ANALYTE_NAME,
TCDSVIOL.ANLGP_CODE AS VIO_ANLGP_CODE, TCDSVIOL.ANLGP_NAME AS
VIO_ANLGP_NAME, TCDSVIOL.VIO_TO_FED_ANL_CD, TCDSVIOL.VIO_MNR_NUM_RSLTS,
TCDFANL.EFFECTIVE_BEG_DAT AS FANL_EFFECTIVE_BEG_DAT,
TCDFANL.EFFECTIVE_END_DAT AS FANL_EFFECTIVE_END_DAT,
TCDFANL.CONTROL_LEVEL_TYPE AS FANL_CONTROL_LEVEL_TYPE, TCDFANL.UOM_CODE
AS FANL_UOM_CODE, TCDFANL.NUM_DAYS_PER_MONTH AS FANL_NUM_DAYS_PER_MONTH,
TCDFANL.SAMPLE_RQT_PER_DAY AS FANL_SAMPLE_RQT_PER_DAY,
TCDFANL.IND_FILT_MNTRG_FLG AS FANL_IND_FILT_MNTRG_FLG,
TCDFANL.REPORTED_MSR AS FANL_REPORTED_MSR, TCDFANL.ANALYTE_CODE AS
FANL_ANALYTE_CODE, TCDFANL.ANALYTE_NAME AS FANL_ANALYTE_NAME,
TCDMDBPS.TCDMDBPS_IS_NUMBER AS MDBPS_TCDMDBPS_IS_NUMBER,
TCDMDBPS.ANALYTE_CODE AS MDBPS_ANALYTE_CODE, TCDMDBPS.ANALYTE_NAME AS
MDBPS_ANALYTE_NAME, TCDMDBPS.MP_BEGIN_DATE AS MDBPS_MP_BEGIN_DATE,
TCDMDBPS.MP_END_DATE AS MDBPS_MP_END_DATE, TCDMDBPS.MP_NAME AS
MDBPS_MP_NAME, TCDMDBPS.TYPE_CODE_CV AS MDBPS_TYPE_CODE_CV,
TCDMDBPS.REPORTED_DATE AS MDBPS_REPORTED_DATE, TCDMDBPS.SAMPLES_REQUIRED
AS MDBPS_SAMPLES_REQUIRED, TCDMDBPS.SAMPLES_COLLECTED AS
MDBPS_SAMPLES_COLLECTED, TCDMDBPS.MR_COMPLIANCE_IND AS
MDBPS_MR_COMPLIANCE_IND, TCDMDBPS.LVL_COMPLIANCE_IND AS
MDBPS_LVL_COMPLIANCE_IND, TCDMDBPS.SMPLS_BYND_MEA_LVL AS
MDBPS_SMPLS_BYND_MEA_LVL, TCDMDBPS.PRCNT_BYND_MEA_LVL AS
MDBPS_PRCNT_BYND_MEA_LVL, TCDMDBPS.PRCNT_BYND_MEA_TXT AS
MDPBS_PRCNT_BYND_MEA_TXT, TCDMDBPS.HIGHEST_MSR AS MDBPS_HIGHEST_MSR,
TCDMDBPS.HIGHEST_MSR_TXT AS MDBPS_HIGHEST_MSR_TXT,
TCDMDBPS.MON_PER_AVG_MSR AS MDBPS_MON_PER_AVG_MSR,
TCDMDBPS.MON_PER_AVG_MSR_TX AS MDBPS_MON_PER_AVG_MSR_TX,
TCDMDBPS.RUN_ANL_AVG_MSR AS MDBPS_RUN_ANL_AVG_MSR,
TCDMDBPS.RUN_ANL_AVG_MSR_TX AS MDBPS_RUN_ANL_AVG_MSR_TX,
TCDMDBPS.MDBPS_MPA_UOM_CD, TCDMDBPS.MDBPS_RAA_UOM_CD, TCDMDBPS.Q1_IFT,
TCDMDBPS.Q2_IFT, TCDMDBPS.Q3_IFT, TCDMDBPS.Q4_IFT, TCDMDBPS.Q5_IFT,
TCDMDBPS.Q6_IFT, TCDMDBPS.Q7_IFT, TCDMDBPS.SAMPLES_REQUIRED AS
SAMPLES_RQD_CNT, \[SAMPLES_REQUIRED\]-\[SAMPLES_COLLECTED\] AS
SAMPLES_MISSNG_CNT

FROM (TCDSVIOL INNER JOIN TCDFANL ON (TCDSVIOL.TCDFANL_ST_CODE =
TCDFANL.TCDFANL_ST_CODE) AND (TCDSVIOL.TCDFANL_IS_NUMBER =
TCDFANL.TCDFANL_IS_NUMBER)) LEFT JOIN TCDMDBPS ON
(TCDFANL.TCDFANL_ST_CODE = TCDMDBPS.TCDFANL_ST_CODE) AND
(TCDFANL.TCDFANL_IS_NUMBER = TCDMDBPS.TCDFANL_IS_NUMBER)

WHERE (((TCDFANL.SUM_TYPE_CODE_CV) In (\'MRDL\',\'CLO2\',\'CLO3\')));

4.  Save the query and exit. Your report should now show appropriate
    values in the two fields.

### Results Alert Report and Results Taken Outside Selected Monitoring Period 

Issue: When a user selects a Monitoring Period to use for a Results
Alert Report, the report identifies results collected outside of the
period defined by the monitoring period.

Resolution: This will be addressed in SDWIS/STATE 2.0.

Workaround: If you use the Sample Collection Date Range, the report
works correctly.

### Analyte Code Not Migrated for Compliance Schedule Activity Violation 

Issue: When you run the CDS Compliance Schedule Activity report and try
to migrate the candidate violations the violation analyte code does not
migrate. The code appears on the candidate violation maintenance list
but does not migrate to the TMNVIOL table.

Resolution: This will be addressed in SDWIS/STATE 2.0.

### Candidate M&R Violation When WS Samples for Substitute Analyte 

Issue: The software may still produce a candidate M&R violation even if
the water system has a result for a substitute analyte. Two situations
are known to cause this:

Cause 1: the "Substitute Result Indicator" dropdown on the Non-TCR
Sample Schedule page is not set to either "Optionally" or "Always".

Cause 2: The sample result was entered into SDWIS/STATE and processed by
CDS Setup prior to schema migration to SDWIS/STATE.

Resolution:

Cause 1: Change sample schedules to allow substitution and rerun CDS
Setup.

Cause 2: Change the sample or sample result, so that CDS Setup
re-evaluates it on its next run. You need to change one of the following
fields if you want the entire sample reprocessed: Sample Type,
Collection Date, Compliance Indicator, and Reject Reason Code. You need
to change one of the following fields if you want a single sample result
reprocessed: Detection Limit, Detection Limit UOM, Less Than Indicator,
Data Quality Code, Concentration, Concentration UOM, or Monitoring
Period Assignment. Save the change, then return and undo your change.
The change you make doesn't need to be permanent.

### Compliance Decision Report Processing Error Message

Question: Why am I receiving an error message after CDS Reports has
begun processing?

Answer: If, after the CDS report has begun processing, you receive a
message saying:

**C:\\SDWIS\\CDS\\CDSRPTS.MDB was not found on your machine or is
already open**

Your CDSRPTS.MDB is most likely already open. Microsoft does not allow
more than one instance of a database to be open at the same time. If you
get this message, click **OK**, close the report you currently have open
(after printing it or otherwise processing it), and then open the
report. To open the report you previously ran, either rerun the report
or go to **Edit/Post-Compliance Decision Support Processing/Review
Report Logs and Reports**, run the search, highlight the run you want to
see, and then select **Edit/Report**. The second approach is much faster
than the first.

### CDS Report Log Maintenance List Filter

Issue: After the list if filtered, and then the list is refreshed, the
Number of Rows Selected is set to the number of rows displayed, not the
actually number selected.

Resolution: This will be addressed in SDWIS/STATE 2.0.

## RELATION.MDB

###  Some Tables Need to be Re-linked and Relationships Changed 

Issue: The following tables are not linked properly in Relation.mdb:

TCDSCAEX, TMGJBERR, TMGJOB, TMGMDBPS, TMGOSAM, TMGOSPM, TMGVPAIR
TMNCMCLV, TMNCMMAA, TMNMPAVG, and TMNSPSRA.

Additionally, the relationship between TMNCMMA & TMNCMCLV and the
relationship between TMNCMMAA -- TMNMPAVG need to be changed.

Resolution: You need to re-link the tables to reflect the new structure
of the tables and you need to change the relationships.

Draw relationship between TMNCMMAA and TMNCMCLV as follows:

TMNCMMAA.CMCLV_SASCH_IS_NO to TMNCMCLV.SSMPA_SASCH_IS_NO

TMNCMMAA.CMCLV_SASCH_ST_CD to TMNCMCLV.SSMPA_SASCH_ST_CD

TMNCMMAA.CMCLV_MPRD_IS_NO to TMNCMCLV.SSMPA_MPRD_IS_NO

TMNCMMAA.CMCLV_MPRD_ST_CD to TMNCMCLV.SSMPA_MPRD_ST_CD

Draw relationship between TMNCMMAA and TMNMPAVG as follows:

TMNCMMAA.MPAVG_SASCH_IS_NO to TMNMPAVG.SSMPA_SASCH_IS_NO

TMNCMMAA.MPAVG_SASCH_ST_CD to TMNMPAVG.SSMPA_SASCH_ST_CD

TMNCMMAA.MPAVG_MPRD_IS_NO to TMNMPAVG.SSMPA_MPRD_IS_NO

TMNCMMAA.MPAVG_MPRD_ST_CD to TMNMPAVG.SSMPA_MPRD_ST_CD

### SS-TC Rpl Smpls Qry Not Working 

Issue: The query does not work.

Resolution: This will be addressed in SDWIS/STATE 2.0

## CCR Fact Sheet

Issue: The MS Access table LocalTSAMDBPS in CCRFact.mdb does not include
two fields that are in the table it is supposed to be an exact copy of. 
The two missing fields are D_CDS_TRIGGER_TS and D_CDS_TRIGGER_USERID.

To fix this problem, open the CCRFact.mdb. Use function F11 to view the
Database Window. Add the above two fields to the table named
LocalTSAMDBPS. There are at least two ways to do this.

First, if you are using a version of MS Access that allows you to make a
local copy of the structure of a linked table (2003 for example), then:

1\. Rename the table LocalTSAMDBPS to LocalTSAMDBPS-old or similar.

2\. Highlight the table named TSAMDBPS and make a copy of it (Ctrl+C or
right click or use the menu).

3\. Then select Paste (Ctrl+V or right click or use the menu).

4\. Choose the option to create a Structure Only (Local Table) with a
name of LocalTSAMDBPS.

Second, if you have an older version of MS Access:

1.  Open the table in design view.

2.  Open the linked table in design view (you will get a message saying
    it is a linked table and that you can't change some properties,
    click on the Yes button).

3.  Highlight the two fields in the linked table and copy them.

4.  Copy them to the bottom of the fields in LocalTSAMDBPS.

5.  Save the table and close it.

The CCR Fact Sheet should now work OK.

## Performance Advisories for Specific SDWIS/STATE Web Pages

To improve response time when using some specific SDWIS/STATE Search
pages, you can supply filtering criteria to limit the number of records
returned for display on the Maintenance Lists. Below are some specific
known search pages where providing filtering criteria improves response
time.

-   **Legal Entity Add** - If you add a legal entity, instead of
    entering no search criteria in the Legal Entity Search page, type a
    filtering character such as 'X' in the *Name* field of the *Starting
    criteria*... group box. Using filtering criteria significantly
    improves the response time for displaying the Legal Entity
    Maintenance List so you may select Edit\\Add to add a legal entity
    record as well as the response when pressing OK.\
     

-   **Water System Point of Contact -- Legal Entity Search** \-- If you
    associate a legal entity to a water system point of contact, on the
    Legal Entity Search page, type the starting letter of the
    individual's Last Name (or the starting letter of the legal entity
    name) in the *Name* field of the *Starting criteria*... group box
    and specify a legal entity type under the *Filtering criteria*...
    group box. Using filtering criteria significantly improves the
    response for displaying the Legal Entity Maintenance List.

-   In general, when associating a legal entity with another record,
    specifying filtering criteria for the search legal entity improves
    response.\
     

-   **Sample/Sample Summary Search** \-- If you use the Samples Only
    group box in the Sample/Sample Summary Search page to search for a
    sample, specify a limited sample Collection Date range. The more
    limited the sample Collection Date range you specify, the better the
    response in displaying samples collected within your date range on
    the Sample/Sample Summary Maintenance List.

-   **Adding a Sample (including a Composite Sample)** -- when adding
    new samples (including composite samples) you may experience a long
    wait after pressing OK; this is due to the time it takes to
    formulate a list of samples with no search criteria when you have a
    very large database of samples/results. You can significantly reduce
    this time by starting from Maintain Sample, entering search criteria
    that constrains the sample list (for example that limits the sample
    Collection Date range) on the Sample Search page, and then selecting
    Edit/Add from the Sample Maintenance List.\
     

-   **Site Visit Search** - If you use the Site Visit Search page,
    specify a Water System No. or Date Range. Either more quickly
    displays the Site Visit Maintenance List.

-   **Positive TCR SAR Validation Page** - For most databases, the
    Positive TCR Sample Result Validation requires 2-3 minutes to
    formulate the list of positive, unvalidated samples from the
    database.

# SDWIS/XML Sampling 1.0.3

## XML Files Limited to Data From One Lab per File 

Issue: SDWIS/XML Sampling files are limited to data from one lab per
file.

Resolution: SDWIS/XML Sampling 2.0 will be able to process an XML file
containing data from more than one lab (as was the case in Sampling via
EDI).

Workaround: Use one lab per file; if this does not work for your primacy
agency, Mississippi developed and has made available to the community a
tool to parse an EDI file containing data from several labs into
individual files containing data from one lab.

## Flagging Results that Exceed Lab Reporting Level 

Issue: SDWIS/XML Sampling 1.0 does not flag results that exceed the Lab
Reporting Level as was previously done by Sampling via EDI.

Resolution: This will be addressed in SDWIS/XML Sampling 2.0.

## Navigation Bar Links Do Not Show on All Pages 

Issue: When you click on the View Job Details by Date, View System
Property Files, or View Log Files links, the link for Links is not
there.

Resolution: This will be addressed in SDWIS/XML Sampling 2.0.

## Delete Option Not Working When Viewing Emailed Report 

Issue: When viewing an emailed report, the link to delete a job does not
work.

Resolution: This will be addressed in SDWIS/XML Sampling 2.0.

Workaround: Browse to SDWIS/XML Sampling web application to delete the
job.

## Method Code Part of Uniqueness for Sample Analytical Result 

Issue: With SDWIS/STATE Web Rel 1.0, the uniqueness criteria for a
sample result changed. The new criteria are parent sample, analyte code,
analytical method, and UOM category code.

Resolution: Make sure to provide all uniqueness criteria in the EDI or
XML file -- especially method code -- when entering a sample, to avoid
the situation where it appears the software is accepting duplicate
results.

# SDWIS/Migration to STATE 1.0

## Error "Requested Resource (/MTS/jsp/secure) Not Available."

Issue: Page A-1 of the SDWIS/Migration To State (MTS) Installation Guide
states:

"...To check the SDWIS/MTS installation and configuration, open Internet
Explorer, and type <http://ApplicationServerName:8080/MTS/jsp/secure>.
This presents the Login page to enter the User ID, and Password you
established (Exhibit A-1)..."

The path in this statement should read:
<http://ApplicationServerName:8080/MTS/jsp>. The /secure in the original
statement should not be used to log into MTS.

Resolution: This will be addressed in the SDWIS/Migration to STATE 2.0
Installation Guide.

## Processing Enforcement Actions

Issue: After processing 100 enforcement actions, the process stops with
no message.

Resolution: This has been addressed in SDWIS/Migration to State 1.0.1.
Please contact SDWIS User Support to obtain this fix if you plan on
migrating enforcement actions.

##  Exception Message When Importing XML File To Staging Table

Issue: If your XML file has characters between the elements, the
software may not be ignoring them as it should, and you may receive an
exception message when I am trying to import xml file into stage table.

Resolution: This will be addressed in the SDWIS/Migration to STATE 2.0

Workaround: You can open the XML document in a tool, such as XML Spy,
save it, and this clears out the characters between the end and start
tags. It will then run through SDWIS/Migration to State.

# SDWIS/FedRep 2.0 and SDWIS/ODS 2.0

## Reasons SDWIS/FedRep Extraction May Not Create XML Document

Question: When properly configured to target a SDWIS/STATE Web Rel 1.0
database, SDWIS/FedRep 2.0 creates the expected XML files. The
Extraction Utility begins to execute; why does it fail to produce an XML
document?

Answer: Usually, the ODBC connection is incorrectly established. If you
have already established an ODBC connection named SDWIS as part of the
SDWIS/STATE installation, you may use it; you don't need to establish a
second ODBC connection for SDWIS/FedRep.

## Does SDWIS/FedRep Work with a JDBC Driver Instead of ODBC? 

Queston: Does SDWIS/FedRep work with a JDBC driver instead of an ODBC
driver?

Answer: SDWIS/FedRep can be configured to use the Oracle JDBC driver by
setting the SystemProperty.txt as follows:

DatabaseDriverClassName: oracle.jdbc.driver.OracleDriver

DatabaseConnectionURL:

> jdbc:oracle:thin:@\<hostname or IP address of the database
> server\>:\<port number of the database\>:\<SID\>

## SDWIS/FedRep and MS IIS on Web Server 

Question: Does SDWIS/FedRep operate with MS IIS on the web server?

Answer: SDWIS/FedRep, like all SDWIS-web-based products, is based on
J2EE architecture and hence needs J2EE-compliant web server software. MS
IIS is not J2EE-compliant. However, the J2EE server software can reside
on the same server where MS IIS software is installed, and the MS IIS
server software can function as a router for the J2EE server. However,
MS IIS by itself cannot run the SDWIS/FedRep application. Most primacy
agencies who use MS IIS as the primary web server software are also
running J2EE-compliant web server software, such as Apache Tomcat, JRUN,
WebSphere, etc.

## SDWIS/FedRep Extracts Expected Data, but Validation Rejects 100%

Question: What is happening when SDWIS/FedRep extracts the expected
data, but the Validation tool rejects all of it?

Answer: This usually indicates the SchemaUtility.bat file was not run
during the installation procedure. The SchemaUtility.bat file specifies
the full path of the XML schemas in the actual XML schema file. If this
utility is not run during installation, the SDWIS/FedRep Validation tool
cannot find the XML schemas to validate the data.

## SDWIS/FedRep and Generating Expected HTML Reports

Question: SDWIS/FedRep is not generating the expected HTML reports --
why?

Answer: If the HTML reports are not created, SDWIS/FedRep processing did
not complete. SDWIS/FedRep logs the error messages in the Logfile.txt.
If the processing does not complete, it usually means that the process
may not have enough memory. See the recommendations in SDWIS/FedRep
Installation Guide Section 3.2.5 for increasing Java Heap size. Note
that your server must have at least 512MB of RAM to run this
application.

## 403 Error \-- Access Not Permitted

Question: When we attempt to log in using the Admin ID we created, we
are getting a 403 error (access not permitted). Why?

Answer: You need to shut down and restart the Tomcat server to activate
newly added User IDs.

## Missing Extraction Begin Date for Inventory

Question: During SDWIS/FedRep's Submission Preparation process an error
is listed in the log file. The process appears to be working correctly.
What is causing this error?

Answer: This minor error occurs when the ExtractionBeginDate in not
present in the message summary of the XML document. This date is not
required in an Inventory file. You can ether put an ExtractionBeginDate
in the file, or ignore the error.

## Missing State Counts on SDWIS/FedRep Summary Report

Question: Why is the SDWIS/FedRep State Counts section missing from the
SDWIS/FedRep report that SDWIS/ODS generated?

Answer: Usually, the primacy agency submitted the original XML document
instead of the validated XML document when they prepared it for
submission to SDWIS/ODS. The best way to eliminate selecting the wrong
file for preparation is by using the "Prepare Current File for
Submission" link on the SDWIS/FedRep Report Index page.

## Transfer XML document to the State Node

Question: We are contracting with Windsor Solutions to develop our state
node. In their design document they state that SDWIS/FedRep 1.2.2 SR1 is
required for State Node implementation. What version of SDWIS/FedRep
automatically transfers the XML document to the State Node?

Answer: SDWIS/FedRep 1.2.2 supports the submission of XML documents to
the State Node and was tested with several nodes. Windsor Solutions
requested that SDWIS/FedRep be enhanced to allow certain variables to be
configured by site. We addressed their request and released SDWIS/FedRep
1.2.2 SR1. These changes were incorporated in SDWIS/FedRep 2.0. However,
for state nodes implemented using .NET, all releases of SDWIS/FedRep
require an interim release, which is available from the SDWIS User
Support line. The interim release will be incorporated in SDWIS/FedRep
3.0.

## Extraction creates an empty XML document.

Question: Why is the extracted XML document empty.

Answer: This usually means that the ODBC connection is incorrect.

## SDWIS/FedRep and SDWIS/STATE Web Release 1.0

Question: What version of SDWIS/FedRep extracts data from the
SDWIS/State Web Release 1.0 database?

Answer: SWIS/FedRep 2.0 extracts data from the SDWIS/STATE database
structure. It will retrieve the data by connecting to SDWIS/STATE using
ODBC the same as SDWIS/FedRep 1.2.2. The only significant difference in
the extraction is that it will no longer extract data from an Oracle 8i
database. SDWIS/STATE must be deployed on Oracle 9i or higher.
Additionally, to extract from SDWIS/STATE 8.0 database, you must use
SDWIS/FedRep 1.2.2.

## Reporting Inactive Water System and Facilities

Question: When a PWS is inactivated, should all of its facilities also
be inactivated? Perhaps some facilities might not be inactivated, such
as in the case of two water systems being consolidated into one, but in
that case the still active facilities would be re‑associated with the
new PWS ID.

Answer: When deactivating a water system, you don\'t have to deactivate
its active facilities to satisfy reporting requirements. The reporting
requirement is that when reporting inventory data to SDWIS/ODS, only
inactive water system facilities are reported for inactive water
systems. If the inactive water system has active water system facilities
in the State information system, please do not report those active
facilities.

Since SDWIS/ODS does not delete unreported facilities, if you had
reported those active facilities in prior submissions to SDWIS/ODS, they
will remain active in the SDWIS/ODS database. Inactive water systems
having active water system facilities is not violate the data quality
rules in SDWIS/ODS.

## Reporting Water System Facility Flows

Question: Does SDWIS/FedRep extract facility flows for a portion of the
total flow path? For example, does it only track from source to
treatment? Which specific flow information does SDWIS/FedRep extract?

Answer: SDWIS/FedRep extracts flows for active Water Systems. However,
SDWIS/FedRep 2.0 extracts the flows of active water system facilities
belonging to active water systems.

## Reporting Locational Information

Question: Does SDWIS/FedRep extract a single set of Locational
information for each water system facility?

Answer: SDWIS/FedRep 1.2.2 extracts all the Locational detail records of
all active water system facilities that belong to active water systems.
SDWIS/FedRep 2.0, however, only extracts the locational data for source
facilities and treatment plants.

Please keep in mind that only one Locational record is allowed for a
facility. If there is more than one Locational detail record for a
facility in your database, SDWIS/FedRep will extract them all, but
SDWIS/ODS will reject them with a duplicate Locational information
error. You will also get a Referential Integrity (RI) error from
SDWIS/FedRep.

## Reporting Geographical Information

Question: How does SDWIS/FedRep extract Geographical information? For
example, if there is a city and state for a PWS and a Tribal FIPS code,
does it extract two records?

Answer: SDWIS/FedRep extracts all the geographic information and formats
it in the XML document.

## Reporting Legal Entities

Question: Was there a change in the extraction of Legal Entities in
SDWIS/FedRep 2.0?

Answer: In SDWIS/FedRep 2.0, only the Administrative Contacts were
extracted from SDWIS/STATE. In SDWIS/FedRep 1.2.2 all contact types were
extracted.

## Configuring User IDs and Roles

Question: Why are we receiving an HTTP Status 403 - Access to the
requested resource has been denied error?

Answer: The error is usually caused by case-sensitivity. Tomcat role
names are case-sensitive, and SDWIS/FedRep expects all users to be
assigned to the role "FedRep".

## Refresh SDWIS/ODS Test Database

Question: How often is the SDWIS/ODS test environment is refreshed?

Answer: The SDWIS/ODS test area is refreshed every quarter, after the
production database is closed for quarterly processing. At any time, a
state can ask production control to refresh their data in the test
database.

## Associate Violations to Enforcements

Question: Is there is a limit to the number of violations that can be
associated to a specific enforcement?

Answer: None of the SDWIS products (i.e., SDWIS/STATE, SDWIS/FedRep,
SDWIS/ODS, SDWIS/ODSWeb, and SDWIS/XMLWriter) impose a limit on the
number of Violations that can be associated to an Enforcement.

## Submitting Data Outside of the Domain

Question: If a primacy agency makes a change to a particular Violation
and/or Enforcement and those change(s) are outside of the routine 3-year
window that the state assigns for the normal quarterly update, are those
changes submitted along with the regular 3-year Violations/ Enforcements
domain?

Answer: Any data in the Actions and Samples subject area outside the
normal domain will be extracted if they were modified or inserted within
the domain.

## Duplicate-by-Data Site Visits

Question: Why am I receiving duplicate-by-data Site Visit errors on my
Data Quality Report?

Answer: The legacy SDWIS/FED automatically generated a unique ID for
Site Visits and the generated ID was not consistent with the ID in the
primacy agency's database.  Because of this lack of consistency, as
SDWIS/ODS migrated Site Visits to its database each Site Visit ID was
preceded with a "#." As primacy agencies submit Site Visits using the ID
in their information system, it is "duplicating by data" the migrated
Site Visit with the "#" sign.

## Active Historical/Unreported Water System Facilities.

Question: Why am I receiving Active historical/unreported WSF Data
Quality errors?

Answer: These Water System Facilities were reported to SDWIS/ODS but
were not reported with the last submission. For primacy agencies using
SDWIS/STATE, these facilities were probably deleted after they were
originally reported. By special request to SDWIS User Support and
approval by the region and headquarters, these facilities may be deleted
from the SDWIS/ODS database.

# DRINKING WATER WATCH 1.2

## Contact List is Individuals

Question: Why am I not seeing all my contacts? Only individuals are
listed.

Answer: As part of a requested change, beginning in DWW 1.1 only
contacts that are an individual are displayed. If you want to modify
your copy of DWW so that it will show non-individual points of contact,
you may shut down Tomcat and change the SQL statement in
C:\\Tomcat-5.0.28\\webapps\\DWW\\WEB-INF\\classes\\sdwis\\PointsOfContact.java
to no longer include the TININDIV table, but the TINLGENT table for the
contact name. You also need to change
C:\\Tomcat-5.0.28\\webapps\\DWW\\JSP\\WaterSystemDetail.jsp to use the
Name field from the TINLGENT table instead of the separate first and
last names from the TININDIV table. Once you have made the necessary
changes to the PointOfContact.java file, save it and recompile the
modified file and restart Tomcat.

## Criteria for Analytical Results In Non-Coliform Sample/Results by Analyte

Question: Why don\'t results for some analytes show up when I click on
the Non-Coliform Sample/Results by Analyte link?

Answer: Analytes referenced in the TMNALRA table as either open-ended
with a Threshold of MCL or a record with a null Threshold are not
displayed. You can decide how you want to handle analytes that don\'t
meet the previously stated criteria and make the appropriate changes to
the appropriate .java and .jsp files.

## Multiple Analytical Results In Non-Coliform Sample/Results by Analyte

Question: Why do I see multiple records for some results show up when I
click on the Non-Coliform Sample/Results by Analyte link?

Answer: Some analytes show up twice due to the SQL statement in
C:\\Tomcat-5.0.28\\webapps\\DWW\\WEB-INF\\classes\\sdwis\\AnalyteList.java.
If the analyte has both an open-ended MCL record in the TMNALRA table
and a record with a null Threshold value, it will return both records
from the TMNALRA table. You can decide how you want to handle these
situations and make the necessary changes to the appropriate .java and
.jsp files.

## Multiple PBCU Summary Results -- Appearance of Duplicates

Question: Why does DWW show multiple records for some PBCU Summary
Results? It appears to display duplicates.

Answer: In addition to a 90^th^ percentile, CDS Setup also creates a
95^th^ percentile and an Action Level summary. The DWW pages don't show
the summary type, which results in the appearance of "duplicate"
results. You can either change the necessary .java files so that only
the 90^th^ percentile summaries are retrieved or update the necessary
.java and .jsp files so that the summary type field displays---thus
eliminating the appearance of duplicate summary results.

## Lowercase for DWW.War File

Question: I am having trouble deploying the DWW.WAR file.

Answer: Tomcat does not recognize a .war extension when the .war is in
all caps, e.g. .WAR.

Change the extension to all lowercase and retry the deployment.

## Getting State Map to Work Where County Name Has Spaces 

Issue: There is an issue with implementing the clickable state map for
counties that have a space in the name (e.g. St Charles, De Kalb, Du
Page, etc.)

Resolution: This has been fixed for SDWIS/STATE 2.0 -- there will no
longer be a problem with spaces in county names.

# SDWIS/LAB TO STATE 1.0

## Exception Errors When Validating XML Document

Question: When uploading a CSV file, why am I receiving
ClassNotFoundException and ClassCastException errors?

Answer: The Xerces parser found in the common directory inside the
Tomcat installation was older and conflicting with the parser supplied
along with the application. After deleting the older XML parser the
application is working as expected.

## Transfer XML document to SDWIS/XML Sampling

Question: Why did the XML document transfer to SDWIS/XML Sampling after
it was certified?

Answer: To certify the file, the Site Property file must identify the
XML Sampling integration class and the SDWIS/XML Sampling Inboxes using
the following properties in the System Property File:

XMLSamplingIntegratorClass

SDWIS_EDWR_Inbox

Sample_Summary_Inbox

Sample_Summary_Result_Inbox

DMBP_Summary_Inbox

This page is intentionally left blank.

**APPENDIX A**

Summary of RELATION.MDB Queries

This page is intentionally left blank.

**Summary of RELATION.MDB Queries**

**SS-ALRA Qry**

Returns all Analyte Levels in your database, sorted by Analyte Name,
Level Type, and Effective Begin. Analyte levels include MCLs, action
levels, trigger levels and regulatory minimum detection levels, among
others.

**SS-Calc MCL Values for Detects Qry**

Returns all MCL Values calculated by CDS that are based on one or more
results with detections. MCL Values are those values that are compared
against MCLs to determine compliance. An MCL Value is the same as a
rounded Running Annual Average (RAA) for contaminants that are related
to long-term exposure and that are on quarterly monitoring. The query
returns results sorted by analyte name and value (descending order).

The main purpose of this query is to enable you to accurately associate
an MCL Value to its contaminant and to show the complex relationships
involved, perhaps including an unexpected relationship to the sample
schedule on which the MCL Value is built. This query could be combined
with SS-MP AVGS ALRA Subqry to return all MCL Values that exceed an MCL.
You would need to add criteria similar to the criteria in SS-MP AVGS GT
MCL Final Qry.

**SS-MP AVGS ALRA Subqry**

This is a query used by the SS-MP AVGS GT MCL FINAL QRY. This query
could have been named SS-MCL Subqry because it returns all the MCLs that
are in the Analyte Level Rule table.

**SS-MP AVGS GT MCL Final Qry**

Returns Monitoring Period Averages that exceed the MCL for a
user-entered analyte code and monitoring period begin and end date.
Perhaps it would have been better to do this using MCL Values rather
than Monitoring Period Averages (MPA) since the latter are used to
determine MCL compliance. The query demonstrates how to make a parameter
query.

**SS-MP AVGS GT MCL Subqry**

Subquery for MP AVGS GT MCL FINAL QRY. The intent of this query is to
show the complex relationships involved in reporting MPAs.

This query may return the same MPA more than once. The mistake is that
TMNSASCH is related to TINWSYS and then TINWSYS to TINWSF. TMNSASCH
should have been related to TINWSF and then TINWSF to TINWSYS.
Additionally, TSASMPPT should not be in the query (you will need to
remove the field \[SS-MP AVGS GT MCL Subqry\].\[SP ID\] from the query
output).

The SQL statement should be as follows:

SELECT DISTINCTROW TSAANLYT.TSAANLYT_IS_NUMBER,
TSAANLYT.TSAANLYT_ST_CODE, TINWSYS.NUMBER0 AS \[PWS ID\], TINWSYS.NAME
AS \[PWS NAME\], \[TSAANLYT\]\![CODE\] AS \[ANALYTE CODE\],
TMNMPAVG.MEASURE AS \[MPA-VALUE\], TMNMPAVG.MEASURE_TEXT AS
\[MPA-VALUE-T\], TMNMPAVG.UOM_CODE, TMNMPAVG.NUMB_RESULTS_USED,
TMNMPAVG.TOTAL_DAYS, Trim(\[ST_ASGN_IDENT_CD\]) AS \[WSF ASGND ID\],
Trim(\[TMNMPRD\]\![NAME\]) AS \[MON PERIOD\], TMNMPRD.CP_PRD_BEGIN_DT AS
\[MP BEGIN\], TMNMPRD.CP_PRD_END_DT AS \[MP END\]

FROM ((TMNMPAVG INNER JOIN (TMNSSMPA INNER JOIN TMNMPRD ON
(TMNSSMPA.TMNMPRD_ST_CODE = TMNMPRD.TMNMPRD_ST_CODE) AND
(TMNSSMPA.TMNMPRD_IS_NUMBER = TMNMPRD.TMNMPRD_IS_NUMBER)) ON
(TMNMPAVG.SSMPA_MPRD_ST_CD = TMNSSMPA.TMNMPRD_ST_CODE) AND
(TMNMPAVG.SSMPA_MPRD_IS_NO = TMNSSMPA.TMNMPRD_IS_NUMBER) AND
(TMNMPAVG.SSMPA_SASCH_ST_CD = TMNSSMPA.TMNSASCH_ST_CODE) AND
(TMNMPAVG.SSMPA_SASCH_IS_NO = TMNSSMPA.TMNSASCH_IS_NUMBER)) INNER JOIN
((TSAANLYT INNER JOIN TMNMNR ON (TSAANLYT.TSAANLYT_ST_CODE =
TMNMNR.TSAANLYT_ST_CODE) AND (TSAANLYT.TSAANLYT_IS_NUMBER =
TMNMNR.TSAANLYT_IS_NUMBER)) INNER JOIN TMNSASCH ON
(TMNMNR.TMNMNR_ST_CODE = TMNSASCH.TMNMNR_ST_CODE) AND
(TMNMNR.TMNMNR_IS_NUMBER = TMNSASCH.TMNMNR_IS_NUMBER)) ON
(TMNSSMPA.TMNSASCH_ST_CODE = TMNSASCH.TMNSASCH_ST_CODE) AND
(TMNSSMPA.TMNSASCH_IS_NUMBER = TMNSASCH.TMNSASCH_IS_NUMBER)) INNER JOIN
(TINWSYS INNER JOIN TINWSF ON (TINWSYS.TINWSYS_ST_CODE =
TINWSF.TINWSYS_ST_CODE) AND (TINWSYS.TINWSYS_IS_NUMBER =
TINWSF.TINWSYS_IS_NUMBER)) ON (TMNSASCH.TINWSF_ST_CODE =
TINWSF.TINWSF_ST_CODE) AND (TMNSASCH.TINWSF_IS_NUMBER =
TINWSF.TINWSF_IS_NUMBER);

You can copy the above SQL Statement into the SQL View of the query.
Remember to remove the field \[SS-MP AVGS GT MCL Subqry\].\[SP ID\]
mentioned above as well.

**SS-PK SCH Qry**

This query and the next two subqueries work together to return all the
packaged schedules that have been entered into SDWIS/STATE. It also
shows the complex relationships involved when schedules are packaged.

**SS-PK SCH-GRP Subqry**

This is a subquery for SS-PK SCH Qry. It returns all sample schedules
that reference an analyte group (called a Group Schedule in
SDWIS/STATE).

**SS-PK SCH-IND Subqry**

This is a subquery for SS-PK SCH Qry. It returns all sample schedules
that reference an individual analyte and is not a part of a group
schedule.

**SS-Purch Wtr Sys Subqry**

This is a subquery for SS-Purchasing Wtr Sys Qry. It returns data from
the Water Purchase entity and information about the receiving facility.
If there is no receiving facility for a purchase (a problem when
reporting purchases to SDWIS/FED), the query will still return the row.

**SS-Purchasing Wtr Sys Qry**

This query takes the above query and adds the receiving PWS, supplying
PWS, and supplying facility. This query can be used to identify active
purchases that do not have a receiving facility. These are a problem
because, without a receiving facility, *Migration to SDWIS/FED* cannot
identify the PWS ID of the seller, a SDWIS/FED mandatory data element.
To do this, enter "null" in the criteria line for field RCVNG-WSF-ID.
Note that many or most of the rows returned will likely be for inactive
receiving water systems. If you only want to see results for active
receiving PWS, then enter "A" in the criteria line for field
PURCHASER-ACT-STATUS: ACTIVITY_STATUS_CD.

**SS-RAR ALRA Subqry**

Subquery for SS-RAR-FINAL-QRY.

**SS-RAR Final Qry**

This query mimics the Results Alert Report. It will return results that
exceed a user-entered level type (e.g., MCL, action level, trigger
level) for a user-entered analyte code and sample date range. It is only
written to work with the following level types: Action Level (ACL), MCL,
Maximum Contaminant Level Goal (MCLG), Trigger Level (TRL), and
Unreasonable Risk to Health level (URTH).

**SS-RAR RSLTS Subqry**

Subquery for SS-RAR-FINAL-QRY.

**SS-Results Data Entry QA Qry**

The query can be used to build a more site-specific method of checking
data entry accuracy.

**SS-Results Non-TCR Qry**

This query returns results for a selected analyte code and a selected
sample date range. It sorts the results by highest result to lowest
result.

**SS-Sch-Grp nonTCR SubSch Subqry**

This is a subquery to SS-Smpl Sch nonTCR AppendQry. It returns all
sampling points that have been referenced in a Group Schedule (a sample
schedule that references an analyte group).

**SS-Sch-Ind nonTCR Subsch Subqry**

This is a subquery to SS-Smpl Sch nonTCR MakeTableQry. It returns all
sampling points that have been referenced by an individual Schedule (a
sample schedule for a single analyte).

**SS-Seller Wtr Sys Qry**

This query returns all purchase records sorted by the seller water
system. It uses the next query as a subquery.

**SS-Seller Wtr Sys Subqry**

See the discussion under SS-Seller Wtr Sys Qry.

**SS-Smp Summ PBCU Qry**

This query returns all lead and copper 90th percentile results.

**SS-Smpl Sch nonTCR AppendQry**

This query, if run after the SS-Smpl Sch nonTCR MakeTableQry, appends
current and future Group Schedules (sample schedules that reference an
analyte group) to table Sample Schedules (an MS Access table created by
the make table query). This query uses the subquery SS-Sch-Grp nonTCR
SubSch Subqry to return sampling points that are part of the Group
Schedule.

**SS-Smpl Sch nonTCR MakeTableQry**

This query creates an MS Access table named "Sample Schedules" and
populates it with all current and future individual, non-TCR schedules
(a sample schedule for a single analyte).

If you run both this and the previous append query, you will have all
the current and future, non-TCR sample schedules in the Sample Schedules
table. You could then build a report using the Sample Schedules table to
send out schedules to all your water systems (you may want to add the
current TCR routine schedule as well).

**SS-TC Results Qry**

This query returns all For Compliance, Accepted or Validated, TCR
results sorted by Water System Name, Sample Date, and Sample Number. TCR
results include total coliform (3100), fecal coliform (3013), and *E.
coli* (3014).

**SS-TC Rpl Smpls Qry**

This query uses two sub-queries, SS-TC Rpl Smpls Subqry and SS-TC Smpl
wo Rslts Subqry, to return results of replacement samples as well as
information about the original sample. As written, the query will only
return a replacement sample if the sample has been associated to an
original sample.

It could easily be modified to return all replacement samples by making
a right join between the two sub-queries (and making the change stated
under SS-TC Rpl Smpls Subqry).

**SS-TC Rpl Smpls Subqry**

This subquery was intended to return information about replacement
samples. It excludes necessary criteria to do this properly. The
following should be added to the Where clause in the SQL statement,
\"and TSASAMPL.REPLACEMENT\_

IND_CD)=\"Y\".\"

**SS-TC RSLTS RPT Qry**

The intent of this query was to return all individual and summary
results for TCR in a single query. However, it is not successful. To
report both individual and summary TCR results, you could create one
sub-report for the SS-RSLTS RPT-SAR Subqry, a second sub-report for
SS-TC RSLTS RPT-SSR Subqry and then a final report using a new query
that returns all water systems that also includes the two sub-reports.

**SS-TC RSLTS RPT-SAR Subqry**

See discussion under SS-TC RSLTS RPT Qry.

**SS-TC RSLTS RPT-SAR Subsubqry**

This is a subquery for the SS-TC RSLTS RPT-SAR Subqry. It enables the
latter query to return total coliform samples even if they don't have
results.

**SS-TC RSLTS RPT-SSR Subqry**

See discussion under SS-TC RSLTS RPT Qry.

**SS-TC Smpl wo Rslts Subqry**

See discussion under SS-TC Rpl Smpls Qry.

**SS-WELL Qry**

This query, using the two sub-queries that follow, returns data about
wells in SDWIS/STATE. Two sub-queries are needed because wells can be
optionally stored with screen information and locational information.

**SS-WELL Subqry1**

This query returns all the screen information in SDWIS/STATE. This
information is combined with all the other information about each well
in the main query SS-WELL Qry.

**SS-WELL Subqry2**

This query returns all wells in SDWIS/STATE and includes locational
information if it is available. It is then used as the base subquery in
the main query SS-WELL Qry.

**SS-Wtr Sys by Reg Ag Qry**

This query returns water systems that are associated to legal entities
as regulating agencies. It sorts the information by legal entity name,
water system type, federal primary source water type, and water system
name.

**SS-Smpl Sch TCR Ind AppendQry**

> If run after the SS-Smpl Sch nonTCR MakeTableQry, this query appends
> current and future TCR Schedules to table Sample Schedules (an MS
> Access table created by the make table query)

[^1]: *Consolidated Summary of State Reporting Requirements for Safe
    Drinking Water Information System (SDWIS).* P. TCR-3. Release No. 2
    -- June, 1998.

[^2]: See page TCR-2 of the *Consolidated Summary of State Reporting
    Requirements for Safe Drinking Water Information System (SDWIS),*
    Release No. 2 -- June 1998.