Microsoft.Jet.OLEDB.4.0 в 1С не работает, а в Excel всё ок.

1. MadChild 04.04.21 09:19 Сейчас в теме
Доброго дня.
Приведенный код работал успешно. Но после переезда на новый ПК перестал.

1С:Предприятие 8.3 (8.3.18.1289)

Функция ВыполнитьЗапросКБазе(СтрокаЗапроса)       Экспорт
	Соединение = Новый ComObject("ADODB.Connection");      
    Соединение.ConnectionTimeout = 600;		
	Соединение.CursorLocation = 3;
	Попытка     
		Соединение.Open("Provider=Microsoft.Jet.OLEDB.4.0;" +
		               "Data Source=" + КаталогИБ() + ";" +
					   "Extended Properties=""DBASE IV;"";"); 
		Соединение.CursorLocation = 3;					   
	Исключение     
		Сообщить("Невозможно установить соединение",СтатусСообщения.Важное);     
		Соединение=0;     
		Возврат -1;
	КонецПопытки;	
	
	Команда = Новый COMОбъект("ADODB.Command");
	Команда.ActiveConnection = Соединение;
	//текст команды - SQL запрос. Имя таблицы, в которой идет выборка это имя dbf файла без расширения
	Команда.CommandText  = СтрокаЗапроса;
	
	
	НаборЗаписей = Команда.Execute();
	Возврат НаборЗаписей; //перебор записей, пусть, например, в dbf-е есть поле Name    
	
Показать


Выдаёт ошибку: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (ADODB.Connection): Не удается найти указанный поставщик. Вероятно, он установлен неправильно.

Интересно то, что аналогичный провайдер отлично работает в Excel:
Dim cn As New ADODB.Connection, rs As New ADODB.Recordset
Const cstrBase As String = "E:\1С_Bases\Суховей 2019 (8.2)\" 'Директория с файлами базы данных
With cn
    .Provider = "Microsoft.Jet.OLEDB.4.0;"
    .ConnectionString = "Data Source=" & cstrBase & ";Extended Properties=dBase IV"
    .Open
    Set rs = .Execute("SEL ECT * FR OM logist") ' InvN - одно из полей таблицы Invoices (файл Invoices.dbf)
   Cells(1, 1).CopyFromRecordset rs
    .Close
End With
Показать


Подскажите куда копать?
Найденные решения
3. spacecraft 04.04.21 09:35 Сейчас в теме
(1) как вариант - разная битность приложений.
1С 32бит - Excel 64бит, или наоборот.
MadChild; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. MadChild 04.04.21 09:23 Сейчас в теме
1С:Предприятие 8.3 (8.3.18.1289)
3. spacecraft 04.04.21 09:35 Сейчас в теме
(1) как вариант - разная битность приложений.
1С 32бит - Excel 64бит, или наоборот.
MadChild; +1 Ответить
4. MadChild 04.04.21 10:25 Сейчас в теме
(3)
Действительно! Поставили 32 бит 1С и всё стало работать.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот