J'ai récemment eu à changer de PC et ai déplacé ma base de donnée.
Tout s'est très bien passé le premier jour (ajout d'articles, ouverture de caisse etc ...) mais le lendemain, il m'est strictement impossible d'ouvrir ma caisse où d'opérer à des modifications.
Voici l'erreur :
Erreur d'initialisation de la caisse
Impossible d'accéder au résultat de SELECT "TICKET_CAISSE".*
FROM "OpenConcerto"."OpenConcerto49"."TICKET_CAISSE"
WHERE ("TICKET_CAISSE"."ID" <> 1) AND (("TICKET_CAISSE"."ARCHIVE" = 0) AND ("TICKET_CAISSE"."ID_CAISSE" = 2))
ORDER BY "TICKET_CAISSE"."DATE" DESC
LIMIT 1 OFFSET 0 FOR UPDATE
in jdbc:h2:file:C:\Users\marec\AppData\Roaming\OpenConcerto\Data\DBData/OpenConcerto;DATABASE_TO_UPPER=false
org.openconcerto.utils.ExceptionHandler: Erreur d'initialisation de la caisse
at org.openconcerto.utils.ExceptionHandler.handle(ExceptionHandler.java:144)
at org.openconcerto.utils.ExceptionHandler.handle(ExceptionHandler.java:151)
at org.openconcerto.erp.core.sales.pos.ui.CaisseFrame.main(CaisseFrame.java:259)
Caused by: java.lang.IllegalStateException: Impossible d'accéder au résultat de SELECT "TICKET_CAISSE".*
FROM "OpenConcerto"."OpenConcerto49"."TICKET_CAISSE"
WHERE ("TICKET_CAISSE"."ID" <> 1) AND (("TICKET_CAISSE"."ARCHIVE" = 0) AND ("TICKET_CAISSE"."ID_CAISSE" = 2))
ORDER BY "TICKET_CAISSE"."DATE" DESC
LIMIT 1 OFFSET 0 FOR UPDATE
in jdbc:h2:file:C:\Users\marec\AppData\Roaming\OpenConcerto\Data\DBData/OpenConcerto;DATABASE_TO_UPPER=false
at org.openconcerto.sql.model.SQLDataSource.execute(SQLDataSource.java:650)
at org.openconcerto.sql.model.SQLDataSource.execute(SQLDataSource.java:558)
at org.openconcerto.sql.model.SQLDataSource.execute(SQLDataSource.java:538)
at org.openconcerto.sql.model.SQLSelectHandlerBuilder.execute(SQLSelectHandlerBuilder.java:85)
at org.openconcerto.sql.model.SQLRowListRSH.execute(SQLRowListRSH.java:181)
at org.openconcerto.sql.model.SQLRowListRSH.execute(SQLRowListRSH.java:177)
at org.openconcerto.erp.core.sales.pos.model.RegisterDB$2.create(RegisterDB.java:141)
at org.openconcerto.erp.core.sales.pos.model.RegisterDB$2.create(RegisterDB.java:1)
at org.openconcerto.sql.utils.SQLUtils$1.handle(SQLUtils.java:82)
at org.openconcerto.sql.utils.SQLUtils$2.handle(SQLUtils.java:149)
at org.openconcerto.sql.model.ConnectionHandler.compute(ConnectionHandler.java:59)
at org.openconcerto.sql.model.SQLDataSource.useConnection(SQLDataSource.java:887)
at org.openconcerto.sql.model.SQLDataSource.useConnection(SQLDataSource.java:851)
at org.openconcerto.sql.utils.SQLUtils.executeAtomic(SQLUtils.java:127)
at org.openconcerto.sql.utils.SQLUtils.executeAtomic(SQLUtils.java:99)
at org.openconcerto.sql.utils.SQLUtils.executeAtomic(SQLUtils.java:79)
at org.openconcerto.erp.core.sales.pos.model.RegisterDB.fetchRegisterState(RegisterDB.java:128)
at org.openconcerto.erp.core.sales.pos.model.RegisterDB.fetchRegisterState(RegisterDB.java:98)
at org.openconcerto.erp.core.sales.pos.ui.CaisseFrame.main(CaisseFrame.java:152)
Caused by: org.h2.jdbc.JdbcSQLException: General error: "java.lang.ArrayIndexOutOfBoundsException: 0"; SQL statement:
SELECT "TICKET_CAISSE".*
FROM "OpenConcerto"."OpenConcerto49"."TICKET_CAISSE"
WHERE ("TICKET_CAISSE"."ID" <> 1) AND (("TICKET_CAISSE"."ARCHIVE" = 0) AND ("TICKET_CAISSE"."ID_CAISSE" = 2))
ORDER BY "TICKET_CAISSE"."DATE" DESC
LIMIT 1 OFFSET 0 FOR UPDATE [50000-175]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:332)
at org.h2.message.DbException.get(DbException.java:161)
at org.h2.message.DbException.convert(DbException.java:284)
at org.h2.command.Command.executeQuery(Command.java:208)
at org.h2.jdbc.JdbcStatement.executeInternal(JdbcStatement.java:177)
at org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:156)
at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:264)
at org.openconcerto.sql.model.SQLDataSource$ExecutorThread.run(SQLDataSource.java:1243)
Caused by: java.lang.ArrayIndexOutOfBoundsException: 0
at org.h2.index.PageDataLeaf.getRowAt(PageDataLeaf.java:329)
at org.h2.index.PageDataLeaf.getRowWithKey(PageDataLeaf.java:452)
at org.h2.index.PageDataNode.getRowWithKey(PageDataNode.java:279)
at org.h2.index.PageDataIndex.getRowWithKey(PageDataIndex.java:422)
at org.h2.index.PageDataIndex.getRow(PageDataIndex.java:411)
at org.h2.table.RegularTable.getRow(RegularTable.java:106)
at org.h2.index.PageBtreeIndex.getRow(PageBtreeIndex.java:297)
at org.h2.index.PageBtreeCursor.get(PageBtreeCursor.java:46)
at org.h2.index.IndexCursor.get(IndexCursor.java:257)
at org.h2.table.TableFilter.getValue(TableFilter.java:892)
at org.h2.expression.ExpressionColumn.getValue(ExpressionColumn.java:183)
at org.h2.expression.Comparison.getValue(Comparison.java:225)
at org.h2.expression.ConditionAndOr.getValue(ConditionAndOr.java:87)
at org.h2.expression.Expression.getBooleanValue(Expression.java:180)
at org.h2.command.dml.Select.queryFlat(Select.java:529)
at org.h2.command.dml.Select.queryWithoutCache(Select.java:632)
at org.h2.command.dml.Query.query(Query.java:314)
at org.h2.command.dml.Query.query(Query.java:284)
at org.h2.command.dml.Query.query(Query.java:36)
at org.h2.command.CommandContainer.query(CommandContainer.java:91)
at org.h2.command.Command.executeQuery(Command.java:196)
... 4 more