Имя: Пароль:
1C
1С v8
И снова COM объекты между серверными вызовами
0 NittenRenegade
 
24.09.14
10:01
Где-то я похоже затупил, но никак не догадаюсь где.
Дано:
Предприятие 8.3 (8.3.5.1098), ПБ 3.0 (3.0.35.26)
Форма внешней обработки, на сервере создается COMОбъект с подключением к дугой базе.

Требуется: сохранить подключение между серверными вызовами с формы.

Решение:
сначала сделал через переменную...

&НаСервере
Перем Подключение Экспорт;

Но она чиста при следующем вызове.

Подумал сохранить во временное хранилище как http://kb.mista.ru/article.php?id=787 и добавить адрес во временные настройки пользователя:

&НаСервере
// Подключение к базе через com
Функция Подключиться()
    
    //Проверить возможность подключения
    БазаБух = Новый COMОбъект("V81.COMConnector");
    СтрокаСоединения = "File=""" + СокрЛП(Отчет.ПодключениеПуть) + """;usr=""" + СокрЛП(Отчет.ПодключениеПользователь) + """;pwd=""" + СокрЛП(Отчет.ПодключениеПароль) + """;";
           
    Попытка         
        Подключение   = БазаБух.Connect(СтрокаСоединения);
    Исключение
        Сообщить("Не удалось подключиться к базе!", СтатусСообщения.Важное);
        Сообщить(ОписаниеОшибки());
        Возврат Ложь;
    КонецПопытки;
    

    АдресCOMОбъекта=ПоместитьВоВременноеХранилище(БазаБух);
...

Падает с ошибкой "Переданное значение не может быть помещено во временное хранилище"

Что я делаю не так?
1 Milok
 
24.09.14
10:14
А если так:

&НаКлиенте

Перем Подключение Экспорт;
2 Torquader
 
24.09.14
10:16
(1) Так ему же на сервере надо, а не на клиенте.
3 Milok
 
24.09.14
10:19
(2) Больше вариантов для сохранения COMОбъекта в УФ нет
4 H A D G E H O G s
 
24.09.14
10:20
(3) ОбщийМодуль с повторно возвращаемыми значениями немного вам поможет
5 Остап Сулейманович
 
24.09.14
10:21
Есть еще мулька с повторно используемыми значениями.
6 Milok
 
24.09.14
10:23
(4) мне показалось что область работы ограничена только имеющейся формой
7 Defender aka LINN
 
24.09.14
10:33
(3) В Структуру его запихнуть. Структуру во временное хранилище помещать можно :)
Но моет перестать работать с любым новым релизом платформы :(
8 NittenRenegade
 
24.09.14
10:42
(4) Доработка конфигурации исключается. Она девственница и радует тем, что обновляется самостоятельно =)
9 Serginio1
 
24.09.14
10:50
(8) Использовать COM+
10 Torquader
 
24.09.14
23:46
(9) Так COM+ - это создание пула готовых объектов - для 1С объект каждый раз создаётся заново, то, что его достали из пула, 1С вообще не знает.
11 Serginio1
 
24.09.14
23:58
(10) COM+ это сервис и подключение уже к запущеному сервису
Независимо от того, куда вы едете — это в гору и против ветра!