| 
    
            
         
         | 
    
  | 
V83.COMConnector или командная строка? | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        abuca    
     24.02.17 
            ✎
    14:59 
 | 
         
        Ситуация такова:
 
        Есть "вспомогательная" конфигурация, которая постоянно опрашивает устройство и накапливает в свои справочники и регистры его данные. Есть другая, "Основная" конфигурация, которой нужны эти данные по запросу пользователя. Вопрос: Нужно, чтобы "Основная" конфигурация могла "запустить" "вспомогательную", чтобы та могла включить опрос устройств и дать необходимые данные. через V83.COMConnector могу получить накопленные данные, но вряд-ли смогу инициировать периодические опросы устройств. через командную строку запускается "Вспомогательная" с "ненужными" пользователю настройками и он ее закрывает... Можно ли запустить вторую конфигурацию из первой "неявно" и как тогда получать из нее данные, желательно не через обмены, а через COM подключение?  | 
|||
| 
    1
    
        abuca    
     24.02.17 
            ✎
    15:27 
 | 
         
        Получилось!
 
        Экспортные функции общих модулей доступны и выполняются. Теперь посмотрим в сторону выполнения фоновых задач на опросы устройств. Единственно, не понимаю, как поймать отладчиком "вспомогательную" базу. Открываю "Вспомогательную" в конфигураторе - выполняю COMподключение - в отладчике никого.  | 
|||
| 
    2
    
        abuca    
     24.02.17 
            ✎
    15:28 
 | 
         
        (1) это при подключении через V83.COMConnector     
         | 
|||
| 
    3
    
        MM    
     24.02.17 
            ✎
    15:34 
 | 
         
        Описание файла comcntrcfg.xml есть здесь:
 
        http://its.1c.ru/db/v839doc/bookmark/adm/TI000000375  | 
|||
| 
    4
    
        abuca    
     24.02.17 
            ✎
    16:13 
 | 
         
        (3)Спасибо.
 
        прежде чем (1) и (2) действовал по v8: отладчик Com-Соединения Однако, допустил ошибку в модуле внешнего соединения. Подключение в отладке происходило и падало через секунду из-за ошибки. Это заметил уже, когда удалил все из процедуры ПриНачалеРаботыСистемы(). И отладчик выполнил останов на КонецПроцедуры. Сейчас ищу ошибку.  | 
|||
| 
    5
    
        abuca    
     24.02.17 
            ✎
    16:15 
 | 
         
        (3) Кстати, спасибо. Никогда сюда не заглядывал. Здесь очень много вкусного)))     
         | 
|||
| 
    6
    
        abuca    
     24.02.17 
            ✎
    19:12 
 | 
         
        Нет. Не бывает легких решений...
 
        Фоновые задачи не выполняются, а в регламентные их перекладывать только, если ничего не получится. Выполняю запуск и подключение к базе. СтрокаПодключения = "File=" + Файл + "; Usr=" + Пользователь + "; Pwd=" + Пароль + "; SchJobDn=N;"; Попытка // Соединитель = Новый COMObject("V83.COMConnector"); Соединитель = Новый COMObject("V83.Application"); мСоединение = Соединитель.Connect(СтрокаПодключения); Исключение Сообщить("Не удалось подключиться: " + ОписаниеОшибки()); КонецПопытки; Параметр SchJobDn никакого влияния не оказывает. Есть мысли?  | 
|||
| 
    7
    
        Остап Сулейманович    
     24.02.17 
            ✎
    19:43 
 | 
         
        (6) "Есть мысли?". Мысли есть. Все решение - в топку.
 
        Если уж так необходимо замутить все именно на 1С - архитектура должна быть примерно такой : Слушатель устройства -> внешний источник данных (в разделенном режиме доступа) -> Запрашиватель данных. Все. Никто никого из под себя не запускает. Никаких регламентов (зависающих не пойми когда и почему). Никаких взаимоблокировок когда нужно опросить устройство...  | 
|||
| 
    8
    
        abuca    
     24.02.17 
            ✎
    19:58 
 | 
         
        Внешний источник данных? Предполагал совместить слушатель + внешний источник данных. в 1 конфигурации. Средствами OLE отдавать эти данные.
 
        Вроде все получилось. Не дает покоя другая мысль. Хочу чтобы Внешний источник данных+Слушатель запускалось из Запрашивателя данных ))) Оно и запускается, но фоновые опросы не работают при этом... Последний вариант - переписывать "Внешний источник данных + слушатель" по подобию БСП или БПО и склеивать с Запрашивателем данных, вешая на него фоновые опросы устройств. Чего оччень! не хочется.  | 
|||
| 
    9
    
        Остап Сулейманович    
     24.02.17 
            ✎
    20:07 
 | 
         
        (8) "Слушатель запускалось из Запрашивателя ".
 
        А если когда надо слушать, а оно занято? И если пофиг на постоянное прослушивание - тогда совместить "слушать" с "запрашивать" в одной конфигурации и не морочить balls.  | 
|||
| 
    10
    
        abuca    
     24.02.17 
            ✎
    20:18 
 | 
         
        (9) Сделаю так. При старте системы будет стартовать СлушательВнешнийИсточник.
 
        Запрашиватель с него получит данные не Automation а COMconnector - так быстрее.  | 
|||
| 
    11
    
        Остап Сулейманович    
     24.02.17 
            ✎
    20:19 
 | 
         
        (10) Получать/писать данные из базы SQL можно без "Automation а COMconnector".     
         | 
|||
| 
    12
    
        abuca    
     24.02.17 
            ✎
    20:25 
 | 
         
        Ну, база не SQL. 
 
        Сейчас попробовал так, получается. Даже команды на устройство проходят с Запрашивателя через Слушатель на устройство. Не хотел, чтобы в явном виде висел Слушатель. Он нужен только для первичной настройки оборудования. Придется создать пользователей с правами.  | 
|||
| 
    13
    
        abuca    
     24.02.17 
            ✎
    20:26 
 | 
         
        (12) *первичной настройки и сбора данных     
         | 
|||
| 
    14
    
        abuca    
     25.02.17 
            ✎
    14:17 
 | 
         
        Тему можно закрыть.     
         | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |