Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.05.13;
Скачать: [xml.tar.bz2];

Вниз

Delphi и FoxPro-таблицы   Найти похожие ветки 

 
Елена   (2002-04-05 10:56) [0]

Что думают Мастера относительно работы Delphi и FoxPro-таблиц? Потребовалось перенести проект с Microsoft Visual FoxPro на Delphi и не знаю, через какой движок работать с таблицами.
Заранее благодарна.


 
Johnmen   (2002-04-05 11:11) [1]

BDE, ADO, ...


 
panov   (2002-04-05 11:12) [2]

Я, например, думаю резко отрицательно про работу с БД от VFP из Delphi. Просто работа с .DBF, еще куда ни шло. Лучше перенести структуру в оттдельные таблицы DBF, по моему мнению, или перенести в Paradox.


 
sniknik   (2002-04-05 11:18) [3]

если переносить базу на другую платформу то почему не MSSQL или хотя бы в Mdb. c Paradox не меньше проблем и в MSSQL есть но MSSQL хотя бы прогрессивнее :-)


 
Елена   (2002-04-05 11:35) [4]

Боюсь, структуру таблиц поменять не позволят :(


 
Елена   (2002-04-05 11:37) [5]

И формат тоже.


 
Val   (2002-04-05 11:39) [6]

>Елена © (05.04.02 11:35)
хм, говорят же не о структуре, а о типе БД?
>sniknik © (05.04.02 11:18)
а IB не полегче MS SQL будет? (имею ввиду администрирование, занимаемое место на диске...)


 
Val   (2002-04-05 11:40) [7]

>Елена © (05.04.02 11:37)
зачем тогда ушли от VFP?


 
sniknik   (2002-04-05 11:50) [8]

ну если так надо. (я своего начальства тоже не понимаю).
берете MS SQL в нем делаете линки на свои таблицы, в дельфи используете ADO для подключения к MS SQL. и структура и формат таблиц будут в целости :-). Mdb тоже линки позволяет.
(только это все идиотизм честное слово)
IB может и легче, я сним совсем не работал.


 
Slava   (2002-04-05 12:47) [9]

К VFP из Delphi только через ODBC


 
Елена   (2002-04-05 13:31) [10]

То есть используя компоненты со вкладки ADO?


 
Johnmen   (2002-04-05 13:34) [11]

Или со вкладки Data Access...


 
rvs   (2002-04-05 14:28) [12]

У меня подобная проблема.

Переходим с FPD + - VFP на Delphi + (MySql + Linux);

Причем все ПО будет преписано по новому, с полным ломанием старой структуры.
Тяжело, но будем бороться....(надеясь на Вашу помощь, мастера!!!)

И что меня радует для этого не надо ни ADO ни BDE.(Zeodbo)


 
Johnmen   (2002-04-05 14:41) [13]

>rvs © : Наоборот, должно быть легко - все делается заново, а не латается существующее !
А ADO и BDE не нужно и для др. связок :
Delphi+InterBase+Win,Delphi+InterBase+Linux, например.


 
Елена   (2002-04-05 15:28) [14]

Я через Table не могу даже открыть таблицу FoxPro :(


 
Johnmen   (2002-04-05 15:34) [15]

А как пытаешься открыть ?


 
sniknik   (2002-04-05 16:09) [16]

попробуй в ADOConnection.ConnectionString следующую строку (путь свой пропиши)

Provider=MSDASQL.1;Persist Security Info=False;Extended Properties="DSN=Visual FoxPro Tables;UID=;SourceDB=D:\;SourceType=DBF;Exclusive=No;BackgroundFetch=Yes;Collate=Machine;Null=Yes;Deleted=Yes;";Initial Catalog=d:\

должно получится.


 
VAleksey   (2002-04-06 17:00) [17]

Да уж не один я с таблицами VFP мучаюсь -).
> sniknik © получится то получится, но не думаю что она сможет что-ли бо изменить в этих таблицах (или это у меня только не получилось (?) ) Ща попробую твою строку.


 
VAleksey   (2002-04-06 17:14) [18]

Да уж не один я с таблицами VFP мучаюсь -).
У меня три вопроса по примерно такой же теме в конференции висит хоть бы кто ответил. А по новой вроде не прилично задавать -).
> sniknik © Не сработало. Не пошла твоя строка. В смысле все прекрасно открывается редактируется, но после Close | Open все данные на месте.

> Елена © Конечно ты не можешь открыть таблицу. Там есть поле мемо (файлик *.fpt ) убери мемо поле или исправь его на стринг и откроешь таблицу TTable - ом. Есть у меня компонентик который все эти таблицы VFP открываети редактирует прекрасно не нужно ADO (вроде и BDE тоже. не смотрел) если надо звони.
ЗЫ но по моему у него какие-то глюки с кодировкой. Не было времени разбираться.



 
sniknik   (2002-04-06 20:04) [19]

VAleksey уверен что строка виновата? а не изза других причин UpdateBatch например не делаеш или подобное? Я почему спрашиваю, у меня подобное работает правда таблици от Win FoxPro 2.5 (старый) но все одно драйвер тот же от Visual FoxPro. Или такая разница в таблицах?


 
VAleksey   (2002-04-07 05:47) [20]

Не знаю. Строка по моему не виновата конечно (а тогда что виновато (щас кто - нибудь скажет что это я виноват -))). UpdateBatch пытался делать , но вываливалась ошибка (одна и та же на Refresh и на UpdateBatch) - "Insufficient base table information for Updating or Refreshing" . И привет.


 
Anatoly Podgoretsky   (2002-04-07 09:02) [21]

sniknik © (06.04.02 20:04)
Между 2.5 и далее есть огромная разница, в 2.6 появилась поддержка языков, далее изменился и формат, BDE драйвер поддерживает тольуо версию 2.5, может работать и с 2.6 но ограничено, например если язык таблицы не Win-1251
Надо биться через АДО


 
sniknik   (2002-04-07 11:02) [22]

у меня пока слава богу такой проблемы не стоит чему я очень рад. а потом кто нибудь добьется и я у него спрошу на этом форуме :-)))))

VAleksey просьба. зашли мне табличку от VFP с индексами (с которой у тебя ничего не получается). Может всетаки попробую.

Anatoly Podgoretsky к таблицам от 2.5 я через адо подключался (см строку подкл. выше, примерно такая же) но тут наверно срабатывает принцип совместимости сверху вниз (раз уж разница есть и с поздними версиями у людей не получается).

и еще я просмотрел свой код и вот какая вещь. у меня нигде таблици не обновляются/изменяются из гридов и подобных (только рид онли). везде запись идет через SQL (INSERT, UPDATE ...). может в этом дело? Это конечно ограничивает возможности но мне именно так надо было.


 
dim-   (2002-04-07 12:02) [23]

а если исключить таблици из БазыДанных VFoxPro и сделать Export в формат FoxPro 2.x то потом можно использовать и стандартный BDE


 
Anatoly Podgoretsky   (2002-04-07 12:12) [24]

dim- © (07.04.02 12:02)
В какой именно?


 
sniknik   (2002-04-07 13:26) [25]

dim- © тогда в формат dBase проблем почти не будет но см. условие Елена © пишет что ни формат ни структуру ей поменять не дадут.
(не понимаю почему) если конечно нет требований как у меня программа должна работать а наша приблуда только делает отчеты и изредка меняет значение, другое. но у не вроде идет полная замена. я бы в этом случае взял бы базу Access и не мучался.


 
As1   (2002-04-07 16:43) [26]

Ой помню намучился
Лучше перейти на что-то другое
или использовать ADO или просто ODBC, форматы VFP и базу данных VFP, там хоть первичные ключи есть и можно фокспрошные программы запускать без присутствия фокса
Но лучше не связываться...


 
AlexSev   (2002-04-08 00:54) [27]

Народ, вытягивание данных из VFP 5.0&6.0 - вилы!
Мне пришлось двойной доступ делать, через нативные BDE драйвера
и через ADO (ODBC), т.к. некоторые специфические фоксовские поля (типа varbyte) просто не видятся BDE при том или ином способе подключения. Поэтому половину таблиц пришлось вкачивать через ADO, а половину - через родные драйвера BDE.


 
Марк Твен   (2002-04-08 09:21) [28]

Ado? Odbc ?...
Ирландцев просят не беспокоиться.()
На http://blackman.km.ru
давно лежит примерчик. Зовут NStruct


 
AlexZ   (2002-04-08 09:50) [29]

Помогите решить такую проблему:
Есть:
1. Есть программа 2-НДФЛ написанная на неизвестной версии Visual FoxPro и ее DBF файлы (Visual FoxPro). (Программа предназначена для формирования справок о доходах для сдачи в налоговую инспекцию).
2. Есть DBF файлы (DBase III), содержащие данные которые нужно закачать в DBF файлы программы 2-НДФЛ.
Проблема:
Delphi не открывает DBF (Visual FoxPro) файлы программы 2-НДФЛ.

Подскажите, что делать!


 
sniknik   (2002-04-08 10:28) [30]

to Марк Твен
NStruct Простая программа для просмотра и редактирования DBF файлов типа Foxpro 2.5 c индексами ......
не отвечает условиям вопроса. читай топик внимательней, непонятные места перечитывай до полного понимания :-))).
Не ирландец.

Люди ну пришлите мне ктонибудь таблицу VFP (с индексом) с которой у вас ничего не получается. Я уже созрел для того чтобы попробовать, а то так много говорят о проблемах с ними .....


 
pasha676   (2002-04-08 11:12) [31]

Ой. Ужас какой. Извините все читать не стал. Вообщем у меня работает база данных VFP из под Дельфи. Связка ДельфиПрога=>BDE=>ODBC=>База на фоксе. Проблем не замечал, кроме упаковки таблиц. Ее решил с помощью dll на фоксе написанной.
Почему у кого-то не получается не понимаю.


 
Slava   (2002-04-08 11:30) [32]

> pasha676

Все правильно. Только через ODBC. И нет проблем...


 
Zemal   (2002-04-08 11:31) [33]

> pasha676 (08.04.02 11:12)
Ну вообще как извращаться это ваши проблемы! :) Но чтоб так!!! Это круто! Использовать аж два провайдера! :) ODBC и BDE, конечно, работают вместе... но какие тормоза при этом? Да и зачем такое надо? Это происходит обычно, когда программеры старой закалки, плохо ориентирующиеся в современных технологиях ищат лазейку :). Если бы можно было найти ещё один провайдер баз данных, то и его включили бы :). Это очень смешно, когда один вагон два паравоза тянут :) гы-гы-гы... на такое извращение можно смотреть только падая со стула от смеха... А про ADO не слышали? :)


 
AlexZ   (2002-04-08 11:34) [34]

Извините чайника :)
Подскажите как подключаться через ODBC


 
sniknik   (2002-04-08 12:40) [35]

Нашлась добрая душа прислала таблицу, так что просьба снимается.
и в принципе никакой разници в работе через ADO c другими я на заметил.
использовал строку Provider=MSDASQL.1;Persist Security Info=False;Extended Properties="DSN=Visual FoxPro Database;UID=;SourceDB=d:\;SourceType=DBF;Exclusive=No;BackgroundFetch=Yes;Collate=Machine;Null=Yes;Deleted=Yes;";Initial Catalog=d:\
это последняя из пробных (начал с той что писал в начале топика, обе рабочие)
заморочка только с тем что при изменениях в гриде выдает ошибку (если это LiveQuery а не оторваный датасет, в датасете просто не сохраняет). В одной из версий ошибка звучит так "драйвер ODBC не поддерживает данный метод". (смысл понятен ищите другой драйвер)
Все методы SQL - UPDATE и т.д. можно использовать. При желании можно переписать стандартные методы апдета грида, посадить все на SQL и все будет работать.
Кому интересно могу выслать простой пример с реализованным 1-м UPDATE для 6 делфи. (вместе с таблицами будет прим. 100кб архива)


 
sniknik   (2002-04-08 14:15) [36]

P.S. при удалении индексов снялась и ошибка с изменениями в гриде. не поддерживается какойто метод работы с индексами? или индексы в присланной мне таблице были несовместимы с моим ODBC драйвером? (если ставить VFP он наверняка свои поставит а у меня от Microsoft-а)
короче проблем нет (это я для себя решил) если вдруг придется работать с таблицами VFP.


 
B   (2002-04-08 20:19) [37]

Ну вы, блин, все даёте ...
А никто не пробовал безBDE-шные движки для доступа к DBF ?
Их же куча - Apollo, AdvantageDatabase, Halcyon и т.д...
Уверен, шо хоть какой-то из них будет нормально работать с фокспрошной таблицей.
И кроме того, на клиенте ничего настраивать не придётся. А работать будет даже на "чистой" Вин95 !!!



 
Slava   (2002-04-09 08:46) [38]

> B

Уважаемый, все это не работает с базами от VFP.



 
Denis K.   (2002-04-10 11:27) [39]

Столкнулся с проблемой, что называется лицом к лицу!
Господа! Вы никогда не сделаете хорошую программу с базами от Fox через ODBC (не знаю насчет ADO, но думаю это не лучше). Попробуйте найти запись, даже в проиндексированной таблице размером 30Мегабайт(около 500 тыс. записей). На это уйдет несколько минут! А сам Fox тратит меньше секунды! Решение, по моему, должно сводится к работе через dll Fox-а - это наверняка и не вызовет проблем с совместимостью. Хочу попробовать компоненты доступа через CodeBase, но пока не не нашел библиотеку c4fox.dll (если у кого есть - не пожалейте, пришлите на e-mail).

Подводя итог - давайте искать (а может создавать общими усилиями)компонент, работающий через родные библиотеки VFP.

Буду рад любому общению с коллегами по данной проблеме, только пишите, пожалуйста, на e-mail.

С глубоким уважением,
Денис.


 
rex   (2002-04-10 13:01) [40]

У меня тоже была большая проблема с доступом к таблицам VFP. Как только я ни изощрялся, всё бестолку. Конечно, можно подключиться через ADO, но в у меня в Windows XP прога не захотела идти, хотя в 98 и Me всё путём (почти, поскольку в той базе есть главная таблица, которая от других вроде и не отличается - всё тот же индекс *.cdx и мемо - *.fpt, но не открывается). И вот тут недавно наткнулся на компонент FoxDSet1 который работает напрямую без BDE и ODBC, и индексы удалять не нужно (хотя я по привычке удаляю, на всякий случай). В общем хороший компонент, только к главной таблице так и не коннектится.



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

Форум: "Базы";
Текущий архив: 2002.05.13;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.55 MB
Время: 0.005 c
1-39708
Shiza
2002-04-24 19:09
2002.05.13
Перевод из C++ в дельфи


14-39854
kronprince
2002-04-03 11:20
2002.05.13
Русский help к Ghost Installer?


7-39867
vitnt2000
2002-02-15 06:14
2002.05.13
Управление окном IExplorer


1-39782
Explorer
2002-04-27 15:20
2002.05.13
EhLib


1-39722
SB.John
2002-04-27 11:04
2002.05.13
Как присвоить событию свою процедуру





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский