From aa8d29947f2b0b6cf1c63121cba446f042bc0b9b Mon Sep 17 00:00:00 2001 From: karamovavv Date: Mon, 12 Apr 2021 11:06:06 +0500 Subject: [PATCH] =?UTF-8?q?=D0=BA=D0=B0=D1=80=D1=82=D0=B8=D0=BD=D0=BA?= =?UTF-8?q?=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/Condition.md | 60 ++++++------ docs/FileModule.md | 44 ++++----- docs/HelloStudio.md | 3 + docs/Iterface.md | 52 +++++----- docs/Konfi.md | 2 +- docs/Orkestrator.md | 30 +++--- docs/Other.md | 71 +++++++++----- docs/SendEmail.md | 42 ++++---- docs/Telegram.md | 20 ++-- docs/TextAnalysis.md | 10 +- docs/Word.md | 22 ++--- docs/WorkBrowser.md | 16 +-- docs/clicker.md | 38 ++++---- docs/excel.md | 210 ++++++++++++++++++++-------------------- docs/media/image352.png | Bin 0 -> 11717 bytes docs/media/image353.png | Bin 0 -> 14719 bytes 16 files changed, 325 insertions(+), 295 deletions(-) create mode 100644 docs/media/image352.png create mode 100644 docs/media/image353.png diff --git a/docs/Condition.md b/docs/Condition.md index 99da9b1..c851586 100644 --- a/docs/Condition.md +++ b/docs/Condition.md @@ -19,7 +19,7 @@ «THEN», при значении «False» - в раздел «ELSE». Действия добавляются в модуль перетаскиванием их из меню или другого места рабочей области. -
+
Рис. 1. Условный модуль
@@ -29,14 +29,14 @@ **Поле «Условие»** заполняется по правилам языка программирования JS. Для пользователей, незнакомых с этим языком, предлагается помощь в виде «Конструктора условий», доступная по кнопке справа от условия - - + ### Конструктор условий Конструктор условий позволяет составлять условия в соответствии с синтаксисом языка JS. -
+
Рис. 2. Конструктор условий
@@ -46,9 +46,9 @@ выбрать тип операндов (строки или числа), выбрать оператор между ними из предложенного и нажать на кнопку «Добавить»: -
+
-
+
Рис. 3. Добавление условий
@@ -64,11 +64,11 @@ несколько условий, которые должны быть соединены одним оператором, затем нажимается кнопка с соответствующим логическим оператором: -
+
Рис. 4. Связывание условий
-
+
Рис. 5. Результат связывания условий
@@ -81,11 +81,11 @@ соответствующую кнопку. Разъединение происходит по логическим операторам. -
+
Рис. 6. Разъединение условий
-
+
Рис. 7. Результат разъединения условий
@@ -94,17 +94,17 @@ Для сохранения условия необходимо нажать на кнопку «Сохранить». Получившиеся условие вставится в поле «Условие» условного модуля: -
+
Рис. 8. Сохранение условия
-
+
Рис. 9. Отображение условия
Законченный модуль может выглядеть следующим образом: -
+
Рис. 10. Заполненный модуль «Условие»
@@ -113,11 +113,11 @@ Для уменьшения занимаемого места в рабочей области проекта, можно свернуть каждый блок данного модуля по кнопке «Свернуть». -
+
Рис. 11. Свернутый блок ELSE
-
+
Рис. 12. Свернутые THEN и ELSE
@@ -136,7 +136,7 @@ Модуль выглядит следующим образом: -
+
Рис. 13. Вид модуля
@@ -154,14 +154,14 @@ Пример заполненного цикла представлен на рисунке 14. -
+
Рис. 14. Пример заполнения модуля
По кнопке «Свернуть» можно свернуть действия цикла для более компактного отображения команды. -
+
Рис. 15. Свернутый вид модуля
@@ -176,7 +176,7 @@ находиться модуль «Break» (модуль «Break» представлен самым последним модулем на примере): -
+
Рис. 16. Пример использования модуля «Break»
@@ -189,7 +189,7 @@ робота, например, нужно обработать письмо, которое должно прийти на почту, а оно не пришло. Для таких целей существует модуль «Return». -
+
Рис. 17. Внешний вид модуля
@@ -204,7 +204,7 @@ Excel-файл. Но что, если этих писем нет? Для этого проверяем наличие писем, и, если их нет, робот прекратит работу, иначе – продолжит. -
+
Рис. 18. Пример использования модуля «Return»
@@ -221,7 +221,7 @@ Excel-файл. Но что, если этих писем нет? Для это который в свою очередь находится внутри цикла (вложенность модулей не ограничена). -
+
Рис. 19. Модуль «Continue»
@@ -232,7 +232,7 @@ Excel-файл. Но что, если этих писем нет? Для это в начале цикла проверить наличие файла и, если его нет, то перейти к следующей итерации цикла. -
+
Рис. 20. Пример работы с «Continue»
@@ -251,7 +251,7 @@ Excel-файл. Но что, если этих писем нет? Для это расположенном в нижней части модуля, следует располагать действия, которые требуется выполнять в цикле. -
+
Рис. 21. Вид модуля
@@ -262,14 +262,14 @@ Excel-файл. Но что, если этих писем нет? Для это Добавление действий в модуль происходит с помощью перетаскивания из меню модулей или из рабочей области проекта. -
+
Рис. 22. Добавление действий
При нажатии на кнопку «Свернуть» действия, описанные в цикле, сворачиваются для более компактного отображения команды. -
+
Рис. 23. Свернутый вид модуля
@@ -278,7 +278,7 @@ Excel-файл. Но что, если этих писем нет? Для это Данный модуль позволяет обрабатывать ошибки, которые могут возникнуть в процессе выполнения некоторого блока модулей. -
+
Рис. 24. Внешний вид модуля Try/Catch
@@ -314,7 +314,7 @@ Excel, причем в модуле Excel путь до файла будет в письма и Excel, а в блоке CATCH модуль «Интерфейс» для вывода пользовательского окна. -
+
Рис. 25. Пример использования модуля «Try/Catch»
@@ -324,7 +324,7 @@ Excel, причем в модуле Excel путь до файла будет в содержаться текст «Не удалось открыть документ C:\\Reports\\Отчет за день.xlsx». -
+
Рис. 26. Пример обработки ошибки – окно с информацией
@@ -348,7 +348,7 @@ Case могут быть только внутри блока Switch**. необходимого алгоритма. По кнопке «Добавить» добавляются эти самые подмодули. -
+
Рис. 27. Модуль «Switch»
@@ -360,7 +360,7 @@ Case могут быть только внутри блока Switch**. выполняться, остальные блоки Case выполнены не будут (даже если они содержат то же значение). -
+
Рис. 28. Модули «Switch – Case»
diff --git a/docs/FileModule.md b/docs/FileModule.md index efce52a..626669c 100644 --- a/docs/FileModule.md +++ b/docs/FileModule.md @@ -14,7 +14,7 @@ Вторая – непосредственно список команд. И третья – это область предварительного просмотра текстовых файлов. -
+
Рис. 1. Окно модуля
@@ -50,13 +50,13 @@ соответствующую отключаемой команде строку правой кнопкой мыши и выбрав «Отключить/включить». -
+
Рис. 2. Контекстное меню команды
#### Выбор файла/папки -Кнопка +Кнопка в заполняемых полях открывает стандартный диалог выбора файла или папки, в зависимости от выбранного действия. @@ -77,7 +77,7 @@ Действие перезаписывает существующий текстовый файл, записывая в него строку, указанную в поле «Значение». -
+
Рис. 3. Пример настройки действия «Сохранить в файл»
@@ -86,7 +86,7 @@ Действие считывает весь текст из выбранного файла и записывает его в указанную переменную. -
+
Рис. 4. Пример настройки действия «Считать файл»
@@ -98,7 +98,7 @@ Действие создает переменную-список, в которой лежат пути до каждого файла в папке. -
+
Рис. 5. Пример настройки действия «Получение списка файлов»
@@ -111,7 +111,7 @@ Переменная после выполнения действия будет выглядеть как на рисунке 6: -
+
Рис. 6. Пример переменной, в которой содержится список файлов
@@ -120,7 +120,7 @@ Действие добавляет текст к уже существующему в файле, не перетирая его данных. -
+
Рис. 7. Пример настройки действия «Добавить текст в файл»
@@ -128,7 +128,7 @@ Действие добавляет символ перехода на новую строку в текст файла. -
+
Рис. 8. Пример настройки действия «Добавить переход на новую строку»
@@ -140,7 +140,7 @@ представленном примере – C:\\Users\\user\\Desktop\\Документы\\text.docx). -
+
Рис. 9. Пример настройки действия «Перемещение файла»
@@ -148,7 +148,7 @@ C:\\Users\\user\\Desktop\\Документы\\text.docx). Действие меняет имя выбранного файла на указанное в поле «Имя файла». -
+
Рис. 10. Пример настройки действия «Переименовать файл»
@@ -158,7 +158,7 @@ C:\\Users\\user\\Desktop\\Документы\\text.docx). будет заполнено, то в указанную в нем переменную будет возвращено расположение созданного файла. -
+
Рис. 11. Пример настройки действия «Создать файл txt»
@@ -166,7 +166,7 @@ C:\\Users\\user\\Desktop\\Документы\\text.docx). Действие удаляет выбранный файл. -
+
Рис. 12. Пример настройки действия «Удалить файл»
@@ -181,7 +181,7 @@ C:\\Users\\user\\Desktop\\Документы\\text.docx). Если поле «Переменная» будет заполнено, то в указанную в нем переменную будет возвращено расположение нового файла. -
+
Рис. 13. Пример настройки действия «Скопировать файл»
@@ -192,7 +192,7 @@ C:\\Users\\user\\Desktop\\Документы\\text.docx). «true» - если существует, и иначе «false». -
+
Рис. 14. Пример настройки действия «Проверить существование файла»
@@ -203,7 +203,7 @@ C:\\Users\\user\\Desktop\\Документы\\text.docx). заполнено, то в указанную в нем переменную будет возвращено новое расположение перемещаемой папки. -
+
Рис. 15. Пример настройки действия «Перемещение папки»
@@ -213,7 +213,7 @@ C:\\Users\\user\\Desktop\\Документы\\text.docx). Если поле «Переменная» будет заполнено, то в указанную в нем переменную будет возвращено расположение новой папки. -
+
Рис. 16. Пример настройки действия «Создание папки»
@@ -221,7 +221,7 @@ C:\\Users\\user\\Desktop\\Документы\\text.docx). Действие удаляет выбранную папку. -
+
Рис. 17. Пример настройки действия «Удалить папку»
@@ -232,7 +232,7 @@ C:\\Users\\user\\Desktop\\Документы\\text.docx). «true» - если существует, и иначе «false». -
+
Рис. 18. Пример настройки действия «Проверить существование папки»
@@ -241,7 +241,7 @@ C:\\Users\\user\\Desktop\\Документы\\text.docx). Действие создает переменную-список, в которой лежат пути до каждого файла в папке. -
+
Рис. 19. Пример настройки действия «Проверить существование папки»
@@ -252,7 +252,7 @@ C:\\Users\\user\\Desktop\\Документы\\text.docx). указанную в нем переменную будет возвращено расположение созданного архива. -
+
Рис. 20. Пример настройки действия «Заархивировать папку»
@@ -260,6 +260,6 @@ C:\\Users\\user\\Desktop\\Документы\\text.docx). Действие распаковывает ZIP-архив в указанную папку. -
+
Рис. 21. Пример настройки действия «Распаковать архив»
\ No newline at end of file diff --git a/docs/HelloStudio.md b/docs/HelloStudio.md index d4361f9..34af23f 100644 --- a/docs/HelloStudio.md +++ b/docs/HelloStudio.md @@ -139,6 +139,9 @@ выведены в область «Отладочный вывод» (далее будет дано подробное описание области отладочного вывода). +Если робот уже запущен, данная кнопка сменяется кнопкой «Остановить», +нажатие на которую останавливает текущее выполнение робота. + #### Открыть оркестратор Кнопка «Открыть оркестратор» diff --git a/docs/Iterface.md b/docs/Iterface.md index 23f5f81..1f8fec2 100644 --- a/docs/Iterface.md +++ b/docs/Iterface.md @@ -26,7 +26,7 @@ - Окно с предварительным просмотром диалогового окна на текущий момент > (правая часть окна). -
+
Рис. 1. Основное окно модуля
@@ -42,7 +42,7 @@ По нажатию на кнопку «Настройка сетки» появится окно настроек строк и колонок сетки. -
+
Рис. 2. Настройка сетки
@@ -58,7 +58,7 @@ для ввода начальной даты, на второй строке подпись и поле для ввода конечной даты -
+
Рис. 3. Пример окна №1
@@ -71,7 +71,7 @@ \- в одну строку, 3 элемента интерфейса – подпись, поле для ввода первой даты, поле для ввода второй даты. -
+
Рис. 4. Пример окна №2
@@ -82,7 +82,7 @@ \- в одну строку, 4 элемента интерфейса – два поля для ввода и подписи к каждому из них. -
+
Рис. 5. Пример окна №3
@@ -90,7 +90,7 @@ Для каждой колонки можно задать свою ширину, для каждой строки – высоту: -
+
Рис. 6. Пример настройки сетки
@@ -99,13 +99,13 @@ два раза и их всего две, то в поле «Ширина» можно ввести «1\*» для первой колонки, и «2\*» для второй: -
+
Рис. 7. Пример использования относительных размеров
Результат такой разметки: -
+
Рис. 8. Пример разметки
@@ -122,7 +122,7 @@ Для добавления на окно нового элемента необходимо заполнить поля, представленные на рисунке 9: -
+
Рис. 9. Поля для добавления нового элемента
@@ -132,7 +132,7 @@ ### Поле «Тип» -
+
Рис. 10. Выпадающий список с выбором типа элемента
@@ -140,21 +140,21 @@ - Поле для ввода – поле, в которое можно ввести любую строку; ->
+>
Рис. 11. Элемент «Поле для ввода»
- Надпись – статичная строка текста, которая не может быть отредактирована пользователем; -
+
Рис. 12. Элемент «Надпись»
- Выпадающий список – поле со стрелочкой сбоку, по нажатию которого открывается список заранее определенных значений; ->
+>
Рис. 13. Элемент «Выпадающий список»
@@ -162,7 +162,7 @@ Возможно редактирование полей таблицы, но невозможно создание новых колонок в ней; ->
+>
Рис. 14. Элемент «Таблица»
@@ -172,7 +172,7 @@ автоматически подберет наиболее подходящую дату к введенным данным. Формат даты ДД.ММ.ГГГГ; -
+
Рис. 15. Элемент «Выбор даты»
@@ -180,7 +180,7 @@ которую пользователю будет предложено выбрать файл. Путь до выбранного файла запишется в это поле. -
+
Рис. 16. Элемент «Выбор файла»
@@ -198,7 +198,7 @@ файлы с расширениями .csv и начинающимися на .xl (то есть .xlsx, xls и другие). -
+
- Выбор папки – поле с иконкой в виде трех точек, по нажатию на которую пользователю будет предложено выбрать папку. Путь до @@ -229,19 +229,19 @@ состоящие из одного столбца. Например, введено следующее значение, при приведенных далее примерах заполнения переменных: -
+
Рис. 17. Пример заполнения поля «Источник данных»
-
+
-
+
Рис. 18. Примеры заполнения используемых переменных
Результат будет выглядеть следующим образом: -
+
Рис. 19. Пример результирующих данных
@@ -262,7 +262,7 @@ Хотелось бы объединить это в две строки, но для ввода даты нужно как минимум 2 поля, а поле для выбора файла – одно. -
+
Рис. 20. Пример окна без объединения колонок
@@ -270,12 +270,12 @@ даты, нам необходимо разместить его не просто в 1 колонке и 0 строке, но и объединить для него две колонки, чтобы оно занимало сразу обе: -
+
Рис. 21. Пример заполнения полей элемента интерфейса для настройки объединения колонок
-
+
Рис. 22. Пример окна с объединенными колонками в первой строке сетки
@@ -285,7 +285,7 @@ Аналогично с полем «Объединять строки» - указанное количество строк, начиная с той, что указана в поле «Строка», будут объединены в одну: -
+
Рис. 23.. Пример окна с объединенными строками в первой колонке сетки
@@ -299,7 +299,7 @@ После нажатия на нее элемент сразу отобразиться в окне предпросмотра в правой части окна. -
+
Рис. 24. Пример заполненного окна модуля «Интерфейс»
diff --git a/docs/Konfi.md b/docs/Konfi.md index e2a1af7..4f430ac 100644 --- a/docs/Konfi.md +++ b/docs/Konfi.md @@ -9,7 +9,7 @@ Lexema-RPA Studio содержит некоторые настройки, кот Studio.exe.config». Открыть данный файл можно любым текстовым редактором, например Блокнотом. -
+
Рис. 1. Файл конфигурации
diff --git a/docs/Orkestrator.md b/docs/Orkestrator.md index edd4f12..e8eaafc 100644 --- a/docs/Orkestrator.md +++ b/docs/Orkestrator.md @@ -4,12 +4,12 @@ Оркестратор роботов - сервис запуска роботов по составленному расписанию и/или некоторым событиям. Доступ к оркестратору осуществляется по -нажатию кнопки +нажатию кнопки в панели управления главного окна студии. После нажатия на кнопку будет открыто окно, позволяющее опубликовать нового робота и/или настроить расписание запусков уже опубликованных роботов. -
+
Рис. 1. Окно оркестратора
@@ -50,7 +50,7 @@ Client, которая, находясь в фоновом режиме рабо повторов и интервал запуска, машина для запуска, на которой запущен RPA Client. -
+
Рис. 2. Перечень полей для настройки задачи запуска
@@ -62,7 +62,7 @@ Client. представлено выпадающим списком, в котором предложены все ваши опубликованные роботы. -
+
Рис. 3. Выпадающий список с перечнем опубликованных роботов
@@ -79,14 +79,14 @@ Client. робота (если повторы есть). Для настройки поля необходимо нажать на кнопку-стрелочку в углу поля. -
+
Рис. 4. Кнопка открытия настроек интервала
По нажатию на неё откроется вспомогательное окно выбора интервала запуска робота. -
+
Рис. 5. Настройка интервала запуска робота
@@ -119,14 +119,14 @@ Lexema RPA-Client, то данное поле позволяет выбрать, Пример заполненной задачи: -
+
Рис. 6. Пример настройки задачи
По нажатию кнопки «Добавить», расположенной под полями для настройки задач, задача будет добавлена в список задач. -
+
Рис. 7. Список задач пользователя с добавленной задачей
@@ -136,7 +136,7 @@ Lexema RPA-Client, то данное поле позволяет выбрать, после редактирования полей (2 на рисунке 8), необходимо нажать на кнопку «Редактировать» и изменения сохранятся (3 на рисунке 8). -
+
Рис. 8. Пример редактирования задачи
@@ -150,7 +150,7 @@ Lexema RPA-Client, то данное поле позволяет выбрать, идентификатор, поэтому названия роботов в списке опубликованных могут повторяться. -
+
Рис. 9. Раздел «Роботы»
@@ -158,7 +158,7 @@ Lexema RPA-Client, то данное поле позволяет выбрать, необходимо открыть его как проект в студии. Для этого необходимо нажать на иконку Lexema-RPA соответствующего робота. -
+
Рис. 10 Кнопка «Загрузить робота в студию»
@@ -168,7 +168,7 @@ Lexema RPA-Client, то данное поле позволяет выбрать, Для удаления робота необходимо нажать на красный крестик в его блоке. -
+
Рис. 11. Кнопка удаления робота из оркестратора
@@ -182,13 +182,13 @@ Lexema RPA-Client, то данное поле позволяет выбрать, контекстное меню, позволяющее перейти к статистике выполнений или логам задачи. -
+
Рис. 12. Контекстное меню задачи
Статистика выполнения открывается так же при двойном клике по задаче. -
+
Рис. 13. Статистика выполнения
@@ -200,6 +200,6 @@ Lexema RPA-Client, то данное поле позволяет выбрать, В окне логов отображается более детальная информация – начало и окончание работы модуля робота. -
+
Рис. 14. Логи
diff --git a/docs/Other.md b/docs/Other.md index 0914ca6..5c8e4dc 100644 --- a/docs/Other.md +++ b/docs/Other.md @@ -13,7 +13,7 @@ Окно модуля очень простое и состоит всего лишь из поля для ввода и кнопок «Сохранить» и «Отмена». -
+
Рис. 1. Окно модуля
@@ -41,7 +41,7 @@ v.lastDay = v.lastDay.getDate();
Листинг 1. Получение последнего дня предыдущего месяца
-
+
Рис. 2. Пример заполнения модуля
@@ -83,7 +83,7 @@ v.lastDay = v.lastDay.getDate(); имени администратора», «Пауза», «Переменная с именем процесса» и «Переменная с id процесса», а также кнопок «Сохранить» и «Отмена». -
+
Рис. 3. Окно модуля
@@ -99,7 +99,7 @@ Chrome - C:\\Program Files конкретный файл, то в аргументы передается название файла, а если открывается браузер, то аргументом может быть ссылка на сайт. -
+
Рис. 4. Пример заполнения
@@ -134,7 +134,7 @@ Chrome - C:\\Program Files Окно состоит из двух полей – имени и идентификатора (id) завершаемого процесса. -
+
Рис. 5. Окно модуля
@@ -161,7 +161,7 @@ MS SQL и PostgreSQL. данных», «Логин», «Пароль», «Время ожидания», «SQL-скрипт» и «Переменная». -
+
Рис. 6. Пример заполнения модуля
@@ -199,7 +199,7 @@ Http-запросы – запросы для передачи информац Данный модуль состоит из полей: «Ссылка», «Логин», «Пароль», «Переменная» и «Тип запроса». -
+
Рис. 7. Пример настройки GET запроса
@@ -232,7 +232,7 @@ Http-запросы – запросы для передачи информац вкладок Headers и Body с одинаковыми полями Name и Value. Внизу модуля расположена таблица с добавленными значениями аргументов. -
+
Рис. 8. Интерфейс модуля «HTTP запрос»
@@ -256,7 +256,7 @@ Http-запросы – запросы для передачи информац Модуль состоит из нескольких полей для подключения к серверу, ввода названия переменной и выпадающего списка с выбором действия. -
+
Рис. 9. Интерфейс модуля «FTP запрос»
@@ -285,7 +285,7 @@ Http-запросы – запросы для передачи информац В окне модуля расположены поля для ввода значений: «Переменная» и «JSON», и кнопки «Сохранить» и «Отмена». -
+
Рис. 10. Окно модуля
@@ -305,17 +305,17 @@ Http-запросы – запросы для передачи информац Пусть у нас есть текст в формате JSON. Введем его в поле JSON модуля, а результат пусть запишется в переменную v.a. -
+
Рис. 11. Пример заполнения
В результате переменная v.a станет объектом с полями «name» и «age». К полям объекта можно обратиться, написав название поля через точку после переменной. Проверить значение переменной можно с помощью функционала -«Узнать значение переменной», доступного по кнопке +«Узнать значение переменной», доступного по кнопке в обозревателе решений. -
+
Рис. 12 Получение значения из поля «name» переменной «a»
@@ -332,7 +332,7 @@ Http-запросы – запросы для передачи информац Окно модуля состоит из двух полей – поля «Переменная» и «XML». -
+
Рис. 13. Окно модуля «XML»
@@ -344,7 +344,7 @@ Http-запросы – запросы для передачи информац Результат работы модуля при его настройке, указанной на рисунке 14: -
+
Рис. 14. Объект – результат парсинга XML
@@ -360,7 +360,7 @@ Http-запросы – запросы для передачи информац действием, кнопок управления создаваемым действием и таблицей-списком созданных действий. -
+
Рис. 15. Интерфейс модуля «PDF»
@@ -385,7 +385,7 @@ Http-запросы – запросы для передачи информац непосредственно текстом, а не изображением. Полученный текст будет записан в указанную переменную. -
+
Рис. 16. Пример настройки действия «Получить text»
@@ -395,7 +395,7 @@ Http-запросы – запросы для передачи информац .jpg в указанную в поле «Папка» директорию. В указанную переменную будет записан список путей до выделенных изображений. -
+
Рис. 17. Пример настройки действия «Получить image»
@@ -404,7 +404,7 @@ Http-запросы – запросы для передачи информац Действие объединяет два указанных PDF файла и сохраняет их в файле, который необходимо указать в поле «Значение». -
+
Рис. 18. Пример настройки действия «Объединить документы»
@@ -416,7 +416,7 @@ Http-запросы – запросы для передачи информац миллисекунд, которые необходимо подождать. Допускается использование переменной. -
+
Рис. 19. Окно модуля «Пауза»
@@ -426,7 +426,7 @@ Http-запросы – запросы для передачи информац Для использования модуля необходимо заполнить адрес прокси-сервера. -
+
Рис. 20. Окно модуля «Прокси»
@@ -435,6 +435,33 @@ Http-запросы – запросы для передачи информац Модуль «Лог» предназначен для вывода некоторых сообщений или значений переменных в «Отладочный вывод» во время работы робота. -
+
Рис. 21. Окно модуля «Лог»
+ +## Модуль «Локальный робот» + +Данный модуль позволяет подгрузить в сценарий уже написанного робота, находящегося на машине, +с которой будет производится запуск робота. + +Подключаемый робот будет использовать те же переменные, которые используются текущим роботом. + +Для настройки действия необходимо лишь указать путь до подключаемого робота. + +
+ +
Рис. 22. Окно модуля «Локальный робот»
+ +## Модуль «Облачный робот» + +С помощью данного модуля есть возможность использовать в роботе существующего, опубликованного в оркестраторе, робота. + +Подключаемый робот будет использовать те же переменные, которые используются текущим роботом. + +Для настройки действия необходимо выбрать одного из предложенных программой роботов, то есть тех, которые опубликованы текущим пользователем студии. + +
+ +
Рис. 23. Окно модуля «Облачный робот»
+ +По кнопке «Загрузить робота» выбранный робот будет загружен в отдельной вкладке студии. diff --git a/docs/SendEmail.md b/docs/SendEmail.md index 6dd8fe3..272fe9f 100644 --- a/docs/SendEmail.md +++ b/docs/SendEmail.md @@ -13,7 +13,7 @@ #### Вкладка «Настройки» -
+
Рис. 1. Окно модуля
@@ -23,7 +23,7 @@ предоставляет возможность самостоятельной настройки параметров доступа к почтовой службе. -
+
Рис. 2. Пример настройки почтовый службы «Mail»
@@ -44,7 +44,7 @@ **Флажок «Показывать пароль»** предоставляет возможность показать пароль для проверки его правильности. -
+
Рис. 3. Пример заполненной вкладки «Настройки»
@@ -61,7 +61,7 @@ - из переменной-списка, в виде нескольких e-mail’ов. -
+
Рис. 4. Вкладка «Получатель»
@@ -75,7 +75,7 @@ окна. Если необходимо удалить какого-либо получателя из таблицы, необходимо выбрать строку с ним и нажать на кнопку «Удалить». -
+
Рис. 5. Пример заполнения таблицы получателей
@@ -86,7 +86,7 @@ может быть списком из email’ов, либо строкой с перечислением их через запятую. -
+
Рис. 6. Вкладка «Получатель»
@@ -97,7 +97,7 @@ для заполнения, если не заполнить ни одного из них будет отправлено пустое письмо с темой «<Без темы>». -
+
Рис. 7. Вкладка «Письмо»
@@ -132,7 +132,7 @@ «Порт» и «Безопасность» заполняются автоматически (кроме режима «Пользовательские настройки»). -
+
Рис. 8. Окно модуля с примером авто-заполнения полей
@@ -141,7 +141,7 @@ Вкладка «Настройки чтения» представляет собой набор полей, которые заполняются в зависимости от того, какие письма следует считать. -
+
Рис. 9. Вкладка «Настройка чтения»
@@ -168,14 +168,14 @@ - v.mails\[2\].Attachments\[0\] – получение пути первого вложения третьего считанного письма: -
+
Рис. 10. Пример получения пути до первого вложения второго письма
- v.mails\[3\].Subject – получение темы четвертого скачанного сообщения: -
+
Рис. 11. Пример получения темы первого письма
@@ -219,7 +219,7 @@ IMAP.* (рисунок 12). *Доступно только для протокола IMAP.* -
+
Рис. 12. Фильтр по теме сообщений
@@ -259,7 +259,7 @@ IMAP.* - Загрузка только даты сообщения. -
+
Рис. 13. Вкладка «Параметры загрузки»
@@ -280,7 +280,7 @@ IMAP.* > сервера imap.yandex.ru (3), способы авторизации – по портальному > паролю (4). -
+
Рис. 14. Включение IMAP протокола в Яндекс
@@ -290,11 +290,11 @@ Lexema-RPA Studio необходимо выключить. Для этого п аккаунтом - «Пароли и авторизация» - «Пароли приложений» - «Выключить пароли приложений». -
+
Рис. 15. Пароли приложений в настройках аккаунта
-
+
Рис. 16. Выключение паролей приложения
@@ -309,7 +309,7 @@ Lexema-RPA Studio необходимо выключить. Для этого п - разрешить доступ к почтовому ящику с помощью почтовых клиентов с свервера pop.yandex.ru (3). -
+
Рис. 17. Включение протокола POP3 в Яндекс
@@ -321,7 +321,7 @@ Lexema-RPA Studio необходимо выключить. Для этого п в настройки почты (1), затем выбрать пункт «Пересылка и POP/IMAP» (2) - «Доступ по IMAP» и затем в «Состоянии» включить IMAP (3): -
+
Рис. 18. Включение протокола IMAP в Gmail
@@ -331,7 +331,7 @@ Lexema-RPA Studio необходимо выключить. Для этого п «Пересылка и POP/IMAP» (2) - «Доступ по протоколу POP» - «Включить POP для всех писем» (3): -
+
Рис. 19. Включение POP3 протокола в Gmail
@@ -354,7 +354,7 @@ Lexema-RPA Studio необходимо выключить. Для этого п заполнятся автоматически, при пользовательских настройках их необходимо заполнять вручную. -
+
Рис. 20. Вкладка «Настройки» модуля «Переместить письмо»
@@ -363,7 +363,7 @@ Lexema-RPA Studio необходимо выключить. Для этого п На данной вкладке производится настройка действия, совершаемого над сообщением. -
+
Рис. 21. Вкладка «Параметры перемещения»
diff --git a/docs/Telegram.md b/docs/Telegram.md index 7962c82..b4b1728 100644 --- a/docs/Telegram.md +++ b/docs/Telegram.md @@ -14,7 +14,7 @@ Интерфейс модуля состоит из блока настроек, области добавления команды, таблицы со списком команд и кнопок «Сохранить»/«Отмена». -
+
Рис. 1. Окно модуля «Telegram»
@@ -73,14 +73,14 @@ telegram придет код подтверждения авторизации, соответствующую отключаемой команде строку правой кнопкой мыши и выбрав «Отключить/включить». -
+
Рис. 2. Контекстное меню команды
#### Выбор файла/папки Кнопка - + в поле «Вложения» открывает стандартный диалог выбора файла. #### Изменение порядка действий @@ -99,7 +99,7 @@ telegram придет код подтверждения авторизации, необходимо сохранить. Делается это по кнопке «Сохранить» в правом нижнем углу модуля. -
+
Рис. 3. Кнопка «Сохранить»
@@ -121,7 +121,7 @@ telegram придет код подтверждения авторизации, отправить и текст, и несколько вложений, лучше разделить это на две отдельные команды – отправку вложений и отправку текста. -
+
Рис. 4. Пример заполнения действия «Отправить сообщение»
@@ -135,13 +135,13 @@ telegram придет код подтверждения авторизации, FirstName, LastName и Phone, которые будут заполняться соответствующими полями из профиля Telegram текущего диалога. -
+
Рис. 5. Пример заполнения действия «Получить список всех диалогов»
Результат заполнения переменной представлен на следующем рисунке. -
+
Рис. 6. Пример заполнения переменной в результате выполнения действия «Получить список всех диалогов»
@@ -157,7 +157,7 @@ FirstName, LastName и Phone, которые будут заполняться любому из этих параметров затем можно отправлять сообщения в чат или канал (если авторизованный пользователь имеет соответствующие права). -
+
Рис. 7. Пример заполнения действия «Получить список всех чатов и каналов»
@@ -173,7 +173,7 @@ FirstName, LastName и Phone, которые будут заполняться UnreadCount, Name будет содержать название чата, UnreadCount – количество непрочитанных сообщений в чате. -
+
Рис. 8. Пример заполнения действия «Получить список чатов с непрочитанными сообщениями»
@@ -190,7 +190,7 @@ UnreadCount, Name будет содержать название чата, Unrea в поле Message лежит текст сообщения, в Date дата и время в формате дд.мм.гггг ч.мм.сс. -
+
Рис. 9. Пример заполнения действия «Получить непрочитанные сообщения от пользователя»
diff --git a/docs/TextAnalysis.md b/docs/TextAnalysis.md index 15a0b67..3ead7c3 100644 --- a/docs/TextAnalysis.md +++ b/docs/TextAnalysis.md @@ -17,7 +17,7 @@ текст, и поле «Переменная результат» - для названия переменной, в которую будет помещен результат работы модуля. -
+
Рис. 1. Окно модуля
@@ -60,7 +60,7 @@ Модуль состоит из двух полей – «Путь к файлу» и «Переменная», и флажка «Скриншот». -
+
Рис. 2. Окно модуля
@@ -87,13 +87,13 @@ Пусть имеется следующее изображение формата jpeg. Подадим его в модуль распознавания текста. -
+
Рис. 3. Изображение, поданное на распознавание текста
Результат, записанный в переменную при распознавании изображения: -
+
Рис. 4. Пример заполнения переменной
@@ -119,7 +119,7 @@ v.text\[1\].words\[100\].value, где v.text – переменная, в ко Данный модуль состоит из двух полей – «Путь к PDF-файлу» и «Переменная». -
+
Рис. 5. Окно модуля
diff --git a/docs/Word.md b/docs/Word.md index 56fec25..dfbdd74 100644 --- a/docs/Word.md +++ b/docs/Word.md @@ -15,7 +15,7 @@ Microsoft Office. С помощью модуля можно создавать действия для работы с файлом, и третья – окно с предварительным просмотром загруженного файла. -
+
Рис. 1. Интерфейс окна
@@ -36,7 +36,7 @@ Microsoft Office. С помощью модуля можно создавать применить к загруженному файлу или создать новый с указанным путем в поле «Путь к файлу». Обязательное поле; -
+
Рис. 2. Перечень доступных действий модуля
@@ -49,7 +49,7 @@ Microsoft Office. С помощью модуля можно создавать Для добавления действия в таблицу «Список команд» необходимо воспользоваться кнопкой «Добавить» под полями настройки действия. -
+
Рис. 3. Расположение кнопки «Добавить»
@@ -63,7 +63,7 @@ Microsoft Office. С помощью модуля можно создавать выбрать одно действие и нажать на необходимые кнопки «Поднять» или «Опустить», которые расположены в правом углу над таблицей с командами. -
+
Рис. 4. Кнопки «Поднять/Опустить» и выбор строки в таблице
@@ -76,7 +76,7 @@ Microsoft Office. С помощью модуля можно создавать типа «*Путь до файла*/*Название файла*.*Требуемое расширение*», например, «C:/Reports/Documents/Test.docx». -
+
Рис. 5. Пример заполнения действия «Создать файл»
@@ -87,7 +87,7 @@ Microsoft Office. С помощью модуля можно создавать помимо стандартных трёх – «Переменная», в которую записывается название переменной (с символов «v.»), в которую будет записан считанный текст. -
+
Рис. 6. Пример настройки действия «Получить текст»
@@ -100,7 +100,7 @@ Microsoft Office. С помощью модуля можно создавать текст, введенный данным действием, полностью затрет существующий текст в файле. -
+
Рис. 7. Пример настройки действия «Записать текст»
@@ -115,7 +115,7 @@ Microsoft Office. С помощью модуля можно создавать обозначающего, после какого по счету символа необходимо вставить текст (с учетом пробелом и символов переноса строки или разрыва страницы). -
+
Рис. 8. Пример настройки действия «Добавить текст»
@@ -139,7 +139,7 @@ HEX – шестнадцатеричное представление RGB. Данное действие добавляет символ переноса строки в файл. Не требует заполнения дополнительных полей. -
+
Рис. 9. Пример настройки действия добавление перехода на новую строку
@@ -151,7 +151,7 @@ HEX – шестнадцатеричное представление RGB. номер символа, после которого необходимо удалить текст, а второе – количество символов в удаляемом тексте. -
+
Рис. 10. Пример настройки действия «Удалить текст»
@@ -162,6 +162,6 @@ HEX – шестнадцатеричное представление RGB. файла, в который нужно экспортировать, и указать путь с названием и расширением будущего файла в поле «Путь выходного файла». -
+
Рис. 11. Пример настройки действия «Экспорт»
\ No newline at end of file diff --git a/docs/WorkBrowser.md b/docs/WorkBrowser.md index 9fb047b..1f3964a 100644 --- a/docs/WorkBrowser.md +++ b/docs/WorkBrowser.md @@ -2,7 +2,7 @@ ## Основные моменты модуля -Модуль «Работа с браузером» построен на базе Selenium WebDriver[6] и +Модуль «Работа с браузером» построен на базе Selenium WebDriver и позволяет реализовывать основные методы работы со страницей браузера – открыть вкладку, перейти на вкладку, найти элемент на странице по её ключу и как-то его обработать. @@ -17,7 +17,7 @@ поле «Действие». Группа кнопок состоит из трех кнопок – «Добавить», «Редактировать» и «Удалить». -
+
Рис. 1. Окно модуля «Работа с браузером»
@@ -42,7 +42,7 @@ «Поднять» или «Опустить», в зависимости от того, где эта строка должна находиться. -
+
Рис. 2. Кнопки для изменения порядка команд
@@ -106,7 +106,7 @@ Data»). области создания команды откроется поле – «URL». URL необходимо вводить с протоколом, т.е. с http/https. -
+
Рис. 3. Пример настройки действия «Перейти»
@@ -141,7 +141,7 @@ Data»). элемента». Еще два поля – «Свойство» и «Переменная» становятся доступными в зависимости от выбора действия на странице. -
+
Рис. 4. Поля для настройки действия «Работа со страницей»
@@ -241,7 +241,7 @@ Data»). разработчика в браузере, нужно нажать по этому элементу правой кнопкой мыши в коде – копировать – XPath: -
+
Рис. 5. Получение строки xpath из консоли браузера
@@ -306,7 +306,7 @@ Data»). Пример заполненного действия: -
+
Рис. 6. Пример настройки действия «Работа со страницей»
@@ -320,7 +320,7 @@ Data»). настройки действия открывается как минимум одно поле – «Действие», остальные открываются в зависимости от выбранного в нем действия. -
+
Рис. 7. Поля для настройки действия «Работа со вкладками»
diff --git a/docs/clicker.md b/docs/clicker.md index a065eca..20c4ed9 100644 --- a/docs/clicker.md +++ b/docs/clicker.md @@ -19,7 +19,7 @@ макроса», состоящее из трех элементов – кнопки «Начать запись», области, в которой будут отображены записанные действия, и кнопки «Сохранить». -
+
Рис. 1. Запись действий макроса
@@ -27,7 +27,7 @@ ***ожидания нажатия кнопки «TAB»**,* по которой открывается окно создания действия (команды). -
+
Рис. 2. Создание команды
@@ -35,14 +35,14 @@ возможных действий будет дано ниже). По завершению создания команды и нажатию кнопки сохранить, новое действие будет добавлено в макрос. -
+
Рис. 3. Добавление команды
Изменить положение действия в списке команд можно с помощью кнопок с изображением стрелок, расположенных в правой части блока. -
+
Рис. 4. Изменение порядка команды
@@ -98,7 +98,7 @@ рекомендуем использовать клик по изображению. Для этого нажмите на переключатель «**Изображение**». -
+
Рис. 5. Создание команды
@@ -130,7 +130,7 @@ уменьшить слишком сильно, модуль может найти то, что не планировали искать. -
+
Рис. 6. Пример отличия искомого изображения от действительного
@@ -157,7 +157,7 @@ искомый элемент и вызвать окно настройки действия по кнопке «TAB». При переключении настроек на «Селекторы», путь до элемента уже будет введен. -
+
Рис. 7. Создание команды через селекторы Windows
@@ -209,7 +209,7 @@ курсор, нажать клавишу «TAB» на клавиатуре, выбрать действие «прокрутка мыши» и заполнить поле «Прокрутка мыши», как показано на рисунке 8: -
+
Рис. 8. Пример настройки команды
@@ -235,7 +235,7 @@ Пример заполнения действия: -
+
Рис. 9. Пример заполнения
@@ -247,7 +247,7 @@ расширенных клавиатурах (изменение громкости звука, запуск/остановка музыки и другие нестандартные кнопки). -
+
Рис. 10. Действие «Нажать кнопку»
@@ -258,7 +258,7 @@ выпадающих списках «Кнопка». Список кнопок тот же, что и в действии «Нажать кнопку». -
+
Рис. 11. Действие «Нажать две кнопку»
@@ -270,7 +270,7 @@ **не обязательно** к заполнению. Ввод переменной начинается с символов «v.». -
+
Рис. 12. Действие «Скопировать»
@@ -295,7 +295,7 @@ Окно модуля выглядит следующим образом: -
+
Рис. 13. Окно модуля
@@ -341,7 +341,7 @@ «Результат» только одно поле – «Переменная», а также появилось поле «Минимальная дистанция». -
+
Рис. 14. Окно модуля
@@ -389,14 +389,14 @@ y, а в поле «similarity» - процент совпадения найд например, непрочитанных писем с Яндекс-почты, которые выделены небольшим синим кружочком около письма: -
+
Рис. 15. Пример
Для этого создадим действие «Поиск изображений» и выберем в нем в качестве искомого изображения эту синенькую точку: -
+
Рис. 16. Настройка действия
@@ -423,7 +423,7 @@ y, а в поле «similarity» - процент совпадения найд В поле «Имя файла» должно быть название скриншота. Если расширение не будет указано, то изображение будет сохранено в формате png. -
+
Рис. 17. Окно модуля «Создать скриншот»
@@ -439,12 +439,12 @@ y, а в поле «similarity» - процент совпадения найд записывает в указанную переменную название активного окна ***строчными буквами***. -
+
Рис. 18. Пример заполнения модуля «Получить активное окно»
Пример переменной в результате заполнения модулем: -
+
Рис. 19. Результат работы модуля
\ No newline at end of file diff --git a/docs/excel.md b/docs/excel.md index 43bda1f..bd442d4 100644 --- a/docs/excel.md +++ b/docs/excel.md @@ -23,7 +23,7 @@ применять различное форматирование, но эти изменения сохранены не будут, то есть данный функционал доступен только для «примерки». -
+
Рис. 2. Элементы управления окна предварительного просмотра
@@ -37,7 +37,7 @@ того, как по кнопке «Открыть файл» в поле «Имя файла» будет выбран файл, необходимо подождать несколько секунд и указанный файл будет отображен в окне предварительного просмотра (Рис. 3). -
+
Рис. 3. Общие настройки
@@ -61,7 +61,7 @@ Для добавления команды предусмотрена кнопка «Добавить». Она заносит созданное действие в таблицу «Список команд». -
+
Рис. 4. Добавление команды
@@ -74,7 +74,7 @@ если нужно выполнить действие несколько раз, достаточно его копировать, а не создавать вновь. -
+
Рис. 5. Отображение команды
@@ -95,9 +95,9 @@ таком случае вы можете добавить действие стандартным способом, а затем переместить его. -
+
-
+
Рис. 6. Изменение порядка действий
@@ -112,7 +112,7 @@ можно отключить команду, нажав на соответствующую ей строку правой кнопкой мыши и отключить или, наоборот, включить её. -
+
Рис. 7. Контекстное меню команды
@@ -127,11 +127,11 @@ ячейка, хотя был выбран диапазон – это означает, что в данном действии использование диапазона невозможно.*** -
+
Рис. 8. Выбор диапазона в окне предварительного просмотра
-
+
Рис. 9. Выбрать ячейку
@@ -144,7 +144,7 @@ Для сохранения команды в модуле Excel нажмите на кнопку «Сохранить» в правом нижнем углу модуля. -
+
Рис. 10. Сохранение в модуле Excel
@@ -175,7 +175,7 @@ формул поле можно расширить, нажав на кнопку со стрелочкой в поле ввода: -
+
Рис. 11. Поле «Формула»
@@ -194,7 +194,7 @@ 8. Путь к файлу – путь до папки, в которую будет помещен файл. Можно выбрать с помощью диалога выбора папки по нажатию на кнопку в поле: -
+
Рис. 12. Поле «Путь к файлу»
@@ -206,7 +206,7 @@ файла для копирования данных из него. Можно выбрать с помощью диалога выбора файлов по нажатию на кнопку в поле: -
+
Рис. 13. Поле «Путь копируемого файла»
@@ -299,7 +299,7 @@ параметра через запятую или в формате HEX (например, \#FFFFFF), возможен выбор цвета через диалог выбора цвета по кнопке в поле: -
+
Рис. 14. Поле «Цвет заливки»
@@ -358,7 +358,7 @@ переменная с типом «Элемент», если же диапазон, то будет создана переменная с типом «Таблица». -
+
Рис. 15. Пример настройки действия «Считать данные»
@@ -367,7 +367,7 @@ Действие позволяет записать указанное значение в одну или в диапазон ячеек. -
+
Рис. 16. Пример настройки действия «Записать данные»
@@ -377,7 +377,7 @@ и вернуть её результат в указанную переменную. Поле «Переменная» можно оставить пустым, если результат выполнения данной формулы не важен. -
+
Рис. 17. Пример настройки действия «Формула»
@@ -388,7 +388,7 @@ Excel. Начните с создания действия «Формула» д ячейку/диапазон» применительно к настроенной формуле. То есть для выше предложенной формулы «растягивание» будет выглядеть так: -
+
Рис. 18. Пример настройки действия «Скопировать и вставить ячейку/диапазон»
@@ -397,7 +397,7 @@ Excel. Начните с создания действия «Формула» д Действие возвращает формулу из ячейки в указанную переменную. -
+
Рис. 19. Пример настройки действия «Получить формулу»
@@ -406,7 +406,7 @@ Excel. Начните с создания действия «Формула» д Данное действие заменяет формулу в ячейке или диапазоне ячеек на её результат. -
+
Рис. 20. Пример настройки действия «Заменить формулу на ее значение»
@@ -416,7 +416,7 @@ Excel. Начните с создания действия «Формула» д Действие вставляет новую строку в указанное место. -
+
Рис. 21. Пример настройки действия «Добавление строки»
@@ -424,7 +424,7 @@ Excel. Начните с создания действия «Формула» д Действие удаляет указанную строку. -
+
Рис. 22. Пример настройки действия «Удаление строки»
@@ -433,7 +433,7 @@ Excel. Начните с создания действия «Формула» д Действие возвращает номер последней используемой строки в листе в указанную переменную. -
+
Рис. 23. Пример настройки действия «Получение количества строк»
@@ -442,7 +442,7 @@ Excel. Начните с создания действия «Формула» д Действие возвращает количество видимых строк при примененном фильтре в указанную переменную. -
+
Рис. 24. Пример настройки действия «Получение количества отфильтрованных строк»
@@ -453,7 +453,7 @@ Excel. Начните с создания действия «Формула» д из поля «Лист» вместо указанной в поле «Номер строки для вставки» листа «Лист для вставки». -
+
Рис. 25. Пример настройки действия «Переместить строку»
@@ -468,7 +468,7 @@ Excel. Начните с создания действия «Формула» д диапазон не разрывный, через двоеточие, например – «1,2,3,7,8,9» или «1:5», что равносильно «1,2,3,4,5». -
+
Рис. 26. Пример настройки действия «Сгруппировать строки»
@@ -477,7 +477,7 @@ Excel. Начните с создания действия «Формула» д Действие предназначено для удаления 1-го уровня существующей группировки по строкам. Входные данные аналогичны действию «Сгруппировать строки». -
+
Рис. 27. Пример настройки действия «Удалить группировку строк»
@@ -486,7 +486,7 @@ Excel. Начните с создания действия «Формула» д Действие позволяет получить уровень группировки выбранной строки и записать результат в указанную переменную. -
+
Рис. 28. Пример настройки действия «Уровень группировки строк»
@@ -496,7 +496,7 @@ Excel. Начните с создания действия «Формула» д Действие добавляет новый столбец в указанное место. -
+
Рис. 29. Пример настройки действия «Добавление столбца»
@@ -504,7 +504,7 @@ Excel. Начните с создания действия «Формула» д Действие удаляет указанный столбец. -
+
Рис. 30. Пример настройки действия «Удаление столбца»
@@ -512,7 +512,7 @@ Excel. Начните с создания действия «Формула» д Действие возвращает номер самого последнего используемого столбца. -
+
Рис. 31. Пример настройки действия «Получение количества столбцов»
@@ -524,7 +524,7 @@ Excel. Начните с создания действия «Формула» д указывать как его название, так и его порядковый номер, начиная с единицы. -
+
Рис. 32. Пример настройки действия «Сгруппировать столбцы»
@@ -533,7 +533,7 @@ Excel. Начните с создания действия «Формула» д Действие позволяет удалить один уровень группировки у указанных столбцов. -
+
Рис. 33. Пример настройки действия «Удалить группировку колонок»
@@ -542,7 +542,7 @@ Excel. Начните с создания действия «Формула» д Данное действие позволяет получить уровень группы указанного столбца и записать его в переменную. -
+
Рис. 34. Пример настройки действия «Уровень группировки столбца»
@@ -552,7 +552,7 @@ Excel. Начните с создания действия «Формула» д Действие создает новый лист с указанным именем. -
+
Рис. 35. Пример настройки действия «Создание нового листа»
@@ -560,7 +560,7 @@ Excel. Начните с создания действия «Формула» д Действие удаляет лист с указанным именем. -
+
Рис. 36. Пример настройки действия «Удаление листа»
@@ -568,7 +568,7 @@ Excel. Начните с создания действия «Формула» д Действие очищает ячейки листа от данных. **Не очищает форматирование!** -
+
Рис. 37. Пример настройки действия «Очищение листа»
@@ -576,7 +576,7 @@ Excel. Начните с создания действия «Формула» д Возвращает переменную-список, содержащую названия всех листов файла. -
+
Рис. 38. Пример настройки действия «Получение списка листов»
@@ -585,7 +585,7 @@ Excel. Начните с создания действия «Формула» д Изменение ориентации страницы Excel. Доступные ориентации – книжная и альбомная. -
+
Рис. 39. Пример настройки действия «Ориентация страницы»
@@ -595,7 +595,7 @@ Excel. Начните с создания действия «Формула» д на странице при печати, а также масштаб этой области. Аналогично одноименной настройке в Excel. -
+
Рис. 40. Пример настройки действия «Настройки печати»
@@ -607,7 +607,7 @@ Excel. Начните с создания действия «Формула» д указано в поле, иначе - по умолчанию (Лист 1, Sheet 1, в зависимости от языка системы). -
+
Рис. 41. Пример настройки действия «Создание нового файла»
@@ -617,7 +617,7 @@ Excel. Начните с создания действия «Формула» д листом какого-либо другого файла. В поле «Лист» указывается лист текущего файла. -
+
Рис. 42. Пример настройки действия «Заполнение листа»
@@ -629,7 +629,7 @@ PDF будет производиться по стандартным настр Excel (по умолчанию размер листа А4, с обычными полями). Действие не имеет дополнительной настройки. -
+
Рис. 43. Пример настройки действия «Экспортирование в PDF»
@@ -645,7 +645,7 @@ Excel (по умолчанию размер листа А4, с обычными текст в ячейке должен полностью совпадать с текстом, введенном в поле «Строка». -
+
Рис. 44. Пример настройки действия «Найти данные»
@@ -660,7 +660,7 @@ Excel (по умолчанию размер листа А4, с обычными записан номер первой найденной строки или «Строка не найдена», если таких строк нет. -
+
Рис. 45. Пример настройки действия «Поиск строки»
@@ -674,7 +674,7 @@ Excel (по умолчанию размер листа А4, с обычными сравнение» ставится в том случае, если текст в ячейке должен полностью совпадать с текстом, введенном в поле «Строка». -
+
Рис. 46. Пример настройки действия «Найти лист»
@@ -686,7 +686,7 @@ Excel (по умолчанию размер листа А4, с обычными возвращает результат в переменную (в данном примере результатом будет ячейка D13). -
+
Рис. 47. Пример настройки действия «Сместить ячейку»
@@ -705,7 +705,7 @@ Excel (по умолчанию размер листа А4, с обычными Если необходимо просто включить фильтр в таблице, но без определенной фильтрации, то нужно оставить поле «Функция» пустым. -
+
Рис. 48. Пример настройки действия «Наложить фильтр»
@@ -713,7 +713,7 @@ Excel (по умолчанию размер листа А4, с обычными Действие удаляет все фильтры с листа. -
+
Рис. 49. Пример настройки действия «Удаление фильтра»
@@ -723,7 +723,7 @@ Excel (по умолчанию размер листа А4, с обычными столбцу. В зависимости от флажка определяется, сортируется столбец по убыванию или по возрастанию. Столбец для сортировки должен быть один. -
+
Рис. 50. Пример настройки действия «Добавление сортировки»
@@ -732,7 +732,7 @@ Excel (по умолчанию размер листа А4, с обычными Действие удаляет все значения и форматирования ячеек в указанном диапазоне. -
+
Рис. 51. Пример настройки действия «Очищение диапазона»
@@ -744,7 +744,7 @@ Excel (по умолчанию размер листа А4, с обычными в лист, но в тот же диапазон. В зависимости от наличия дубликатов, количество строк может быть уменьшено. -
+
Рис. 52. Пример настройки действия «Получение уникальных значений»
@@ -753,7 +753,7 @@ Excel (по умолчанию размер листа А4, с обычными Действие добавляет операцию Excel «Промежуточные итоги» на указанный лист к указанному диапазону. -
+
Рис. 53. Пример настройки действия «Промежуточные итоги»
@@ -765,7 +765,7 @@ Excel (по умолчанию размер листа А4, с обычными должна быть применена для выбранных колонок (выделено синим на рисунке 54). -
+
Рис. 54. Настройка действия «Промежуточные итоги» в Excel
@@ -775,7 +775,7 @@ Excel (по умолчанию размер листа А4, с обычными диапазон для вставки) на основе данных таблицы из поля «Лист, диапазон источника». -
+
Рис. 55. Пример настройки действия «Сводная таблица»
@@ -795,7 +795,7 @@ Excel (по умолчанию размер листа А4, с обычными которых должны быть расположены в значениях сводной таблицы (выделено красным на рисунке 56); -
+
Рис. 56. Настройка действия «Сводная таблица» в Excel
@@ -805,7 +805,7 @@ Excel (по умолчанию размер листа А4, с обычными их в тот же или в другой файл. С помощью него можно «растягивать» формулы (см. «Действие «Формула»). -
+
Рис. 57. Пример настройки действия «Скопировать и вставить ячейку/диапазон»
@@ -814,7 +814,7 @@ Excel (по умолчанию размер листа А4, с обычными Действие переводит выбранный диапазон в проценты. -
+
Рис. 58. Пример настройки действия «Отображение в виде процентов»
@@ -826,7 +826,7 @@ Excel (по умолчанию размер листа А4, с обычными «Расположение» указываются границы расположения круговой диаграммы, а именно левый верхний угол и правый нижний через запятую. -
+
Рис. 59. Пример настройки действия «Создание круговой диаграммы»
@@ -838,13 +838,13 @@ A, по соответствующим им параметрам, указанн Пример исходных данных представлен на рисунке 60. -
+
Рис. 60. Пример исходных данных
Результат построения круговой диаграммы представлен на рисунке 61. -
+
Рис. 61. Результат выполнения действия «Круговая диаграмма»
@@ -861,7 +861,7 @@ A, по соответствующим им параметрам, указанн для вставки записывается ячейка, в которой будет располагаться левый верхний угол графика. -
+
Рис. 62. Пример настройки действия «График»
@@ -875,13 +875,13 @@ A, по соответствующим им параметрам, указанн Пример исходных данных представлен на рисунке 63. -
+
Рис. 63. Пример настройки действия «График»
Результат работы программы представлен на рисунке 64. -
+
Рис. 64. Результат выполнения действия «График»
@@ -913,7 +913,7 @@ A, по соответствующим им параметрам, указанн его пустым, то будет отображаться ошибка «Введенное значение неверно. Набор значений, которые могут быть введены в ячейку, ограничен». -
+
Рис. 65. Пример настройки действия «Проверка значений»
@@ -923,7 +923,7 @@ A, по соответствующим им параметрам, указанн колонке значений, действие заполняется так, как указано на рисунке 65. Пусть в ячейках А2:А6 будут следующие значения: -
+
Рис. 66. Пример исходных данных
@@ -931,7 +931,7 @@ A, по соответствующим им параметрам, указанн будет появляться стрелочка для открытия выпадающего списка, в котором будут содержаться выбранные значения: -
+
Рис. 67. Результат выполнения действия «Проверка значений»
@@ -941,14 +941,14 @@ A1:A5 только действительные числа, находящиес «Введено неверное значение. Должно быть введено действительное число между 5 и 10»: -
+
Рис. 68. Пример создания правила для проверки значений
После работы робота при попытке ввести число, находящееся вне диапазона от 5 до 10, появляется ошибка: -
+
Рис. 69. Результат выполнения действия «Проверка значений»
@@ -959,7 +959,7 @@ A1:A5 только действительные числа, находящиес его добавлении в файл Excel. В поле «Ячейки» указывается левый верхний угол расположения изображения. -
+
Рис. 70. Пример настройки действия «Добавить изображение»
@@ -979,7 +979,7 @@ A1:A5 только действительные числа, находящиес в поле «Значение для сравнения» следует вписать формулу в формате Excel, начиная со знака «=». -
+
Рис. 71. Пример настройки действия «Условное форматирование»
@@ -990,13 +990,13 @@ A1:A5 только действительные числа, находящиес Исходные данные представлены на рисунке 72. -
+
Рис. 72. Пример исходных данных
Результат работы программы представлен на рисунке 73. -
+
Рис. 73. Результат выполнения действия «Условное форматирование»
@@ -1005,7 +1005,7 @@ A1:A5 только действительные числа, находящиес Действие меняет цвет заливки текста и самого текста в указанном диапазоне / ячейке. -
+
Рис. 74. Пример настройки действия «Цвет ячейки/диапазона»
@@ -1016,13 +1016,13 @@ A1:A5 только действительные числа, находящиес Исходные данные представлены на рисунке 75: -
+
Рис. 75. Пример исходных данных
Результат работы робота представлен на рисунке 76: -
+
Рис. 76. Результат выполнения действия «Цвет ячейки/диапазона»
@@ -1032,7 +1032,7 @@ A1:A5 только действительные числа, находящиес через запятую, писать их номера вместо названий (с 1-цы). Ширина указывается в той же единице измерения, которая используется в Excel. -
+
Рис. 77. Пример настройки действия «Ширина столбца(-ов)»
@@ -1044,13 +1044,13 @@ A1:A5 только действительные числа, находящиес Исходные данные представлены на рисунке 78: -
+
Рис. 78. Пример исходных данных
Результат работы представлен на рисунке 79: -
+
Рис. 79. Результат выполнения действия «Ширина столбца(-ов)»
@@ -1059,7 +1059,7 @@ A1:A5 только действительные числа, находящиес Действие изменяет высоту указанных строк. Используется та же единица измерения, что и в Excel. -
+
Рис. 80. Пример настройки действия «Высота строки(-ок)»
@@ -1070,13 +1070,13 @@ A1:A5 только действительные числа, находящиес Исходные данные представлены на рисунке 81: -
+
Рис. 81. Пример исходных данных
Результат работы робота представлен на рисунке 82: -
+
Рис. 82. Результат выполнения действия «Высота строки(-ок)»
@@ -1092,7 +1092,7 @@ A1:A5 только действительные числа, находящиес - объединение по столбцам. -
+
Рис. 83. Пример настройки действия «Объединить ячейки»
@@ -1103,13 +1103,13 @@ A1:A5 только действительные числа, находящиес Исходные данные представлены на рисунке 84: -
+
Рис. 84. Пример исходных данных
Результат работы представлен на рисунке 85: -
+
Рис. 85. Результат выполнения действия «Объединить ячейки»
@@ -1117,7 +1117,7 @@ A1:A5 только действительные числа, находящиес Действие очищает форматирование в указанном диапазоне выбранного листа. -
+
Рис. 86. Пример настройки действия «Очистить форматирование»
@@ -1129,13 +1129,13 @@ A1:A5 только действительные числа, находящиес Исходные данные представлены на рисунке 87: -
+
Рис. 87. Пример исходных данных
Результат работы представлен на рисунке 88 -
+
Рис. 88. Результат выполнения действия «Очистить форматирование»
@@ -1146,7 +1146,7 @@ A1:A5 только действительные числа, находящиес для корректного пересчета формул или сортировки, необходимо привести данные к нужному формату. -
+
Рис. 89. Пример настройки действия «Формат ячейки»
@@ -1155,7 +1155,7 @@ A1:A5 только действительные числа, находящиес Действие отображает число по определенным правилам числового формата Excel. -
+
Рис. 90. Пример настройки действия «Формат числа»
@@ -1163,14 +1163,14 @@ Excel. кнопкой левой кнопкой мыши по ячейке – «Формат ячейки» – вкладка «Число» - (все форматы): -
+
Рис. 91. Просмотр примеров форматов числа в Excel
Наиболее часто используемые форматы числа предлагаются в студии при наведении на поле для ввода формата. -
+
Рис. 92. Просмотр примеров форматов числа в студии
@@ -1181,13 +1181,13 @@ Excel. Исходные данные представлены на рисунке 93: -
+
Рис. 93. Пример исходных данных
Результат работы представлен на рисунке ниже: -
+
Рис. 94. Результат выполнения действия «Формат числа»
@@ -1200,7 +1200,7 @@ Excel. содержимого по левому/правому краю, либо по верхнему/нижнему краю, либо по центру. -
+
Рис. 95. Пример настройки действия «Выравнивание»
@@ -1211,13 +1211,13 @@ Excel. Исходное положение текста в ячейке представлено на рисунке 96: -
+
Рис. 96. Пример исходных данных
Результат работы представлен на рисунке 97: -
+
Рис. 97. Результат выполнения действия «Выравнивание»
@@ -1227,7 +1227,7 @@ Excel. текста», функция которой – отображение текста ячейки в несколько строк, если он не помещается в одну. -
+
Рис. 98. Пример настройки действия «Перенос текста»
@@ -1237,7 +1237,7 @@ Excel. листе. Модуль предоставляет выбор всех стандартных шрифтов, доступных в пакете Microsoft Office. -
+
Рис. 99. Пример настройки действия «Изменение шрифта»
@@ -1249,13 +1249,13 @@ Excel. Исходное форматирование текста представлен на рисунке 100: -
+
Рис. 100. Пример исходных данных
Результат работы представлен на рисунке 101: -
+
Рис. 101. Результат выполнения действия «Шрифт»
@@ -1266,7 +1266,7 @@ Excel. только правая и др., цвет границ и их стиль – толстая, тонкая, штриховая линия и др. -
+
Рис. 102. Пример настройки действия «Границы»
@@ -1278,13 +1278,13 @@ Excel. Исходный вид блока текста представлен на рисунке 103: -
+
Рис. 103. Пример исходных данных
Результат работы представлен на рисунке 104: -
+
Рис. 104. Результат выполнения действия «Границы»
@@ -1310,7 +1310,7 @@ Excel-модуль работает с файлами следующим обр Интерфейс модуля состоит из одного поля и списка путей к файлам, которые необходимо закрыть. -
+
Рис. 105. Окно «Закрыть Excel-файл»
diff --git a/docs/media/image352.png b/docs/media/image352.png new file mode 100644 index 0000000000000000000000000000000000000000..99eb2ff40a1af86e5839c91d4e1d7ad32d8c9fc1 GIT binary patch literal 11717 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 literal 0 HcmV?d00001 diff --git a/docs/media/image353.png b/docs/media/image353.png new file mode 100644 index 0000000000000000000000000000000000000000..40d7928465123dddede75cf58ed7e199a4d35b69 GIT binary patch literal 14719 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�Tx5Wv-1 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 literal 0 HcmV?d00001