Bug 30504

Summary: Incorrect save NUMBER value to DBF
Product: LibreOffice Reporter: Tonal <tonal.promsoft>
Component: LibreOfficeAssignee: Kohei Yoshida <kohei>
Status: CLOSED FIXED    
Severity: normal CC: r.bircher, sophi
Priority: medium    
Version: unspecified   
Hardware: All   
OS: All   
Whiteboard:
Crash report or crash signature: Regression By:
Attachments: diff for correct this iusse

Description Tonal 2010-09-30 09:05:23 UTC
Created attachment 39074 [details]
diff for correct this iusse

Open Office Calc save numeric value in numeric column as text representation and
add null chars right for column with.
Bat other applications save value as text and space chars left for column with.

For example:
Format: N, 3, 0
Value: 1
Calc saved value (hex): 31 00 00
Other Apps saved value (hex): 20 20 31

This inaccuracy does not affect the format of the readers implemented in C or C++ but can break the implementation in other languages (Python, Ruby, Haskell)

Number column format descriptions:
  "Number stored as a string, right justified, and padded with blanks to the width of the field."
  http://www.dbase.com/KnowledgeBase/int/db7_file_fmt.htm :

  "Numeric: . 0 1 2 3 4 5 6 7 8 9 + -, right justified, left blank filled" 
  http://linux.techass.com/projects/xdb/xbasedocs/xbase_c2.html:

OOo iusse 44116: 
  http://www.openoffice.org/issues/show_bug.cgi?id=44116
Russian discursions: 
  http://community.i-rs.ru/index.php/topic,5783.0.html
  http://community.i-rs.ru/index.php/topic,15643.0.html
Comment 1 Kohei Yoshida 2010-10-01 09:41:28 UTC
Taking ownership.
Comment 2 Raphael Bircher 2010-10-01 09:50:20 UTC
CCing me
Comment 3 Kohei Yoshida 2010-10-01 09:51:19 UTC
pushed to libs-core with only minor editing.  Thanks a lot for the patch. :-)
Comment 4 sophie 2011-01-13 02:36:17 UTC
Not verified, but assuming it is, so closing. Please reopen if not - Sophie