Package de.willuhn.datasource.rmi

Examples of de.willuhn.datasource.rmi.DBIterator


  /**
   * @see de.willuhn.jameica.hbci.gui.parts.AbstractTransferList#getList(java.lang.Object, java.util.Date, java.util.Date, java.lang.String)
   */
  protected DBIterator getList(Object konto, Date from, Date to, String text) throws RemoteException
  {
    DBIterator list = super.getList(konto, from, to, text);
    if (text != null && text.length() > 0)
    {
      String s = "%" + text.toLowerCase() + "%";
      list.addFilter("(LOWER(empfaenger_konto) like ? or LOWER(empfaenger_name) like ? or LOWER(zweck) like ?)", new Object[]{s,s,s});
    }
   
    return list;
  }
View Full Code Here


    double summeAnfangssaldo = 0.0d;
    double summeEinnahmen    = 0.0d;
    double summeAusgaben     = 0.0d;
    double summeEndsaldo     = 0.0d;
   
    DBIterator it = de.willuhn.jameica.hbci.Settings.getDBService().createList(Konto.class);
    // Einschraenken auf gewaehlte Kontogruppe
    if (o != null && (o instanceof String))
      it.addFilter("kategorie = ?", (String) o);
    it.setOrder("ORDER BY LOWER(kategorie), blz, kontonummer, bezeichnung");
    while (it.hasNext())
    {
      EinnahmeAusgabe ea = new EinnahmeAusgabe((Konto) it.next(),start,end);
     
      // Zu den Summen hinzufuegen
      summeAnfangssaldo += ea.getAnfangssaldo();
      summeEinnahmen    += ea.getEinnahmen();
      summeAusgaben     += ea.getAusgaben();
View Full Code Here

      else if (context instanceof List)    konten.addAll((List)context);

      if (konten.size() == 0)
        return;

      DBIterator existing = Settings.getDBService().createList(Konto.class);

      int created   = 0;
      int skipped   = 0;
      int nosupport = 0;
      for (Konto konto:konten)
      {
        Logger.info("merging konto " + konto.getKontonummer());
        // Wir checken, ob's das Konto schon gibt
        boolean found = false;
        Logger.info("  checking if already exists");

        while (existing.hasNext())
        {
          Konto check = (Konto) existing.next();

          // BLZ stimmt nicht ueberein
          if (!check.getBLZ().equals(konto.getBLZ()))
            continue;

          // Kontonummer stimmt nicht ueberein.
          if (!check.getKontonummer().equals(konto.getKontonummer()))
            continue;

          // Stimmen Passports ueberein?
          String pp = check.getPassportClass();
          if (pp == null || !pp.equals(konto.getPassportClass()))
            continue;


          // BUGZILLA 338: Checken, ob Bezeichnung (=Type) uebereinstimmt
          // Bezeichnung ist optional - wir checken nur, wenn auf beiden
          // Seiten ein Name vorhanden ist und sie sich unterscheiden
          String localType = check.getBezeichnung();
          String newType   = konto.getBezeichnung();
          boolean haveName = (localType != null && localType.length() > 0 &&
                             newType != null && newType.length() > 0);

          // Die Konten gelten bereits als identisch, wenn
          // eines von beiden keine Bezeichnung hat (dann genuegen
          // die o.g. Kriterien). Andernfalls muessen die Bezeichnungen
          // uebereinstimmen.
          if (!haveName || newType.equals(localType))
          {
            found = true;
            Logger.info("  konto exists, skipping");
            skipped++;
          }
        }

        existing.begin();
        if (!found)
        {
          // Konto neu anlegen
          Logger.info("saving new konto");
          try {
View Full Code Here

      grid.add(new TextPrint(i18n.tr("Enthaltene Buchungen"),fontBold));

      // Leerzeile
      grid.add(new LineBreakPrint(fontNormal));

      DBIterator buchungen = a.getBuchungen();
      if (buchungen.size() > 0)
      {
        DefaultGridLook look = new DefaultGridLook();
        look.setHeaderBackground(new RGB(220,220,220));
       
        LineBorder border = new LineBorder(new RGB(100,100,100));
        border.setGapSize(3);
        look.setCellBorder(border);
       
        GridPrint table = new GridPrint("r:d:n, l:d:n, l:p:g, l:p:n, r:p:n",look);
        table.addHeader(new TextPrint(i18n.tr("Nr."),fontTinyBold));
        table.addHeader(new TextPrint(i18n.tr("Gegenkonto"),fontTinyBold));
        table.addHeader(new TextPrint(i18n.tr("Zweck"),fontTinyBold));
        table.addHeader(new TextPrint(i18n.tr("Typ"),fontTinyBold));
        table.addHeader(new TextPrint(i18n.tr("Betrag"),fontTinyBold));

        int count = 0;
        while (buchungen.hasNext())
        {
          SammelTransferBuchung b = (SammelTransferBuchung) buchungen.next();
          String usage = VerwendungszweckUtil.toString(b,"\n");

          table.add(new TextPrint(Integer.toString(++count),fontTiny));
          table.add(new TextPrint(i18n.tr("{0}, Kto. {1}, BLZ {2}",b.getGegenkontoName(),b.getGegenkontoNummer(),b.getGegenkontoBLZ()),fontTiny));
          table.add(new TextPrint(usage,fontTiny));
View Full Code Here

    SammelTransfer[] transfers = (SammelTransfer[]) objects;
    List all = new ArrayList();
    for (int i=0;i<transfers.length;++i)
    {
      all.add(transfers[i]);
      DBIterator buchungen = transfers[i].getBuchungen();
      while (buchungen.hasNext())
        all.add(buchungen.next());
    }
    super.doExport(all.toArray(),format,os,monitor);
  }
View Full Code Here

  protected void paint(Composite parent) throws Exception
  {
    AbstractPlugin plugin = Application.getPluginLoader().getPlugin(HBCI.class);
    final I18N i18n = plugin.getResources().getI18N();

    DBIterator list = Settings.getDBService().createList(Version.class);
    list.addFilter("name = ?","db");
    Version version = (Version) list.next();
   
    Label l = GUI.getStyleFactory().createLabel(parent,SWT.BORDER);
    l.setImage(SWTUtil.getImage("hibiscus.jpg"));

    Container container = new LabelGroup(parent,i18n.tr("Versionsinformationen"),true);
View Full Code Here

   */
  protected DBIterator getList(Object konto, Date from, Date to, String text) throws RemoteException
  {
    HBCIDBService service = (HBCIDBService) Settings.getDBService();
   
    DBIterator list = service.createList(getObjectType());
    if (from != null) list.addFilter("termin >= ?", new Object[]{new java.sql.Date(DateUtil.startOfDay(from).getTime())});
    if (to   != null) list.addFilter("termin <= ?", new Object[]{new java.sql.Date(DateUtil.endOfDay(to).getTime())});
    if (text != null && text.length() > 0)
    {
      list.addFilter("LOWER(bezeichnung) like ?", new Object[]{"%" + text.toLowerCase() + "%"});
    }
   
    if (konto != null && (konto instanceof Konto))
      list.addFilter("konto_id = " + ((Konto) konto).getID());
    else if (konto != null && (konto instanceof String))
      list.addFilter("konto_id in (select id from konto where kategorie = ?)", (String) konto);

    boolean pending = ((Boolean) this.getPending().getValue()).booleanValue();
    if (pending)
      list.addFilter("ausgefuehrt = 0");

    list.setOrder("ORDER BY " + service.getSQLTimestamp("termin") + " DESC, id DESC");
    return list;
  }
View Full Code Here

  {
    if (this.data != null)
      return this.data;
   
    // Wir holen uns erstmal alle Umsaetze im Zeitraum
    DBIterator list = UmsatzUtil.getUmsaetze();
    if (this.konto != null)
      list.addFilter("konto_id = " + this.konto.getID());

    list.addFilter("datum >= ?", new Object[]{new java.sql.Date(start.getTime())});
   
    // Jetzt kommt die Homogenisierung ;)
    // Wir brauchen genau einen Messwert pro Tag. Das ist wichtig,
    // damit auch unterschiedliche Konten in einem Chart ueberlagernd
    // angezeigt werden koennen. Nehmen wir jetzt einfach die Umsaetze
View Full Code Here

      ////////////////////////////////////////////////////////////////////////////
      // Saldo ausrechnen
      double d = 0d;
      if (konto == null || !(konto instanceof Konto))
      {
        DBIterator konten = Settings.getDBService().createList(Konto.class);
        if (konto != null && (konto instanceof String))
          konten.addFilter("kategorie = ?", (String) konto);
        while (konten.hasNext())
        {
          Konto k = (Konto) konten.next();
          d += k.getSaldo();
        }
      }
      else
      {
        d = ((Konto) konto).getSaldo();
        saldoDate = ((Konto) konto).getSaldoDatum();
      }
     
      LabelInput saldo = (LabelInput) this.getSaldo();
      saldo.setValue(HBCI.DECIMALFORMAT.format(d));
      String comment = HBCIProperties.CURRENCY_DEFAULT_DE;
      if (saldoDate != null)
        comment += " [" + HBCI.DATEFORMAT.format(saldoDate) + "]";
      saldo.setComment(comment);
      saldo.setColor(ColorUtil.getColor(d,Color.ERROR,Color.SUCCESS,Color.FOREGROUND));
      ////////////////////////////////////////////////////////////////////////////

     
      if (startDate == null || endDate == null || startDate.after(endDate))
        return;

      double in = 0d;
      double out = 0d;
      if (konto == null || !(konto instanceof Konto))
      {
        DBIterator i = Settings.getDBService().createList(Konto.class);
        if (konto != null && (konto instanceof String))
          i.addFilter("kategorie = ?", (String) konto);
        while (i.hasNext())
        {
          Konto k = (Konto) i.next();
          in  += KontoUtil.getEinnahmen(k,startDate,endDate);
          out += KontoUtil.getAusgaben(k,startDate,endDate);
        }
      }
      else
View Full Code Here

    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)
      {
View Full Code Here

TOP

Related Classes of de.willuhn.datasource.rmi.DBIterator

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.