Имя: Пароль:
1C
1С v8
Внешние источники данных
,
0 sanja26
 
27.10.12
17:17
хочу подключить файл Эксель как внешний источник данных.

Через выбор драйвера конструктором пишет ошибку - "Возможно драйвер не позволяет получать параметры строки соединения"

Прописываю строкой "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=МойКаталог\myExcel2007file.xls;
Extended Properties="Excel 12.0 Xml;HDR=YES";" тоже ошибка

http://s1.ipicture.ru/uploads/20121027/48KH1i30.png

В источниках данных:

http://s1.ipicture.ru/uploads/20121027/jUVQ84FA.png
1 sanja26
 
27.10.12
17:18
что не так? не установлен драйвер для Экселя?
2 Живой Ископаемый
 
27.10.12
17:43
Я сейчас возможно глупость скажу, ибо лень задумываться сильно.
Но ВИД использует ОДБС драйвера а не ОЛЕДБ
поэтому писать нужно так:
Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DBQ=C:\MyExcel.xlsx;

http://www.connectionstrings.com/excel-2007#excel-2007-odbc
3 sanja26
 
27.10.12
17:49
(2) не ругнулся, но ничего и не произошло
4 Живой Ископаемый
 
27.10.12
17:51
создай ДСН, например файловый.. заюзай его. в ОДБС источниках данных можно включить лог, будешь знать что происходит.
5 sanja26
 
27.10.12
18:02
(4) если б я разбирался во всех этих ДСН))

че-то файловый ДСН просит указать путь к источнику данных и указать сам файл-источник ODBC. А эксель файл он не считает таковым)
6 Живой Ископаемый
 
27.10.12
18:13
гугляж помогает
7 hhhh
 
27.10.12
19:28
(5) вот это "Provider=Microsoft.ACE.OLEDB.12.0" поищите в реестре. Возможно у вас там не 12.0, а другая версия.
8 sanja26
 
27.10.12
19:51
9 PiotrLoginov
 
27.10.12
20:37
Какая-то каша. Кто-то говорит про ОЛЕДБ-драйвера, кто-то про ОДБС . Имхо, надо поискать рабочие примеры в нете и определиться все-таки со способом подключения.

Сам, когда приходилось подключаться к сайту, использовал ОДБС. В теме в этой особо не шарил, да и в памяти мало что осталось, но помню, что скачивал/устанавливал целый пакет драйверов, после чего в системе внушительный набор: http://s2.ipicture.ru/uploads/20121027/RfMekMNf.jpg .

Обрати внимание: драйвер для файлов xls имеет соответствующее название. Удачи.
10 oleg_km
 
27.10.12
20:39
(10) по тексту выдаваемой ошибки ВИД в 1С работает на ODBC,  поэтому берет только драйверы ODBC
11 hhhh
 
27.10.12
22:56
(8) посмотрел у нас

Provider=Microsoft.Jet.OLEDB.4.0; - такая строка.
12 Живой Ископаемый
 
27.10.12
23:01
2(11) это для аксесса. джет - это его скл-сервер.
13 hhhh
 
27.10.12
23:25
(12) для акцесса другой

Driver={Microsoft Access Driver (*.mdb)};Dbq=

а для екселя именно с джетом, причем здесь на форуме я это нашел поиском.
14 Живой Ископаемый
 
27.10.12
23:27
2(13) так все-же.. используется ОЛЕДБ провайдер для внешнего источника данных?
15 Живой Ископаемый
 
27.10.12
23:29
2(13) А это не ОЛЕДБ, это ОДБС драйвер
===
да, и для Асеса и для екселя ниже 2007 Джет, все верно.
http://www.connectionstrings.com/access
http://www.connectionstrings.com/excel
16 hhhh
 
27.10.12
23:34
да, ниже 2007.
17 Живой Ископаемый
 
27.10.12
23:46
короче.
file:///C:/Program%20Files%20(x86)/1cv82/8.2.17.128/docs/ru/V8Update.htm
Реализована возможность получать данные из внешних источников данных. Для доступа используется интерфейс ODBC. Для доступа к данным внешних источников можно использовать объектную модель, язык запросов и систему компоновки данных. Реализована стандартная функция Управление внешними источниками данных. Реализован объект метаданных ВнешнийИсточникДанных.



так что без пользы использовать ваши ОЛЕДБ драйвера они просто не станут работать
18 hhhh
 
28.10.12
00:01
(17) да, блин. Копал эти внешние источники в 8.2.15. И что-то не разобрался до конца. А теперь оказывается, они там были недоделанные.
19 Живой Ископаемый
 
28.10.12
00:06
ну так зачем нужно было нести пургу?
Они доделанные ровно настолько насколько задокументированы и насколько доделаны ОДБС драйвера используемые для них.
20 hhhh
 
28.10.12
01:04
(19) не было драйверов. Суть внешнего источника - драйвер указываешь сам в строке соединения. Например: Provider=Microsoft.Jet.OLEDB.4.0;

и это работало. Запросы выполнялись. Но только без соединений.
21 sanja26
 
28.10.12
01:11
(20) смысл тогда в запросах без соединений?
мне надо соединить файл с данными в базе и вывести в отчет. А так просто поля из экселя выводить в скд что-ли?
22 Живой Ископаемый
 
28.10.12
01:13
2(21) блин, не те соединения...
Да и все равно в одном запросе не может быть использован ВИД и данные из базы.
правда можно  сделать запрос к ВИДу, выгрузить в ТЗ, тз передать как параметр в другой запрос, где из нее будет подготовлена ВТ в первом запросе пакетного запроса, и потом уже во втором запросе пакетного запроса ты ее соединишь с данными из базы.

2(20) м... ок, я проверю.
23 Живой Ископаемый
 
28.10.12
01:24
хотя.. что за соединения имелись в виду в (20)

Проверил. враки. Не работает. и (20) не могло работать.
http://screencast.com/t/rWwx8MTqn
24 Живой Ископаемый
 
28.10.12
01:32
а вот так работает


http://screencast.com/t/7m27tHI4lmS
25 PiotrLoginov
 
28.10.12
02:35
Вот здесь: http://www.microsoft.com/en-us/download/details.aspx?id=23734  даже образец строки есть: "If you are an application developer using ODBC to connect to Microsoft Office Excel data, set the Connection String to “Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DBQ=path to xls/xlsx/xlsm/xlsb file”"

И вот кстати этот драйвер в списке: http://s2.ipicture.ru/uploads/20121028/mPj5ty6N.jpg
26 zakidonoff
 
28.10.12
02:49
Эта фигня с внешними источниками всё равно практически бесполезна, ибо потом данные по-человечески не вытащишь. Ни в запрос не засунешь, ни в временную таблицу.
Проще по-старинке.
27 Живой Ископаемый
 
28.10.12
10:05
2(26) вообще-то поместишь и в Вт и в запрос засунешь. в(22)  написано как. немного громоздко, но можно...
А если в СКД использовать - так вообще песня.
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.