Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Открытие нескольких форм через COMОбъект

Открытие нескольких форм через COMОбъект
Я
   КВА
 
14.02.18 - 13:26
Добрый день, прошу подсказать. Хочу сделать COMОбъект соединение из одной базы в другу, так что бы при нажатии на кнопку открывалась форма обработки. И таких вызовов может быть несколько, значит и несколько форм открытых. Встрял на том что любую форму открывает только модально. через операторы:
ОткрытьМодально();
или
DoModal();
Врезультате модальное окно блокирует последующие нажатие кнопки для инициализации еще одного окна.

Ниже код.
Если  ВременноеХранилище= Неопределено Тогда 
                
        БазаИсточник=Новый COMОбъект("V83.Application");
        БазаИсточник.Connect("File=""D:\Кочеров\ИнфБазы\Бух(демо)"";Usr=""Любимов (администратор)"";");
        БазаИсточник.visible=false;
        
        Структура               = New Структура("Объект", БазаИсточник);
         
        ВременноеХранилище = ПоместитьВоВременноеХранилище(Структура,Новый УникальныйИдентификатор());
        
    Иначе 
        БазаИсточник=ПолучитьИзВременногоХранилища(ВременноеХранилище).Объект;
        
    КонецЕсли;    
    
    Документ = БазаИсточник.Справочники.Контрагенты;
    Документ.ПолучитьФормуСписка().ОткрытьМодально()//Открыть();
 
 
   Cool_Profi
 
1 - 14.02.18 - 13:27
Совсем дурная идея. КОМ не для этого изобретался
   КВА
 
2 - 14.02.18 - 13:31
Согласен, но вот хотелось понять можно ли это реализовать, и почему открытие только модальное. Читал про актив сервер, не нашел ответа...
   КВА
 
3 - 14.02.18 - 13:34
Поначалу подключался из 3.0 к базе 2.0 Думал может может из за того что вызов из управляемых форм. Потом тоже самое проделал и с однотипными базами. Открытие только модальное (
   Адинэснег
 
4 - 14.02.18 - 13:52
*буэ*
   Alex87r
 
5 - 14.02.18 - 13:55
(0) Зачем тебе открывать несколько форм в другой базе? Может быть по другому сделать
   КВА
 
6 - 14.02.18 - 14:05
(5)Смысл вот в чем, есть самописные программы, Менеджер работает в оной базе №1, ему звонят на телефон, он берет трубку, далее идет поиск звонящего в другой базе №2, далее от условия если звонящий клиент, открывается обработка с скучай инфы, регистры, документы, справочники. По мере разговора и заполнения всей этой информации, ему могут звонить еще пару человек.
   КВА
 
7 - 14.02.18 - 14:08
(5) Как организовать вот такую работу? я предложил использовать ctrl + c для соседней базы ))
   drcrasher
 
8 - 14.02.18 - 14:09
(7) какая религия запрещает использовать обмены?
   КВА
 
9 - 14.02.18 - 14:10
(8) Обмен через COMОбъект?
   КВА
 
10 - 14.02.18 - 14:17
(8) То что нарисовать форму, и заполнять данными из другой базы, потом создавть документы, движение по регистрам. Это понятно что будет вернее всего. Вопрос у меня почему не работает открытие формы?
 
 Рекламное место пустует
   Alex87r
 
11 - 14.02.18 - 15:38
(10) Просто ком медленно работает. У менеджер на телефоне кто то висит, пока он зайдет в базу..
Сделайте еще одну базу, в которою при помощи обменов будет сваливаться вся нужная информация.
   SSSSS_AAAAA
 
12 - 14.02.18 - 16:06
(6) И зачем тут COM? Почему именно СОМ? Просто запустить нужную базу что мешает? Почему надо именно через задний проход?
   Tateossian
 
13 - 14.02.18 - 16:10
Используй Automation, там есть даже свойство Visible. И работай как в родном клиенте.
   Tateossian
 
14 - 14.02.18 - 16:11
Кстати, в Консолидации активно юзается Automation Server, механизмы работы можно там посмотреть.
   КВА
 
15 - 14.02.18 - 16:22
(13) Automation сервер (Automation server)
Свойства:

Visible (Visible)

Методы:

Connect (Connect)
NewObject (NewObject)
String (String)

Описание:

Система 1С:Предприятие может использоваться внешними приложениями в качестве Automation-сервера. При работе в качестве Automation-сервера 1С:Предприятие предоставляет доступ ко всем свойствам и методам своего глобального контекста, а также включение и выключение пользовательского интерфейса (главного окна 1С:Предприятия 8). Кроме того, Automation-сервер 1С:Предприятия имеет дополнительные свойства и методы для выполнения действий, специфичных для работы в режиме Automation.
Основное назначение Automation-сервера 1С:Предприятие в управлении приложением 1С:Предприятия 8 из других приложений и выполнение действий аналогичных интерактивным действиям, например, построение отчетов.
Для запуска системы 1С:Предприятие в качестве Automation-сервера из внешнего приложения, выполняется следующая последовательность действий:
создается COMОбъект с идентификатором V83.Application (для тонкого клиента V83C.Application);
   КВА
 
16 - 14.02.18 - 16:23
(13) я же и использую Automation сервер, не?))
   КВА
 
17 - 14.02.18 - 16:27
(11) я соединение планирую сохранять, и последующии вызовы делать через уже созданное. Работает нормально, только монопольно. Не магу открыть несколько форм. В этом и воппос.
   Tateossian
 
18 - 14.02.18 - 16:45
(17) Я затупил, сорян.

Но

БазаИсточник.visible=false;

!!!!
   Tateossian
 
19 - 14.02.18 - 16:49
(12) В старой бухгалтерии отчеты бухгалтерские были с веселой директивой #Если Клиент ДелаемКарточкуОСВ() #КонецЕсли. А теперь попробуй автоматизировать процесс формирования отчета на сервере безе переписьки отчета.

Решение очевидное: открывать на сервере клиентское приложение и делать что нужно.
   КВА
 
20 - 14.02.18 - 17:12
(18) В точку, разобрался спасибо!

Список тем форума
Рекламное место пустует  Рекламное место пустует
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует