display float in datagrid with decimal precision 10

Hi, We need to store some specific percentage (float) with a decimal precision set to 10. This seems to work fine however when the user enters a value (in a standard text box) like: 0,000000001 the value is automatically updated to 1e-9,0000000000 (considered unreadable by users). If a value like 0,00001 is entered the value will be displayed like: 0,0000100000. If I enter: 1,0000000010, it is displayed as: 1,0000000010 If I enter: 1,0000000011, it is displayed correctly in the form, but displayed (after save) in the datagrid as: 1,0000000010 when I open the form again it is displaying 1,0000000010 (the last 1 just got lost...). How to handle cases like this, any known workarounds? Can this be considered a bug (or am I overlooking some setting or some concept)? In addition, if the value in the form is (automatically eg after a tab) updated to 1e-9,0000000000 and I access the field again the field is emptied and no value is displayed anymore, I need to re enter the value that was present (or of course cancel without saving). Thanks. Brian
1 answers

Store it as string and add custom format checking and formatting. Combine this with a special java-action that does the parseFloat with correct settings when parseFloat is not sufficient. Mind the locale and decimal separators.

EDIT 1: Alternative is a custom widget with own formatting.