Ошибка получения параметров строки соединения возможно драйвер не позволяет

Я
   Powerfool

01.02.13 — 19:12

Суть проблемы такова: платформа 8.2.17.153, завожу внешний источник данных, добавляю таблицу, так требует строку соединения. При вводе с помощью конструктора строки (драйверы любые кроме SQL-server) выводится ошибка «Ошибка получения параметров строки соединения. Возможно драйвер не позволяет получать параметры строки соединения». Настройки ODBC ни к чему не привели: драйвер такой имеется, пробовал создавать файловые DSN, в общем ничего не помогает. Прописывал строку соединения вручную, пробовал разные варианты, например:

Driver={Microsoft Excel Driver (*.xls)}; DriverID=790; DBQ=D:ФайлExcel.xls;. Пользователь и пароль оставлял пустыми. Жму ОК, ска проглатывает мою строку, но список таблиц при этом девственно пуст. Пробовал через csv драйверы запихать данные. Аналогичная ситуация. Выручайте кто чем может

   Powerfool

1 — 01.02.13 — 19:25

Пробовал через стандартные функции 1С в режиме предприятия подключиться к внешним источникам указывая в качестве строки соединения строку из (0). Подключение происходит, но делать я с ним ничего не могу.

   Powerfool

2 — 02.02.13 — 04:15

up

   Powerfool

3 — 02.02.13 — 05:18

Для тех у кого платформа 8.2.14 и старше: попробуйте подключить ВИД с экселевским драйвером, может у кого получиться, так хоть понятно будет что я чето делаю не так.

   Powerfool

4 — 03.02.13 — 08:27

up

   Filippov

5 — 03.02.13 — 08:50

У меня с некоторыми файлами Excel получалось (показывались листы, можно было раскрыть их структуру и отметить нужное), но большей частью приходилось описывать вручную. Какой-либо закономерности не установил.

   Powerfool

6 — 03.02.13 — 08:54

(5) «описывать вручную». Что имеешь ввиду?

   hhhh

7 — 03.02.13 — 09:49

путь к файлу какой-то дикий у тебя:

D:ФайлExcel.xls;

   БалбесВ1с

8 — 03.02.13 — 09:56

(0)DBQ=C:ФайлExcel.xls;

так наверное нужно?

   АцкийЖипер

9 — 03.02.13 — 10:25

(0) Бесполезно, внешние источники реализованы для SQL и dbf, для xml не работает.

   Filippov

10 — 03.02.13 — 16:52

(9) Хорошо работает с MS Access. Пример — строка подключения Driver={Microsoft Access Driver (*.mdb)};DBQ=snzbuhsrvpublicВнешние данные 1СData77.mdb. Видны все таблицы в этой базе

(6) Пример: строка подключения — Driver={Microsoft Excel Driver (*.xls)}; DBQ=snzbuhsrvpublicВнешние данные 1СData77.xls. Режим при описании источника — Вручную. Далее — таблицы — это страницы xls-файла, каждой таблице соответствует страница, к имени страницы добавлять симол $. Далее — поля. Каждому полю внешнего источника в 1С указывается имя поля в xls (имена полей xls указываются в первой строке файла xls — без заголовков подключить у меня не получилось) и его формат. У меня под рукой нет ссылки — поищите, есть подходящее описание подключения в ручном режиме. Завтра сообщу, может пригодится.

   Filippov

11 — 03.02.13 — 17:01

+(10) http://passion-programmer.blogspot.com/2011/09/1-8214.html

   АцкийЖипер

12 — 03.02.13 — 17:06

(10) (11) Спасибо, надо попробовать.

   Новиков

13 — 03.02.13 — 18:16

Ох. Отмечусь тоже.

   hhhh

14 — 03.02.13 — 18:54

(10) к сожалению, должен быть Excel установлен на сервере, поэтому пользуюсь ADO

  

Powerfool

15 — 04.02.13 — 08:56

(11) (10) Благодарю. Похоже что так оно и есть, функционал реализовали, но забыли что им ещё и пользоваться будут.

TurboConf — расширение возможностей Конфигуратора 1С

ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку «Обновить» в браузере.

Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.

6 / 6 / 3

Регистрация: 28.11.2017

Сообщений: 13

1

14.12.2017, 12:03. Показов 5680. Ответов 5


Что имею:
1. 1C:Предприятие 8.3 (8.3.10.2375) + конф. УПП 1.3
2. Драйвер ODBC v.5.3 + настроен пользовательский DSN (тест подключения успешный)

Что пробовал:
1. Подключиться в конфигураторе через «Внешние источники данных» что тут:
— Конструктор строки соединения выдает «Ошибка получения параметров соединения. Возможно, драйвер не позволяет получать параметры строки соединения»;
— Вручную через DSN (DSN=<Имя>)

УСПЕХ!

— Вручную через DRIVER (DRIVER={MySQL ODBC 5.3 ANSI Driver})

УСПЕХ!

2. Создать обработку подключения через DSN результат:[Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию
3. Создать обработку подключения через DRIVER результат:[Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию
4. Все тоже самое, но менял драйвер ODBC на v.5.1 результат: как в пункте 2,3

В чём может быть проблема? Может кто нибудь сталкивался с подобным?
Помогите пожалуйста

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь

0

_ЕГОР_

Тест

Эксперт 1С

383 / 162 / 56

Регистрация: 26.02.2010

Сообщений: 1,241

14.12.2017, 13:29

2

Думаю нужно драйвер по умолчанию указать где то) Я коннекчюсь таким способом.

1C
1
2
3
4
5
6
7
8
9
Функция СтрокаСоединение2()
    СтрПодключения = "DRIVER={MySQL ODBC 3.51 Driver};";
    СтрПодключения = СтрПодключения+"SERVER="+Интеграция.Сервер+";PORT=3306;";
    СтрПодключения = СтрПодключения+"Database="+Интеграция.ИмяБД+";";
    СтрПодключения = СтрПодключения+"Uid="+Интеграция.Пользователь+"; PWD="+Интеграция.Пароль+";Option=3;STMT=SET CHARACTER SET CP1251;";
    Соединение=Новый COMОбъект("ADODB.Connection");
    Соединение.Open(СтрПодключения);
    Возврат Соединение;
КонецФункции

0

1117 / 671 / 195

Регистрация: 22.04.2013

Сообщений: 5,076

Записей в блоге: 1

14.12.2017, 13:43

3

сталкивался. решил. формат ц комплит. столкнулся не решил ((
смысл в том, что винда 64-битная, а 1с — 32-битная. поэтому надо ставить ОДБЦ и тот и другой
что характерно — другой вызывается совсем из другого места :
C:WindowsSysWOW64 odbcad32.exe
а 64битный — из виндовс систем32
так как там получилась закрутка — работает не работает этот удалите тот поставьте нет наоборот, я бросил это дело.

1

pris9doshnik1

6 / 6 / 3

Регистрация: 28.11.2017

Сообщений: 13

14.12.2017, 15:13

 [ТС]

4

Да на счет разрядностей в курсе, ставил драйвера и те и те, как только не пробовал но результат печальный(
● 64-разрядная версия: %SYSTEMROOT%System32odbcad32.exe.
● 32-разрядная версия: %SYSTEMROOT%SysWOW64odbcad32.exe.

Добавлено через 2 минуты

Цитата
Сообщение от _ЕГОР_
Посмотреть сообщение

Думаю нужно драйвер по умолчанию указать где то) Я коннекчюсь таким способом.
1CВыделить код

Я тоже таким способом пытаюсь, но не получается(((

1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
    СерверSQL = "";
    ПользовательSQL = "";
    ПарольSQL = "";
    БазаДанныхSQL = "";
    ТаблицаSQL = "";
 
    Попытка
        Соединение  = Новый COMОбъект("ADODB.Connection");
        Команда     = Новый COMОбъект("ADODB.Command");
        Выборка     = Новый COMОбъект("ADODB.RecordSet");
        Соединение.ConnectionString =
            "DRIVER={MySQL ODBC 5.1 ANSI Driver};" +
            "server="+СерверSQL+";"+
            "uid="+ПользовательSQL+";"+
            "pwd="+ПарольSQL+";"+
            "database="+БазаДанныхSQL+";";
        Соединение.ConnectionTimeout = 30;
        Соединение.CommandTimeout = 600;
        //Открытие соединение
        Соединение.Open();
        Команда.ActiveConnection   = Соединение;
        Сообщить("Успешное подключение");
    Исключение
        Сообщить(ОписаниеОшибки());
        Возврат;
    КонецПопытки;

Но выдает ошибку: Источник данных не найден и не указан драйвер, используемый по умолчанию
У Вас всё стабильно подключается?

0

Тест

Эксперт 1С

383 / 162 / 56

Регистрация: 26.02.2010

Сообщений: 1,241

14.12.2017, 15:15

5

Да, все стабильно. Установлен то именно та версия драйвера, по которой подключаетесь? Попробуйте именно мою функцию взять(только версию драйвера свою поставьте.
Это раз. Два, на стороне sql ничего не блокирует подключение?

1

6 / 6 / 3

Регистрация: 28.11.2017

Сообщений: 13

15.12.2017, 14:37

 [ТС]

6

Попробовать смогу только завтра уже, отпишусь утром. На стороне ничего не блокирует, я смог подключиться в конфигураторе через «Внешние источники данных» (прописав вручную параметры строки соединения).

Добавлено через 21 час 40 минут
Проблема решена! Снесли все драйвера MySQL ODBC, и поставили по новой сначала MySQL ODBC 5.1 Driver x32, а потом x64 (грубо говоря по верх). И соединение работает, спасибо ребят за помощь! С драйвером 5.3, 5.2 такая фишка не прокатила!!!

Добавлено через 1 минуту
если поставить сначала x64, а потом 32 не заработает!!! (при установке драйвера x64 ОТКЛЮЧИТЕ установку x32 (в параметрах!!!))

1

Для курсача надо подключить 1с предприятие к mysql базе данных. Запилил с MySQL БД, установил 64хбитный ODBC с драйвером MySQL ODBC 8.0 ANSI Driver. В управлении ODBC без каких-либо проблем подключился к своей БД. Потом отправился в 1С предприятие версии 8.3.13.1690 х64. Там в конфигураторе через «внешние источники данных» пытаюсь подключить свою базу. Однако по кд приходит ошибка:
«Источник данных не найден и не указан драйвер, используемый по умолчанию». Строка подключения выглядит так:

DRIVER={MySQL ODBC ANSI 8.0 Driver};
SERVER=localhost;(так же пробовал ;;1; и ..1. - так у меня выглядит адрес локалхоста из-за экспериментов с доменом. )
DATABASE=Study;

Так же пытался использовать конструктор строки соединения для того же драйвера, но получил ошибку «Ошибка получения параметров строки соединения. Возможно, драйвер не позволяет получать параметры строки подключения».

Несмотря на то, что формулировки ошибок выглядят понятными. никакие эксперименты с настройками ни к чему не привели, попытки гуглить показали лишь что ошибка частая, но решается это просто отказом от ODBC в большинстве случаев. Прошу подсказать, в чём может быть проблема, или порекомендовать оптимальный альтернативный способ решения.

«Ошибка получения параметров строки соединения. Возможно драйвер не позволяет получить параметры строки соединения» — вот так реагирует 1с8.3.3.641 на попытку подключить внешний источник данных mySql. Пробовал драйвера 5.2 и 3.51. Результат всё тот же. Подскажите, что ещё можно попробовать или ЧЯДНТ?

Прочитал, что можно попробовать указать вручную строку подключения, но, к сожалению, я подключаюсь строкой из файлика udl.

Код подключения в студию.

Рабочий только последний вариант

ConnectionString нужен. Драйвер муСКЛ есть в системе?

куета какая то. Причем тут внешний источник данных?

Верно. Но как её задать? На данный момент использую последнюю строку, полученную из файла udl: ConnectionString = «Provider=MSDASQL.1;Persist Security Info=False;Data Source=220V52U»; Однако ВИД ругается на неё, если пытаюсь указать в нем такую строку подключения. Драйвера уже какие только можно было установил и с каждым такая песня. А при том, что, по-идее, если ВИД не хочет создаваться из драйвера, то можно попробовать задать строку подключения вручную.

забей. У нас тоже не работает, поэтому без всяких источников тупо написали запросы и тп и тд.

Была какая то ошибка из за наличия подчеркивания в названии таблицы. «_». Посмотрите, может  вэтом дело.

запросом из ВИ выгребает данные в ДСписках хрень — не хочет, но данных из запроса по ВИ думаю хватит

Это баг платформы, уже полтора года висит в списке ошибок 1С. и до сих пор не вылечен ни в одном обновлении.

вот как обычно вся рота не в ногу, а один старшина в ногу. У меня работает. Поставь драйвера и пропиши строку соединения вручную. Ошибка с нижним подчеркиванием здесь абсолютно не причем

Но тут же как-то получилось:

Как, хотя бы, правильно указать строку соединения?

какую строку соединения указываешь при подключении к ВИД? У меня драйвер для mySQL. строка соединения «driver={MySQL ODBC 5.1 Driver};server=server;uid=user;pwd=password;database=mbs;port=3306»;

Платформа тут вообще никаким боком. Так а реально у тебя ODBC Connector какой версии установлен и установлен ли вообще? Скачай с родного сайта последний и используй строку подключения для него.

Так есть ОДБЦ драйвер для муСКЛ?

Есть и не один: Не знаю, как правильно указать строку подключения для 5.2.5 версии драйвера. Для 5.1 получилось.

Тэги: 1С 8

Комментарии доступны только авторизированным пользователям

16.05.2017

В новой редакции платформы 1С 8.2.14 появилась возможность устанавливать связь с внешними источниками данных. У меня была идея написать программу для прямой работы с базой данных на нашем сайте из 1С:Предприятия 8

В новой редакции платформы 1С 8.2.14 появилась возможность устанавливать связь с внешними источниками данных. У меня была идея написать программу для прямой работы с базой данных на нашем сайте из 1С:Предприятия 8 

По шагам надо сделать следующее: 

  • Скачать и установить ODBC драйвер для mysql 
  • Настроить доступ и параметры связи с базой данных 
  • Прописать необходимые таблицы в конфигураторе 
  • Написать обработку которая будет соединяться с базой данных из 1С:Предприятия 8 и выдавать результат запроса. 

Поехали… 

1. Скачиваем ODBC коннектор с сайта поставщика mysql
2. Устанавливаем его на компьютер. 
3. Заходим в конфигуратор 1С и добавляем новый внешний источник данных. 

 

4. Добавляем внешнюю таблицу: 

 

5. Указываем режим автоматического формирования списка таблиц 

 

6. Указываем параметры соединения. Пишем руками: 

Цитата

DRIVER={MySQL ODBC 5.1 Driver}; 
SERVER=192.168.1.10; 
DATABASE=bitrix;

и вбиваем логин и пароль для доступа к базе mysql 

7. Если все ок, то мы увидим список таблиц из базы данных сайта. 

 

8. Выбираем нужную таблицу галочкой 

 

9. И получаем ее в дереве метаданных. 

 

10. Создаем обработку для тестирования с одной процедурой: 

ПараметрыСоединенияССайтомМИКО = Новый ПараметрыСоединенияВнешнегоИсточникаДанных;
ПараметрыСоединенияССайтомМИКО.СтрокаСоединения= "
|DRIVER={MySQL ODBC 5.1 Driver};
|SERVER=192.168.1.10;
|DATABASE=bitrix;
|UID=root;
|PWD=dbpassword_4_user_root;";
ВнешниеИсточникиДанных.СайтМИКО.УстановитьОбщиеПараметрыСоединения(ПараметрыСоединенияССайтомМИКО);
ВнешниеИсточникиДанных.СайтМИКО.УстановитьСоединение();
Запрос = Новый Запрос("ВЫБРАТЬ
                      |   b_stat_browser.Ссылка,
                      |   b_stat_browser.ID,
                      |   b_stat_browser.USER_AGENT
                      |ИЗ
                      |   ВнешнийИсточникДанных.СайтМИКО.Таблица.b_stat_browser КАК b_stat_browser");
Таблица = Запрос.Выполнить().Выгрузить();

Тут необходимо понимать что в обработке надо обязательно заново прописывать параметры соединения с внешней базой данных, они не хранятся в конфигурации. 

11. Ставим точку останова на конец процедуры и запускаем обработку в режиме предприятия. 

12. Profit smile:) 

 

p.s. мы получили данные из внешней таблицы mysql средствами языка 1С. Что самое интересное, внешние таблицы доступны в конструкторе запроса. 

upd: как можно изменять данные через ODBC я написал в этом посте.

Соединения = ПолучитьСоединенияИнформационнойБазы();

    Для каждого СоединениеИнформационнойБазы Из Соединения Цикл

        Если ПустаяСтрока(ИмяПользователя()) Тогда Продолжить; КонецЕсли;

        Если СоединениеИнформационнойБазы.Пользователь.Имя = ИмяПользователя() И СоединениеИнформационнойБазы.ИмяПриложения=«1CV8» Тогда

            Если Лев(СтрокаСоединенияИнформационнойБазы(),5)=«File=» Тогда

                ФайловыйВариант = Истина;

                ИмяСервераИБ=«»;

                ИмяБазы = «»;

            Иначе

                ФайловыйВариант = Ложь;    

                ПозицияРазделителя = Найти(СтрокаСоединенияИнформационнойБазы(),«;»);

                ИмяКластера= Сред(СтрокаСоединенияИнформационнойБазы(),7, ПозицияРазделителя-8);

                ОписаниеИБ.Вставить(«ИмяСервераИБ»,ИмяСервераИБ);

                ИмяИнформационнойБазы = Сред(СтрокаСоединенияИнформационнойБазы(),ПозицияРазделителя+5,СтрДлина(СтрокаСоединенияИнформационнойБазы())-ПозицияРазделителя-5);

                ОписаниеИБ.Вставить(«ИмяИнформационнойБазы»,СтрЗаменить(ИмяИнформационнойБазы,«»«»,«»));

                ИнформационнаяБаза = ОписаниеИБ.ИмяИнформационнойБазы;

                Пользователь = ИмяПользователя();

            КонецЕсли;    

            Прервать;

        КонецЕсли;

    КонецЦикла;

    Соединитель = Новый COMОбъект(«V81.COMConnector»);

    АгентСервера = Соединитель.ConnectAgent(ИмяКластера);  

    КластерыСерверов = АгентСервера.GetClusters().Выгрузить();

    ИмяСервераИБВРег = ВРег(ИмяКластера);

    Для Каждого Кластер Из КластерыСерверов Цикл

        Если ВРег(Кластер.HostName) = ИмяСервераИБВРег Тогда

            СерверИнформационнойБазы = Кластер;

            Прервать;

        КонецЕсли;

    КонецЦикла;

    АгентСервера.Authenticate(СерверИнформационнойБазы,АдминистраторКластера,ПарольАдминистратораКластера );

    ПроцессыCOM = АгентСервера.GetWorkingProcesses(СерверИнформационнойБазы);

    РабочиеПроцессы = ПроцессыCOM.Выгрузить();

    РабочийПроцесс = РабочиеПроцессы[0];

    СписокСоединений = РабочиеПроцессы;

    СоединениеСРабочимПроцессом = Соединитель.ConnectWorkingProcess(

    РабочийПроцесс.HostName + «:» + Формат(РабочийПроцесс.MainPort, «ЧГ=»));

    СоединениеСРабочимПроцессом.AddAuthentication(Пользователь,ПарольПользователя);

    // Получение списка информационных баз

    ИнформационныеБазы = СоединениеСРабочимПроцессом.GetInfoBases().Выгрузить();

    // Поиск информационной базы с требуемыми параметрами подключения

    ИмяИнформационнойБазыВРег = ВРег(ИмяИнформационнойБазы);

    Для Каждого ИБ Из ИнформационныеБазы Цикл

        // Если информационная база найдена

        Если ВРег(ИБ.Name) = ВРег(ИмяИнформационнойБазы) Тогда

            // Запомнить информационную базу и прекратить поиск

            ИнформационнаяБаза = ИБ.Name;                    

            Прервать;              

        КонецЕсли;

    КонецЦикла;

    ИнформационныеБазы = СоединениеСРабочимПроцессом.GetInfoBases().Выгрузить();    

    Для Каждого ИБ Из ИнформационныеБазы Цикл

        // Если информационная база найдена

        Если ВРег(ИБ.Name) = ВРег(ИмяИнформационнойБазы) Тогда

            //р= СоединениеСРабочимПроцессом.Connect(ИБ,»тест»,»»);  

            Для шаг = 0 по СписокСоединений.Количество()1 Цикл

                //                        

                ф=Соединитель.ConnectWorkingProcess(СписокСоединений[шаг].HostName + «:» + Формат(СписокСоединений[шаг].MainPort, «ЧГ=»));

                Попытка ф.AddAuthentication(Пользователь,ПарольПользователя);Исключение КонецПопытки;

                Соединения = ф.GetInfoBaseConnections(ИБ).Выгрузить();

                Для Каждого соед Из Соединения Цикл

                   Если соед.AppID=«SrvrConsole» Тогда Продолжить; КонецЕсли;

                   Если соед.AppID=«COMConsole» Тогда Продолжить; КонецЕсли;

                   Если соед.AppID=«Designer» Тогда Продолжить; КонецЕсли;

                    НоваяСессия = Сессии.Добавить();

                    НоваяСессия.Юзер = соед.UserName;

                    НоваяСессия.Комп = Соед.HostName;

                    НоваяСессия.Сессия1С = соед.ConnID;

                    НоваяСессия.SPID = соед.dbProcInfo;

                КонецЦикла;

            КонецЦикла;

            //Соединения = СоединениеСРабочимПроцессом.GetInfoBaseConnections(ИБ).Выгрузить();

            Прервать;

        КонецЕсли;

    КонецЦикла;

Я
   Powerfool

01.02.13 — 19:12

Суть проблемы такова: платформа 8.2.17.153, завожу внешний источник данных, добавляю таблицу, так требует строку соединения. При вводе с помощью конструктора строки (драйверы любые кроме SQL-server) выводится ошибка «Ошибка получения параметров строки соединения. Возможно драйвер не позволяет получать параметры строки соединения». Настройки ODBC ни к чему не привели: драйвер такой имеется, пробовал создавать файловые DSN, в общем ничего не помогает. Прописывал строку соединения вручную, пробовал разные варианты, например:

Driver={Microsoft Excel Driver (*.xls)}; DriverID=790; DBQ=D:ФайлExcel.xls;. Пользователь и пароль оставлял пустыми. Жму ОК, ска проглатывает мою строку, но список таблиц при этом девственно пуст. Пробовал через csv драйверы запихать данные. Аналогичная ситуация. Выручайте кто чем может

   Powerfool

1 — 01.02.13 — 19:25

Пробовал через стандартные функции 1С в режиме предприятия подключиться к внешним источникам указывая в качестве строки соединения строку из (0). Подключение происходит, но делать я с ним ничего не могу.

   Powerfool

2 — 02.02.13 — 04:15

up

   Powerfool

3 — 02.02.13 — 05:18

Для тех у кого платформа 8.2.14 и старше: попробуйте подключить ВИД с экселевским драйвером, может у кого получиться, так хоть понятно будет что я чето делаю не так.

   Powerfool

4 — 03.02.13 — 08:27

up

   Filippov

5 — 03.02.13 — 08:50

У меня с некоторыми файлами Excel получалось (показывались листы, можно было раскрыть их структуру и отметить нужное), но большей частью приходилось описывать вручную. Какой-либо закономерности не установил.

   Powerfool

6 — 03.02.13 — 08:54

(5) «описывать вручную». Что имеешь ввиду?

   hhhh

7 — 03.02.13 — 09:49

путь к файлу какой-то дикий у тебя:

D:ФайлExcel.xls;

   БалбесВ1с

8 — 03.02.13 — 09:56

(0)DBQ=C:ФайлExcel.xls;

так наверное нужно?

   АцкийЖипер

9 — 03.02.13 — 10:25

(0) Бесполезно, внешние источники реализованы для SQL и dbf, для xml не работает.

   Filippov

10 — 03.02.13 — 16:52

(9) Хорошо работает с MS Access. Пример — строка подключения Driver={Microsoft Access Driver (*.mdb)};DBQ=\snzbuhsrvpublicВнешние данные 1СData77.mdb. Видны все таблицы в этой базе

(6) Пример: строка подключения — Driver={Microsoft Excel Driver (*.xls)}; DBQ=\snzbuhsrvpublicВнешние данные 1СData77.xls. Режим при описании источника — Вручную. Далее — таблицы — это страницы xls-файла, каждой таблице соответствует страница, к имени страницы добавлять симол $. Далее — поля. Каждому полю внешнего источника в 1С указывается имя поля в xls (имена полей xls указываются в первой строке файла xls — без заголовков подключить у меня не получилось) и его формат. У меня под рукой нет ссылки — поищите, есть подходящее описание подключения в ручном режиме. Завтра сообщу, может пригодится.

   Filippov

11 — 03.02.13 — 17:01

+(10) http://passion-programmer.blogspot.com/2011/09/1-8214.html

   АцкийЖипер

12 — 03.02.13 — 17:06

(10) (11) Спасибо, надо попробовать.

   Новиков

13 — 03.02.13 — 18:16

Ох. Отмечусь тоже.

   hhhh

14 — 03.02.13 — 18:54

(10) к сожалению, должен быть Excel установлен на сервере, поэтому пользуюсь ADO

  

Powerfool

15 — 04.02.13 — 08:56

(11) (10) Благодарю. Похоже что так оно и есть, функционал реализовали, но забыли что им ещё и пользоваться будут.

TurboConf — расширение возможностей Конфигуратора 1С

Для курсача надо подключить 1с предприятие к mysql базе данных. Запилил с MySQL БД, установил 64хбитный ODBC с драйвером MySQL ODBC 8.0 ANSI Driver. В управлении ODBC без каких-либо проблем подключился к своей БД. Потом отправился в 1С предприятие версии 8.3.13.1690 х64. Там в конфигураторе через «внешние источники данных» пытаюсь подключить свою базу. Однако по кд приходит ошибка:
«Источник данных не найден и не указан драйвер, используемый по умолчанию». Строка подключения выглядит так:

DRIVER={MySQL ODBC ANSI 8.0 Driver};
SERVER=localhost;(так же пробовал ;;1; и ..1. - так у меня выглядит адрес локалхоста из-за экспериментов с доменом. )
DATABASE=Study;

Так же пытался использовать конструктор строки соединения для того же драйвера, но получил ошибку «Ошибка получения параметров строки соединения. Возможно, драйвер не позволяет получать параметры строки подключения».

Несмотря на то, что формулировки ошибок выглядят понятными. никакие эксперименты с настройками ни к чему не привели, попытки гуглить показали лишь что ошибка частая, но решается это просто отказом от ODBC в большинстве случаев. Прошу подсказать, в чём может быть проблема, или порекомендовать оптимальный альтернативный способ решения.

6 / 6 / 3

Регистрация: 28.11.2017

Сообщений: 13

1

14.12.2017, 12:03. Показов 6217. Ответов 5


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

Что имею:
1. 1C:Предприятие 8.3 (8.3.10.2375) + конф. УПП 1.3
2. Драйвер ODBC v.5.3 + настроен пользовательский DSN (тест подключения успешный)

Что пробовал:
1. Подключиться в конфигураторе через «Внешние источники данных» что тут:
— Конструктор строки соединения выдает «Ошибка получения параметров соединения. Возможно, драйвер не позволяет получать параметры строки соединения»;
— Вручную через DSN (DSN=<Имя>)

УСПЕХ!

— Вручную через DRIVER (DRIVER={MySQL ODBC 5.3 ANSI Driver})

УСПЕХ!

2. Создать обработку подключения через DSN результат:[Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию
3. Создать обработку подключения через DRIVER результат:[Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию
4. Все тоже самое, но менял драйвер ODBC на v.5.1 результат: как в пункте 2,3

В чём может быть проблема? Может кто нибудь сталкивался с подобным?
Помогите пожалуйста



0



_ЕГОР_

Тест

Эксперт 1С

383 / 162 / 56

Регистрация: 26.02.2010

Сообщений: 1,241

14.12.2017, 13:29

2

Думаю нужно драйвер по умолчанию указать где то) Я коннекчюсь таким способом.

1C
1
2
3
4
5
6
7
8
9
Функция СтрокаСоединение2()
    СтрПодключения = "DRIVER={MySQL ODBC 3.51 Driver};";
    СтрПодключения = СтрПодключения+"SERVER="+Интеграция.Сервер+";PORT=3306;";
    СтрПодключения = СтрПодключения+"Database="+Интеграция.ИмяБД+";";
    СтрПодключения = СтрПодключения+"Uid="+Интеграция.Пользователь+"; PWD="+Интеграция.Пароль+";Option=3;STMT=SET CHARACTER SET CP1251;";
    Соединение=Новый COMОбъект("ADODB.Connection");
    Соединение.Open(СтрПодключения);
    Возврат Соединение;
КонецФункции



0



1190 / 729 / 211

Регистрация: 22.04.2013

Сообщений: 5,363

Записей в блоге: 1

14.12.2017, 13:43

3

сталкивался. решил. формат ц комплит. столкнулся не решил ((
смысл в том, что винда 64-битная, а 1с — 32-битная. поэтому надо ставить ОДБЦ и тот и другой
что характерно — другой вызывается совсем из другого места :
C:WindowsSysWOW64 odbcad32.exe
а 64битный — из виндовс систем32
так как там получилась закрутка — работает не работает этот удалите тот поставьте нет наоборот, я бросил это дело.



1



pris9doshnik1

6 / 6 / 3

Регистрация: 28.11.2017

Сообщений: 13

14.12.2017, 15:13

 [ТС]

4

Да на счет разрядностей в курсе, ставил драйвера и те и те, как только не пробовал но результат печальный(
● 64-разрядная версия: %SYSTEMROOT%System32odbcad32.exe.
● 32-разрядная версия: %SYSTEMROOT%SysWOW64odbcad32.exe.

Добавлено через 2 минуты

Цитата
Сообщение от _ЕГОР_
Посмотреть сообщение

Думаю нужно драйвер по умолчанию указать где то) Я коннекчюсь таким способом.
1CВыделить код

Я тоже таким способом пытаюсь, но не получается(((

1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
    СерверSQL = "";
    ПользовательSQL = "";
    ПарольSQL = "";
    БазаДанныхSQL = "";
    ТаблицаSQL = "";
 
    Попытка
        Соединение  = Новый COMОбъект("ADODB.Connection");
        Команда     = Новый COMОбъект("ADODB.Command");
        Выборка     = Новый COMОбъект("ADODB.RecordSet");
        Соединение.ConnectionString =
            "DRIVER={MySQL ODBC 5.1 ANSI Driver};" +
            "server="+СерверSQL+";"+
            "uid="+ПользовательSQL+";"+
            "pwd="+ПарольSQL+";"+
            "database="+БазаДанныхSQL+";";
        Соединение.ConnectionTimeout = 30;
        Соединение.CommandTimeout = 600;
        //Открытие соединение
        Соединение.Open();
        Команда.ActiveConnection   = Соединение;
        Сообщить("Успешное подключение");
    Исключение
        Сообщить(ОписаниеОшибки());
        Возврат;
    КонецПопытки;

Но выдает ошибку: Источник данных не найден и не указан драйвер, используемый по умолчанию
У Вас всё стабильно подключается?



0



Тест

Эксперт 1С

383 / 162 / 56

Регистрация: 26.02.2010

Сообщений: 1,241

14.12.2017, 15:15

5

Да, все стабильно. Установлен то именно та версия драйвера, по которой подключаетесь? Попробуйте именно мою функцию взять(только версию драйвера свою поставьте.
Это раз. Два, на стороне sql ничего не блокирует подключение?



1



6 / 6 / 3

Регистрация: 28.11.2017

Сообщений: 13

15.12.2017, 14:37

 [ТС]

6

Попробовать смогу только завтра уже, отпишусь утром. На стороне ничего не блокирует, я смог подключиться в конфигураторе через «Внешние источники данных» (прописав вручную параметры строки соединения).

Добавлено через 21 час 40 минут
Проблема решена! Снесли все драйвера MySQL ODBC, и поставили по новой сначала MySQL ODBC 5.1 Driver x32, а потом x64 (грубо говоря по верх). И соединение работает, спасибо ребят за помощь! С драйвером 5.3, 5.2 такая фишка не прокатила!!!

Добавлено через 1 минуту
если поставить сначала x64, а потом 32 не заработает!!! (при установке драйвера x64 ОТКЛЮЧИТЕ установку x32 (в параметрах!!!))



1



Пытаюсь подключиться к базе Access расширение «mdb». На этапе выбора драйвера выдает ошибку «Ошибка получения параметров строки соединения. Возможно драйвер не позволяет получить параметры строки соединения». Полагаю что просто отсутствует нужный драйвер на машине. Например к SQL серверу можно задать строку подключения… Какой драйвер и где скачать его для «mdb»? Это dll библиотека? Как она называться будет?

Есть народ на форуме? Или все, пятница-развратница? )))

Попробую… Но на компе не установлен Access

Не нужен акцесс. Просто MDAC поставь

а еще ну очень хочется это сделать черед именно через Внешние Источники

НЕ РАБОТАЕТ Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key ‘Temporary (volatile) Jet DSN for process 0xa874 Thread 0xb068 DBC 0x3ba384 Jet’.

Может dll какую нужно поставить? кто знает какую?

с сайта майкрософт качаешь тупо MDAC и устанавливаешь.

Получилось? А то у меня тоже самое. Куча драйверов, а ни один так и не может получить параметры строки соединения.

Тэги:

Комментарии доступны только авторизированным пользователям

Понравилась статья? Поделить с друзьями:
  • Ошибка получения объекта com 2147221164 0x80040154 класс не зарегистрирован
  • Ошибка получения параметров информационной базы ошибка при получении
  • Ошибка получения объекта com 2147221021 0x800401e3 операция недоступна
  • Ошибка получения параметров информационной базы информационная база не зарегистрирована
  • Ошибка получения объекта com 2147221020 0x800401e4 синтаксическая ошибка