8.х Програмное закрытие окон сообщений об ошибках

Тема в разделе "Отчеты и обработки для "1С:Предприятие 8"", создана пользователем IT_PROGRAMMIST, 12 янв 2012.

  1. TopicStarter Overlay
    IT_PROGRAMMIST
    Offline

    IT_PROGRAMMIST

    Регистрация:
    27 дек 2010
    Сообщения:
    24
    Симпатии:
    0
    Баллы:
    1
    Добрый день. УПП 1.3.14.3, пл.8.2.14.540.
    Такая ситуация: передо мной стоит задача доработать обработку проведения по партиям(чтобы обработка при отключении из-за конфликта блокировок- продолжала работать).
    При конфликте блокировок вылетает окно с ошибкой(Ошибка выполнения запроса),после чего нужно нажать на кнопку закрыть и заново запустить обработку. Можно ли как-нибудь программно закрыть окно с ошибкой?
  2. mialord
    Offline

    mialord Модераторы Команда форума Модератор

    Регистрация:
    31 июл 2009
    Сообщения:
    5.398
    Симпатии:
    40
    Баллы:
    54
    Можно чистить чтобы не мешалось

  3. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Сттранный путь решения проблемы...
    Лучше сделать восстановление в попытке и анализировать исключение.
  4. TopicStarter Overlay
    IT_PROGRAMMIST
    Offline

    IT_PROGRAMMIST

    Регистрация:
    27 дек 2010
    Сообщения:
    24
    Симпатии:
    0
    Баллы:
    1
    эта функция ОчиститьСообщения() очищает все сообщения, показывающиеся в служебных сообщениях(окно с ошибкой эта функция не закрывает), а мне нужно,чтобы вылетающее окно с ошибкой закрывалось
  5. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Объект виндов WScript.Shell метод SendKeys посылаем команду Ctrl-Shift-Z
  6. TopicStarter Overlay
    IT_PROGRAMMIST
    Offline

    IT_PROGRAMMIST

    Регистрация:
    27 дек 2010
    Сообщения:
    24
    Симпатии:
    0
    Баллы:
    1
    Спасибо за совет. я че-то не додумался. Так намного проще))
  7. olbig
    Offline

    olbig

    Регистрация:
    16 мар 2012
    Сообщения:
    3
    Симпатии:
    0
    Баллы:
    1
    Процедура ОсновныеДействияФормыТест6(Кнопка)

    Код:
    //В системе "1С:Предприятие" часто возникает ситуация, когда нужно закрыть окно сообщений, появляющееся при
    //вызове метода Сообщить. Стандартно это окно закрывается при нажатии комбинации клавиш <Ctrl>+<Shift>+<Z>,
    //но можно сделать это и программно.
    //В ходе выполнения некоторого кода открывается окно сообщений
    Сообщить("Сегодня: " +ТекущаяДата());
    Пауза(10);
    //Выполнение другой части кода
    //Теперь нам необходимо закрыть окно сообщений
    WshShell = Новый COMObject("WScript.Shell");
    WshShell.SendKeys("^+z");   //имитируем нажатие
    WshShell.SendKeys("^+я");   //для случая, если текущей является русская раскладка клавиатуры
    //В результате выполнения данного кода окно сообщений будет закрыто. Теперь поясним работу этого небольшого куска программы.
    //SendKeys(String) - имитируется нажатие клавиши или последовательности клавиш, указанных в параметре String.
    //В качестве параметра можно указывать как алфавитно-цифровые символы, так и символы специальных клавиш,
    //например "Enter", "Tab", "F1", "Alt", "Shift", "Ctrl" и т.д. Для указания клавиш "Alt", "Shift", "Ctrl" существуют специальные коды:
    //· "Shift" - +;
    //· "Ctrl" - ^;
    //· "Alt" - %.
    //Если возникнет необходимость передать специальные символы именно как символы, а не команды, нужно заключать
    //их в фигурные скобки, например {+}.
    КонецПроцедуры

Поделиться этой страницей