|
Letzte
Bearbeitung dieses Dokuments: |
Code
Erklärungen
und Anwendungsbeispiele
Verwandte
Dokumentation
package
js_base.dba;
import java.sql.*;
import js_base.structures.JSBS_MinimalParameters;
/**
*
* @author kurt@javascout.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_Set_DBA
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 selectAllValidForParameterName(
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_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.setString(1,
parmParameterName); SQLStatement.setDate(2,
locdteWorkDate); 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:
* 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 selectAllValidForValue01(
Connection
parmDBCon, JSBS_MinimalParameters
parmMinParm,
String
parmParameterName, String
parmValue01) {
final String
locstrSQLCommand = JSBS_Parameter_DBA.CONST_SELECT_ALL_ATTRIBUTES
+
"
where " +
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.setString(1,
parmParameterName); SQLStatement.setString(2,
parmValue01); SQLStatement.setDate(3,
locdteWorkDate); 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();
}
}/* ************************ */
public synchronized void selectAllValidForValue01_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_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.setString(1,
parmParameterName); SQLStatement.setString(2,
parmValue01); 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();
}
}/* ************************ */
public synchronized void selectAllValidForValue01_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_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.setString(1,
parmParameterName); SQLStatement.setString(2,
parmValue01); SQLStatement.setString(3,
parmValue02); SQLStatement.setString(4,
parmValue03); 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 selectAllValidForValue01_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_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.setString(1,
parmParameterName); SQLStatement.setString(2,
parmValue01); SQLStatement.setString(3,
parmValue02); SQLStatement.setString(4,
parmValue03); SQLStatement.setString(5,
parmValue04); 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 selectAllValidForValue01_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_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.setString(1,
parmParameterName); SQLStatement.setString(2,
parmValue01); SQLStatement.setString(3,
parmValue02); SQLStatement.setString(4,
parmValue03); SQLStatement.setString(5,
parmValue04); SQLStatement.setString(6,
parmValue05); 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();
}
}/*
* 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 selectForObjectID(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
+
" desc";
/* 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();
}
}}
xxx
|
Dokument |
Inhalt |
|
Dieser
Leitfaden enthält die notwendigen Tätigkeiten für
die Entwicklung eines StartFrame (auch als Command-Center
bekannt). |