Имя: Пароль:
1C
1С v8
COM соединение
,
0 LenaAt
 
18.04.18
12:49
Обращаюсь к другой базе через COM соединение. В файловом варианте все работает, а в клиент - серверном выдает ошибку

Запрос = БазаБух.NewObject("Запрос");
Значение не является значением объектного типа (NewObject)

В чем может быть проблема? comcntr.dll на сервере зарегистрирована
1 LenaAt
 
18.04.18
12:52
2 LenaAt
 
18.04.18
12:53
1+ В файловой все тоже самое и все работает
3 Lexey_
 
18.04.18
13:05
(1) там даже написано, что нужно сделать
4 LenaAt
 
18.04.18
13:10
(3) Имя пользователя и пароль указаны верно. Я же говорю, что в файловом и клиент - серверном варианте у меня две идентичные базы.
5 Вафель
 
18.04.18
13:13
инициализация не прошла и в Базабух = неопределено
6 Вафель
 
18.04.18
13:14
показывай весь код польностью
7 LenaAt
 
18.04.18
13:16
Попытка
        ПараметрыСоед = "Srvr=""***"";Ref=""***"";Usr=""***"";Pwd=""***"";";
        V83COMConnector = Новый COMОбъект("V83.COMConnector");
        БазаБух = V83COMConnector.Connect(ПараметрыСоед);
    Исключение
        Сообщить(ОписаниеОшибки());
    КонецПопытки;
    
    Запрос = БазаБух.NewObject("Запрос");
    Запрос.Текст = "ВЫБРАТЬ НАЧАЛОПЕРИОДА(Период) КАК Период, СчетДт, Сумма, СубконтоДт2, Содержание
    |ИЗ РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто(
    |        &НачПериода,
    |        &КонПериода,
    |        Активность = Истина И СчетДт = &Счет68_1 И СубконтоДт2 = &ФНС)";
    Запрос.УстановитьПараметр("НачПериода", НачалоДня(Отчет.НачДата));
    Запрос.УстановитьПараметр("КонПериода", КонецДня(Отчет.КонДата));
    Запрос.УстановитьПараметр("Счет68_1", БазаБух.ПланыСчетов.Хозрасчетный.НДФЛ);
    Запрос.УстановитьПараметр("ФНС", БазаБух.Справочники.РегистрацииВНалоговомОргане.НайтиПоКоду("0261"));
    Выборка = Запрос.Выполнить().Выбрать();
8 LenaAt
 
18.04.18
13:17
(6) Может что не так с правами доступа к COM приложению?
9 mehfk
 
18.04.18
13:18
Сообщить(ОписаниеОшибки());
Возврат;
10 LenaAt
 
18.04.18
13:36
(9) спасибо, конечно

В файловом варианте работает com сервер на моей машине (W7), а в клиент - серверном com сервер на сервере (W2012Server). Скорее всего, проблема с правами пользователя, под которым работает com сервер. Вот только что это за проблема?
11 LenaAt
 
18.04.18
13:45
Всем спасибо, проблему решила.
Причина на картинке, если кому интересно.

https://hostingkartinok.com/show-image.php?id=b622f60d6bcf6286e9ff84315e1b9044
12 PiotrLoginov
 
18.04.18
13:55
Респект за самостоятельное решение и информацию. Хотя сама проблема давно известна и должна легко гуглиться.

Досадно, что когда эта тема только появилась, я не въехал в ситуацию и ничего не написал.
13 LenaAt
 
18.04.18
14:16
(12) Решение я нашла вот здесь, в комментариях

https://forum.infostart.ru/forum86/topic81271/
14 LenaAt
 
18.04.18
14:19
13+

Вот этот комментарий, который помог

Эта проблема возникает, поскольку удостоверение по умолчанию для приложения установлен в качестве интерактивного пользователя. Интерактивный пользователь относится пользователь, который вошел в систему непосредственно с консоли сервера. Если интерактивный пользователь не существует, приложение дает сбой при попытке предполагают Взаимодействующий пользователь.
Решение
Чтобы устранить эту проблему, измените удостоверение для серверного приложения для запуска под конкретного пользователя. Для этого на вкладке удостоверение диалогового окна Свойств приложения выберите параметр Указанный пользователь.