Имя: Пароль:
1C
1С v8
Ошибка NewObject
,
0 ponaroshku
 
19.01.12
21:37
Собственно ночной сабж:)

Есть 2 подключения к базе

при запросе к одной из них выдается

{Форма.Форма.Форма(323)}: Значение не является значением объектного типа (NewObject)
       Запрос=ТекCOMОбъект.NewObject("Запрос");

Посоветуйте, куда глянуть и почему он ТекCOMОбъект может не воспринимать

Заранее спасибо:)
1 ДенисЧ
 
19.01.12
21:38
а что такое ТекCOMОбъект?
2 ponaroshku
 
19.01.12
21:43
(1) это вот это
       ОбъектПодключения = ОбъектПодключения +".COMConnector";
       ТекCOMПодключение = Новый COMОбъект(ОбъектПодключения);
       ТекCOMОбъект = ТекCOMПодключение.Connect(СтрокаПодключения);
записано в функции подключения

запрос же в соседней функции ПолучитьДанные(ТекCOMОбъект)
3 ponaroshku
 
19.01.12
21:43
(1) не правильно передала?
4 andrewks
 
19.01.12
21:44
(2) в СП не пробовала заглядывать?
5 ponaroshku
 
19.01.12
21:57
(4) это первое, что я сделала
6 andrewks
 
19.01.12
21:58
(5) отлично. и что тебе поведал дядька в шляпе?
7 ponaroshku
 
19.01.12
22:01
(6) ничего конкретного, поэтому и спросила
8 Rie
 
19.01.12
22:09
(0) "Значение не является значением объектного типа" как бы намекает на то, что ТекCOMОбъект имеет какое-то неподходящее значение. Какое?
9 andrewks
 
19.01.12
22:15
(7) после коннекта что даст ТипЗнч(ТекCOMОбъект)?
10 ponaroshku
 
20.01.12
04:58
(9) COM объект
11 Стальная Крыса
 
20.01.12
05:22
это надо сначала  :)

Форма.Форма.Форма(323) ...

код строк с 310 по 323 в студию
12 ponaroshku
 
20.01.12
05:54
чето я сама не поняла как убрала ошибку, где-то комментарий поставила))))))))))))
13 Wobland
 
20.01.12
06:14
(12) больше комментариев! ошибки будут исчезать с великой быстротой
14 skunk
 
20.01.12
06:25
эт точно ... самая безглючная программа это программа написаная в коментах
15 Tumakota
 
24.01.12
11:08
ПараметрСоединения = "File="""+СокрЛП(ПутьКБазе)+"""; Usr="""+СокрЛП(Пользователь)+""";Pwd="""+СокрЛП(Пароль)+""";";
   V8 = Новый COMОбъект("V82.COMConnector");
   
   Попытка                                                  
       Base_COM = V8.Connect (ПараметрСоединения);
   Исключение
       Предупреждение ("Ошибка открытия информационной базы");
   КонецПопытки;
   
   ПараметрыСтроки = Base_COM.NewObject("КвалификаторыСтроки", 20);
   ТЗ_COM = Base_COM.NewObject("ТаблицаЗначений");

Собственно вот такая ошибка, кто может подсказать как от нее избавится надо очень срочно, расскажу суть есть обработка, она раньше соединяла две базы 8.1 ну и что то там делала, 1 базу перевели на 8.2,  я поменял КОМконекктор на 82, но выдает такую ошибку может надо еще что то делать, собственно не цепляется к базе
16 Tumakota
 
24.01.12
11:09
+(15){Форма.Форма(38)}: Значение не является значением объектного типа (NewObject)
   ПараметрыСтроки = Base_COM.NewObject("КвалификаторыСтроки", 20);
17 Wobland
 
24.01.12
11:13
(16) это всё от того, что возврат не делаешь в исключении
18 Tumakota
 
24.01.12
11:17
(17) Да он к базе не подцепляется:(, причем тут возврат он обратно откатывает а к базе то серовно не цепляется
19 Стальная Крыса
 
24.01.12
11:17
напиши так:

   Попытка                                                  
       Base_COM = V8.Connect (ПараметрСоединения);
   Исключение
       Сообщить(ОписаниеОшибки());
       Предупреждение ("Ошибка открытия информационной базы");
   КонецПопытки;

может чего интересного увидишь в ошибке  :)
20 Wobland
 
24.01.12
11:21
(18) ну не помешает там Возврат. а так всё верное вроде
21 Tumakota
 
24.01.12
11:40
{Форма.Форма(33)}: Ошибка при вызове метода контекста (Connect): Произошла исключительная ситуация (V82.COMConnector.1): Ошибка при выполнении операции с информационной базой
Несовместимая версия файла базы данных '\\Server64x-adian\архивыконфигурацийклиентов\Кузбасс-Посуда\Кузбасс-посуда 82 2009/1Cv8.1CD'

Выдает ошибку, ссылаясь на КОМконнектор, но если я правильно понимаю то для соединения с 8.2 он правильный стоит
22 Wobland
 
24.01.12
11:41
"Несовместимая версия файла базы данных" - что бы это могло быть?
23 Tumakota
 
24.01.12
11:42
(22) Ну так я сразу же сказал что соединяюсь с 8.2, через 8.1 или так нельзя соединится, т.е обработку запускаю в 8.1 и соединяюсь с базой которую перевели на 8.2
24 Wobland
 
24.01.12
11:45
Кузбасс-посуда 82 2009 - на 8.2? есть ещё какой-то тонкий прикол с версиями платформы 13й и 14й
25 Tumakota
 
24.01.12
11:47
(24) да кузбасс посуда на 8.2.14.533
26 Wobland
 
24.01.12
11:50
попробовал, кстати, код из (15) - полёт нормальный. а какая стоит на той машине, с которой цепляешься?
27 H A D G E H O G s
 
24.01.12
11:52
win+r
regedit
enter
ctrl+home
ctrl+f
v82.comconnector
enter

и жать f3, пока не попадем в ветку ProgID, там рядом будет ветка
Inprocserver32, вот к ней то и будет путь к 1С, которая запускается.
28 Tumakota
 
24.01.12
11:52
(36) Машина одна, все делаю на своем компе, стоит две 1с и не могу соединить базы:(
29 Wobland
 
24.01.12
11:53
(27) спасибо
30 Tumakota
 
24.01.12
12:04
Серовно выдает ошибку даже после регистрации regsvr32.exe "C:\Program Files\1cv82\8.2.14.533\bin\comcntr.dll" что несовместимые версии
31 Wobland
 
24.01.12
12:11
(30) сможешь 10й байт из \\Server64x-adian\архивыконфигурацийклиентов\Кузбасс-Посуда\Кузбасс-посуда 82 2009/1Cv8.1CD назвать?
32 Tumakota
 
24.01.12
12:15
(31) Не понял что то, мне помощь нужна а не отвечать на вопросы, и причем очень срочно буду очень благодарен
33 Wobland
 
24.01.12
12:15
(32) ну тогда помогаю: у тебя Несовместимая версия файла базы данных
34 Tumakota
 
24.01.12
12:18
(32) Да это я как бы уже и не один раз прочитал :) в 1с-ке, т.е вывод что я не смогу щас соединить две базы?
35 Wobland
 
24.01.12
12:19
(34) подозреваю, что по указанному пути у тебя не 8.2 лежит, вариантов как бы особо нет. в 9м-10м байте лежит версия
36 Tumakota
 
24.01.12
12:22
(35) Как у меня по указанному пути не может лежать 8.2 если я запускаю 8.2.14.533 и добавляю базу по этому пути
37 Reset
 
24.01.12
12:23
(32) Зачет
38 Wobland
 
24.01.12
12:24
(36) враги украли, свет не вовремя моргнул... да мало ли ;)
39 Wobland
 
24.01.12
12:26
а вот если база спокойно открывается пофигуратором и одновременно туда же нельзя законнектится, то это чушь какая-то