Документация 0.4 Справочник действий

Ввести текст

ui.typeInto · Windows

Вводит текст в поле Windows-приложения

Вводит текст в поле Windows-приложения: логин, сумму, номер документа. Кириллица и любые символы вводятся независимо от раскладки клавиатуры.

Свойства #

Свойство Имя в файле Значение Обязательное По умолчанию Описание
Селектор selector селектор Windows да —
Текст text текст да —
Очистить поле clearBefore да/нет нет да
Способ method выбор из списка нет auto auto — записать значение (ValuePattern), если поле это поддерживает, иначе ввод с клавиатуры. Значения: auto, value, keyboard.
Специальные клавиши specialKeys да/нет нет нет Распознавать [Enter], [Tab], [Esc], [Ctrl+A], [F1] … в тексте; символ [ пишется как [[
Таймаут, мс timeoutMs число нет 10000

Результат #

Действие не возвращает значений.

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

  • Селектор (selector) — путь к элементу от окна приложения. Задаётся пикером: кнопка «Указать на экране», наведите курсор на элемент и нажмите Ctrl. Проверить, что селектор находит элемент, — «Подсветить»; поправить вручную — «Изменить». Подробнее — Пикер элементов.
  • Текст (text) — с подстановками {{ }}: {{ client['ФИО'] }}. Пароль из orch.getCredential подставляйте так же — в логах он скрыт.
  • Очистить поле (clearBefore, включено) — заменить содержимое поля; выключено — дописать в конец.
  • Способ (method):
    • auto — записать значение напрямую (ValuePattern), если поле это поддерживает и не только для чтения; иначе ввод с клавиатуры;
    • value — только напрямую;
    • keyboard — всегда с клавиатуры: робот активирует окно, ставит фокус в поле и печатает. Нужен полям, которые реагируют на нажатия (автодополнение, маски ввода).
  • Специальные клавиши (specialKeys) — распознавать в тексте [Enter], [Tab], [Esc], [Backspace], [Delete], стрелки [Up] [Down] [Left] [Right], [Home], [End], [F1]…[F12] и сочетания вида [Ctrl+A]. Символ [ пишется как [[. Со специальными клавишами текст вводится только с клавиатуры.
  • Таймаут, мс (timeoutMs, по умолчанию 10000) — сколько ждать появления элемента; поиск повторяется каждые 200 мс. Если элемент нашёлся за 2 с и дольше, в лог пишется совет уточнить селектор.

Ошибки #

Код Причина и что делать
ElementNotFound Элемент не найден за время ожидания: окно не открыто, свёрнуто под другим или интерфейс изменился. Проверьте селектор кнопкой «Подсветить», при необходимости укажите элемент заново
InvalidArgument Способ value, а поле не принимает значение напрямую; специальные клавиши со способом value; незакрытая [ или неизвестная клавиша; не удалось сделать окно активным (ввод отменён, чтобы не печатать в чужое окно)
Timeout Поле остаётся недоступным до конца таймаута
Unknown Windows не принял ввод с клавиатуры — часто окно программы запущено от администратора, а робот нет

При ошибке робот сохраняет снимок экрана: в студии он открывается по ссылке «Открыть скриншот» в «Лог», в оркестраторе — на странице задания.

Пример #

{
  "type": "ui.typeInto",
  "props": {
    "selector": { "kind": "uia", "path": [ { "processName": "Tulpar.TestApp", "controlType": "Window", "name": "Tulpar Test App" }, { "controlType": "Edit", "automationId": "txtName" } ] },
    "text": "{{ userName }}", "clearBefore": true, "method": "auto"
  }
}