Ticket #37 (closed: fixed)

Opened 11 years ago

Last modified 11 years ago

Database Localization conversion Wizard - cEwEDatabase

Reported by: shermanl Owned by: administrator
Priority: normal Milestone: Ecopath 6: build 6.0.7
Component: Database / Import Version:
Severity: major Keywords:
Cc:

Description

When using a French system, the Database conversion wizard throws Impossible to store 0.2 into Single during conversion.

Steps:

  • use French/Italian? System
  • Open old EwE 5 database
  • Select database and click finish.

It bombed out at cEwEDatabase line 447 fleets. The error was (in my French translation [i don't know french]) Impossible to store 0.2 into a Single.

The row result variable array had (2) EcopathFleet?; (3) CapBaseGrowth?; (8) 0.2; ... (27). I couldn't find the table it was looking for. I suspect this has something to do with converting your string (0.2) into a Single which in French will be (0,2).

Change History

comment:1 Changed 11 years ago by jeroens

During import, the current database implementation attempts to complete missing field values with defaults provided in the database itself. These defaults are copied into the destination field which is most likely the cause of this bug.

A new implementation has been written that uses copies default values using .NET data type conversions. This should solve the issue but requires testing on a foreign language machine.

comment:2 Changed 11 years ago by jeroens

The Access drivers provide default column values as strings, regardless of the data type of the column. The last fix uses the column data type in combination with the Locale ID of the database to convert this string to its proper data type prior to sticking it in a field as a default.

Tested on a Dutch system (using similar number formatting scheme to French)

Note: See TracTickets for help on using tickets.