Имя: Пароль:
1C
1С v8
Вылетает 1ска при выполнении Recordset.Open
0 kortun
 
31.05.13
11:15
Делаю импорт из бизнеспака.


СтрокаПодключения = "Driver={Firebird/InterBase(r) driver};";
СтрокаПодключения = СтрокаПодключения + "Database=" + ЭлементыФормы.ФайлИмпорта.Значение + ";";
СтрокаПодключения = СтрокаПодключения + "UID=SYSDBA;";
СтрокаПодключения = СтрокаПодключения + "Password=masterkey;";
Connection = Новый COMОбъект("ADODB.Connection");
Connection.ConnectionString = СтрокаПодключения;
Connection.Open();
Recordset = Новый COMОбъект("ADODB.Recordset");
[\1С]

и когда доходит до
Recordset.Open("select * from ""tCargo""", Connection);

1ска просто закрывается и все

при чем если выполнить
Recordset.Open("select * from ""tFirm""", Connection);

то все ок, команда выполняется и возвращает набор записей.

в чем может быть причина?
1 shuhard
 
31.05.13
11:22
(0) что-то мешает окаймить Попыткой и получить от MDAC ошибку ?
2 kortun
 
31.05.13
11:23
(1) ничего не мешает, как раз через попытку и делаю, просто закрывается 1ска на этой строке, выскакивает на полсекунды сообщение о дампе и все.
3 shuhard
 
31.05.13
11:25
(2) тогда реальный код в студию
4 ДенисЧ
 
31.05.13
11:25
тупо ради проверки
Видеокарта - встроенная интеловская?
5 kortun
 
31.05.13
11:27
(4) видеокарта да, встроенная интеловская
6 kortun
 
31.05.13
11:28
СтрокаПодключения = "Driver={Firebird/InterBase(r) driver};";
СтрокаПодключения = СтрокаПодключения + "Database=" + ЭлементыФормы.ФайлИмпорта.Значение + ";";
СтрокаПодключения = СтрокаПодключения + "UID=SYSDBA;";
СтрокаПодключения = СтрокаПодключения + "Password=masterkey;";
Connection = Новый COMОбъект("ADODB.Connection");
Connection.ConnectionString = СтрокаПодключения;
Connection.Open();
Recordset = Новый COMОбъект("ADODB.Recordset");
Попытка
Recordset.Open("select * from ""tCargo""", Connection);
Исключение
Сообщить(ОписаниеОшибки());
КонецПопытки;
7 ДенисЧ
 
31.05.13
11:28
(5) Отключи аппаратное ускорение видео...
8 kortun
 
31.05.13
11:29
если опен делаю в непопытки, то пишет
Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (ADODB.Recordset): Operation is not allowed when the object is open.
9 kortun
 
31.05.13
11:29
(7) а где его отключить?
10 ДенисЧ
 
31.05.13
11:29
(9) в свойствах рабочего стола...
11 ДенисЧ
 
31.05.13
11:30
(6)
Connection.Open();
рс = Connection.Execute("select * from ""tCargo""");
12 kortun
 
31.05.13
11:31
(10) отключил, проверил, также, перегружаться не надо после отключения?
13 ДенисЧ
 
31.05.13
11:32
(12) перегружаться не надо. Теперь проверь (11)
14 kortun
 
31.05.13
11:38
(11) проверил, делаю перебор строк, но потом опять закрывается, счас поймаю на какой строке.
15 shuhard
 
31.05.13
11:39
(8) [Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (ADODB.Recordset): Operation is not allowed when the object is open.]
и какое слово не понятно ?
16 kortun
 
31.05.13
11:41
(15) тут все понятно, непонятно почему в конструкции с попыткой нет этого сообщения и данные выбираются, а без конструкции выпадает в ошибку.
17 МихаилМ
 
31.05.13
11:57
(16)
   Исключение
       Сообщить( ИнформацияОбОшибке().Описание);
18 kortun
 
31.05.13
12:02
(17) к сожалению до исключения даже не доходит, просто закрывается
19 kortun
 
31.05.13
12:10
подскажите тогда может клиент какой, просто данные вытащит с файрберда, типа скуль сервер манагер студио
я скачал файрберд скуль студио, а он мне таблички не открывате, ругается
20 МихаилМ
 
31.05.13
12:24
(19)
для Firebird есть несколько драйверов.
попробуте еще какой-нибудь

клиент какой IBExpert.

если у Вас драйвер odbc можно поробовать поискать причину ошибки
в odbc trace log (предварительно запустив трассировку)
 
или поиграйтесь с типом  курсора : несовместимость курсоров бывает.
21 shuhard
 
31.05.13
12:27
(16)[тут все понятно]
не верю
было бы понятно, стояла бы нормальная блокировка
22 kortun
 
31.05.13
12:40
скачал драйвер Gemini InterBase ODBC Driver 2.0
все стало окей работать, всем спасибо.
23 kortun
 
31.05.13
12:42
Заодно удалось подключить базу как внешнии источники данных, что с драйвером Firebird/InterBase(r) driver не удавалось