The attached file contains a table whose fields include
UnitPrice - Currency
Quantity - Number (Long Integer)
ExtendedPrice - Calculated: [UnitPrice] * [Quantity]
Attempting to dump the row from the table using
String dbFile = "C:/Users/Public/test/CalcFieldTest/CurrencyCalc.accdb";
try (Database db = DatabaseBuilder.open(new File(dbFile))) {
Table table = db.getTable("Table1");
for (Row row : table) {
System.out.println(row);
}
results in
com.healthmarketscience.jackcess.RuntimeIOException: Invalid money value.
at com.healthmarketscience.jackcess.impl.CursorImpl$BaseIterator.next(CursorImpl.java:760)
at com.healthmarketscience.jackcess.impl.CursorImpl$BaseIterator.next(CursorImpl.java:713)
at jackcessTest.JackcessTest.main(JackcessTest.java:25)
Caused by: java.io.IOException: Invalid money value.
at com.healthmarketscience.jackcess.impl.ColumnImpl.readCurrencyValue(ColumnImpl.java:813)
at com.healthmarketscience.jackcess.impl.ColumnImpl.read(ColumnImpl.java:658)
at com.healthmarketscience.jackcess.impl.ColumnImpl.read(ColumnImpl.java:626)
at com.healthmarketscience.jackcess.impl.TableImpl.getRowColumn(TableImpl.java:766)
at com.healthmarketscience.jackcess.impl.TableImpl.getRow(TableImpl.java:672)
at com.healthmarketscience.jackcess.impl.TableImpl.getRow(TableImpl.java:652)
at com.healthmarketscience.jackcess.impl.CursorImpl.getCurrentRow(CursorImpl.java:640)
at com.healthmarketscience.jackcess.impl.CursorImpl$BaseIterator.next(CursorImpl.java:756)
... 2 more
This is essentially a duplicate of issue 105.