Schema File to import ASCII table into TTable component in Delphi 6 not working correctly.

Hi Experts,

I am using the following schema file to populate a TTable with the data in ascii file 'test2.txt", the first three fields are imported. The third field contains extraneous characters unless the data is the full length of the field definition.  no more data from the record is displayed.

I am under the impression that the ascii file needs to be fixed width in this scenario, is this true? Is there an error in my schema definition?
Also when I define the float fields does the length include the decimal point?

If I make the text file fixed width will it help me at all?

I need help with this urgently so 500 points up for grabs


[test2]
Filetype=VARYING
Delimiter="
Separator=,
CharSet=ascii
Field1=Number1,number,3,00,00
Field2=Number2,number,4,00,03
Field3=Desc,Char,12,00,07
Field4=Number3,number,2,00,19
Field5=Number4,number,2,00,21
Field6=Number5,float,6,2,23
Field7=Number6,float,6,2,29


TEST2.TXT

900,3820,"Dive kayak”,24,16,1356.75,3999.95
900,3820,"Dive kayak2”,24,16,1356.75,3999.95
900,3820,"Dive kayak24”,24,16,1356.75,3999.95
900,3820,"Dive kayak”,24,16,1356.75,3999.95
900,3820,"Dive kayak”,24,16,1356.75,3999.95
900,3820,"Dive kayak”,24,16,1356.75,3999.95
900,3820,"Dive kayak”,24,16,1356.75,3999.95
900,3820,"Dive kayak”,24,16,1356.75,3999.95
900,3820,"Dive kayak”,24,16,1356.75,3999.95
900,3820,"Dive kayak”,24,16,1356.75,3999.95
900,3820,"Dive kayak”,24,16,1356.75,3999.95
900,3820,"Dive kayak”,24,16,1356.75,3999.95
900,3820,"Dive kayak”,24,16,1356.75,3999.95




seancaddellAsked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

x
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

kretzschmarCommented:
>I am under the impression that the ascii file needs to be fixed
>width in this scenario, is this true?
no, its a varying content

>Is there an error in my schema definition?
seems not so

>Also when I define the float fields does the length include the
>decimal point?
should be included

>If I make the text file fixed width will it help me at all?
no

sorry can't test it myself yet,
but it looks proper

meikl ;-)


seancaddellAuthor Commented:
OK,

I have tested this on a blank form with only TTable, TDatasource and DBGrid, only the first three fields appear.  If I modify the layout of my data as follows then all the fields are displayed although the last field again contains extraneous data.

900,3820,24,16,1356.75,3999.95,"Dive kayak”
900,3820,24,16,1356.75,3999.95,"Dive kayak2”
900,3820,24,16,1356.75,3999.95,"Dive kayak24”
900,3820,24,16,1356.75,3999.95,"Dive kayak”
900,3820,24,16,1356.75,3999.95,"Dive kayak”
900,3820,24,16,1356.75,3999.95,"Dive kayak”
900,3820,24,16,1356.75,3999.95,"Dive kayak”
900,3820,24,16,1356.75,3999.95,"Dive kayak”
900,3820,24,16,1356.75,3999.95,"Dive kayak”
900,3820,24,16,1356.75,3999.95,"Dive kayak”

The problems seems to be with the char field, if I add another char field after Desc called Desc1 no data for this field is displayed.


[test2]
Filetype=VARYING
Delimiter="
Separator=,
CharSet=ascii
Field1=Number1,number,3,0,0
Field2=Number2,number,4,0,3
Field3=Number3,number,2,0,7
Field4=Number4,number,2,0,9
Field5=Number5,float,7,2,11
Field6=Number6,float,7,0,18
Field7=Desc,Char,12,0,25
Field8=Desc1,Char,12,0,37

DATA

900,3820,24,16,1356.75,3999.95,"Dive kayak”,"SMALL DINGY"
900,3820,24,16,1356.75,3999.95,"Dive kayak2”,"SMALL DINGY"
900,3820,24,16,1356.75,3999.95,"Dive kayak24”,"SMALL DINGY"
900,3820,24,16,1356.75,3999.95,"Dive kayak”,"SMALL DINGY"
900,3820,24,16,1356.75,3999.95,"Dive kayak”,"SMALL DINGY"
900,3820,24,16,1356.75,3999.95,"Dive kayak”,"SMALL DINGY"
900,3820,24,16,1356.75,3999.95,"Dive kayak”,"SMALL DINGY"
900,3820,24,16,1356.75,3999.95,"Dive kayak”,"SMALL DINGY"
900,3820,24,16,1356.75,3999.95,"Dive kayak”,"SMALL DINGY"
900,3820,24,16,1356.75,3999.95,"Dive kayak”,"SMALL DINGY"

500 points to the solution provider.
kretzschmarCommented:
this quote: ”
is not this quote: "

look sharp

replace it, and it works perfect

meikl ;-)
Fundamentals of JavaScript

Learn the fundamentals of the popular programming language JavaScript so that you can explore the realm of web development.

kretzschmarCommented:
puh, this quote can't displayed :-(
replaced by browser (not my language, i guess)

just the double-quote behind kayak is not an american "

thats why you get trouble

here the data-replacement:

900,3820,24,16,1356.75,3999.95,"Dive kayak","SMALL DINGY"
900,3820,24,16,1356.75,3999.95,"Dive kayak2","SMALL DINGY"
900,3820,24,16,1356.75,3999.95,"Dive kayak24","SMALL DINGY"
900,3820,24,16,1356.75,3999.95,"Dive kayak","SMALL DINGY"
900,3820,24,16,1356.75,3999.95,"Dive kayak","SMALL DINGY"
900,3820,24,16,1356.75,3999.95,"Dive kayak","SMALL DINGY"
900,3820,24,16,1356.75,3999.95,"Dive kayak","SMALL DINGY"
900,3820,24,16,1356.75,3999.95,"Dive kayak","SMALL DINGY"
900,3820,24,16,1356.75,3999.95,"Dive kayak","SMALL DINGY"
900,3820,24,16,1356.75,3999.95,"Dive kayak","SMALL DINGY"

meikl ;-)

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
seancaddellAuthor Commented:
Well spotted, I take my hat off to you, you've been a great help, I'll be calling on you again sometime............
NarusegawaCommented:
Just wondering how on earth you imported a CSV into a TTable anyway? I'm trying to do this myself.
seancaddellAuthor Commented:
Have a look at all the questions I have asked (there are only three), I started out wanting to import text into a table but this took a very long time, my ultimate aim was to get the text file into access and have successfully done that and it's very quick.  You will hve to use a shema file to import ascii files into Ttables, there is plenty of info at experts regarding this.

It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Delphi

From novice to tech pro — start learning today.