|
Letzte
Bearbeitung dieses Dokuments: |
Code
Erklärungen
und Anwendungsbeispiele
Verwandte
Dokumentation
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 'parmBeginTimestamp'.
* 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 'parmBeginTimestamp'.
* 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();
}
}}
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).
|
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. |