Имя: Пароль:
1C
1С v8
подключение к firebird
0 Kurbash
 
02.04.14
11:09
пытаюсь подключиться к базе, драйвер поставил все нормально но при попытке подключения выдает Не удалось выполнить подключение {Форма.Форма.Форма(14)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [ODBC Firebird Driver]Unable to connect to data source: library 'gds32.dll' failed to load

в чем может быть грабля? длл-ку зарегил
1 Ненавижу 1С
 
гуру
02.04.14
11:10
dll куда положил?
2 Смок
 
02.04.14
11:11
А клиента поставил?
3 Kurbash
 
02.04.14
11:13
(1)-блин поиском не находит
(2) какого клиента? пока поставил только драйвер отсюда http://www.firebirdsql.org/en/odbc-driver/
4 Смок
 
02.04.14
11:18
(3)Клиентская часть сервера, там как раз эта библиотечка ставится. Возьми установочный пакет от твоего сервера и поставь на своей машине в режиме клиент онли.
5 ALoHA
 
02.04.14
12:07
ODBC-драйвер установи.
6 Kurbash
 
02.04.14
12:21
(5)-его то я поставил(3)
7 Kurbash
 
02.04.14
13:12
поставил, теперь такая ошибка:
Не удалось выполнить подключение {Форма.Форма.Форма(14)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [ODBC Firebird Driver]unavailable database
8 Смок
 
02.04.14
13:15
(7) Гони строку подключения.
9 Смок
 
02.04.14
13:23
(8)+скорей всего неправильно указан путь до базы. Укажи полный путь. Если локально, то попробуй указать путь к базе 127.0.0.1:C:\..........
10 Kurbash
 
02.04.14
13:26
// Формируем строку подключения
ConnectionБД = Новый COMОбъект("ADODB.Connection");
ConnectionБД.ConnectionString = "DRIVER={Firebird/InterBase(r) driver};server=айпишниксерва:" +
"Dbname=C:\имябазы.FDB;" +
"UID=юзер;" +
"PWD=пасс;" +  
"CHARSET=WIN1251";  
ConnectionБД.ConnectionTimeout = 15;
ConnectionБД.CursorLocation = 3;
// Подключаемся к базе данных
попытка
ConnectionБД.Open(ConnectionБД.ConnectionString);
исключение
Сообщить("Не удалось выполнить подключение " + ОписаниеОшибки());
Возврат;
КонецПопытки;

RS = Новый COMОбъект("ADODB.Recordset");
Str = "select * from tabel_intermediadate where staff_id=(select id_staff from staff where last_name='Каменев')";
попытка
RS.Open(Str, ConnectionБД);
исключение
Сообщить ("Проблемы с выполнением запроса к FireBird");
КонецПопытки;

Пока RS.EOF() = 0 Цикл
DATE_PASS = RS.Fields("DATE_PASS").Value;
TIME_PASS = RS.Fields("TIME_PASS").Value;
//СтрокаТабличногоДокумента = ТабличнаяЧасть1.Добавить();
//СтрокаТабличногоДокумента.ид = ID;
//СтрокаТабличногоДокумента.ид_м = ID_M;
//СтрокаТабличногоДокумента.Номенклатура = Name;
сообщить(DATE_PASS);
сообщить(TIME_PASS);
RS.MoveNext();
КонецЦикла;
КонецПроцедуры
11 Ненавижу 1С
 
гуру
02.04.14
13:47
сервер Firebird надеюсь запущен на той "айпишниксерва" машине
12 Ненавижу 1С
 
гуру
02.04.14
13:47
+(11) и имя базы прописано относительно сервера Firebird?
13 Radkt
 
02.04.14
13:51
Нужно играться с драйвером и строкой подключения. Не получилось подключиться пока не сменил платный на бесплатный драйвер.
14 Kurbash
 
02.04.14
13:54
(11)(12) да, все запущено, все верно написао
15 Kurbash
 
02.04.14
13:54
(13)-где качал?
16 NickM73
 
02.04.14
14:03
Кстати можно пойти другим путем, те создать в Администрировании ODBC подключение к базе Firebird проверить настроить как положено, а затем

+Code
АДО = Новый  COMОбъект("ADODB.Connection");
Попытка
        АДО.Open("ИмяПодключения");
        АДО.CursorLocation=3;
        Набор=АДО.Execute("Тело запроса",,);
        Сообщить(""+Набор.RecordCount);
    Исключение
        Сообщить("ODBC  драйвер не подключен или неправильно настроен",СтатусСообщения.Внимание);
    КонецПопытки;
17 NickM73
 
02.04.14
14:04
Это более универсально в плане тиражирования, чем строка подключения.
18 Radkt
 
02.04.14
14:06
(15) не помню, если вечером актуально будет могу скинуть(только возможно под старую версию он давно это было)
19 mikeA
 
02.04.14
14:45
(13) юзай внешние источники данных, подключается стандартным драйвером
http://www.firebirdsql.org/en/odbc-driver/
единственный нюанс - для серверной базы 1С на 64 разрядном сервере драйвера нужны 64 разрядные и устанавливать драйвера надо там где находится сервер 1С
20 Смок
 
02.04.14
22:20
(10) Попробуй указать путь к базе 127.0.0.1:C:\..........
21 EvgeniuXP
 
02.04.14
22:43
(+19) только ПЕРВЫЕ не используй :) и в списки не выводи - а отчеты можно строить.
22 Kurbash
 
17.04.14
13:23
блин все равно не пойму как так получается- все установил и драйвера и базу локально себе положил а не коннектится пишет Не удалось выполнить подключение {Форма.Форма.Форма(62)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [ODBC Firebird Driver]unavailable database
23 _fvadim
 
17.04.14
13:32
а утилиты администрирования, типа flamerobin цепляются?
24 smartu
 
17.04.14
13:34
попробуй так:

"Dbname="+айпишниксерва+":C:\имябазы.FDB;" +
25 Kurbash
 
17.04.14
13:36
(24), да, дотумкал, сделал так:
ConnectionБД = Новый COMОбъект("ADODB.Connection");
ConnectionБД.ConnectionString = "Driver=Firebird/InterBase(r) driver;" +
"Dbname=LOcalhost:D:\база.FDB;" +
"UID=юзер;" +
"PWD=админ;" +
"CHARSET=WIN1251";
ConnectionБД.ConnectionTimeout = 15;
ConnectionБД.CursorLocation = 3;
// Подключаемся к базе данных
попытка
ConnectionБД.Open(ConnectionБД.ConnectionString);
исключение
Сообщить("Не удалось выполнить подключение " + ОписаниеОшибки());
Возврат;
КонецПопытки;

пишет что

Не удалось выполнить подключение {Форма.Форма.Форма(62)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [ODBC Firebird Driver]Unable to complete network request to host "LOcalhost".
Failed to establish a connection.
Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение.


RS = Новый COMОбъект("ADODB.Recordset");
Str = "select * from tabel_intermediadate where staff_id=(select id_staff from staff where last_name='Иванов')";
попытка
RS.Open(Str, ConnectionБД);
исключение
Сообщить ("Проблемы с выполнением запроса к FireBird");
КонецПопытки;

Пока RS.EOF() = 0 Цикл
DATE_PASS = RS.Fields("DATE_PASS").Value;
TIME_PASS = RS.Fields("TIME_PASS").Value;
сообщить(DATE_PASS);
сообщить(TIME_PASS);
RS.MoveNext();
КонецЦикла;
26 Kurbash
 
17.04.14
13:38
и это причем база стоит на моем компе
27 Kurbash
 
17.04.14
13:40
ау люди!!!
28 Torquader
 
17.04.14
13:42
Для установки клиента в директории FireBird есть instclient.exe

Потом, на Windows 7 у меня почему-то путь к базе начинался как \\.\С:\Путь - без точки "умный" сервер ничего в упор не видел.
29 Torquader
 
17.04.14
13:42
Не пиши localhost, а пиши 127.0.0.1 - гарантированно взлетает.
30 Torquader
 
17.04.14
13:43
То есть в твоём случае
DBNAME=127.0.0.1:\\.\D:\база.FDB
31 Kurbash
 
17.04.14
13:46
не канает
32 Kurbash
 
17.04.14
13:46
instclient.exe тоже нет в директории
33 Torquader
 
17.04.14
13:47
(32) В bin должна быть.
А вообще, вы какой firebird ставили - версия ?
34 Kurbash
 
17.04.14
13:48
Firebird-2.5.2.26540_0_x64
35 Torquader
 
17.04.14
13:49
(34) Ещё - вопрос - зачем было задавать русские имена и пароли ?
36 Torquader
 
17.04.14
13:49
Потом, netstat -a показывает, что ваш firevbird "случает" какие-то порты (с ключом -b покажет, кто слушает порт).
37 Kurbash
 
17.04.14
13:51
(35)да это я поменял только в сообщении, так английские все стоят
38 Kurbash
 
17.04.14
13:52
ну вот, снес все и заново переустанвил, запустил службу, теперь совсем иная ошибка:Не удалось выполнить подключение {Форма.Форма.Форма(62)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [ODBC Firebird Driver]Your user name and password are not defined. Ask your database administrator to set up a Firebird login.
я так понял логин и пасс надо копать:)
39 Torquader
 
17.04.14
13:53
(38) Так вы как-то их снесли. Заходи в консоль и ставь пароли.
40 Torquader
 
17.04.14
13:55
Вообще-то, с консоли и начинается "общение" С firebird, только после того, как в консоли (isql.exe) базу подцепляют и видят, можно переходить в фазу ODBC, если консоль не взлетает, то "иметь" ODBC бессмысленно.
41 Torquader
 
17.04.14
14:02
Также можно попробовать задать login и пароль в команде Open (там второй и третий параметры).
42 Kurbash
 
17.04.14
14:02
с firebird не работал запускаю isql.exe выходит досовское окно. че дальше делать?
43 Torquader
 
17.04.14
14:06
Пример подключения из VbScript
DB_Object.Open "DRIVER=Firebird/InterBase(r) driver;DBNAME=127.0.0.1:C:\WORK\MEDICAL\DATABASE\DATABASE.GDB","SYSDBA","masterkey",-1
44 Torquader
 
17.04.14
14:07
start "Sql" isql.exe D:\база.FDB -u SYSDBA -p masterkey

Вот эта строка должна открыть базу данных - то есть написать, что установлено подключение.
Там написать QUIT и идти мучить ODBC, если не открыло, то будет написана ошибка.
45 Kurbash
 
17.04.14
14:10
все , взлетело
46 Kurbash
 
17.04.14
14:11
терь такая засада- это я логинился к локальной базе а нужно залогиниться в сетке, только сервак стоит в другом домене. Здесь каак?
47 Kurbash
 
17.04.14
14:16
а. все разорался всем спасибо
48 _fvadim
 
17.04.14
14:17
начал писать язвительный комментарий - не успел :(
49 Torquader
 
17.04.14
14:44
(46) Читаем, что такое IP-адрес.
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.