On 10-6-2014 16:21, Oogie McGuire wrote:
OK an update:

The original spreadsheet is an export of a .XLS file from a Foxbase database on 
a Windows machine. Based on what I got I thought the data were stored as 4 
digit numbers but in the database they are really 6 or more text characters.

I needed to get it into an SQLite Database on an Android tablet via LibreOffice 
on a Macintosh. I do that by converting the .XLS to a .CSV file in LibreOffice. 
Once I have a good .CSV file I create update statements for the SQLite database 
by giving it the table name, primary key and update values. When I bring the 
data in to LibreOffice it assumes they are numbers and then the various issues 
with the leading zeros. I need the leading zeros because the linkages of a 
record to another record in the database on the final update require the 
leading zeros.

Once the data are in SQLite then that file is put on the Android tablet. Data 
are added and modified via the Android system.

Then I need to take the data out of the Android, into the Mac. I just move the 
entire SQLite Database to the Mac. Then I create an export file in .CSV format 
from the SQLite Database via a customized Query. That file then goes  to  the 
person with Windows machine. They run an import process on the file to bring in 
the new records, link them as appropriate and then those incorporate the 
changes into the Foxbase database.

On the Foxbase system the data are stored as text strings but because they are 
all digits when it gets imported to LibreOffice  they get interpreted as 
numbers. That's why I couldn't get the adding back of the leading zeros to work 
at all. And the transfers back and forth resulted in all the linkages being 
broken.

The system is a sheep registration system talking to my own sheep management 
system. The links are from a new lamb to its parents based on registration 
number so it has to be correct.

What has finally worked is the following workflow:

Get .XLS file from the Windows computer. Get someone on a Windows machine to 
save that file as a .CSV on the Windows machine.
When I do the import of the .CSV file into LibreOffice instead of allowing 
Standard on the import set the required fields to be text.
That preserves the leading zeros that already exist in the file from the 
Foxbase system.
Create my update statements for the SQLite Database per normal, run them, move 
the database to the Android, collect the data as required and then move the 
database back to the Mac.
Do the required Select statement that creates a table that I then export as 
.CSV file
Open that in LibreOffice and verify the text strings are still text. Save it as 
a .XLS file
Send that to the Windows machine. There it is used as input the the Foxbase 
system.

I've tried it with one flock with 84 2014 lambs and it worked. Nor ready to 
test with the next flock of 156 new lambs.


I think you need to take a closer look at the import process of a CSV file into LibreOffice.

I do get a 'Text import' wizard, and if i select 'Quoted field as text',
and under field specify 'Text' for the desired columns (columns 2,3)

When i import this CSV file:
a;b;c
1;2;3
"0001";"0002";"0003"
0001;0002;0003



I do get this in LO (column separated given as semi-colon for readability (notice the space to indicate wheter a value is left aligned or right aligned:
a;b;c
 1;2 ;3 ;
0001 ;0002; 0003;
  1;0002 ;0003 ;

When i look at the returnvalues if the ISNUMBER() function for these nine fields:
a;b;c
TRUE;FALSE;FALSE
FALSE;FALSE;FALSE
TRUE;FALSE;FALSE

Everything as expected.
- the values between '"' are all TEXT
- the columns (2 and 3)are also text.
- in text-values the leading zero's are maintained








--
To unsubscribe e-mail to: users+unsubscr...@global.libreoffice.org
Problems? http://www.libreoffice.org/get-help/mailing-lists/how-to-unsubscribe/
Posting guidelines + more: http://wiki.documentfoundation.org/Netiquette
List archive: http://listarchives.libreoffice.org/global/users/
All messages sent to this list will be publicly archived and cannot be deleted

Reply via email to