Вниз
Скачать: CL | DM;

Считывание dBase таблиц   Найти похожие ветки 

← →
Катерина ©   (2002-05-29 14:20) [0]

У меня возникла след. ситуация: я считываю dBase таблицу, где указана точность поля - 6, а длина - 11. BDE - настроен (BCDEnable = TRUE), DataBaseName b TableType для таблицы указаны. Но при считывании берется только 4 знака, 2 последних десятичных знака пропадает. Таблица сформирована программой на Delphi, в Excel`e и пр. просматривается, 6 дес. знаков присутствует. Что делать?


← →
Lusha ©   (2002-05-29 15:25) [1]

Привет, Катюх... :)
Давай по порядку... Кусочек кода, значения Databasename и настройки соответствующих TDatabase компонент...


← →
Катерина ©   (2002-05-29 17:05) [2]

Значит по порядку.
BDE, алиас dBASE IV Files:
type STANDARD
default driver DBASE
enable BCD TRUE
path пусто

Конфинурация DBASE:
ver. 4.0
type FILE
lang. "ascii" ANSI
level 5
mdx bl. 1024
memo...1024


...
with Table do
begin
Active := FALSE; Tablename := OpenDialog.filename;
DataBaseName := "dBASE IV Files"; TableType := ttDBASE;
Active := TRUE;

f_lat := Table.Fields.FindField("Latitude");

MemSize := RecordCount*SizeOf(real);
GetMem(Ylat,MemSize);
for i := 1 to RecordCount do
Ylat^[i] := f_lat.AsFloat;
close;
end;
...
FreeMem(Ylat,MemSize);
end;


и при просмотре все Ylat^[i] имеют 4 знака после точки, хотя в таблице (я смотрела) присутствую все 6!


← →
Lusha ©   (2002-05-29 17:15) [3]

А использовать double вместо real не пробовала?


← →
Катерина ©   (2002-05-29 17:23) [4]

А разве типы Real и Double не эквивалентны, начиная с 4 версии delphi?


← →
Lusha ©   (2002-05-29 17:34) [5]

Не знаю, не грузился... Я его и в первой не использовал...
А при помощи чего ты анализируешь значения Ylat^[i]?


← →
Катерина ©   (2002-05-29 17:42) [6]

Я их потом снова записываю в другую таблицу (поле настроено N(11,6)) или текстовый файл (формирую каталог) (...FormatFloat("0.000000",Ylat^[i])), а у меня везде 2 последние цифры - 0. И в Watch`e тоже смотрела - 4 цифры после после точки.


← →
Lusha ©   (2002-05-29 17:45) [7]

Пару чисел для примера кинь... Будет время - посмотрю...


← →
Катерина ©   (2002-05-29 17:50) [8]

Брошу пример на мыло. Ладно?



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.015 c
3-77273
z00z
2002-05-29 17:40
2002.06.24
DBGrid.Columns может мне помочь?


4-77671
AFROLOV
2002-04-25 17:24
2002.06.24
А можно ли без хуков перехватывать нажатие клавиш для своей проги


3-77312
vopros
2002-05-31 13:27
2002.06.24
Sql запрос. Сорри думать некогда над ним.Помогите


1-77399
ValeX
2002-06-13 14:49
2002.06.24
CheckBox in StringGrid


7-77628
Fredericco
2002-03-13 21:17
2002.06.24
Этот вопрос уже задавался, но все же... Как мне работать с СОМ портом без ассемблера?




   Наверх