Спасибо за участие hogik!
(7) Это я смотрел! Остается как вариант. Но это серьезная весч применяется по большому счету для другого, не хотелось бы использовать слона чтобы просто прочитать файлы. К тому же не факт что она сможет прочитать, хотя так как ADS хорошо спровождается то думаю сможет... но не факт. По этому пока рассматриваю другие варианты.
(9) Вот это я пока не видел, а может пропустил в силу своего незнания. Сейчас буду смотреть, но точно не знаю как это подключить к 1с )))))
(11) А сам -то файл не левый ? Я читаю его FOX 6.0 - меняю структуру, ввожу новыне записи.
При попытке повторного открытия после выхода из FOXPRO 6.0 - вылетает c предлождением отправить отчет в MS. Что-то странное.
Не понял вопроса.
Через ADO не получается ?
Или просто нужен пример строки соединения для ADO , чтобы обратиться к dbf ?
- Поиск на ИС или google "ADO строка соединения dbf" . Должны быть примеры.
(8) Не просто dbf а Visual FoxPro причем раньше файлы этого формата читались, сейчас после обновления базы (разработчики перешли на Visual FoxPro 9)... после этого 1с, например, просто вылетает с ошибкой, те примеры подключения через ADO, что я нашел так же выдают ошибки. Причем это проявляется не для всех файлов. Разработчики высказали мнение что это может быть связано "с полями формата Visual FoxPro 9" (цитата)
P.S. Вот пример пустого файла который не могу открыть:
(15) Опять спасибо! Почитаю. Владимир с меня Вам точно причетается ;)
Кстати, дело немного сдвинулось с места я смог прочитать многие файлы, кроме (как обычно) самого важного. При его открытии выдает ошибку типа "Microsoft OLE DB Provider for Visual FoxPro): Variable 'KLN_RPC' is not found.", причем имя файла R_RPC, скинуть его не могу, там слишком много ценной информации. Не думал что в dbf есть переменные *чешу репу*.
P.S. Кстати инфа на первый взгляд довольно интересная, думаю не только мне пригодиться
(20) Ну это было первой моей мыслью... вообщем при переименовании в любое имя все равно выдает абсолютно ту же ошибку (включая и имя переменной). Другие файлы с подобными именами открывает...
Я строку коннекта максимально упростил... сейчас с ней ковыряюсь... может что недоуказал )))
(17)(18)(19) Ну когда искал информацию я узнал, что у DBF вообщем то нет четкого стандарта, а учитывая что foxpro детище мелкософта... ну сами понимаете...
(21)
Скачайте, установите "Advantage Data Architect 9.10" и гляньте таблицу в части имен и типов полей. Сам сервер можно не устанавливать - оно нормально работает в режиме "локал сервер" (бесплатно). Или сделайте таблице команду ZAP ;-) и положите на форуме. Я скачаю и гляну...
(22) Ну DBF Viewer 2000 нормально юзает этот Файл, в нем я посмотрел уже поля, там даже намека нет на подобные поля...
Я с помощью него усек файл, вот:
в таблице R_RPC в индексном выражении переменная 'KLN_RPC'
само поле NAM длинное, вроде 254 знака
чтобы индекс по этому полю был не длинным, сделали эту переменную
переменная определяется в коде программе
для большинства пользователей KLN_RPC = 10
короче создай публичную переменную, инициализируй ее и должно все открыться
Может кто подскажет как создать переменную?
Код примерно такой:
Каталог = "I:\alg\r\";
DBConn = Новый COMОбъект("ADODB.Connection");
DBConn.Open("Provider=VFPOLEDB.1;Data Source=" + Каталог+ ";");
//DBConn.Execute("*вот тут мне кажется надо объявлять переменную*");
DBFBase = DBConn.Execute("Select * from [LLL.DBF]");
Не знаю как в 9-м Fox'e
а вот в 2.х можно было в индексе применить функцию. Соответственно наверно можно и публичную переменную.
Т.е. выражение индекса сделали подобно LEFT(NAM,KLN_RPC).
Что с этим делать в 1С, понятия не имею. Проще сделать копию файла и пересоздать индекс без таких выражений.
(28) Мне надо работать с рабочим файлом... делать это надо постоянно... разовые решения не подходят.
Чувствую что задача должна решатся просто... знать бы как )))