![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ADO, FoxPro, значения меньше нуля ... [D6, dBase, FoxPro]
Alex_1 © (2005-12-12 11:02:00)ADO неправильно читает из фоксовой таблицы отрицательные числа!
Строка подключения:
dbMag.ConnectionString:=
'DSN=Таблицы Visual FoxPro;UID=;PWD=;SourceDB='+
PathTable+';SourceType=DBF;Exclusive=No;BackgroundFetch=Yes;'+
'Collate=Machine;Null=Yes;Deleted=Yes;';
Запрос:
SELECT
A.isnd AS ARTICUL,
B.l5 AS model,
A.naidet as name2,
C.naim as pr_naim,
C.COUNTRY as pr_strana,
A.izm as MESURIMENT,
d.kol as kol,
d.rzrv,
d.croz as pricerub
from post92 a,
spr_mod b,
spr_izg c,
reg d
where
a.isnd=d.isnd
and d.pol = :mag1
and a.mdl=b.mdl
and a.izgot=c.isn
order by a.isnd
В таблице reg поле KOL отбрасываются МИНУСА!!! То есть, в таблице kol=-100, в результате запроса 100.
BDE не катит: Invalid index descriptor.
Хотя с отдельными таблицами (reg, spr_izg) BDE работает, но с остальными - нет.
З.Ы. Причем, минусов нет даже если читаю поле как строку:
kolvo:=MyQueryKol.AsStringkolvo тоже БЕЗ МИНУСА!!!!
ANB (2005-12-13 18:31:00) [1]
> Alex_1234 © (13.12.05 14:24) [11]
> Используем 2000PRO.
> Причем именно с таблицами FOX`а. С dBase-таблицами - все
> ок
Причем именно, с досовскими.
Виталий Панасенко (2005-12-13 17:12:00) [2]Честно, ни разу с таким не сталкивался.. И на 95, и на 98, и на 2000, и на ХР - работает без проблем
Alex_1234 (2005-12-13 14:24:00) [3]Используем 2000PRO.
Причем именно с таблицами FOX`а. С dBase-таблицами - все ок
Виталий Панасенко (2005-12-12 17:50:00) [4]
> Alex_1 (12.12.05 16:48) [9]
> И у меня запрос вида
> select * from reg where kol<0
> вытаскивает только те записи у которых kol меньше нуля.
> Но при попытке использовать, да что там использовать, просто
> показать в гриде - нету минусов.....
Не знаю.. Все у меня показывает и дает с данными работать.. Драйвер поменяй, система хоть какая ? В ХР не идет в установке VFPODBC.DLL рабочая... Я по крайней мере не встречал такой инсталлятор.. Приходилось самому ставить.. Может, ты какую-то "бяку" используешь ?
Alex_1 (2005-12-12 16:48:00) [5]И у меня запрос вида
select * from reg where kol<0
вытаскивает только те записи у которых kol меньше нуля. Но при попытке использовать, да что там использовать, просто показать в гриде - нету минусов.....
Alex_1 (2005-12-12 16:48:00) [6]Удалено модератором
Виталий Панасенко (2005-12-12 16:18:00) [7]Пуск-Настройка-Панель управления-Администрироваени(для НТ/2000/ХР)-Источники данных ODBC(32)
Добавить-Miscrosoft FoxPro VFP driver(*.dbf)-Готово.. Обзываешь источник данных, указываешь Free table directory.. У меня все прекрасно работает с таким видом запроса.
select * from saldo where ish<0
Alex_1 (2005-12-12 14:50:00) [8]Да про чтение из таблиц напрямую - в курсе, делал...но такая тоска собирать НУЖНУЮ мне инфу из 4 таблиц, да еще и с условиями.....
А может кто АНГЛОЯЗЫЧНЫЙ что-то читал в импортных сайта,а? Подскажите ссылочку, а там с помощью translite.ru, какой-то матери, танцев с бубном разберусь.......
ANB (2005-12-12 14:37:00) [9]Видел я уже эту граблю. Поборол чтением из таблицы напрямую. Но тогда SQL не поюзаешь . . .
Alex_1 (2005-12-12 14:24:00) [10]НЕ КАТИТ!!!
ТОЛЬКО ЧТО ПОПРОБОВАЛ - НЕ ТАЩИТ ЭТА СВОЛОЧЬ ОТРИЦАТЕЛЬНЫЕ ЗНАЧЕНИЯ!!!!!!
Alex_1 (2005-12-12 14:22:00) [11]Wer ist das?
Другая строка подключения???
Ту строку подключения я и формировал как ODBC-подключение...
Может что-то не так настроил?
Подскажите, плиз....
Виталий Панасенко (2005-12-12 12:37:00) [12]
> Хотя с отдельными таблицами (reg, spr_izg) BDE работает,
> но с остальными - нет.
>
> З.Ы. Причем, минусов нет даже если читаю поле как строку:
>
> kolvo:=MyQueryKol.AsString kolvo тоже БЕЗ МИНУСА!!!!
Катит.. Через ODBC
Alex_1 (2005-12-12 11:05:00) [13]Вопрос: как лечить, то?
Вариант
iif(d.kol<0,0,d.kol) as kol,
работает, но ДОЛГО!!!