cache.put("kontoauszug.list.subkategorien", subKategorien);
// geprueft/ungeprueft Flag speichern wir permanent
settings.setAttribute("kontoauszug.list.unchecked",unchecked);
DBIterator umsaetze = UmsatzUtil.getUmsaetzeBackwards();
// BUGZILLA 449
this.hasFilter = false;
/////////////////////////////////////////////////////////////////
// Zeitraum
// Der Warnhinweis wird nicht fuer den Zeitraum angezeigt, da der
// immer vorhanden ist
if (start != null) umsaetze.addFilter("datum >= ?", new java.sql.Date(DateUtil.startOfDay(start).getTime()));
if (end != null) umsaetze.addFilter("datum <= ?", new java.sql.Date(DateUtil.endOfDay(end).getTime()));
/////////////////////////////////////////////////////////////////
// Gegenkonto
if (gkBLZ != null && gkBLZ.length() > 0) {umsaetze.addFilter("empfaenger_blz like ?","%" + gkBLZ + "%");this.hasFilter = true;}
if (gkNummer != null && gkNummer.length() > 0) {umsaetze.addFilter("empfaenger_konto like ?","%" + gkNummer + "%");this.hasFilter = true;}
if (gkName != null && gkName.length() > 0) {umsaetze.addFilter("LOWER(empfaenger_name) like ?","%" + gkName.toLowerCase() + "%");hasFilter = true;}
/////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////
// Konto oder Kontogruppe
if (o != null && (o instanceof Konto))
umsaetze.addFilter("konto_id = " + ((Konto) o).getID());
else if (o != null && (o instanceof String))
umsaetze.addFilter("konto_id in (select id from konto where kategorie = ?)", (String) o);
/////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////
// Betrag
if (min != null && !(Double.isNaN(min.doubleValue())))
{
umsaetze.addFilter("betrag >= ?",min);
this.hasFilter = true;
}
if (max != null && (!Double.isNaN(max.doubleValue())))
{
umsaetze.addFilter("betrag <= ?",max);
this.hasFilter = true;
}
/////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////
// Zweck/Kommentar
if (zk != null && zk.length() > 0)
{
zk = "%" + zk.toLowerCase() + "%";
umsaetze.addFilter("(LOWER(CONCAT(COALESCE(zweck,''),COALESCE(zweck2,''),COALESCE(zweck3,''))) LIKE ? OR LOWER(kommentar) like ? OR LOWER(art) like ?)",zk,zk,zk);
}
/////////////////////////////////////////////////////////////////
GUI.getView().setLogoText(this.hasFilter ? i18n.tr("Hinweis: Aufgrund von Suchkriterien werden m�glicherweise nicht alle Ums�tze angezeigt") : "");
List<Umsatz> result = new LinkedList<Umsatz>();
while (umsaetze.hasNext())
{
Umsatz u = (Umsatz) umsaetze.next();
if (typ != null && !matches(typ, u, subKategorien))
continue;
if (unchecked)
{