[Gelöst] Update mit SQL Kopplung nicht möglich

Hier melden JVerein-Benutzer ihre Fehler

Moderator: heiner

Benutzeravatar
heiner
Administrator
Beiträge: 4509
Registriert: Freitag 30. Oktober 2009, 16:44
JVerein-Version: aktuelle Entwicklerversion
Betriebssystem: W10
Kontaktdaten:

Re: Update mit SQL Kopplung nicht möglich

Beitrag von heiner »

Hallo Marc,

Olaf Willuhn hat dein Log-File analysiert. Sein Kommentar:
der User hat die ZIP-Dateien mit den Plugins direkt in den "plugins"-Ordner kopiert. Das geht nicht. Entweder manuell im Ordner "plugins" ENTPACKEN oder den Plugin-Manager unter Datei->Einstellungen->Plugins verwenden.
Heiner
PS: Denkt daran, eure Vereine unter viewforum.php?f=3 vorzustellen.
chabar
Beiträge: 46
Registriert: Montag 13. August 2012, 16:32

Re: Update mit SQL Kopplung nicht möglich

Beitrag von chabar »

Hallo Heiner,

ja, die zip-Archive hatte ich im Plugins-Ordner gespeichert, die Installation bzw. Updates der Plugins erfolgten allerdings immer über den Jameica-Plugin-Manager - bislang stellte dies auch kein Problem dar. Zur Sicherheit habe ich eben aber nochmal getestet und vorher alle Archive im Plugins-Verzeichnis gelöscht. Leider wieder ohne Erfolg.

Bitte versteh die Frage nicht falsch, aber bist du sicher, dass die korrekte SQL-Sytax wirklich in der Version jverein.2.5.0-devel-421.zip angekommen ist? Das Plugin in der genannten Version ist übrigens exakt genauso groß wie jverein.2.5.0-devel-420.zip - was ja einerseits gut sein kann, aber andererseits bei mir irgendwie den Eindruck erweckt, als ob beide Version identisch sein könnten.

BTW bzw. unabhängig davon: In der Tabelle QIFIMPORTHEAD wird ein Attribut "startsalto" angelegt, was von JVerein bemängelt wird, sobald ich die Tabellen in die entsprechende Kleinschreibweise umbenenne (es wird "startsaldo" erwartet).

Vielen Dank für deine Hilfe und sorry für das Hickhack.

Viele Grüße
Marc
Benutzeravatar
heiner
Administrator
Beiträge: 4509
Registriert: Freitag 30. Oktober 2009, 16:44
JVerein-Version: aktuelle Entwicklerversion
Betriebssystem: W10
Kontaktdaten:

Re: Update mit SQL Kopplung nicht möglich

Beitrag von heiner »

Hallo Marc,

ich habe jetzt noch einmal eine Entwicklerversion gebaut. Versuche es damit.

Heiner
PS: Denkt daran, eure Vereine unter viewforum.php?f=3 vorzustellen.
chabar
Beiträge: 46
Registriert: Montag 13. August 2012, 16:32

Re: Update mit SQL Kopplung nicht möglich

Beitrag von chabar »

Hallo Heiner,

die Probleme bestehen leider nach wie vor (s. jameica-20131108.log). Neben den beiden QIF-Tabellen wird übrigens auch die Tabelle "mitgliednextbgruppe" in Großbuchstaben angelegt.

Benenne ich alle drei Tabellen in die jeweilige Kleinschreibweise um, erhalten ich eine etwas andere, aber wohl noch immer mit diesem Thema zusammenhängende Fehlermeldung.

Viele Grüße
Marc
Dateianhänge
jameica-20131108_nach_manuellem-Umbenennen_der_Tabellen.log
(133.76 KiB) 279-mal heruntergeladen
jameica-20131108.log
(187.51 KiB) 284-mal heruntergeladen
Benutzeravatar
heiner
Administrator
Beiträge: 4509
Registriert: Freitag 30. Oktober 2009, 16:44
JVerein-Version: aktuelle Entwicklerversion
Betriebssystem: W10
Kontaktdaten:

Re: Update mit SQL Kopplung nicht möglich

Beitrag von heiner »

Hallo Marc,

das von dir beschriebene Verhalten verstehe ich nicht. Der Programmcode sieht wie folgt aus:

Code: Alles auswählen

  private void update0329(Connection conn) throws ApplicationException
  {
    Map<String, String> statements = new HashMap<String, String>();
    // Update fuer H2
    statements
        .put(
            DBSupportH2Impl.class.getName(),
            "CREATE TABLE qifimporthead( "
                + " id IDENTITY(1), "
                + " name VARCHAR(30), "
                + " beschreibung VARCHAR(30), "
                + " startsalto DOUBLE, "
                + " startdate DATE, "
                + " konto INTEGER, "
                + " importdatum DATE NOT NULL, "
                + " importfile VARCHAR(256), "
                + " processdate DATE, "
                + " UNIQUE(id), "
                + " PRIMARY KEY(id) "
                + ");\n "
                +

                " CREATE TABLE qifimportpos( "
                + "   posid IDENTITY(1), "
                + "   headid INTEGER NOT NULL, "
                + "   datum DATE NOT NULL, "
                + "   betrag DOUBLE NOT NULL, "
                + "   beleg VARCHAR(30), "
                + "   name VARCHAR(100), "
                + "   zweck VARCHAR(100), "
                + "   buchartex VARCHAR(50), "
                + "   buchart INTEGER, "
                + "   mitgliedbar VARCHAR(1), "
                + "   mitglied INTEGER, "
                + "   sperre VARCHAR(1), "
                + "   UNIQUE(posid) "
                + " );\n "
                +

                " ALTER TABLE qifimportpos ADD CONSTRAINT fkImpKntPos1 FOREIGN KEY (headid) REFERENCES qifimporthead(id)  DEFERRABLE;\n");

    // Update fuer MySQL
    statements
        .put(
            DBSupportMySqlImpl.class.getName(),
            "CREATE TABLE qifimporthead( "
                + " id int(10) AUTO_INCREMENT, "
                + " name VARCHAR(30), "
                + " beschreibung VARCHAR(30), "
                + " startdate DATE, "
                + " startsalto DOUBLE, "
                + " konto int(10), "
                + " importdatum DATE NOT NULL, "
                + " importfile VARCHAR(256), "
                + " processdate DATE, "
                + " UNIQUE(id), "
                + " PRIMARY KEY(id) "
                + " );\n "
                +

                "CREATE TABLE qifimportpos( "
                + "  posid int(10) AUTO_INCREMENT, "
                + "  headid int(10) NOT NULL, "
                + "  datum DATE NOT NULL, "
                + "  betrag DOUBLE NOT NULL, "
                + "  beleg VARCHAR(30), "
                + "  name VARCHAR(100), "
                + "  zweck VARCHAR(100), "
                + "  buchartex VARCHAR(50), "
                + "  buchart int(10), "
                + "  mitgliedbar VARCHAR(1), "
                + "  mitglied int(10), "
                + "  sperre VARCHAR(1), "
                + "  UNIQUE(posid) "
                + " );\n "
                +

                "ALTER TABLE qifimportpos ADD CONSTRAINT fkImpKntPos1 FOREIGN KEY (headid) REFERENCES qifimporthead(id);\n");

    execute(conn, statements,
        "Neue Tabellen für Import von Buchungen aus z.B. Quicken.", 329);
  }
Die Tabellen werden in Kleinbuchstaben angelegt.

Heiner
PS: Denkt daran, eure Vereine unter viewforum.php?f=3 vorzustellen.
Benutzeravatar
heiner
Administrator
Beiträge: 4509
Registriert: Freitag 30. Oktober 2009, 16:44
JVerein-Version: aktuelle Entwicklerversion
Betriebssystem: W10
Kontaktdaten:

Re: Update mit SQL Kopplung nicht möglich

Beitrag von heiner »

Hallo Marc,

stelle bitte VOR dem Update unter Datei | Einstellungen (oben im Menü) den Loggig-Level auf DEBUG. Danach starte das Update und poste die Logging-Datei.

Heiner
PS: Denkt daran, eure Vereine unter viewforum.php?f=3 vorzustellen.
GTI
Beiträge: 15
Registriert: Samstag 9. November 2013, 17:14
Verein: www.gti-schornsteinfeger.de
Mitglieder: 46
JVerein-Version: 2.8.15
Betriebssystem: Diverse

Re: Update mit SQL Kopplung nicht möglich

Beitrag von GTI »

Hallo Heiner,

kann die Fehler bestätigen, da genau das gleiche Problem bei mir auftaucht.
Die Tabellen werden ebenfalls in Großbuchstaben angelegt und Jamaica meldet den Fehler, dass das Update des Plugins fehlgeschlagen sei?

Gruß
Michael
chabar
Beiträge: 46
Registriert: Montag 13. August 2012, 16:32

Re: Update mit SQL Kopplung nicht möglich

Beitrag von chabar »

Hallo Heiner,

hmm...das ist wirklich seltsam. Anbei das Debug-Log.

Testweise habe ich jetzt mal auf meinem MySQL-Server den Parameter

Code: Alles auswählen

lower_case_table_names=1
gesetzt. Damit werden die Tabellen mitgliednextbgruppe, qifimporthead, qifimportpos dann in Kleinbuchstaben angelegt und das Update funktioniert.

Könnte es sein, dass in jeweiligen SQL-Statements die fehlende "Engine"-Angabe das Problem darstellt? Sonst hattest du bei den "CREATE"-Statements glaube ich immer noch

Code: Alles auswählen

ENGINE=InnoDB
mit angegeben.

Viele Grüße
Marc
Dateianhänge
jameica-20131110.log
(243.38 KiB) 295-mal heruntergeladen
GTI
Beiträge: 15
Registriert: Samstag 9. November 2013, 17:14
Verein: www.gti-schornsteinfeger.de
Mitglieder: 46
JVerein-Version: 2.8.15
Betriebssystem: Diverse

Re: Update mit SQL Kopplung nicht möglich

Beitrag von GTI »

Hallo noch mal.

Nach einem manuellen Eingriff ist zumindest das Update durchgelaufen...
Leider gibt es jetzt ein Problem bei der Umsetzung auf IBAN/BIC und ich kann die Mitglieder-Kartei nicht mehr aufrufen.
Die Liste zur internen Umsetzung bleib leer. Jedoch werden die Bankdaten in die Datei IBANHIN exportiert.

Anbei die Fehlermeldung
[Mon Nov 11 17:21:55 CET 2013][ERROR][de.willuhn.jameica.gui.GUI$4.run] error while loading view de.jost_net.JVerein.gui.view.MitgliedDetailView
java.lang.ExceptionInInitializerError
at de.jost_net.JVerein.gui.control.listener.BICListener.handleEvent(BICListener.java:43)
at de.jost_net.JVerein.gui.input.BICInput.<init>(BICInput.java:35)
at de.jost_net.JVerein.gui.control.MitgliedControl.getBic(MitgliedControl.java:767)
at de.jost_net.JVerein.gui.view.AbstractAdresseDetailView.zeichneZahlung(AbstractAdresseDetailView.java:453)
at de.jost_net.JVerein.gui.view.AbstractAdresseDetailView.bind(AbstractAdresseDetailView.java:114)
at de.willuhn.jameica.gui.GUI$4.run(GUI.java:629)
at org.eclipse.swt.custom.BusyIndicator.showWhile(Unknown Source)
at de.willuhn.jameica.gui.GUI$5.run(GUI.java:800)
at org.eclipse.swt.widgets.Synchronizer.syncExec(Unknown Source)
at org.eclipse.swt.widgets.Display.syncExec(Unknown Source)
at de.willuhn.jameica.gui.GUI.startSync(GUI.java:796)
at de.willuhn.jameica.gui.GUI.startView(GUI.java:533)
at de.jost_net.JVerein.gui.action.MitgliedDetailAction.handleAction(MitgliedDetailAction.java:77)
at de.willuhn.jameica.gui.parts.AbstractTablePart.open(AbstractTablePart.java:242)
at de.willuhn.jameica.gui.parts.TablePart$5.mouseDoubleClick(TablePart.java:721)
at org.eclipse.swt.widgets.TypedListener.handleEvent(Unknown Source)
at org.eclipse.swt.widgets.EventTable.sendEvent(Unknown Source)
at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Unknown Source)
at org.eclipse.swt.widgets.Display.readAndDispatch(Unknown Source)
at de.willuhn.jameica.gui.GUI.loop(GUI.java:817)
at de.willuhn.jameica.gui.GUI.init(GUI.java:308)
at de.willuhn.jameica.system.Application.init(Application.java:148)
at de.willuhn.jameica.system.Application.newInstance(Application.java:90)
at de.willuhn.jameica.Main.main(Main.java:78)
Caused by: java.lang.StringIndexOutOfBoundsException: String index out of range: 174
at java.lang.String.substring(Unknown Source)
at de.jost_net.OBanToo.SEPA.BankenDaten.BLZSatz.getString(BLZSatz.java:149)
at de.jost_net.OBanToo.SEPA.BankenDaten.BLZSatz.<init>(BLZSatz.java:144)
at de.jost_net.OBanToo.SEPA.BankenDaten.BLZDatei.getNext(BLZDatei.java:30)
at de.jost_net.OBanToo.SEPA.BankenDaten.Banken.<clinit>(Banken.java:34)
... 25 more
Benutzeravatar
heiner
Administrator
Beiträge: 4509
Registriert: Freitag 30. Oktober 2009, 16:44
JVerein-Version: aktuelle Entwicklerversion
Betriebssystem: W10
Kontaktdaten:

Re: Update mit SQL Kopplung nicht möglich

Beitrag von heiner »

Hallo Marc,

ich werde die "Engine"-Angabe aufnehmen.

Heiner
PS: Denkt daran, eure Vereine unter viewforum.php?f=3 vorzustellen.
Antworten