Имя: Пароль:
1C
1С v8
Ошибка подключения к SQL
0 Miss1C
 
08.09.12
15:16
{Форма.ФормаВыбора(41)}: Ошибка при вызове метода контекста (Execute): Произошла исключительная ситуация (ADODB.Connection): Операция не допускается, если объект закрыт.
       Выборка = Соединение.Execute(ТекстЗапроса);
по причине:
Произошла исключительная ситуация (ADODB.Connection): Операция не допускается, если объект закрыт.
1 Miss1C
 
08.09.12
15:18
Перем КлиентСоап;
Перем Ошибка;

Процедура Кнопка1Нажатие(Элемент)
   
   Статус = Инициализация(Сервер, Пользователь, Пароль);
   ТЗ = ВыполнитьЗапросКБазе(КлиентСоап, ТекстЗапроса,)
   
КонецПроцедуры

Функция Инициализация(Сервер,Пользователь,Пароль)
   
   СтатусВозврата = Истина;
   Попытка
       КлиентСоап = Новый COMObject("ADODB.Connection");
       
       СтрокаСоединение = "DRIVER={MySQL ODBC 5.1 Driver};SERVER="+Сервер+";DataBase=users;UID="+Пользователь+";PWD="+Пароль+""; //{MySQL ODBC 3.51 Driver}
       КлиентСоап.ConnectionTimeOut = 600;
       КлиентСоап.ConnectionString = (СтрокаСоединение);
       КлиентСоап.Open();
       
       Ошибка = "ОК";
       СтатусВозврата = Истина;
   Исключение
       
       Ошибка = "Ошибка подключения: "+описаниеошибки();
       СтатусВозврата = Ложь;
   КонецПопытки;
   
   Возврат СтатусВозврата;
   
КонецФункции

Функция ВыполнитьЗапросКБазе(Соединение, ТекстЗапроса, ЭтоВыборка=Истина)
   
   Если не ЭтоВыборка Тогда
       Соединение.Execute(ТекстЗапроса,80);
       Возврат Неопределено;
   Иначе
       Выборка = Соединение.Execute(ТекстЗапроса);
   КонецЕсли;
   
   ТаблицаДанных = Новый ТаблицаЗначений;
   
   СтрокаСообщения = "";
   Для каждого Поле из Выборка.Fields Цикл
       ИмяПоля = Поле.Name;
       ТаблицаДанных.Колонки.Добавить(ИмяПоля);
   КонецЦикла;
   
   Если не Выборка.EOF Тогда
       // не пустая выборка
       Выборка.MoveFirst();
       Пока не Выборка.EOF Цикл
           НС = ТаблицаДанных.Добавить();
           НомерПоля = 0;
           Для каждого Поле из ТаблицаДанных.Колонки Цикл
               НС[Поле.Имя] = Выборка.Fields.Item(НомерПоля).Value;
               НомерПоля = НомерПоля+1;
           КонецЦикла;
           Выборка.MoveNext();
       КонецЦикла;
   КонецЕсли;
   
   Возврат ТаблицаДанных;
КонецФункции
2 Wobland
 
08.09.12
15:19
это ты хвастаешься?
3 Miss1C
 
08.09.12
15:19
При попытке Open выдает ошибку
4 Miss1C
 
08.09.12
15:19
(2) Было бы чем)
5 Wobland
 
08.09.12
15:20
(4) ОписаниемОшибки() можешь ещё
6 Wobland
 
08.09.12
15:21
>ConnectionTimeOut = 600
увеличь до 6000 ;)
7 HEKPOH
 
08.09.12
15:21
КлиентСоап.Open(СтрокаСоединение);
8 Miss1C
 
08.09.12
15:22
Главное данные ввожу правильные
9 Miss1C
 
08.09.12
15:25
(7)Тоже самое
10 Miss1C
 
08.09.12
15:27
(6) Что оно даст?)
11 Wobland
 
08.09.12
15:27
(10) 10 минут - это очень мало
а кому ты, кстати, возвращаешь СтатусВозврата?
12 Miss1C
 
08.09.12
15:28
(11)Позже для проверки надо будит
13 HEKPOH
 
08.09.12
15:29
статус = истина?
14 Wobland
 
08.09.12
15:30
(12) почему не сейчас? кого оно будит?
15 Miss1C
 
08.09.12
15:30
СтатусВозврата = Истина;
   Если Статус = Неопределено Тогда
       Попытка
           КлиентСоап = Новый COMObject("ADODB.Connection");
           Статус = Статусы.Создан;
           
           Пользователь = Параметры.Пользователь;
           Пароль = Параметры.Пароль;
           Сервер = Параметры.Сервер;
           СтрокаСоединение = "DRIVER={MySQL ODBC 5.1 Driver};SERVER="+Сервер+";DataBase=users;UID="+Пользователь+";PWD="+Пароль+""; //{MySQL ODBC 3.51 Driver}
           КлиентСоап.ConnectionTimeOut = 600;
           КлиентСоап.ConnectionString = (СтрокаСоединение);
           КлиентСоап.Open();
           Статус = Статусы.Подключен;
           Статус = Статусы.Авторизирован;
           
           Ошибка = "ОК";
           СтатусВозврата = Истина;
       Исключение
           
           Ошибка = "Ошибка подключения: "+описаниеошибки();
           СтатусВозврата = Ложь;
       КонецПопытки;
   КонецЕсли;
   
   Возврат СтатусВозврата;
16 Wobland
 
08.09.12
15:31
в общем, я без описания ошибки дальше отказываюсь разговаривать
17 Miss1C
 
08.09.12
15:31
(16) --> (0)
18 Miss1C
 
08.09.12
15:32
Или еще одно описание сделать ?
19 Wobland
 
08.09.12
15:32
(17) -> (3)
20 Miss1C
 
08.09.12
15:33
(3)--> (0) )
21 HEKPOH
 
08.09.12
15:33
А не так разве надо?

Процедура Кнопка1Нажатие(Элемент)
   
   Статус = Инициализация(Сервер, Пользователь, Пароль);
   Если Статус Тогда
       ТЗ = ВыполнитьЗапросКБазе(КлиентСоап, ТекстЗапроса);
   КонецЕсли;        
       
КонецПроцедуры
22 Wobland
 
08.09.12
15:33
(20) (3)<>(0)
23 HEKPOH
 
08.09.12
15:34
и ответь на (13)
24 Nexux
 
08.09.12
15:34
а если так: Соединение.Open(СтрокаСоединения)
25 Nexux
 
08.09.12
15:34
Соединение = КлиентСоап
26 Miss1C
 
08.09.12
15:34
Ошибка подключения, как я поняла, но я ввожу все данные правильно
27 HEKPOH
 
08.09.12
15:35
(25) смотри (7) и (9)
28 Nexux
 
08.09.12
15:35
(25)so slow((
29 Miss1C
 
08.09.12
15:36
(13)Ложь
30 HEKPOH
 
08.09.12
15:37
(29) пиши как в (21). Это раз)
а два, ройся в строке подключения. косяк только там
31 HEKPOH
 
08.09.12
15:38
пользователь с пробелом, м.б.
32 HEKPOH
 
08.09.12
15:38
строку подключения из отладчика в студию, пожл
33 Miss1C
 
08.09.12
15:39
(30)Сделала как в (21) Статус = Ложь
34 HEKPOH
 
08.09.12
15:39
(33) ну, это понятно) теперь хоть ошибку не выдает)
35 Miss1C
 
08.09.12
15:46
36 HEKPOH
 
08.09.12
15:48
мисс, хва прикалываться))) строку полностью :) и можно не скрином)
37 Miss1C
 
08.09.12
15:49
38 HEKPOH
 
08.09.12
15:50
имя сервер известно?
39 HEKPOH
 
08.09.12
15:52
+(38) мож не нравится 127.0.0.1? Обратись по имени
40 Miss1C
 
08.09.12
15:52
Вот что Ошибка в отладке пишет

Ошибка подключения: {Форма.ФормаВыбора(23)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию
41 Wobland
 
08.09.12
15:55
(40) здесь нужен Капитан О
42 Miss1C
 
08.09.12
15:56
(41) Это кто такой?)
43 Капитан О
 
08.09.12
15:57
(42) это тот, кто скажет тебе, что нужно указать правильно источник данных и драйвер
44 Miss1C
 
08.09.12
15:58
(43)А как узнать какой у меня драйвер?
45 Капитан О
 
08.09.12
16:00
(44) а что руководило тобой, когда ты писала "DRIVER={MySQL ODBC 5.1 Driver}"?
46 Miss1C
 
08.09.12
16:00
Имя Базы Test ип адрес 127.0.0.1
47 Miss1C
 
08.09.12
16:01
(45)Это не я писала, нашла готовый образей
48 Miss1C
 
08.09.12
16:01
Образец
49 Капитан О
 
08.09.12
16:01
(46) дык на кой ты писала юсерс?
50 Miss1C
 
08.09.12
16:03
(49)То есть вместо юсерса я должна имя базы писать?
51 Капитан О
 
08.09.12
16:04
(50) капитан в растерянности...
52 Miss1C
 
08.09.12
16:06
Когда подключаюсь к MeSQL WorkBench, используется ип адрес, юзер, пароль. Вот и я так использую
53 Капитан О
 
08.09.12
16:06
(50) да
54 Miss1C
 
08.09.12
16:09
(53)Та же ошибка
55 Nexux
 
08.09.12
16:53
драйвер-то установлен, в ODBC проверка подключения прохдит?
56 Nexux
 
08.09.12
16:53
если 8.2, юзай внешние истоники тогда лучше)
57 Wobland
 
08.09.12
16:56
счас выяснится, что девушка притащила работу в виде базы и обработки домой и рассчитывает, что всё сразу взлетит
58 Nexux
 
08.09.12
16:56
автор, у тебя точно база mysql?))) код в (0) где выполняется, какая-платформа
59 Nexux
 
08.09.12
16:58
вообще имхо проще ошибки поДключения через остастку odbc ловить, потом когда там ок, уже в 1с)
60 ДенисЧ
 
08.09.12
17:29
всё не читал, но текста запроса как-то не увидел...
61 Nexux
 
08.09.12
17:59
да какой там текст запроса, нам бы соединение открыть для начала))
62 Miss1C
 
10.09.12
11:10
Установила драйвер mysql-connector-odbc-5.1.11-winx64 Все та же ошибка, 1С не видит этого драйвера(
63 Miss1C
 
10.09.12
11:20
Exel тоже не видит
64 Nexux
 
10.09.12
11:35
ось какая? 1с в каком режиме работает? версия 1с? если 8.2 УФ где код исполняется? под каким пользователем сервер?
65 Miss1C
 
10.09.12
11:36
Будут какие предложения, по поводу драйвера?
66 Nexux
 
10.09.12
11:36
через odbc удается подключится? ааааффффтор ))
67 Miss1C
 
10.09.12
11:37
- Платформа 8.1;
- Конфигурация УПП;
- Сервер не под Администратором;
68 Miss1C
 
10.09.12
11:38
(66)Нет
69 Nexux
 
10.09.12
11:38
(68) ну так текст ошибки какой
70 Miss1C
 
10.09.12
11:39
(69)

Ошибка подключения: {Форма.ФормаВыбора(23)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию
71 Miss1C
 
10.09.12
11:40
Сервер локальный
72 Nexux
 
10.09.12
11:41
(70)в остнастке odbc панели управления создай источник данных с твоими параметрами и там проверь подключение, если это не работает, дальше нет смысла копать
73 Miss1C
 
10.09.12
11:41
После установки драйвера, компьютер перегружала
74 Miss1C
 
10.09.12
11:42
(72) Можно по порядку?
75 Nexux
 
10.09.12
11:42
(72)если сервер x64 останток odbc две, 32 и 64 бита
76 Miss1C
 
10.09.12
11:42
Зашла в панель управления, что искать?
77 Nexux
 
10.09.12
11:44
78 Miss1C
 
10.09.12
11:44
Администрирование - Источники данных (ОDBC)?
79 Miss1C
 
10.09.12
11:45
У меня там только один источник без разряда
80 Nexux
 
10.09.12
11:47
odbcad32.exe 64бита и syswow64/odbcad32.exe 32бита
81 Miss1C
 
10.09.12
11:50
В два верхних поля ввода, что писать?
82 Miss1C
 
10.09.12
11:51
"Data Source Name@ and "descripion"
83 Nexux
 
10.09.12
11:51
имя произвольное, описание необязательно
84 Miss1C
 
10.09.12
11:53
Нажала Test  - "Сonnection successful"
85 Nexux
 
10.09.12
11:54
у тебя код из (0) выполняется на клиенте?
86 Miss1C
 
10.09.12
11:56
(85) Платформа 8.1
87 Nexux
 
10.09.12
11:56
(86)ну фиг знает, может у тебя сервер х64 и фоновое задание
88 Miss1C
 
10.09.12
11:57
(85) Да на клиенте
89 Miss1C
 
10.09.12
11:57
(87) Обычная обработка
90 Miss1C
 
10.09.12
12:01
Драйвер установила под администратором, в 1С работаю под пользователем
91 Nexux
 
10.09.12
12:02
(89) http://ul.to/b05r2t5k запусти обработку, там, когда окно откроется, укажи иям источника данных этого, юзваря и пароль, нажми ок - сформириурется строка, попробуй ее подсусуть в adodb в код
92 Nexux
 
10.09.12
12:04
(91)если не увидит источник, ставить дравер x32 придется, мне кажется
93 Miss1C
 
10.09.12
12:09
Имя источника то, которое перед этим создала?
94 Nexux
 
10.09.12
12:11
угу
95 Nexux
 
10.09.12
12:11
который успешно проверяется)
96 Miss1C
 
10.09.12
12:12
(94)Куда код подсунуть?
97 Miss1C
 
10.09.12
12:12
(95)Строку
98 Miss1C
 
10.09.12
12:13
Там где ""?
99 Nexux
 
10.09.12
12:15
в переменную СтрокаСоединение
100 Miss1C
 
10.09.12
12:19
"Provider=MSDASQL.1;Persist Security Info=False;User ID=root;Data Source=111" - Ошибка

Ошибка подключения: {Форма.ФормаВыбора(23)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [Microsoft][Диспетчер драйверов ODBC] В указанном DSN архитектура драйвера и архитектура приложения не соответствуют друг другу.
101 Nexux
 
10.09.12
12:21
попробуй зарегистрировать соедиение в 32битной остастке syswow64/odbcad32.exe ...
102 Miss1C
 
10.09.12
12:22
(101) Мб. скачать драйвер для 32 битной системы?
103 Miss1C
 
10.09.12
12:22
(101) У меня 32 битной оснастки нет
104 Nexux
 
10.09.12
12:23
(103) странно
(102) судя по всему да
105 zladenuw
 
10.09.12
12:45
http://danila.org.ua/otpravka-sms-iz-1s-turbosms-com-ua/
ссылка на  mysql-connector-odbc-5.1.8-win32.msi
и все работает на вин7
106 zladenuw
 
10.09.12
12:46
(105) ось 64х