Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 4, свеженьких 1
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )

> Переключение между окнами двух баз          
Bernet Подменю пользователя
сообщение 13.03.19, 17:01
Сообщение #1

Ветеран
Иконка группы
Группа: Местный
Сообщений: 789
Из: Хмельницкий
Спасибо сказали: 250 раз
Рейтинг: 226.7

Всем привет!

Платформа 8.3.13

Дано: Предположим есть две базы 1С с разными конфигурациями. Мне нужно при определенных действиях пользователя проверить запущена ли вторая база 1С, если не запущена - то запустить, иначе активировать окно второй 1С.

Вопрос: Есть ли у кого-то пример как можно проверить открыта ли вторая база 1С (причем нужно определить что это именно та вторая база, их может быть 100), и если открыта - то активизировать окно? может есть какой-то скрипт? пока все примеры что находил - это утилитки на С# которые выводят на форму перечень запущенных процессов 1С с возможностью их закрытия. Мне же нужно как-то получить этот перечень в 1С, среди всех найти нужный и активировать окно с ним...



Signature
Дописываю конфигурации на платформе 8.х.
- Управление торговым предприятием для Украины
- Управление производственным предприятием для Украины
- Управление небольшой фирмой для Украины
- Бухгалтерия для Украины;
- Общепит для Украины
- Ресторан (Рарус)
- Розница

pablo Подменю пользователя
сообщение 13.03.19, 17:10
Сообщение #2

Ветеран
*******
Группа: Команда (модераторы)
Сообщений: 959
Из: Одесса-Луганск
Спасибо сказали: 146 раз
Рейтинг: 107.9

Хинт: Во второй базе настройте заголовок окна, чтобы он содержал имя базы и сервера, а затем уже допиливать внешнюю утилитку, чтобы она по заголовку окна искала/активизировала/открывала.

Как-то так
    Если РольДоступна("ПолныеПрава") Тогда    
        ЗаголовокСистемы = ЗаголовокСистемы + СтрокаСоединенияИнформационнойБазы();
    КонецЕсли;



Signature
Правильно поставленный вопрос содержит до 90% ответа.

Спасибо сказали: Bernet,

Vofka Подменю пользователя
сообщение 13.03.19, 17:36
Сообщение #3

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 12939
Из: Киев
Спасибо сказали: 3930 раз
Рейтинг: 3061.4

У меня когда-то была подобная задача - выводить на передний план окно сторонней программы, если оно не на переднем плане или свернуто. Делал я это с помощью внешней компоненты, окно искалось по заголовку. Только средствами 1С вряд ли это можно сделать.

О, вот и компонента http://pro1c.org.ua/index.php?showtopic=26216


Signature
Услуги 1С программиста

Спасибо сказали: Bernet,

Bernet Подменю пользователя
сообщение 14.03.19, 9:32
Сообщение #4

Ветеран
Иконка группы
Группа: Местный
Сообщений: 789
Из: Хмельницкий
Спасибо сказали: 250 раз
Рейтинг: 226.7

Vofka @ Вчера, 17:36 * ,
Спасибо, посмотрю.
Я думал попробовать Sell-овской командой типа tasklist получить все процессы, фильтрануть их чтобы остались только процессы 1С, а дальше играться с ID процесса как-то. Но не знаю как получить из командной строки Shell результат команды, т.е. грубо говоря считать результат команды в какую-то текстовую переменную в 1С.


Signature
Дописываю конфигурации на платформе 8.х.
- Управление торговым предприятием для Украины
- Управление производственным предприятием для Украины
- Управление небольшой фирмой для Украины
- Бухгалтерия для Украины;
- Общепит для Украины
- Ресторан (Рарус)
- Розница

Vofka Подменю пользователя
сообщение 14.03.19, 10:47
Сообщение #5

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 12939
Из: Киев
Спасибо сказали: 3930 раз
Рейтинг: 3061.4

Bernet, я сомневаюсь, что process id, в данном случае, что-то полезное вам даст. Процесс может быть один, окон от него может быть много. Поэтому тут нужно именно окно искать. Ваша задача, на мой взгляд, сводится к тому, что бы в одной программе как-то узнать заголовок окна второй программы (например, как pablo подсказал либо по каком-либо другому признаку/правилу) и с помощью компоненты его активировать.


Signature
Услуги 1С программиста

Bernet Подменю пользователя
сообщение 14.03.19, 10:51
Сообщение #6

Ветеран
Иконка группы
Группа: Местный
Сообщений: 789
Из: Хмельницкий
Спасибо сказали: 250 раз
Рейтинг: 226.7

Vofka @ Сегодня, 10:47 * ,
Попробовал вашу компоненту, получилось активировать окно второй 1С по заголовку. Жалко только что там метод а не функция - программно непонятно смогло оно окно открыть или нет, теперь надо придумать каким способом узнать открыта вторая 1С или нет, если нет то запустить


Signature
Дописываю конфигурации на платформе 8.х.
- Управление торговым предприятием для Украины
- Управление производственным предприятием для Украины
- Управление небольшой фирмой для Украины
- Бухгалтерия для Украины;
- Общепит для Украины
- Ресторан (Рарус)
- Розница

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 23.05.19, 16:01
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!

Курсы валют: доллар США к гривне Курсы валют: евро к гривне Курсы валют: российский рубль к гривне