> Inhalt: JavaScout Base-System (JSBS)

JSBS_Parameter_DBA_Set – Basisklasse für den Low-Level Zugriff auf die DB-Tabelle 'Parameter'

* Bitte beachten Sie die Hinweise und Bestimmungen bezüglich Urheberrecht, Haftungsausschluß und geschützte Marken oder Warenzeichen die für dieses Web-Dokument und möglicherweise auch für 'verlinkte' Dokumente gelten.

  • Der Betreiber dieser Web-Site (www.javascout.biz) ist nicht verantwortlich für den Inhalt von Web-Sites, die innerhalb dieses Web-Dokumentes oder anderer Dokumente von www.javascout.biz verlinkt sind.

  • Wenn dieses Web-Dokument oder andere Dokumente dieser Web-Site (www.javascout.biz) Rechte von Ihnen verletzen, oder sie glauben, daß Rechte Anderer (Dritter Personen) dadurch verletzt werden, informieren Sie bitte den Betreiber dieser Web-Site.
    Eine E-Mail können Sie ganz einfach durch anklicken des Symbols oder Textes im Frame rechts oben senden.

Dieses Dokument drucken.

 Letzte Bearbeitung dieses  Dokuments:
2011-11-25

Inhaltsverzeichnis

Code 
Erklärungen und Anwendungsbeispiele 
Verwandte Dokumentation
 

Code

package js_base.dba;
/*
 * de: Package für die Verbindung zur Datenbank.

 * en: Package for the connection to the database.
*/
import
java.sql.*;
/*
 * de:

 *
Package mit der Klasse mit dem minimalen Set an Parametern. Diese enthält das Arbeitsdatum.
 * Das Arbeitsdatum wird für die Selektion bei verschiedenen Abfragen gebraucht
.
 * en:

 *
Package with the class with the minimal set of parameters. Those contains the working-date.
 * The working-date is needed for the selection at different database requests
. */
import
js_base.structures.JSBS_MinimalParameters;
/**
 *
 * @author kurt(at)javascout(dot)biz
 * @date 2008-02-13
 *
 * @description
 *  de:
 *  Data-Base-Access (DBA) Objekt zum Lesen eines Sets von Datensätzen von der
 *  Datenbank-Tabelle 'Parameter.
 *  
 *  Für die Beschreibung der Variablen sehen Sie bitte bei der Variablen-Deklaration
 *  des zugehörigen DBA-Objektes nach.
 *  
 *  Anwender-bekannter-Schlüssel: ParameterName, Value01, Value02, Value03, Value04, Value05.
 *  
 *  en:
 *  Data-Base-Access (DBA) Object to read a set of data from the table 'Parameter'.
 * 
 *  Please see the description at the variables-declaration in the associated DBA-Object.
 * 
 *  User-Known-Key: ParameterName, Value01, Value02, Value03, Value04, Value05.
 *
 * @change-log
 * when         who               why
 * --------------------------------------------------------
 *
 */

public class JSBS_Parameter_DBA_Set extends JSBS_DBA_Set {
/*
 * METHODEN / METHODS
 * -------------------------- */
/*
 * de:
 * Methode zum Selektieren aller Datensätze für einen gegebenen Parameter-Namen
 * die zum aktuellen Datum gültig sind.

 * en:
 * Method to select all datasets for a given parameter-name which are valid at
 * at the actual date. */
    
public synchronized void selectByParameterName(
                                      Connection parmDBCon, JSBS_MinimalParameters parmMinParm,
                                      String parmParameterName) {
/* de:
 * 'Bauen' des SQL-Kommandos in einer Zeichenkette.
 * Das SQL-Kommando wird zuerst in einer eigenen Zeichenkette aufgebaut (und nicht gleich
 * als Parameter der preparedStatement Methode) um das SQL-Kommando klar sehen zu können.
 * Das ist hilfreich wenn es notwendig ist, den Debugger einzusetzen.
 * en:
 * Build the SQL-Command in a String.
 * The Command is put into an extra String (and not into the prepareStatement method)
 * to see more clearly how the SQL-command looks like.
 * This is helpful when debugging. */
      
final String locstrSQLCommand = JSBS_Parameter_DBA.CONST_SELECT_ALL_ATTRIBUTES +
                                      " where " + JSBS_Parameter_DBA.CONST_ClientID + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ParameterName + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ValidFrom + " <=?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ValidTill + " >=?" +
                                      " order by " + JSBS_Parameter_DBA.CONST_Value01 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value02 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value03 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value04 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value05 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value06 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value07 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value08 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value09 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value10 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value11 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value12 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value13 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value14 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value15 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value16 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value17 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value18 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value19 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value20 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidFrom + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidTill + " desc";
/* de: Umwandeln des aktuellen Datums (aus den übergebenen Parametern) in das java.sql.Date Format.
 * en: Convert the actual date (from the passed parameters) to the java.sql.Date format. */
      
Date locdteWorkDate = new Date(parmMinParm.calWorkDate.getTime().getTime());
/* de: 'PreparedStatement'; eine spezielle Klasse für Operationen auf die Datenbank.
 * en: 'PreparedStatement'; a special class for operations toward the database. */
      
PreparedStatement SQLStatement;
      try {
/* de: 'PreparedStatement' konstruieren und mit dem SQL-Kommando füllen.
 * en: Construct the 'PreparedStatement' and fill it with the SQL-command. */
        SQLStatement = parmDBCon.prepareStatement(locstrSQLCommand);
/* de: Füllen der Variablen im 'PreparedStatement'.
 * en: Fill the variable(s) in the 'PreparedStatement'. */
        SQLStatement.setInt(1, parmMinParm.intClientID);
        SQLStatement.setString(2, parmParameterName);
        SQLStatement.setDate(3, locdteWorkDate);
        SQLStatement.setDate(4, locdteWorkDate);
/* de: Ausführen der Datenbank-Operation für ein SELECT.
 * en: Perform the database-operation for SELECT. */
        ResultSet SQLResultSet = SQLStatement.executeQuery();
/* 
 * de: Übertragen der Daten vom ResultSet in den Vector mit den einzelnen DBA-Objekten.
 * en: Transfer the data from the ResultSet to the vector with the individual DBA-objects. */
        vecRecordSet.removeAllElements();
        for (;;) {
/* de:
 * Einen Datensatz nach dem Anderen lesen;
 * for-Schleife abbrechen wenn kein weiterer Datensatz mehr im ResultSet vorhanden ist.
 * en:
 * Read one dataset after the other;
 * break the for-loop if there is no more dataset within the ResultSet. */

          if (!SQLResultSet.next()) return;
/* de:
 * Zur Sicherheit noch einmal überprüfen ob die Gültigkeit des Datensatzes mit dem
 * aktuellen Datum übereinstimmt.
 * en:
 * Check a second time if the validity of the dataset fits the actual date.
*/
          locdteReadValidFrom = SQLResultSet.getDate(JSBS_DBA.CONST_ValidFrom);
          locdteReadValidTill = SQLResultSet.getDate(JSBS_DBA.CONST_ValidTill);
          if (isWithinDateRange(locdteWorkDate, locdteReadValidFrom, locdteReadValidTill)) {
/* de:
 * Ein DBA-Objekt 'konstruieren' und die Werte aus dem SQLResultSet übertragen.
 * en:
 * Construct a DBA-object and transfer the values of the SQLResultSet.
*/
            JSBS_Parameter_DBA locstructJSBS_Parameter_DBA = new JSBS_Parameter_DBA();
            locstructJSBS_Parameter_DBA.getValuesFromSQLResultSet(SQLResultSet);
/* de:
 * Einfügen des einzelnen DBA-Objektes in den Vector;
 * dieser ist in der geerbten Basisklasse definiert.
 * en:
 * Insert the single DBA-object into the Vector; 
 * the Vector is defined in the inherited base-class. */

            vecRecordSet.addElement(locstructJSBS_Parameter_DBA);
          }
/* de:
 * Datenbank-Operation wurde ohne Fehler ausgeführt; zurückmelden an die aufrufende Methode
 * durch eine leere Zeichenkette für die Fehlermeldung (error-message).
 * en:
 * Database operation run without an error; report this to the calling method by an empty string
 * for the error-message. */

          ErrorMsg = "";
        }
      }
      
catch (SQLException SQLExc) {
/* de: Während des Ausführens der DB-Operation ist ein Fehler aufgetreten; Text-Nachricht holen.
 * en:
An error occured while running the DB-operation; get the textual message. */
        ErrorMsg = SQLExc.getMessage();
      }

    
}
/* ************************
 * de:
 * Methoden mit weiteren Selektionskriterien. Für die Erklärung des Codes lesen Sie bitte
 * die Kommentare bei der Methode 'selectAllValidForParameterName'.

 * en:
 * Method with further selection-criterias. For an explanation of the code read the comments
 * at method 'selectAllValidForParameterName'. */
    
public synchronized void selectByValue01(
                                      Connection parmDBCon, JSBS_MinimalParameters parmMinParm,
                                      String parmParameterName, String parmValue01) { 

      
final String locstrSQLCommand = JSBS_Parameter_DBA.CONST_SELECT_ALL_ATTRIBUTES +
                                      " where " + JSBS_Parameter_DBA.CONST_ClientID + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ParameterName + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value01 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ValidFrom + " <=?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ValidTill + " >=?" +
                                      " order by " + JSBS_Parameter_DBA.CONST_Value02 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value03 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value04 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value05 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value06 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value07 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value08 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value09 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value10 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value11 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value12 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value13 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value14 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value15 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value16 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value17 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value18 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value19 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value20 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidFrom + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidTill + " desc"
      
Date locdteWorkDate = new Date(parmMinParm.calWorkDate.getTime().getTime()); 
      
PreparedStatement SQLStatement;
      try {
        SQLStatement = parmDBCon.prepareStatement(locstrSQLCommand);
        SQLStatement.setInt(1, parmMinParm.intClientID);
        SQLStatement.setString(2, parmParameterName);
        SQLStatement.setString(3, parmValue01);
        SQLStatement.setDate(4, locdteWorkDate);
        SQLStatement.setDate(5, locdteWorkDate);
        ResultSet SQLResultSet = SQLStatement.executeQuery();
        vecRecordSet.removeAllElements();
        for (;;) {
          if (!SQLResultSet.next()) return;
          locdteReadValidFrom = SQLResultSet.getDate(JSBS_DBA.CONST_ValidFrom);
          locdteReadValidTill = SQLResultSet.getDate(JSBS_DBA.CONST_ValidTill);
          if (isWithinDateRange(locdteWorkDate, locdteReadValidFrom, locdteReadValidTill)) {
            JSBS_Parameter_DBA locstructJSBS_Parameter_DBA = new JSBS_Parameter_DBA();
            locstructJSBS_Parameter_DBA.getValuesFromSQLResultSet(SQLResultSet);
            vecRecordSet.addElement(locstructJSBS_Parameter_DBA);
          }
          ErrorMsg = "";
        }
      }
      
catch (SQLException SQLExc) {
        ErrorMsg = SQLExc.getMessage();
      }

    
}
/* ************************
 */
    
public synchronized void selectByValue01_02(
                                      Connection parmDBCon, JSBS_MinimalParameters parmMinParm,
                                      String parmParameterName, String parmValue01,
                                      String parmValue02) { 

      
final String locstrSQLCommand = JSBS_Parameter_DBA.CONST_SELECT_ALL_ATTRIBUTES +
                                      " where " + JSBS_Parameter_DBA.CONST_ClientID + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ParameterName + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value01 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value02 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ValidFrom + " <=?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ValidTill + " >=?" +
                                      " order by " + JSBS_Parameter_DBA.CONST_Value03 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value04 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value05 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value06 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value07 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value08 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value09 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value10 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value11 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value12 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value13 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value14 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value15 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value16 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value17 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value18 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value19 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value20 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidFrom + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidTill + " desc"
      
Date locdteWorkDate = new Date(parmMinParm.calWorkDate.getTime().getTime()); 
      
PreparedStatement SQLStatement;
      try {
        SQLStatement = parmDBCon.prepareStatement(locstrSQLCommand);
        SQLStatement.setInt(1, parmMinParm.intClientID);
        SQLStatement.setString(2, parmParameterName);
        SQLStatement.setString(3, parmValue01);
        SQLStatement.setString(4, parmValue02);
        SQLStatement.setDate(5, locdteWorkDate);
        SQLStatement.setDate(6, locdteWorkDate);
        ResultSet SQLResultSet = SQLStatement.executeQuery();
        vecRecordSet.removeAllElements();
        for (;;) {
          if (!SQLResultSet.next()) return;
          locdteReadValidFrom = SQLResultSet.getDate(JSBS_DBA.CONST_ValidFrom);
          locdteReadValidTill = SQLResultSet.getDate(JSBS_DBA.CONST_ValidTill);
          if (isWithinDateRange(locdteWorkDate, locdteReadValidFrom, locdteReadValidTill)) {
            JSBS_Parameter_DBA locstructJSBS_Parameter_DBA = new JSBS_Parameter_DBA();
            locstructJSBS_Parameter_DBA.getValuesFromSQLResultSet(SQLResultSet);
            vecRecordSet.addElement(locstructJSBS_Parameter_DBA);
          }
          ErrorMsg = "";
        }
      }
      
catch (SQLException SQLExc) {
        ErrorMsg = SQLExc.getMessage();
      }

    
}
/* ************************
 */
    
public synchronized void selectByValue01_03(
                                      Connection parmDBCon, JSBS_MinimalParameters parmMinParm,
                                      String parmParameterName, String parmValue01,
                                      String parmValue02, String parmValue03) { 

      
final String locstrSQLCommand = JSBS_Parameter_DBA.CONST_SELECT_ALL_ATTRIBUTES +
                                      " where " + JSBS_Parameter_DBA.CONST_ClientID + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ParameterName + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value01 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value02 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value03 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ValidFrom + " <=?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ValidTill + " >=?" +
                                      " order by " + JSBS_Parameter_DBA.CONST_Value04 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value05 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value06 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value07 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value08 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value09 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value10 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value11 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value12 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value13 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value14 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value15 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value16 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value17 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value18 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value19 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value20 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidFrom + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidTill + " desc"
      
Date locdteWorkDate = new Date(parmMinParm.calWorkDate.getTime().getTime()); 
      
PreparedStatement SQLStatement;
      try {
        SQLStatement = parmDBCon.prepareStatement(locstrSQLCommand);
        SQLStatement.setInt(1, parmMinParm.intClientID);
        SQLStatement.setString(2, parmParameterName);
        SQLStatement.setString(3, parmValue01);
        SQLStatement.setString(4, parmValue02);
        SQLStatement.setString(5, parmValue03);
        SQLStatement.setDate(6, locdteWorkDate);
        SQLStatement.setDate(7, locdteWorkDate);
        ResultSet SQLResultSet = SQLStatement.executeQuery();
        vecRecordSet.removeAllElements();
        for (;;) {
          if (!SQLResultSet.next()) return;
          locdteReadValidFrom = SQLResultSet.getDate(JSBS_DBA.CONST_ValidFrom);
          locdteReadValidTill = SQLResultSet.getDate(JSBS_DBA.CONST_ValidTill);
          if (isWithinDateRange(locdteWorkDate, locdteReadValidFrom, locdteReadValidTill)) {
            JSBS_Parameter_DBA locstructJSBS_Parameter_DBA = new JSBS_Parameter_DBA();
            locstructJSBS_Parameter_DBA.getValuesFromSQLResultSet(SQLResultSet);
            vecRecordSet.addElement(locstructJSBS_Parameter_DBA);
          }
          ErrorMsg = "";
        }
      }
      
catch (SQLException SQLExc) {
        ErrorMsg = SQLExc.getMessage();
      }

    
}
/* ************************
 */
    
public synchronized void selectByValue01_04(
                                      Connection parmDBCon, JSBS_MinimalParameters parmMinParm,
                                      String parmParameterName, String parmValue01,
                                      String parmValue02, String parmValue03,
                                      String parmValue04) { 

      
final String locstrSQLCommand = JSBS_Parameter_DBA.CONST_SELECT_ALL_ATTRIBUTES +
                                      " where " + JSBS_Parameter_DBA.CONST_ClientID + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ParameterName + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value01 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value02 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value03 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value04 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ValidFrom + " <=?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ValidTill + " >=?" +
                                      " order by " + JSBS_Parameter_DBA.CONST_Value05 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value06 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value07 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value08 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value09 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value10 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value11 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value12 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value13 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value14 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value15 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value16 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value17 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value18 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value19 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value20 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidFrom + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidTill + " desc"
      
Date locdteWorkDate = new Date(parmMinParm.calWorkDate.getTime().getTime()); 
      
PreparedStatement SQLStatement;
      try {
        SQLStatement = parmDBCon.prepareStatement(locstrSQLCommand);
        SQLStatement.setInt(1, parmMinParm.intClientID);
        SQLStatement.setString(2, parmParameterName);
        SQLStatement.setString(3, parmValue01);
        SQLStatement.setString(4, parmValue02);
        SQLStatement.setString(5, parmValue03);
        SQLStatement.setString(6, parmValue04);
        SQLStatement.setDate(7, locdteWorkDate);
        SQLStatement.setDate(8, locdteWorkDate);
        ResultSet SQLResultSet = SQLStatement.executeQuery();
        vecRecordSet.removeAllElements();
        for (;;) {
          if (!SQLResultSet.next()) return;
          locdteReadValidFrom = SQLResultSet.getDate(JSBS_DBA.CONST_ValidFrom);
          locdteReadValidTill = SQLResultSet.getDate(JSBS_DBA.CONST_ValidTill);
          if (isWithinDateRange(locdteWorkDate, locdteReadValidFrom, locdteReadValidTill)) {
            JSBS_Parameter_DBA locstructJSBS_Parameter_DBA = new JSBS_Parameter_DBA();
            locstructJSBS_Parameter_DBA.getValuesFromSQLResultSet(SQLResultSet);
            vecRecordSet.addElement(locstructJSBS_Parameter_DBA);
          }
          ErrorMsg = "";
        }
      }
      
catch (SQLException SQLExc) {
        ErrorMsg = SQLExc.getMessage();
      }

    
}
/* ************************
 */
    
public synchronized void selectByValue01_05(
                                      Connection parmDBCon, JSBS_MinimalParameters parmMinParm,
                                      String parmParameterName, String parmValue01,
                                      String parmValue02, String parmValue03,
                                      String parmValue04, String parmValue05) { 

      
final String locstrSQLCommand = JSBS_Parameter_DBA.CONST_SELECT_ALL_ATTRIBUTES +
                                      " where " + JSBS_Parameter_DBA.CONST_ClientID + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ParameterName + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value01 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value02 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value03 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value04 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value05 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ValidFrom + " <=?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ValidTill + " >=?" +
                                      " order by " + JSBS_Parameter_DBA.CONST_Value06 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value07 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value08 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value09 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value10 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value11 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value12 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value13 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value14 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value15 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value16 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value17 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value18 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value19 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value20 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidFrom + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidTill + " desc"
      
Date locdteWorkDate = new Date(parmMinParm.calWorkDate.getTime().getTime()); 
      
PreparedStatement SQLStatement;
      try {
        SQLStatement = parmDBCon.prepareStatement(locstrSQLCommand);
        SQLStatement.setInt(1, parmMinParm.intClientID);
        SQLStatement.setString(2, parmParameterName);
        SQLStatement.setString(3, parmValue01);
        SQLStatement.setString(4, parmValue02);
        SQLStatement.setString(5, parmValue03);
        SQLStatement.setString(6, parmValue04);
        SQLStatement.setString(7, parmValue05);
        SQLStatement.setDate(8, locdteWorkDate);
        SQLStatement.setDate(9, locdteWorkDate);
        ResultSet SQLResultSet = SQLStatement.executeQuery();
        vecRecordSet.removeAllElements();
        for (;;) {
          if (!SQLResultSet.next()) return;
          locdteReadValidFrom = SQLResultSet.getDate(JSBS_DBA.CONST_ValidFrom);
          locdteReadValidTill = SQLResultSet.getDate(JSBS_DBA.CONST_ValidTill);
          if (isWithinDateRange(locdteWorkDate, locdteReadValidFrom, locdteReadValidTill)) {
            JSBS_Parameter_DBA locstructJSBS_Parameter_DBA = new JSBS_Parameter_DBA();
            locstructJSBS_Parameter_DBA.getValuesFromSQLResultSet(SQLResultSet);
            vecRecordSet.addElement(locstructJSBS_Parameter_DBA);
          }
          ErrorMsg = "";
        }
      }
      
catch (SQLException SQLExc) {
        ErrorMsg = SQLExc.getMessage();
      }

    
}
/* ************************
 */
    
public synchronized void selectByValue02(
                                      Connection parmDBCon, JSBS_MinimalParameters parmMinParm,
                                      String parmParameterName, String parmValue02) { 

      
final String locstrSQLCommand = JSBS_Parameter_DBA.CONST_SELECT_ALL_ATTRIBUTES +
                                      " where " + JSBS_Parameter_DBA.CONST_ClientID + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ParameterName + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value02 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ValidFrom + " <=?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ValidTill + " >=?" +
                                      " order by " + JSBS_Parameter_DBA.CONST_Value01 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value03 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value04 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value05 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value06 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value07 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value08 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value09 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value10 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value11 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value12 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value13 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value14 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value15 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value16 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value17 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value18 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value19 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value20 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidFrom + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidTill + " desc"
      
Date locdteWorkDate = new Date(parmMinParm.calWorkDate.getTime().getTime()); 
      
PreparedStatement SQLStatement;
      try {
        SQLStatement = parmDBCon.prepareStatement(locstrSQLCommand);
        SQLStatement.setInt(1, parmMinParm.intClientID);
        SQLStatement.setString(2, parmParameterName);
        SQLStatement.setString(3, parmValue02);
        SQLStatement.setDate(4, locdteWorkDate);
        SQLStatement.setDate(5, locdteWorkDate);
        ResultSet SQLResultSet = SQLStatement.executeQuery();
        vecRecordSet.removeAllElements();
        for (;;) {
          if (!SQLResultSet.next()) return;
          locdteReadValidFrom = SQLResultSet.getDate(JSBS_DBA.CONST_ValidFrom);
          locdteReadValidTill = SQLResultSet.getDate(JSBS_DBA.CONST_ValidTill);
          if (isWithinDateRange(locdteWorkDate, locdteReadValidFrom, locdteReadValidTill)) {
            JSBS_Parameter_DBA locstructJSBS_Parameter_DBA = new JSBS_Parameter_DBA();
            locstructJSBS_Parameter_DBA.getValuesFromSQLResultSet(SQLResultSet);
            vecRecordSet.addElement(locstructJSBS_Parameter_DBA);
          }
          ErrorMsg = "";
        }
      }
      
catch (SQLException SQLExc) {
        ErrorMsg = SQLExc.getMessage();
      }

    
}
/* ************************
 */
/*
 * de:
 * METHODE zum Selektieren aller Datensätze für einen gegebenen Objekt-ID.
 * Diese Methode wird zum Anzeigen von Veränderungen (History) des BO verwendet.
 * Weiters wird damit beim 'deaktivieren' des BO festgestellt, welche Datensätze
 * noch über das aktuelle Datum hinaus gültig sind.

 * en:
 * METHOD to select all datasets for a given Object-ID.
 * This method is used to show changes (display history) of the Business-Object (BO).
 * Furthermore this method is used to decide, which datasets are valid after
 * the actual date when the BO is 'deactivated'. */
    
public synchronized void selectAllByObjectID(Connection parmDBCon, double parmObjectID) {
/* de:
 * 'Bauen' des SQL-Kommandos in einer Zeichenkette.
 * Das SQL-Kommando wird zuerst in einer eigenen Zeichenkette aufgebaut (und nicht gleich
 * als Parameter der preparedStatement Methode) um das SQL-Kommando klar sehen zu können.
 * Das ist hilfreich wenn es notwendig ist, den Debugger einzusetzen.
 * en:
 * Build the SQL-Command in a String.
 * The Command is put into an extra String (and not into the prepareStatement method)
 * to see more clearly how the SQL-command looks like.
 * This is helpful when debugging. */
      
final String locstrSQLCommand = JSBS_Parameter_DBA.CONST_SELECT_ALL_ATTRIBUTES +
                                      " where " + JSBS_Parameter_DBA.CONST_ObjectID + " =? " +
                                      " order by " + JSBS_Parameter_DBA.CONST_ValidFrom + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidTill + " asc";
/* de: 'PreparedStatement'; eine spezielle Klasse für Operationen auf die Datenbank.
 * en: 'PreparedStatement'; a special class for operations toward the database. */
      
PreparedStatement SQLStatement;
      try {
/* de: 'PreparedStatement' konstruieren und mit dem SQL-Kommando füllen.
 * en: Construct the 'PreparedStatement' and fill it with the SQL-command. */
        SQLStatement = parmDBCon.prepareStatement(locstrSQLCommand);
/* de: Füllen der Variablen im 'PreparedStatement'.
 * en: Fill the variable(s) in the 'PreparedStatement'. */
        SQLStatement.setDouble(1, parmObjectID);
/* de: Ausführen der Datenbank-Operation für ein SELECT.
 * en: Perform the database-operation for SELECT. */
        ResultSet SQLResultSet = SQLStatement.executeQuery();
/* 
 * de: Übertragen der Daten vom ResultSet in den Vector mit den einzelnen DBA-Objekten.
 * en: Transfer the data from the ResultSet to the vector with the individual DBA-objects. */
        vecRecordSet.removeAllElements();
        for (;;) {
/* de:
 * Einen Datensatz nach dem Anderen lesen;
 * for-Schleife abbrechen wenn kein weiterer Datensatz mehr im ResultSet vorhanden ist.
 * en:
 * Read one dataset after the other;
 * break the for-loop if there is no more dataset within the ResultSet. */

          if (!SQLResultSet.next()) return;
/* de:
 * Ein DBA-Objekt 'konstruieren' und die Werte aus dem SQLResultSet übertragen.
 * en:
 * Construct a DBA-object and transfer the values of the SQLResultSet. */

          JSBS_Parameter_DBA locstructJSBS_Parameter_DBA = new JSBS_Parameter_DBA();
          locstructJSBS_Parameter_DBA.getValuesFromSQLResultSet(SQLResultSet);
/* de:
 * Einfügen des einzelnen DBA-Objektes in den Vector;
 * dieser ist in der geerbten Basisklasse definiert.
 * en:
 * Insert the single DBA-object into the Vector; 
 * the Vector is defined in the inherited base-class. */

          vecRecordSet.addElement(locstructJSBS_Parameter_DBA);
/* de:
 * Datenbank-Operation wurde ohne Fehler ausgeführt; zurückmelden an die aufrufende Methode
 * durch eine leere Zeichenkette für die Fehlermeldung (error-message).
 * en:
 * Database operation run without an error; report this to the calling method by an empty string
 * for the error-message. */

          ErrorMsg = "";
        }
      }
      
catch (SQLException SQLExc) {
/* de: Während des Ausführens der DB-Operation ist ein Fehler aufgetreten; Text-Nachricht holen.
 * en: An error occured while running the DB-operation; get the textual message. */
        ErrorMsg = SQLExc.getMessage();
      }

    
}
/* ************************
 */
/*
 * de:
 * METHODE zum Selektieren einer durch den Parameter 'parmNumberOfRecords' festgelegten 

 * Anzahl von
Datensätzen deren Wert im Attribut 'ChangedAt' gleich oder kleiner ist als 
 * der im Parameter 'parmBeginTimestamp' übergebene Wert für einen gegebenen 'ParameterName'.

 * Die Datensätze sind absteigend nach ihrem Wert im Attribut 'ChangedAt' sortiert
.
 * Es werden mit dieser Methode eine vorgegebene Anzahl von Datensätzen selektiert die gleich

 * alt oder älter sind als der im Parameter 'parmBeginTimestamp' übergebene Wert.

 * Diese Methode wird gebraucht wenn bei der Version 'MobileClient' die Daten auf einem
 * mobilen Client mit den Daten des Servers synchronisiert werden müssen.

 *
 * en:
 * METHOD to select a number (given in the parameter 'parmNumberOfRecords') of records

 * which value in the attribute 'ChangedAt' is equal or less than the value passed in parameter

 * 'parmBeginTimestamp' for a given 'ParameterName'.

 *
The records are sorted descending after their value in the attribute 'ChangedAt'.
 * This method selects a given number of records which are as old or older than the value

 * passed in parameter 'parm
BeginTimestamp'.
 * This method is needed when the data on a mobile client have to be synchronized with the data
 * on the server when a 'MobileClient' version is running. */
    
public synchronized void selectAllByChangedAt(Connection parmDBCon, String parmParameterName, 
    
                                              Timestamp parmBeginTimestamp, int parmNumberOfRecords) {
/*
 * de:
 * 'Bauen' des SQL-Kommandos in einer Zeichenkette.
 * Das SQL-Kommando wird zuerst in einer eigenen Zeichenkette aufgebaut (und nicht gleich
 * als Parameter der preparedStatement Methode) um das SQL-Kommando klar sehen zu können.
 * Das ist hilfreich wenn es notwendig ist, den Debugger einzusetzen.
 * en:
 * Build the SQL-Command in a String.
 * The Command is put into an extra String (and not into the prepareStatement method)
 * to see more clearly how the SQL-command looks like.
 * This is helpful when debugging. */
      
final String locstrSQLCommand = JSBS_Parameter_DBA.CONST_SELECT_ALL_ATTRIBUTES +
                                      " where " + JSBS_Parameter_DBA.CONST_ParameterName + " =? " +
                                        " and " + JSBS_Parameter_DBA.CONST_ChangedAt + " <=? " +
/*

 * de: Sortierkriterium mit dem die gefundenen Datensätze nach dem Alter sortiert werden.
 * en: Sorting-criteria to sort the found records by age. */

                                      " order by " + JSBS_Parameter_DBA.CONST_ChangedAt + " desc" +
/*

 * de: Anzahl der Datensätze die mit dieser Abfrage gelesen werden sollen.
 * en: Number of records that should be read with this selection. */

                                      " limit ? ";
/* de: 'PreparedStatement'; eine spezielle Klasse für Operationen auf die Datenbank.
 * en: 'PreparedStatement'; a special class for operations toward the database. */
      
PreparedStatement SQLStatement;
      try {
/* de: 'PreparedStatement' konstruieren und mit dem SQL-Kommando füllen.
 * en: Construct the 'PreparedStatement' and fill it with the SQL-command. */
        SQLStatement = parmDBCon.prepareStatement(locstrSQLCommand);
/* de: Füllen der Variablen im 'PreparedStatement'.
 * en: Fill the variable(s) in the 'PreparedStatement'. */
        SQLStatement.setString(1, parmParameterName);
        SQLStatement.setTimestamp(2, parmBeginTimestamp);
        SQLStatement.setInt(3, parmNumberOfRecords);
/* de: Ausführen der Datenbank-Operation für ein SELECT.
 * en: Perform the database-operation for SELECT. */
        ResultSet SQLResultSet = SQLStatement.executeQuery();
/* 
 * de: Übertragen der Daten vom ResultSet in den Vector mit den einzelnen DBA-Objekten.
 * en: Transfer the data from the ResultSet to the vector with the individual DBA-objects. */
        vecRecordSet.removeAllElements();
        for (;;) {
/* de:
 * Einen Datensatz nach dem Anderen lesen;
 * for-Schleife abbrechen wenn kein weiterer Datensatz mehr im ResultSet vorhanden ist.
 * en:
 * Read one dataset after the other;
 * break the for-loop if there is no more dataset within the ResultSet. */

          if (!SQLResultSet.next()) return;
/* de:
 * Ein DBA-Objekt 'konstruieren' und die Werte aus dem SQLResultSet übertragen.
 * en:
 * Construct a DBA-object and transfer the values of the SQLResultSet. */

          JSBS_Parameter_DBA locstructJSBS_Parameter_DBA = new JSBS_Parameter_DBA();
          locstructJSBS_Parameter_DBA.getValuesFromSQLResultSet(SQLResultSet);
/* de:
 * Einfügen des einzelnen DBA-Objektes in den Vector;
 * dieser ist in der geerbten Basisklasse definiert.
 * en:
 * Insert the single DBA-object into the Vector; 
 * the Vector is defined in the inherited base-class. */

          vecRecordSet.addElement(locstructJSBS_Parameter_DBA);
/* de:
 * Datenbank-Operation wurde ohne Fehler ausgeführt; zurückmelden an die aufrufende Methode
 * durch eine leere Zeichenkette für die Fehlermeldung (error-message).
 * en:
 * Database operation run without an error; report this to the calling method by an empty string
 * for the error-message. */

          ErrorMsg = "";
        }
      }
      
catch (SQLException SQLExc) {
/* de: Während des Ausführens der DB-Operation ist ein Fehler aufgetreten; Text-Nachricht holen.
 * en: An error occured while running the DB-operation; get the textual message. */
        ErrorMsg = SQLExc.getMessage();
      }

    
}
/*
 * de:
 * METHODE zum Selektieren einer durch den Parameter 'parmNumberOfRecords' festgelegten 

 * Anzahl von
Datensätzen deren Wert im Attribut 'ChangedAt' gleich oder kleiner ist als 
 * der im Parameter 'parmBeginTimestamp' übergebene Wert.

 * Die Datensätze sind absteigend nach ihrem Wert im Attribut 'ChangedAt' sortiert
.
 * Es werden mit dieser Methode eine vorgegebene Anzahl von Datensätzen selektiert die gleich

 * alt oder älter sind als der im Parameter 'parmBeginTimestamp' übergebene Wert.

 * Diese Methode wird gebraucht wenn bei der Version 'MobileClient' die Daten auf einem
 * mobilen Client mit den Daten des Servers synchronisiert werden müssen.

 * Als Unterschied zur vorigen Methode wird bei der Selektion nicht auf einen bestimmten

 * Wert des Attributs 'ParameterName' eingeschränkt.
Damit können alle Datensätze der
 * Datenbank-Tabelle in einem Zug zwischen mobilem Client und Server synchronisiert werden
.
 *
 * en:
 * METHOD to select a number (given in the parameter 'parmNumberOfRecords') of records

 * which value in the attribute 'ChangedAt' is equal or less than the value passed in parameter

 * 'parmBeginTimestamp'.

 *
The records are sorted descending after their value in the attribute 'ChangedAt'.
 * This method selects a given number of records which are as old or older than the value

 * passed in parameter 'parm
BeginTimestamp'.
 * This method is needed when the data on a mobile client have to be synchronized with the data
 * on the server when a 'MobileClient' version is running.

 * Different to the above method, the selection is not restricted to a given value of attribute

 * 'ParameterName'. This allows to synchronize (between Mobile Client and Server) all datasets

 * of the database-table 'in one go'
. */
    
public synchronized void selectAllByChangedAt(Connection parmDBCon, 
    
                                              Timestamp parmBeginTimestamp, int parmNumberOfRecords) {
/*
 * de:
 * 'Bauen' des SQL-Kommandos in einer Zeichenkette.
 * Das SQL-Kommando wird zuerst in einer eigenen Zeichenkette aufgebaut (und nicht gleich
 * als Parameter der preparedStatement Methode) um das SQL-Kommando klar sehen zu können.
 * Das ist hilfreich wenn es notwendig ist, den Debugger einzusetzen.
 * en:
 * Build the SQL-Command in a String.
 * The Command is put into an extra String (and not into the prepareStatement method)
 * to see more clearly how the SQL-command looks like.
 * This is helpful when debugging. */
      
final String locstrSQLCommand = JSBS_Parameter_DBA.CONST_SELECT_ALL_ATTRIBUTES +
                                      " where " + JSBS_Parameter_DBA.CONST_ChangedAt + " <=? " +
/*

 * de: Sortierkriterium mit dem die gefundenen Datensätze nach dem Alter sortiert werden.
 * en: Sorting-criteria to sort the found records by age. */

                                      " order by " + JSBS_Parameter_DBA.CONST_ChangedAt + " desc" +
/*

 * de: Anzahl der Datensätze die mit dieser Abfrage gelesen werden sollen.
 * en: Number of records that should be read with this selection. */

                                      " limit ? ";
/* de: 'PreparedStatement'; eine spezielle Klasse für Operationen auf die Datenbank.
 * en: 'PreparedStatement'; a special class for operations toward the database. */
      
PreparedStatement SQLStatement;
      try {
/* de: 'PreparedStatement' konstruieren und mit dem SQL-Kommando füllen.
 * en: Construct the 'PreparedStatement' and fill it with the SQL-command. */
        SQLStatement = parmDBCon.prepareStatement(locstrSQLCommand);
/* de: Füllen der Variablen im 'PreparedStatement'.
 * en: Fill the variable(s) in the 'PreparedStatement'. */
        SQLStatement.setTimestamp(1, parmBeginTimestamp);
        SQLStatement.setInt(2, parmNumberOfRecords);
/* de: Ausführen der Datenbank-Operation für ein SELECT.
 * en: Perform the database-operation for SELECT. */
        ResultSet SQLResultSet = SQLStatement.executeQuery();
/* 
 * de: Übertragen der Daten vom ResultSet in den Vector mit den einzelnen DBA-Objekten.
 * en: Transfer the data from the ResultSet to the vector with the individual DBA-objects. */
        vecRecordSet.removeAllElements();
        for (;;) {
/* de:
 * Einen Datensatz nach dem Anderen lesen;
 * for-Schleife abbrechen wenn kein weiterer Datensatz mehr im ResultSet vorhanden ist.
 * en:
 * Read one dataset after the other;
 * break the for-loop if there is no more dataset within the ResultSet. */

          if (!SQLResultSet.next()) return;
/* de:
 * Ein DBA-Objekt 'konstruieren' und die Werte aus dem SQLResultSet übertragen.
 * en:
 * Construct a DBA-object and transfer the values of the SQLResultSet. */

          JSBS_Parameter_DBA locstructJSBS_Parameter_DBA = new JSBS_Parameter_DBA();
          locstructJSBS_Parameter_DBA.getValuesFromSQLResultSet(SQLResultSet);
/* de:
 * Einfügen des einzelnen DBA-Objektes in den Vector;
 * dieser ist in der geerbten Basisklasse definiert.
 * en:
 * Insert the single DBA-object into the Vector; 
 * the Vector is defined in the inherited base-class. */

          vecRecordSet.addElement(locstructJSBS_Parameter_DBA);
/* de:
 * Datenbank-Operation wurde ohne Fehler ausgeführt; zurückmelden an die aufrufende Methode
 * durch eine leere Zeichenkette für die Fehlermeldung (error-message).
 * en:
 * Database operation run without an error; report this to the calling method by an empty string
 * for the error-message. */

          ErrorMsg = "";
        }
      }
      
catch (SQLException SQLExc) {
/* de: Während des Ausführens der DB-Operation ist ein Fehler aufgetreten; Text-Nachricht holen.
 * en: An error occured while running the DB-operation; get the textual message. */
        ErrorMsg = SQLExc.getMessage();
      }

    
}
/* **********************
 * de:
 * Methode zum Selektieren aller Datensätze die zum aktuellen Datum und in der Zukunft
 * gültig sind für einen gegebenen Objekt-ID.
 * Mit dieser Methode wird beim 'deaktivieren' des BO festgestellt, welche Datensätze
 * noch über das aktuelle Datum hinaus gültig sind.

 * en:
 * Method to select all datasets that are valid at the actual date and will become
 * valid in the future for a given Object-ID.
 * This method is used to decide, which datasets are valid after
 * the actual date when the BO is 'deactivated'. */
    
public synchronized void selectValidAndFutureByObjectID(
                                      Connection parmDBCon, JSBS_MinimalParameters parmMinParm,
                                      
double parmObjectID) {
/* de:
 * 'Bauen' des SQL-Kommandos in einer Zeichenkette.
 * Das SQL-Kommando wird zuerst in einer eigenen Zeichenkette aufgebaut (und nicht gleich
 * als Parameter der preparedStatement Methode) um das SQL-Kommando klar sehen zu können.
 * Das ist hilfreich wenn es notwendig ist, den Debugger einzusetzen.
 * en:
 * Build the SQL-Command in a String.
 * The Command is put into an extra String (and not into the prepareStatement method)
 * to see more clearly how the SQL-command looks like.
 * This is helpful when debugging. */
      
final String locstrSQLCommand = JSBS_Parameter_DBA.CONST_SELECT_ALL_ATTRIBUTES +
                                      " where " + JSBS_Parameter_DBA.CONST_ValidTill + " >=? " +
                                        " and " + JSBS_Parameter_DBA.CONST_ObjectID + " =? " +
                                      " order by " + JSBS_Parameter_DBA.CONST_ValidFrom + " desc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidTill + " asc";
/* de: Umwandeln des aktuellen Datums (aus den übergebenen Parametern) in das java.sql.Date Format.
 * en: Convert the actual date (from the passed parameters) to the java.sql.Date format. */
      
Date locdteWorkDate = new Date(parmMinParm.calWorkDate.getTime().getTime());
/* de: 'PreparedStatement'; eine spezielle Klasse für Operationen auf die Datenbank.
 * en: 'PreparedStatement'; a special class for operations toward the database. */
      
PreparedStatement SQLStatement;
      try {
/* de: 'PreparedStatement' konstruieren und mit dem SQL-Kommando füllen.
 * en: Construct the 'PreparedStatement' and fill it with the SQL-command. */
        SQLStatement = parmDBCon.prepareStatement(locstrSQLCommand);
/* de: Füllen der Variablen im 'PreparedStatement'.
 * en: Fill the variable(s) in the 'PreparedStatement'. */

        SQLStatement.setDate(1, locdteWorkDate);

        SQLStatement.setDouble(2, parmObjectID);
/* de: Ausführen der Datenbank-Operation für ein SELECT.
 * en: Perform the database-operation for SELECT. */
        ResultSet SQLResultSet = SQLStatement.executeQuery();
/* 
 * de: Übertragen der Daten vom ResultSet in den Vector mit den einzelnen DBA-Objekten.
 * en: Transfer the data from the ResultSet to the vector with the individual DBA-objects. */
        vecRecordSet.removeAllElements();
        for (;;) {
/* de:
 * Einen Datensatz nach dem Anderen lesen;
 * for-Schleife abbrechen wenn kein weiterer Datensatz mehr im ResultSet vorhanden ist.
 * en:
 * Read one dataset after the other;
 * break the for-loop if there is no more dataset within the ResultSet. */

          if (!SQLResultSet.next()) return;
/* de:
 * Ein DBA-Objekt 'konstruieren' und die Werte aus dem SQLResultSet übertragen.
 * en:
 * Construct a DBA-object and transfer the values of the SQLResultSet. */

          JSBS_Parameter_DBA locstructJSBS_Parameter_DBA = new JSBS_Parameter_DBA();
          locstructJSBS_Parameter_DBA.getValuesFromSQLResultSet(SQLResultSet);
/* de:
 * Einfügen des einzelnen DBA-Objektes in den Vector;
 * dieser ist in der geerbten Basisklasse definiert.
 * en:
 * Insert the single DBA-object into the Vector; 
 * the Vector is defined in the inherited base-class. */

          vecRecordSet.addElement(locstructJSBS_Parameter_DBA);
/* de:
 * Datenbank-Operation wurde ohne Fehler ausgeführt; zurückmelden an die aufrufende Methode
 * durch eine leere Zeichenkette für die Fehlermeldung (error-message).
 * en:
 * Database operation run without an error; report this to the calling method by an empty string
 * for the error-message. */

          ErrorMsg = "";
        }
      }
      
catch (SQLException SQLExc) {
/* de: Während des Ausführens der DB-Operation ist ein Fehler aufgetreten; Text-Nachricht holen.
 * en: An error occured while running the DB-operation; get the textual message. */
        ErrorMsg = SQLExc.getMessage();
      }

    
}
/*
 * de:
 * Methode zum Selektieren aller Datensätze für einen gegebenen Parameter-Namen
 * die zum aktuellen Datum und in der Zukunft gültig sind.

 * en:
 * Method to select all datasets for a given parameter-name which are valid at
 * the actual date and in the future. */
    
public synchronized void selectValidAndFutureByParameterName(
                                      Connection parmDBCon, JSBS_MinimalParameters parmMinParm,
                                      String parmParameterName) {
/* de:
 * 'Bauen' des SQL-Kommandos in einer Zeichenkette.
 * Das SQL-Kommando wird zuerst in einer eigenen Zeichenkette aufgebaut (und nicht gleich
 * als Parameter der preparedStatement Methode) um das SQL-Kommando klar sehen zu können.
 * Das ist hilfreich wenn es notwendig ist, den Debugger einzusetzen.
 * en:
 * Build the SQL-Command in a String.
 * The Command is put into an extra String (and not into the prepareStatement method)
 * to see more clearly how the SQL-command looks like.
 * This is helpful when debugging. */
      
final String locstrSQLCommand = JSBS_Parameter_DBA.CONST_SELECT_ALL_ATTRIBUTES +
                                      " where " + JSBS_Parameter_DBA.CONST_ClientID + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ParameterName + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ValidTill + " >=?" +
                                      " order by " + JSBS_Parameter_DBA.CONST_Value01 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value02 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value03 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value04 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value05 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value06 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value07 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value08 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value09 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value10 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value11 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value12 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value13 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value14 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value15 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value16 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value17 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value18 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value19 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value20 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidFrom + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidTill + " desc";
/* de: Umwandeln des aktuellen Datums (aus den übergebenen Parametern) in das java.sql.Date Format.
 * en: Convert the actual date (from the passed parameters) to the java.sql.Date format. */
      
Date locdteWorkDate = new Date(parmMinParm.calWorkDate.getTime().getTime());
/* de: 'PreparedStatement'; eine spezielle Klasse für Operationen auf die Datenbank.
 * en: 'PreparedStatement'; a special class for operations toward the database. */
      
PreparedStatement SQLStatement;
      try {
/* de: 'PreparedStatement' konstruieren und mit dem SQL-Kommando füllen.
 * en: Construct the 'PreparedStatement' and fill it with the SQL-command. */
        SQLStatement = parmDBCon.prepareStatement(locstrSQLCommand);
/* de: Füllen der Variablen im 'PreparedStatement'.
 * en: Fill the variable(s) in the 'PreparedStatement'. */
        SQLStatement.setInt(1, parmMinParm.intClientID);
        SQLStatement.setString(2, parmParameterName);
        SQLStatement.setDate(3, locdteWorkDate);
/* de: Ausführen der Datenbank-Operation für ein SELECT.
 * en: Perform the database-operation for SELECT. */
        ResultSet SQLResultSet = SQLStatement.executeQuery();
/* 
 * de: Übertragen der Daten vom ResultSet in den Vector mit den einzelnen DBA-Objekten.
 * en: Transfer the data from the ResultSet to the vector with the individual DBA-objects. */
        vecRecordSet.removeAllElements();
        for (;;) {
/* de:
 * Einen Datensatz nach dem Anderen lesen;
 * for-Schleife abbrechen wenn kein weiterer Datensatz mehr im ResultSet vorhanden ist.
 * en:
 * Read one dataset after the other;
 * break the for-loop if there is no more dataset within the ResultSet. */

          if (!SQLResultSet.next()) return;
/* de:
 * Prüfen ob der in Zukunft beginnende Datensatz überhaupt 'gültig' werden kann.
 * Damit werden zukünftig bereits 'deaktivierte' Datensätze ausgeschlossen.
 * en:
 * Verify if the dataset with validity starting in the future can become valid anyway
 * That verification excludes dataset which validity starts in the future but are
 * already 'deactivated'. */

          locdteReadValidFrom = SQLResultSet.getDate(JSBS_DBA.CONST_ValidFrom);
          locdteReadValidTill = SQLResultSet.getDate(JSBS_DBA.CONST_ValidTill);
          if (locdteReadValidFrom.getTime() <= locdteReadValidTill.getTime()) {
/* de:
 * Ein DBA-Objekt 'konstruieren' und die Werte aus dem SQLResultSet übertragen.
 * en:
 * Construct a DBA-object and transfer the values of the SQLResultSet. */

            JSBS_Parameter_DBA locstructJSBS_Parameter_DBA = new JSBS_Parameter_DBA();
            locstructJSBS_Parameter_DBA.getValuesFromSQLResultSet(SQLResultSet);
/* de:
 * Einfügen des einzelnen DBA-Objektes in den Vector;
 * dieser ist in der geerbten Basisklasse definiert.
 * en:
 * Insert the single DBA-object into the Vector; 
 * the Vector is defined in the inherited base-class. */

            vecRecordSet.addElement(locstructJSBS_Parameter_DBA);
          }
/* de:
 * Datenbank-Operation wurde ohne Fehler ausgeführt; zurückmelden an die aufrufende Methode
 * durch eine leere Zeichenkette für die Fehlermeldung (error-message).
 * en:
 * Database operation run without an error; report this to the calling method by an empty string
 * for the error-message. */

          ErrorMsg = "";
        }
      }
      
catch (SQLException SQLExc) {
/* de: Während des Ausführens der DB-Operation ist ein Fehler aufgetreten; Text-Nachricht holen.
 * en: An error occured while running the DB-operation; get the textual message. */
        ErrorMsg = SQLExc.getMessage();
      }

    
}
/* 
 * de:
 * Methoden mit weiteren Selektionskriterien. Für die Erklärung des Codes lesen Sie bitte
 * die Kommentare bei der Methode 'selectValidAndFutureByParameterName'.

 * en:
 * Method with further selection-criterias. For an explanation of the code read the comments
 * at method '
selectValidAndFutureByParameterName'. */
    
public synchronized void selectValidAndFutureByParameterNameAndValue_01(
                                      Connection parmDBCon, JSBS_MinimalParameters parmMinParm,
                                      String parmParameterName, String parmValue01) {
/* de:
 * 'Bauen' des SQL-Kommandos in einer Zeichenkette.
 * Das SQL-Kommando wird zuerst in einer eigenen Zeichenkette aufgebaut (und nicht gleich
 * als Parameter der preparedStatement Methode) um das SQL-Kommando klar sehen zu können.
 * Das ist hilfreich wenn es notwendig ist, den Debugger einzusetzen.
 * en:
 * Build the SQL-Command in a String.
 * The Command is put into an extra String (and not into the prepareStatement method)
 * to see more clearly how the SQL-command looks like.
 * This is helpful when debugging. */
      
final String locstrSQLCommand = JSBS_Parameter_DBA.CONST_SELECT_ALL_ATTRIBUTES +
                                      " where " + JSBS_Parameter_DBA.CONST_ClientID + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ParameterName + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ValidTill + " >=?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value01 + " =?" +
                                      " order by " + JSBS_Parameter_DBA.CONST_Value02 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value03 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value04 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value05 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value06 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value07 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value08 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value09 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value10 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value11 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value12 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value13 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value14 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value15 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value16 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value17 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value18 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value19 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value20 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidFrom + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidTill + " desc";
/* de: Umwandeln des aktuellen Datums (aus den übergebenen Parametern) in das java.sql.Date Format.
 * en: Convert the actual date (from the passed parameters) to the java.sql.Date format. */
      
Date locdteWorkDate = new Date(parmMinParm.calWorkDate.getTime().getTime());
/* de: 'PreparedStatement'; eine spezielle Klasse für Operationen auf die Datenbank.
 * en: 'PreparedStatement'; a special class for operations toward the database. */
      
PreparedStatement SQLStatement;
      try {
/* de: 'PreparedStatement' konstruieren und mit dem SQL-Kommando füllen.
 * en: Construct the 'PreparedStatement' and fill it with the SQL-command. */
        SQLStatement = parmDBCon.prepareStatement(locstrSQLCommand);
/* de: Füllen der Variablen im 'PreparedStatement'.
 * en: Fill the variable(s) in the 'PreparedStatement'. */
        SQLStatement.setInt(1, parmMinParm.intClientID);
        SQLStatement.setString(2, parmParameterName);
        SQLStatement.setDate(3, locdteWorkDate);
        SQLStatement.setString(4, 
parmValue01);
/* de: Ausführen der Datenbank-Operation für ein SELECT.
 * en: Perform the database-operation for SELECT. */
        ResultSet SQLResultSet = SQLStatement.executeQuery();
/* 
 * de: Übertragen der Daten vom ResultSet in den Vector mit den einzelnen DBA-Objekten.
 * en: Transfer the data from the ResultSet to the vector with the individual DBA-objects. */
        vecRecordSet.removeAllElements();
        for (;;) {
/* de:
 * Einen Datensatz nach dem Anderen lesen;
 * for-Schleife abbrechen wenn kein weiterer Datensatz mehr im ResultSet vorhanden ist.
 * en:
 * Read one dataset after the other;
 * break the for-loop if there is no more dataset within the ResultSet. */

          
if (!SQLResultSet.next()) return;
/* de:
 * Prüfen ob der in Zukunft beginnende Datensatz überhaupt 'gültig' werden kann.
 * Damit werden zukünftig bereits 'deaktivierte' Datensätze ausgeschlossen.
 * en:
 * Verify if the dataset with validity starting in the future can become valid anyway
 * That verification excludes dataset which validity starts in the future but are
 * already 'deactivated'. */

          
locdteReadValidFrom = SQLResultSet.getDate(JSBS_DBA.CONST_ValidFrom);
          
locdteReadValidTill = SQLResultSet.getDate(JSBS_DBA.CONST_ValidTill);
          
if (locdteReadValidFrom.getTime() <= locdteReadValidTill.getTime()) {
/* de:
 * Ein DBA-Objekt 'konstruieren' und die Werte aus dem SQLResultSet übertragen.
 * en:
 * Construct a DBA-object and transfer the values of the SQLResultSet. */

            JSBS_Parameter_DBA locstructJSBS_Parameter_DBA = 
new JSBS_Parameter_DBA();
            locstructJSBS_Parameter_DBA.getValuesFromSQLResultSet(SQLResultSet);
/* de:
 * Einfügen des einzelnen DBA-Objektes in den Vector;
 * dieser ist in der geerbten Basisklasse definiert.
 * en:
 * Insert the single DBA-object into the Vector; 
 * the Vector is defined in the inherited base-class. */

            
vecRecordSet.addElement(locstructJSBS_Parameter_DBA);
          }
/* de:
 * Datenbank-Operation wurde ohne Fehler ausgeführt; zurückmelden an die aufrufende Methode
 * durch eine leere Zeichenkette für die Fehlermeldung (error-message).
 * en:
 * Database operation run without an error; report this to the calling method by an empty string
 * for the error-message. */

          
ErrorMsg = "";
        }
      }
      
catch (SQLException SQLExc) {
/* de: Während des Ausführens der DB-Operation ist ein Fehler aufgetreten; Text-Nachricht holen.
 * en: An error occured while running the DB-operation; get the textual message. */
        ErrorMsg = SQLExc.getMessage();
      }

    
}
/* *********
 */
    
public synchronized void selectValidAndFutureByParameterNameAndValue_01_02(
                                      Connection parmDBCon, JSBS_MinimalParameters parmMinParm,
                                      String parmParameterName, String parmValue01
, String parmValue02) {
/* de:
 * 'Bauen' des SQL-Kommandos in einer Zeichenkette.
 * Das SQL-Kommando wird zuerst in einer eigenen Zeichenkette aufgebaut (und nicht gleich
 * als Parameter der preparedStatement Methode) um das SQL-Kommando klar sehen zu können.
 * Das ist hilfreich wenn es notwendig ist, den Debugger einzusetzen.
 * en:
 * Build the SQL-Command in a String.
 * The Command is put into an extra String (and not into the prepareStatement method)
 * to see more clearly how the SQL-command looks like.
 * This is helpful when debugging. */
      
final String locstrSQLCommand = JSBS_Parameter_DBA.CONST_SELECT_ALL_ATTRIBUTES +
                                      " where " + JSBS_Parameter_DBA.CONST_ClientID + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ParameterName + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ValidTill + " >=?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value01 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value02 + " =?" +
                                      " order by " + JSBS_Parameter_DBA.CONST_Value03 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value04 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value05 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value06 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value07 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value08 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value09 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value10 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value11 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value12 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value13 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value14 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value15 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value16 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value17 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value18 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value19 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value20 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidFrom + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidTill + " desc";
/* de: Umwandeln des aktuellen Datums (aus den übergebenen Parametern) in das java.sql.Date Format.
 * en: Convert the actual date (from the passed parameters) to the java.sql.Date format. */
      
Date locdteWorkDate = new Date(parmMinParm.calWorkDate.getTime().getTime());
/* de: 'PreparedStatement'; eine spezielle Klasse für Operationen auf die Datenbank.
 * en: 'PreparedStatement'; a special class for operations toward the database. */
      
PreparedStatement SQLStatement;
      try {
/* de: 'PreparedStatement' konstruieren und mit dem SQL-Kommando füllen.
 * en: Construct the 'PreparedStatement' and fill it with the SQL-command. */
        SQLStatement = parmDBCon.prepareStatement(locstrSQLCommand);
/* de: Füllen der Variablen im 'PreparedStatement'.
 * en: Fill the variable(s) in the 'PreparedStatement'. */
        SQLStatement.setInt(1, parmMinParm.intClientID);
        SQLStatement.setString(2, parmParameterName);
        SQLStatement.setDate(3, locdteWorkDate);
        SQLStatement.setString(4, 
parmValue01);
        SQLStatement.setString(5, 
parmValue02);
/* de: Ausführen der Datenbank-Operation für ein SELECT.
 * en: Perform the database-operation for SELECT. */
        ResultSet SQLResultSet = SQLStatement.executeQuery();
/* 
 * de: Übertragen der Daten vom ResultSet in den Vector mit den einzelnen DBA-Objekten.
 * en: Transfer the data from the ResultSet to the vector with the individual DBA-objects. */
        vecRecordSet.removeAllElements();
        for (;;) {
/* de:
 * Einen Datensatz nach dem Anderen lesen;
 * for-Schleife abbrechen wenn kein weiterer Datensatz mehr im ResultSet vorhanden ist.
 * en:
 * Read one dataset after the other;
 * break the for-loop if there is no more dataset within the ResultSet. */

          
if (!SQLResultSet.next()) return;
/* de:
 * Prüfen ob der in Zukunft beginnende Datensatz überhaupt 'gültig' werden kann.
 * Damit werden zukünftig bereits 'deaktivierte' Datensätze ausgeschlossen.
 * en:
 * Verify if the dataset with validity starting in the future can become valid anyway
 * That verification excludes dataset which validity starts in the future but are
 * already 'deactivated'. */

          
locdteReadValidFrom = SQLResultSet.getDate(JSBS_DBA.CONST_ValidFrom);
          
locdteReadValidTill = SQLResultSet.getDate(JSBS_DBA.CONST_ValidTill);
          
if (locdteReadValidFrom.getTime() <= locdteReadValidTill.getTime()) {
/* de:
 * Ein DBA-Objekt 'konstruieren' und die Werte aus dem SQLResultSet übertragen.
 * en:
 * Construct a DBA-object and transfer the values of the SQLResultSet. */

            JSBS_Parameter_DBA locstructJSBS_Parameter_DBA = 
new JSBS_Parameter_DBA();
            locstructJSBS_Parameter_DBA.getValuesFromSQLResultSet(SQLResultSet);
/* de:
 * Einfügen des einzelnen DBA-Objektes in den Vector;
 * dieser ist in der geerbten Basisklasse definiert.
 * en:
 * Insert the single DBA-object into the Vector; 
 * the Vector is defined in the inherited base-class. */

            
vecRecordSet.addElement(locstructJSBS_Parameter_DBA);
          }
/* de:
 * Datenbank-Operation wurde ohne Fehler ausgeführt; zurückmelden an die aufrufende Methode
 * durch eine leere Zeichenkette für die Fehlermeldung (error-message).
 * en:
 * Database operation run without an error; report this to the calling method by an empty string
 * for the error-message. */

          
ErrorMsg = "";
        }
      }
      
catch (SQLException SQLExc) {
/* de: Während des Ausführens der DB-Operation ist ein Fehler aufgetreten; Text-Nachricht holen.
 * en: An error occured while running the DB-operation; get the textual message. */
        ErrorMsg = SQLExc.getMessage();
      }

    
}
/* *********
 */
    
public synchronized void selectValidAndFutureByParameterNameAndValue_01_02_03(
                                      Connection parmDBCon, JSBS_MinimalParameters parmMinParm,
                                      String parmParameterName, String parmValue01
, String parmValue02,
                                      
String parmValue03) {
/* de:
 * 'Bauen' des SQL-Kommandos in einer Zeichenkette.
 * Das SQL-Kommando wird zuerst in einer eigenen Zeichenkette aufgebaut (und nicht gleich
 * als Parameter der preparedStatement Methode) um das SQL-Kommando klar sehen zu können.
 * Das ist hilfreich wenn es notwendig ist, den Debugger einzusetzen.
 * en:
 * Build the SQL-Command in a String.
 * The Command is put into an extra String (and not into the prepareStatement method)
 * to see more clearly how the SQL-command looks like.
 * This is helpful when debugging. */
      
final String locstrSQLCommand = JSBS_Parameter_DBA.CONST_SELECT_ALL_ATTRIBUTES +
                                      " where " + JSBS_Parameter_DBA.CONST_ClientID + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ParameterName + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ValidTill + " >=?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value01 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value02 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value03 + " =?" +
                                      " order by " + JSBS_Parameter_DBA.CONST_Value04 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value05 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value06 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value07 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value08 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value09 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value10 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value11 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value12 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value13 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value14 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value15 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value16 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value17 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value18 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value19 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value20 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidFrom + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidTill + " desc";
/* de: Umwandeln des aktuellen Datums (aus den übergebenen Parametern) in das java.sql.Date Format.
 * en: Convert the actual date (from the passed parameters) to the java.sql.Date format. */
      
Date locdteWorkDate = new Date(parmMinParm.calWorkDate.getTime().getTime());
/* de: 'PreparedStatement'; eine spezielle Klasse für Operationen auf die Datenbank.
 * en: 'PreparedStatement'; a special class for operations toward the database. */
      
PreparedStatement SQLStatement;
      try {
/* de: 'PreparedStatement' konstruieren und mit dem SQL-Kommando füllen.
 * en: Construct the 'PreparedStatement' and fill it with the SQL-command. */
        SQLStatement = parmDBCon.prepareStatement(locstrSQLCommand);
/* de: Füllen der Variablen im 'PreparedStatement'.
 * en: Fill the variable(s) in the 'PreparedStatement'. */
        SQLStatement.setInt(1, parmMinParm.intClientID);
        SQLStatement.setString(2, parmParameterName);
        SQLStatement.setDate(3, locdteWorkDate);
        SQLStatement.setString(4, 
parmValue01);
        SQLStatement.setString(5, 
parmValue02);
        SQLStatement.setString(6, 
parmValue03);
/* de: Ausführen der Datenbank-Operation für ein SELECT.
 * en: Perform the database-operation for SELECT. */
        ResultSet SQLResultSet = SQLStatement.executeQuery();
/* 
 * de: Übertragen der Daten vom ResultSet in den Vector mit den einzelnen DBA-Objekten.
 * en: Transfer the data from the ResultSet to the vector with the individual DBA-objects. */
        vecRecordSet.removeAllElements();
        for (;;) {
/* de:
 * Einen Datensatz nach dem Anderen lesen;
 * for-Schleife abbrechen wenn kein weiterer Datensatz mehr im ResultSet vorhanden ist.
 * en:
 * Read one dataset after the other;
 * break the for-loop if there is no more dataset within the ResultSet. */

          
if (!SQLResultSet.next()) return;
/* de:
 * Prüfen ob der in Zukunft beginnende Datensatz überhaupt 'gültig' werden kann.
 * Damit werden zukünftig bereits 'deaktivierte' Datensätze ausgeschlossen.
 * en:
 * Verify if the dataset with validity starting in the future can become valid anyway
 * That verification excludes dataset which validity starts in the future but are
 * already 'deactivated'. */

          
locdteReadValidFrom = SQLResultSet.getDate(JSBS_DBA.CONST_ValidFrom);
          
locdteReadValidTill = SQLResultSet.getDate(JSBS_DBA.CONST_ValidTill);
          
if (locdteReadValidFrom.getTime() <= locdteReadValidTill.getTime()) {
/* de:
 * Ein DBA-Objekt 'konstruieren' und die Werte aus dem SQLResultSet übertragen.
 * en:
 * Construct a DBA-object and transfer the values of the SQLResultSet. */

            JSBS_Parameter_DBA locstructJSBS_Parameter_DBA = 
new JSBS_Parameter_DBA();
            locstructJSBS_Parameter_DBA.getValuesFromSQLResultSet(SQLResultSet);
/* de:
 * Einfügen des einzelnen DBA-Objektes in den Vector;
 * dieser ist in der geerbten Basisklasse definiert.
 * en:
 * Insert the single DBA-object into the Vector; 
 * the Vector is defined in the inherited base-class. */

            
vecRecordSet.addElement(locstructJSBS_Parameter_DBA);
          }
/* de:
 * Datenbank-Operation wurde ohne Fehler ausgeführt; zurückmelden an die aufrufende Methode
 * durch eine leere Zeichenkette für die Fehlermeldung (error-message).
 * en:
 * Database operation run without an error; report this to the calling method by an empty string
 * for the error-message. */

          
ErrorMsg = "";
        }
      }
      
catch (SQLException SQLExc) {
/* de: Während des Ausführens der DB-Operation ist ein Fehler aufgetreten; Text-Nachricht holen.
 * en: An error occured while running the DB-operation; get the textual message. */
        ErrorMsg = SQLExc.getMessage();
      }

    
}
/* *********
 */
    
public synchronized void selectValidAndFutureByParameterNameAndValue_01_02_03_04(
                                      Connection parmDBCon, JSBS_MinimalParameters parmMinParm,
                                      String parmParameterName, String parmValue01
, String parmValue02,
                                      
String parmValue03, String parmValue04) {
/* de:
 * 'Bauen' des SQL-Kommandos in einer Zeichenkette.
 * Das SQL-Kommando wird zuerst in einer eigenen Zeichenkette aufgebaut (und nicht gleich
 * als Parameter der preparedStatement Methode) um das SQL-Kommando klar sehen zu können.
 * Das ist hilfreich wenn es notwendig ist, den Debugger einzusetzen.
 * en:
 * Build the SQL-Command in a String.
 * The Command is put into an extra String (and not into the prepareStatement method)
 * to see more clearly how the SQL-command looks like.
 * This is helpful when debugging. */
      
final String locstrSQLCommand = JSBS_Parameter_DBA.CONST_SELECT_ALL_ATTRIBUTES +
                                      " where " + JSBS_Parameter_DBA.CONST_ClientID + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ParameterName + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ValidTill + " >=?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value01 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value02 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value03 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value04 + " =?" +
                                      " order by " + JSBS_Parameter_DBA.CONST_Value05 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value06 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value07 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value08 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value09 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value10 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value11 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value12 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value13 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value14 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value15 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value16 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value17 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value18 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value19 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value20 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidFrom + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidTill + " desc";
/* de: Umwandeln des aktuellen Datums (aus den übergebenen Parametern) in das java.sql.Date Format.
 * en: Convert the actual date (from the passed parameters) to the java.sql.Date format. */
      
Date locdteWorkDate = new Date(parmMinParm.calWorkDate.getTime().getTime());
/* de: 'PreparedStatement'; eine spezielle Klasse für Operationen auf die Datenbank.
 * en: 'PreparedStatement'; a special class for operations toward the database. */
      
PreparedStatement SQLStatement;
      try {
/* de: 'PreparedStatement' konstruieren und mit dem SQL-Kommando füllen.
 * en: Construct the 'PreparedStatement' and fill it with the SQL-command. */
        SQLStatement = parmDBCon.prepareStatement(locstrSQLCommand);
/* de: Füllen der Variablen im 'PreparedStatement'.
 * en: Fill the variable(s) in the 'PreparedStatement'. */
        SQLStatement.setInt(1, parmMinParm.intClientID);
        SQLStatement.setString(2, parmParameterName);
        SQLStatement.setDate(3, locdteWorkDate);
        SQLStatement.setString(4, 
parmValue01);
        SQLStatement.setString(5, 
parmValue02);
        SQLStatement.setString(6, 
parmValue03);
        SQLStatement.setString(7, 
parmValue04);
/* de: Ausführen der Datenbank-Operation für ein SELECT.
 * en: Perform the database-operation for SELECT. */
        ResultSet SQLResultSet = SQLStatement.executeQuery();
/* 
 * de: Übertragen der Daten vom ResultSet in den Vector mit den einzelnen DBA-Objekten.
 * en: Transfer the data from the ResultSet to the vector with the individual DBA-objects. */
        vecRecordSet.removeAllElements();
        for (;;) {
/* de:
 * Einen Datensatz nach dem Anderen lesen;
 * for-Schleife abbrechen wenn kein weiterer Datensatz mehr im ResultSet vorhanden ist.
 * en:
 * Read one dataset after the other;
 * break the for-loop if there is no more dataset within the ResultSet. */

          
if (!SQLResultSet.next()) return;
/* de:
 * Prüfen ob der in Zukunft beginnende Datensatz überhaupt 'gültig' werden kann.
 * Damit werden zukünftig bereits 'deaktivierte' Datensätze ausgeschlossen.
 * en:
 * Verify if the dataset with validity starting in the future can become valid anyway
 * That verification excludes dataset which validity starts in the future but are
 * already 'deactivated'. */

          
locdteReadValidFrom = SQLResultSet.getDate(JSBS_DBA.CONST_ValidFrom);
          
locdteReadValidTill = SQLResultSet.getDate(JSBS_DBA.CONST_ValidTill);
          
if (locdteReadValidFrom.getTime() <= locdteReadValidTill.getTime()) {
/* de:
 * Ein DBA-Objekt 'konstruieren' und die Werte aus dem SQLResultSet übertragen.
 * en:
 * Construct a DBA-object and transfer the values of the SQLResultSet. */

            JSBS_Parameter_DBA locstructJSBS_Parameter_DBA = 
new JSBS_Parameter_DBA();
            locstructJSBS_Parameter_DBA.getValuesFromSQLResultSet(SQLResultSet);
/* de:
 * Einfügen des einzelnen DBA-Objektes in den Vector;
 * dieser ist in der geerbten Basisklasse definiert.
 * en:
 * Insert the single DBA-object into the Vector; 
 * the Vector is defined in the inherited base-class. */

            
vecRecordSet.addElement(locstructJSBS_Parameter_DBA);
          }
/* de:
 * Datenbank-Operation wurde ohne Fehler ausgeführt; zurückmelden an die aufrufende Methode
 * durch eine leere Zeichenkette für die Fehlermeldung (error-message).
 * en:
 * Database operation run without an error; report this to the calling method by an empty string
 * for the error-message. */

          
ErrorMsg = "";
        }
      }
      
catch (SQLException SQLExc) {
/* de: Während des Ausführens der DB-Operation ist ein Fehler aufgetreten; Text-Nachricht holen.
 * en: An error occured while running the DB-operation; get the textual message. */
        ErrorMsg = SQLExc.getMessage();
      }

    
}
/* *********
 */
    
public synchronized void selectValidAndFutureByParameterNameAndValue_01_02_03_04_05(
                                      Connection parmDBCon, JSBS_MinimalParameters parmMinParm,
                                      String parmParameterName, String parmValue01
, String parmValue02,
                                      
String parmValue03, String parmValue04, String parmValue05) {
/* de:
 * 'Bauen' des SQL-Kommandos in einer Zeichenkette.
 * Das SQL-Kommando wird zuerst in einer eigenen Zeichenkette aufgebaut (und nicht gleich
 * als Parameter der preparedStatement Methode) um das SQL-Kommando klar sehen zu können.
 * Das ist hilfreich wenn es notwendig ist, den Debugger einzusetzen.
 * en:
 * Build the SQL-Command in a String.
 * The Command is put into an extra String (and not into the prepareStatement method)
 * to see more clearly how the SQL-command looks like.
 * This is helpful when debugging. */
      
final String locstrSQLCommand = JSBS_Parameter_DBA.CONST_SELECT_ALL_ATTRIBUTES +
                                      " where " + JSBS_Parameter_DBA.CONST_ClientID + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ParameterName + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ValidTill + " >=?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value01 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value02 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value03 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value04 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value05 + " =?" +
                                      " order by " + JSBS_Parameter_DBA.CONST_Value06 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value07 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value08 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value09 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value10 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value11 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value12 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value13 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value14 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value15 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value16 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value17 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value18 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value19 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value20 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidFrom + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidTill + " desc";
/* de: Umwandeln des aktuellen Datums (aus den übergebenen Parametern) in das java.sql.Date Format.
 * en: Convert the actual date (from the passed parameters) to the java.sql.Date format. */
      
Date locdteWorkDate = new Date(parmMinParm.calWorkDate.getTime().getTime());
/* de: 'PreparedStatement'; eine spezielle Klasse für Operationen auf die Datenbank.
 * en: 'PreparedStatement'; a special class for operations toward the database. */
      
PreparedStatement SQLStatement;
      try {
/* de: 'PreparedStatement' konstruieren und mit dem SQL-Kommando füllen.
 * en: Construct the 'PreparedStatement' and fill it with the SQL-command. */
        SQLStatement = parmDBCon.prepareStatement(locstrSQLCommand);
/* de: Füllen der Variablen im 'PreparedStatement'.
 * en: Fill the variable(s) in the 'PreparedStatement'. */
        SQLStatement.setInt(1, parmMinParm.intClientID);
        SQLStatement.setString(2, parmParameterName);
        SQLStatement.setDate(3, locdteWorkDate);
        SQLStatement.setString(4, 
parmValue01);
        SQLStatement.setString(5, 
parmValue02);
        SQLStatement.setString(6, 
parmValue03);
        SQLStatement.setString(7, 
parmValue04);
        SQLStatement.setString(8, 
parmValue05);
/* de: Ausführen der Datenbank-Operation für ein SELECT.
 * en: Perform the database-operation for SELECT. */
        ResultSet SQLResultSet = SQLStatement.executeQuery();
/* 
 * de: Übertragen der Daten vom ResultSet in den Vector mit den einzelnen DBA-Objekten.
 * en: Transfer the data from the ResultSet to the vector with the individual DBA-objects. */
        vecRecordSet.removeAllElements();
        for (;;) {
/* de:
 * Einen Datensatz nach dem Anderen lesen;
 * for-Schleife abbrechen wenn kein weiterer Datensatz mehr im ResultSet vorhanden ist.
 * en:
 * Read one dataset after the other;
 * break the for-loop if there is no more dataset within the ResultSet. */

          
if (!SQLResultSet.next()) return;
/* de:
 * Prüfen ob der in Zukunft beginnende Datensatz überhaupt 'gültig' werden kann.
 * Damit werden zukünftig bereits 'deaktivierte' Datensätze ausgeschlossen.
 * en:
 * Verify if the dataset with validity starting in the future can become valid anyway
 * That verification excludes dataset which validity starts in the future but are
 * already 'deactivated'. */

          
locdteReadValidFrom = SQLResultSet.getDate(JSBS_DBA.CONST_ValidFrom);
          
locdteReadValidTill = SQLResultSet.getDate(JSBS_DBA.CONST_ValidTill);
          
if (locdteReadValidFrom.getTime() <= locdteReadValidTill.getTime()) {
/* de:
 * Ein DBA-Objekt 'konstruieren' und die Werte aus dem SQLResultSet übertragen.
 * en:
 * Construct a DBA-object and transfer the values of the SQLResultSet. */

            JSBS_Parameter_DBA locstructJSBS_Parameter_DBA = 
new JSBS_Parameter_DBA();
            locstructJSBS_Parameter_DBA.getValuesFromSQLResultSet(SQLResultSet);
/* de:
 * Einfügen des einzelnen DBA-Objektes in den Vector;
 * dieser ist in der geerbten Basisklasse definiert.
 * en:
 * Insert the single DBA-object into the Vector; 
 * the Vector is defined in the inherited base-class. */

            
vecRecordSet.addElement(locstructJSBS_Parameter_DBA);
          }
/* de:
 * Datenbank-Operation wurde ohne Fehler ausgeführt; zurückmelden an die aufrufende Methode
 * durch eine leere Zeichenkette für die Fehlermeldung (error-message).
 * en:
 * Database operation run without an error; report this to the calling method by an empty string
 * for the error-message. */

          
ErrorMsg = "";
        }
      }
      
catch (SQLException SQLExc) {
/* de: Während des Ausführens der DB-Operation ist ein Fehler aufgetreten; Text-Nachricht holen.
 * en: An error occured while running the DB-operation; get the textual message. */
        ErrorMsg = SQLExc.getMessage();
      }

    
}
/* ************************ */
    
public synchronized void selectValidAndFutureByParameterNameAndValue02(
                                      Connection parmDBCon, JSBS_MinimalParameters parmMinParm,
                                      String parmParameterName, String parmValue02) { 

      
final String locstrSQLCommand = JSBS_Parameter_DBA.CONST_SELECT_ALL_ATTRIBUTES +
                                      " where " + JSBS_Parameter_DBA.CONST_ClientID + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ParameterName + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_Value02 + " =?" +
                                      " and " + JSBS_Parameter_DBA.CONST_ValidTill + " >=?" +
                                      " order by " + JSBS_Parameter_DBA.CONST_Value01 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value03 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value04 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value05 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value06 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value07 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value08 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value09 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value10 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value11 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value12 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value13 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value14 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value15 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value16 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value17 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value18 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value19 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_Value20 + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidFrom + " asc, " +
                                                       JSBS_Parameter_DBA.CONST_ValidTill + " desc"
      
Date locdteWorkDate = new Date(parmMinParm.calWorkDate.getTime().getTime()); 
      
PreparedStatement SQLStatement;
      try {
        SQLStatement = parmDBCon.prepareStatement(locstrSQLCommand);
        SQLStatement.setInt(1, parmMinParm.intClientID);
        SQLStatement.setString(2, parmParameterName);
        SQLStatement.setString(3, parmValue02);
        SQLStatement.setDate(4, locdteWorkDate);
        ResultSet SQLResultSet = SQLStatement.executeQuery();
        vecRecordSet.removeAllElements();
        for (;;) {
          if (!SQLResultSet.next()) return;
          locdteReadValidFrom = SQLResultSet.getDate(JSBS_DBA.CONST_ValidFrom);
          locdteReadValidTill = SQLResultSet.getDate(JSBS_DBA.CONST_ValidTill);
          if (isWithinDateRange(locdteWorkDate, locdteReadValidFrom, locdteReadValidTill)) {
            JSBS_Parameter_DBA locstructJSBS_Parameter_DBA = new JSBS_Parameter_DBA();
            locstructJSBS_Parameter_DBA.getValuesFromSQLResultSet(SQLResultSet);
            vecRecordSet.addElement(locstructJSBS_Parameter_DBA);
          }
          ErrorMsg = "";
        }
      }
      
catch (SQLException SQLExc) {
        ErrorMsg = SQLExc.getMessage();
      }

    
}
}

zum Inhaltsverzeichnis

Erklärungen und Anwendungsbeispiele

Die Methoden dieser Klasse werden innerhalb der Klasse eines Business-Object (Server-Seite) für ein Anwendungsprogramm aufgerufen.
Einen Muster-Code für ein solches Business-Object finden Sie im Dokument 
Muster-Code für ein BOS_Set (Liste mit Business-Objects, Server-Side-Klasse)

zum Inhaltsverzeichnis

Verwandte Dokumentation

Dokument

Inhalt

JSBS_Parameter_DBA - Basisklasse für den Low-Level Zugriff auf die DB-Tabelle 'Parameter'  

Klasse für das Einfügen, Ändern und Selektionen von der Datenbank, die per Definition nur einen Datensatz als Ergebnis zurück liefern können.

zum Inhaltsverzeichnis