Fehler beim löschen von Buchungsklassen & Buchungsarten
Verfasst: Donnerstag 7. Juni 2012, 10:49
Hallo,
der Fehler besteht sowohl in der aktuellen stable Version Build: 341, als auch nightly build 353
Fehler: Das löschen von Buchungsklassen und Buchungsarten im Bereich Buchführung über das Context Menu schlägt gründlich fehl.
Auszug aus dem Debug Log:
Dafür funktioniert der Import eines Kontorahmens über XML bei leeren Buchungsarten / -klassen ganz hervorragend. Nur...die Länge der Felder 'Bezeichnung' in beiden Kategorien (Buchungsklassen und Buchungsarten) sollte auf wenigstens 250 Zeichen gesetzt werden.
Derzeit stehen die Feldgrößen für Buchungsarten auf 50 Zeichen, für Buchungsklassen auf 30 Zeichen. Das ist für jeden Kontorahmen zu wenig und die Bezeichnungen
müssen gekürzt werden.
Zur Freude vieler hänge ich hier schon mal einen importierbaren XML Export an (DSB Konten), welcher von Edgar als XLS bereits hier: http://jverein.de/forum/viewtopic.php?f ... hmen#p3485
eingestellt wurde. Anpassungen jederzeit möglich.
MfG
Holenbach
der Fehler besteht sowohl in der aktuellen stable Version Build: 341, als auch nightly build 353
Fehler: Das löschen von Buchungsklassen und Buchungsarten im Bereich Buchführung über das Context Menu schlägt gründlich fehl.
Auszug aus dem Debug Log:
Code: Alles auswählen
[Wed Jun 06 19:10:15 CEST 2012][DEBUG][de.willuhn.datasource.db.AbstractDBObject.load] executing query: select * from BUCHUNGSKLASSE where ID = 2
[Wed Jun 06 19:10:15 CEST 2012][DEBUG][de.willuhn.datasource.db.AbstractDBObject.load] executing query: select * from BUCHUNGSKLASSE where ID = 2
[Wed Jun 06 19:10:15 CEST 2012][DEBUG][de.willuhn.datasource.db.AbstractDBObject.load] executing query: select * from BUCHUNGSKLASSE where ID = 2
[Wed Jun 06 19:10:15 CEST 2012][DEBUG][de.willuhn.datasource.db.AbstractDBObject.load] executing query: select * from BUCHUNGSKLASSE where ID = 2
[Wed Jun 06 19:10:15 CEST 2012][DEBUG][de.willuhn.datasource.db.AbstractDBObject.load] executing query: select * from BUCHUNGSKLASSE where ID = 2
[Wed Jun 06 19:10:15 CEST 2012][DEBUG][de.willuhn.datasource.db.AbstractDBObject.load] executing query: select * from BUCHUNGSKLASSE where ID = 2
[Wed Jun 06 19:10:15 CEST 2012][DEBUG][de.willuhn.datasource.db.AbstractDBObject.load] executing query: select * from BUCHUNGSKLASSE where ID = 2
[Wed Jun 06 19:10:15 CEST 2012][DEBUG][de.willuhn.datasource.db.AbstractDBObject.load] executing query: select * from BUCHUNGSKLASSE where ID = 4
[Wed Jun 06 19:10:15 CEST 2012][DEBUG][de.willuhn.datasource.db.AbstractDBObject.load] executing query: select * from BUCHUNGSKLASSE where ID = 4
[Wed Jun 06 19:10:19 CEST 2012][DEBUG][de.willuhn.jameica.gui.dialogs.AbstractDialog$1.run] modal type: primary
[Wed Jun 06 19:10:21 CEST 2012][DEBUG][de.willuhn.jameica.gui.dialogs.AbstractDialog.close] closing dialog
[Wed Jun 06 19:10:21 CEST 2012][DEBUG][de.willuhn.jameica.gui.dialogs.AbstractDialog$5.run] dialog closed
[Wed Jun 06 19:10:21 CEST 2012][DEBUG][de.willuhn.jameica.gui.dialogs.AbstractDialog.close] notifying listeners
[Wed Jun 06 19:10:21 CEST 2012][DEBUG][de.willuhn.jameica.messaging.NamedQueue$Worker.send] sending message [Wed Jun 06 19:10:21 CEST 2012][ERROR] Fehler beim Löschen der Buchungsart.
[Wed Jun 06 19:10:21 CEST 2012][ERROR][de.willuhn.jameica.messaging.LogMessageConsumer.handleMessage] Fehler beim Löschen der Buchungsart.
[Wed Jun 06 19:10:21 CEST 2012][ERROR][de.jost_net.JVerein.gui.action.BuchungsartDeleteAction.handleAction] Fehler beim Löschen der Buchungsart.
java.rmi.RemoteException: delete failed, rollback successful; nested exception is:
org.h2.jdbc.JdbcSQLException: Referentielle Integrität verletzt: "FKBUCHUNG1: PUBLIC.BUCHUNG FOREIGN KEY(BUCHUNGSART) REFERENCES PUBLIC.BUCHUNGSART(ID)"
Referential integrity constraint violation: "FKBUCHUNG1: PUBLIC.BUCHUNG FOREIGN KEY(BUCHUNGSART) REFERENCES PUBLIC.BUCHUNGSART(ID)"; SQL statement:
delete from BUCHUNGSART where ID = 10 [23003-145]
at de.willuhn.datasource.db.AbstractDBObject.delete(AbstractDBObject.java:384)
at de.jost_net.JVerein.server.BuchungsartImpl.delete(BuchungsartImpl.java:168)
at de.jost_net.JVerein.gui.action.BuchungsartDeleteAction.handleAction(BuchungsartDeleteAction.java:71)
at de.willuhn.jameica.gui.parts.ContextMenu$1.handleEvent(ContextMenu.java:173)
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:803)
at de.willuhn.jameica.gui.GUI.init(GUI.java:294)
at de.willuhn.jameica.system.Application.init(Application.java:144)
at de.willuhn.jameica.system.Application.newInstance(Application.java:86)
at de.willuhn.jameica.Main.main(Main.java:78)
Caused by: org.h2.jdbc.JdbcSQLException: Referentielle Integrität verletzt: "FKBUCHUNG1: PUBLIC.BUCHUNG FOREIGN KEY(BUCHUNGSART) REFERENCES PUBLIC.BUCHUNGSART(ID)"
Referential integrity constraint violation: "FKBUCHUNG1: PUBLIC.BUCHUNG FOREIGN KEY(BUCHUNGSART) REFERENCES PUBLIC.BUCHUNGSART(ID)"; SQL statement:
delete from BUCHUNGSART where ID = 10 [23003-145]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:327)
at org.h2.message.DbException.get(DbException.java:167)
at org.h2.message.DbException.get(DbException.java:144)
at org.h2.constraint.ConstraintReferential.checkRow(ConstraintReferential.java:382)
at org.h2.constraint.ConstraintReferential.checkRowRefTable(ConstraintReferential.java:399)
at org.h2.constraint.ConstraintReferential.checkRow(ConstraintReferential.java:275)
at org.h2.table.Table.fireConstraints(Table.java:803)
at org.h2.table.Table.fireAfterRow(Table.java:820)
at org.h2.command.dml.Delete.update(Delete.java:80)
at org.h2.command.CommandContainer.update(CommandContainer.java:69)
at org.h2.command.Command.executeUpdate(Command.java:201)
at org.h2.jdbc.JdbcStatement.executeUpdateInternal(JdbcStatement.java:126)
at org.h2.jdbc.JdbcStatement.executeUpdate(JdbcStatement.java:111)
at de.willuhn.datasource.db.AbstractDBObject.delete(AbstractDBObject.java:366)
Derzeit stehen die Feldgrößen für Buchungsarten auf 50 Zeichen, für Buchungsklassen auf 30 Zeichen. Das ist für jeden Kontorahmen zu wenig und die Bezeichnungen
müssen gekürzt werden.
Zur Freude vieler hänge ich hier schon mal einen importierbaren XML Export an (DSB Konten), welcher von Edgar als XLS bereits hier: http://jverein.de/forum/viewtopic.php?f ... hmen#p3485
eingestellt wurde. Anpassungen jederzeit möglich.
MfG
Holenbach