2 / 2 / 0
Регистрация: 26.04.2010
Сообщений: 134

Delphi+ADS+DBF

15.09.2017, 15:18. Показов 2200. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет.

Возник такой вопрос. Есть делфи и компоненты ADS-a. Работаю с dbf-файлами. Делаю запрос к dbf-файлу. Если dbf-файл лежит на локальном диске - все прекрасно работает. Если dbf-файл выкладываешь на сетевой (подключенный например "h:\1") диск выдает сообщение в стиле:

Error 7200: AQE Error: State = HY000; NativeError = 5041; [iAnywhere Solutions][Advantage SQL][ASA] Error 5041: The requested object was not found.
vm_hist - link object is not supported on free connection. Table name: dbf


Настройки компонента TAdsConnection1 в части:
AdsServerTypes:
stADS_REMOTE
stADS_LOCAL
stADS_AIS

ничего не дали.

Добавлю что набор файлов
ADSLOCAL.CFG
ace32.dll
adsloc32.dll
axcws32.dll
ADS.INI

Присутствуют в каталоге windows\system32
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
15.09.2017, 15:18
Ответы с готовыми решениями:

DELPHI+DBF
Добрый день. Задача звучит так: Берём DBF файл и добавляем новые столбцы. Входные ДБФ могут быть с разным количеством столбцов. ...

DBF и Delphi
Вопрос новичка: как создать программу на Делфи каторая будет просматривать и редактировать(к примеру пользователь выбрал колличество товара...

DELPHI и DBF
люди выручайте делаю программу на DELPHI с использованием баз данных которые были сделаны в программе Visual FoxPro подключил вроде успешно...

11
 Аватар для drvolodko
224 / 68 / 33
Регистрация: 23.05.2014
Сообщений: 752
15.09.2017, 17:04
Доступ у пользователя программы на сетевой ресурс есть для записи? При открытии dbf вроде как создается временный файл в том же каталоге. А ADS-компоненты могут обращаться к сети? Быть может ADS вместо H:\1 необходимо указывать UNC путь? В стиле \\server\share\1. Попробуйте еще в конце пути слэш добавлять: H:\1\
0
2 / 2 / 0
Регистрация: 26.04.2010
Сообщений: 134
15.09.2017, 17:19  [ТС]
Доступ на запись на сетевом диске однозначно есть.

Путь в стиле unc я пробовал. в этом случае до TADSQuery дело не доходит. TADSConnection не подключается выдавая ошибку.

На счет "слеша в конце" не помню пробовал ли. В понедельник попробую, но врядли поможет. Учитывая что на локальном все работает без слеша - врядли данный вариант поможет.

На счет могут ли ads обращаться к сети честно говоря не знаю. Те же TQuery никогда не делали разницу между локальным путем и сетевым диском. А в ADS компонентах наверняка в основе взят класс TQuery..почеиу такая реакция в ADS компонентах абсолютно не ясна..
0
 Аватар для drvolodko
224 / 68 / 33
Регистрация: 23.05.2014
Сообщений: 752
16.09.2017, 10:06
Используйте Query компоненты. Они нормально работают с dbf. А почему бы Вам не перейти от dbf к более живым и современным вариантам? Тем более, что у Вас есть сеть. Например, MS SQL Express совершенно бесплатен. Импортируйте данные и наслаждайтесь
0
2 / 2 / 0
Регистрация: 26.04.2010
Сообщений: 134
16.09.2017, 11:42  [ТС]
Объясню мою необходимость. Есть данные из некоторых программ (не мной написанных) давно написанные и работающие на dbf. Их переписывать разрабы пока не собираются. Так же есть программы работающие с данными на СУБД Oracle. Актуальные данные в dbf-файлах. Для поддержания актуальности данных в Oracle я написал программу закачки из dbf в Oracle. Т.к. данные из dbf я собираю из нескольких разных "dbf" программ то кодировка там разная. плюс есть необходимость обработки записей удаленных. Оба этих момента позволяет решить набор компонент ADS. Уже программа написана как вдруг вылезла проблема с файлами в сети. Я конечно знаю обходные пути решения данного вопроса..вроде копирования на локальный диск..но мне хотелось найти нормальное решение данного вопроса с этими компонентами без всяких обходных решений
0
Айлурофил
 Аватар для Massaraksh7
516 / 449 / 112
Регистрация: 27.05.2017
Сообщений: 2,716
Записей в блоге: 5
16.09.2017, 11:52
C dbf-файлами из Delphi есть возможность работы напрямую через BDE.
0
5989 / 4564 / 1096
Регистрация: 29.08.2013
Сообщений: 28,206
Записей в блоге: 3
16.09.2017, 12:25
для этого нужно BDE ставить
а если уж ставить то может лучше компонент для dbf?

какая у вас версия delphi?
0
2 / 2 / 0
Регистрация: 26.04.2010
Сообщений: 134
16.09.2017, 13:11  [ТС]
Господа! Я знаю что такое BDE-шные компоненты. если уж вы их так советуете, поведайте, как в пределах одной екзешки работать с dbf-файлами разной кодировки одновременно (в данном случае имеется в виду 2 выборки в разных query и что бы в обоих query информация отображалась в читабельном виде а не крякозябрами. В каждом query набор dbf-файлой своей кодировки) и как делать выборку из dbf, что бы и удаленные записи тоже отображались? Такие вещи BDE-компоненты позволяют?
0
Айлурофил
 Аватар для Massaraksh7
516 / 449 / 112
Регистрация: 27.05.2017
Сообщений: 2,716
Записей в блоге: 5
16.09.2017, 13:16
1. Перекодировать можно и после чтения.
2. Насколько я помню, удалённые записи в dbf ничем не отличаются от не удалённых, кроме символа * в начале записи.
0
2 / 2 / 0
Регистрация: 26.04.2010
Сообщений: 134
16.09.2017, 15:55  [ТС]
Мы как то удалились от исходного вопроса. Устраивать танцы с бубном там где все проще решается я не вижу смысла. Интересно было бы мнение тех кто с ADS компонентами работал. я мог бы на bde компонентах на тему кодировки тоже обходными путями решить вопрос, в стиле сделать 2 exe-шки, между запуском которых например меняется cfg для bde, задавая таким образом нужную кодировку. но это не легче вариант чем копировать на локальный диск dbf файлы. по поводу удаленных записей..как мне информация про * поможет? открывать файл вручную и делать то что bde делает? где тут упрощение?
0
2 / 2 / 0
Регистрация: 26.04.2010
Сообщений: 134
18.09.2017, 09:15  [ТС]
В общем решил я эту проблему.

Нашел более новую версию..поковырялся в инете ..практически все ссылки на компоненты устарели, а тут нашел сайт где есть версия куда новее чем я мог предположить. Там эту проблему разрабы решили. Кому интересно:
http://devzone.advantagedataba... Platform=6 - вот ссылка.

Если еще есть необходимость работы с dbf файлами в частности и нужны функции работы с удаленными файлами, менять кодировки файлов на ходу..можете попробовать. Да и инсталяции файлов-поддержки для этой вещи сводится к копированию нескольких файлов..куда проще чем BDE.
1
 Аватар для MyEternity
97 / 97 / 25
Регистрация: 25.04.2016
Сообщений: 525
18.09.2017, 17:58
Цитата Сообщение от shivara52 Посмотреть сообщение
Если еще есть необходимость работы с dbf файлами в частности и нужны функции работы с удаленными файлами, менять кодировки файлов на ходу..можете попробовать. Да и инсталяции файлов-поддержки для этой вещи сводится к копированию нескольких файлов..куда проще чем BDE.
BlockRead, BlockWrite будут работать без проблем
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.09.2017, 17:58
Помогаю со студенческими работами здесь

Работа с DBF в delphi
Всем доброго времени суток. Ни когда не работал с .dbf но появилась такая задача чтобы из 3-х 4-х dbf файлов собрать один причем из каждого...

база DBF в delphi
Народ хелп. как сделать в делфи чтобы запрос отображадся в другом окне, есть база которая просто открывается в окне DBGrid. после открытия...

Delphi и dbf таблица
Доброго времени суток, господа, возникла потребность отредактировать таблицу FoxPro формата *.dbf c Memo полями при подключении через...

Экспорт данных в DBF (перевод на Delphi)
Добрый день! Перевожу программу в Delphi XE2 проблемма с экспортом данных в DBF базу. А конкретно - не грузятся 2 поля: NKONTR и NKONTRV....

Как импортировать dbf таблицу в Базу Delphi 7
Нужно что бы в Delphi 7, при нажатие кнопки открыть БД открывала базу dbf из указанного места! Помогите пожалуйста, срочно нужно!


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

Новые блоги и статьи
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определенном условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru