v8.2 Управляемые формы: Пример реализации подключения глобального обработчика ожидания без изменения конфигурации

Данная публикация является результатом синтеза статьи ""Событие "ПриИзмененииПодсистемы". Миф или реальность?" http://infostart.ru/public/178957/ и аналогом (подход к реализации другой, хотя предложенный в статье подход тоже работает для УФ) работы обработки статьи "Обработки нет, но она есть" http://infostart.ru/public/66670/

Данная публикация является результатом синтеза статьи «Событие «ПриИзмененииПодсистемы». Миф или реальность?» //infostart.ru/public/178957/ и аналогом (подход к реализации другой, хотя предложенный в статье подход тоже работает для УФ) работы обработки статьи «Обработки нет, но она есть» //infostart.ru/public/66670/

Обработка в приложении не имеет интерфейса, рботает «в фоне» и выполняет функционал (и содержит код) из статьи «»Событие «ПриИзмененииПодсистемы». Миф или реальность?», т.е. выводит оповещение при смене текущей подсистемы. 

Надеюсь что я не нарушил никаких авторских прав. Данная статья призвана просто расширить возможные варианты и подходы работы с УФ.

Готов изменить обработку, если авторы перечисленных статей выскажутся в защиту своих авторских прав.

Как работает обработка.

Запускаете обработку в любой конфигурации на УФ и переключаетесь по подсистемам. Результат не заставит себя долго ждать.

Спасибо.

13 Comments

  1. juntatalor

    Отличная обработка, решает проблему с зависание курсора (как было в оригинальной публикации), но есть одно «но»: отлавливает переключения между ВСЕМИ окнами конфигурации, а не только между окнами подсистем. Также вызывается при вызове окна «Все функции» Надо заменить

    НазваниеПодсистемы = СтрЗаменить(НавигационнаяСсылка, «e1cib/navigationpoint/», «»);

    На

    Если Найти(НавигационнаяСсылка, «e1cib/navigationpoint/») = 0 Или НавигационнаяСсылка = «» Тогда

    ПодключитьОбработчикОжидания(«ПолучитьТекущуюПодсистему», 0.4, Истина);

    Возврат;

    КонецЕсли;

    НазваниеПодсистемы = СтрЗаменить(НавигационнаяСсылка, «e1cib/navigationpoint/», «»);

    Может быть есть еще какие-то места, где вызов срабатывает неверно, но я их пока не нашел.

    Reply
  2. MarSeN

    (1) juntatalor

    Спасибо

    Данная статья была опубликована чтоб продемонстрировать именно возможность подключения глобального обрвботчика с помощью внешней обработки. Данный подход открывает возможность выполнять определенные периодические действия в системе без модификации конфы. Думаю многих эта статья натолкнет на некотовые размышления ))

    Reply
  3. TrinitronHome

    (2) спасибо за идею, пригодится на практике

    Reply
  4. MarSeN

    (1)(3)

    Для режима с закладками немного другой вызов должен быть так как нужно именно окно.

    См. приложенный файл. Там реализован только вывод сообщения.

    Reply
  5. juntatalor

    (4) насколько я понял, он работает и в обычном режиме, без закладок, то есть является универсальным.

    Reply
  6. MarSeN

    (5) juntatalor

    Да, приложенный в комментах файл/метод универсальный

    Reply
  7. Гость

    (6) иначе подключение обработчика ожидания в режиме закладок просто не срабатывает. Начал разбираться, а оказывается в комментариях уже все есть 🙂

    Reply
  8. TrinitronHome

    (4) большое спасибо тебе…

    Reply
  9. margo_m09

    хорошая идея, сразу понравилась обработка, даже если и есть какие недочеты пока при использовании, не заметили))))

    Reply
  10. gr0ck

    Обработка хорошая!) Натолкнула на одну идею

    Reply
  11. roadman

    Отличная обработка, спасибо!

    Reply
  12. idw

    А как данную обработку использовать? Как сделать, чтобы постоянно работал обработчик? Не будешь же при запуске 1С, каждый раз запускать обработку.

    Reply
  13. MarSeN

    (12)idw,

    Запуск 1С с обработкой в командной строке вам в помощь

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *