diff --git a/docs/HelloStudio.md b/docs/HelloStudio.md index cc8856b..434f35e 100644 --- a/docs/HelloStudio.md +++ b/docs/HelloStudio.md @@ -630,346 +630,319 @@ Script https://learn.javascript.ru/. Ниже предлагаем свою не которой, в основном, достаточно для написания робота. Все эти действия вы можете выполнить самостоятельно по кнопке «Узнать значение переменной» в созданном проекте или в консоли разработчика в браузере (SHIFT+CTRL+I в Windows, Google Chrome). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+

+
+

Действие

+
+

Пример на JS

+
+

Результат

+
+

Работа
со строками

+
+

Определение длины строки

+
+

'Lexema Studio'.length

+
+

13

+
+

Заменить первое вхождение
символа или подстроки в строке

+
+

'Le123ma'.replace('123', 'xe')

+
+

'Lexema'

+
+

Заменить все вхождения символа
или подстроки в строке
(/g – глобальный поиск,
регулярное выражение)

+
+

'L5x5ma'.replace(/5/g, 'e')

+
+

'Lexema'

+
+

Проверка содержания в строке
символа или подстроки

+
+

'Lexema'.includes('x')

+
+

'True'

+
+

Поиск символа или подстроки
в строке, возвращение индекса
первого вхождения (отсчет с 0).
Если не найдено, возвращается -1.

+
+

'Lexema'.indexOf('e');

+
+

1

+
+

'Lexema'.indexOf('5');

+
+

-1

+
+

Поиск символа или подстроки
в строке, возвращение индекса
последнего вхождения (отсчет с 0).
Если не найдено, возвращается -1.

+
+

'Lexema'.lastIndexOf('e');

+
+

3

+
+

'Lexema'.lastIndexOf('5');

+
+

-1

+
+

Получение подстроки из строки
по индексу её начала и, по желанию,
конца (иначе берется всё с первого
индекса и до конца строки)

+
+

'Lexema Studio'.substring(7);

+
+

'Studio'

+
+

Получение подстроки из строки
по индексу её начала и, по желанию,
конца (иначе берется всё с первого
индекса и до конца строки)

+
+

'Lexema Studio'.substring(7,9);

+
+

'St'

+
+

Математические
операции

+
+

Стандартные математические
операции – «+», «-», «/», «*»

+
+

15+2.23

+
+

17.23

+
+

10/3

+
+

3.333333333

+
+

Округление числа до ближайшего
целого

+
+

Math.round(3.3333)

+
+

3

+
+

Округление числа в большую
сторону

+
+

Math.ceil(3.3333)

+
+

4

+
+

Округление числа в меньшую
сторону

+
+

Math.floor(3.99)

+
+

3

+
+

Оставить в числе заданное
количество знаков после
запятой. Возвращает строку

+
+

3.3333.toFixed(2)

+
+

3.33

+
+

Сконвертировать из строки в целое
число

+
+

parseInt('5')

+
+

5

+
+

Сконвертировать из строки в число
с плавающей запятой

+
+

parseFloat('5.231')

+
+

5.231

+
+

Работа
с массивами

+
+

Создать пустой массив

+
+

v.mas = []

+
+

+
+

Создать заполненный массив

+
+

v.mas = [1,2,3,4]

+
+

+
+

Добавить элемент в массив

+
+

v.mas.push('Lexema')

+
+

+
+

Обратиться к элементу массива
по его номеру (с 0)

+
+

v.mas[4]

+
+

'Lexema'

+
+

Получить количество элементов
массива

+
+

v.mas.length

+
+

5

+
+

Удалить элемент из массива по
его индексу (при указании второго
параметра, будет удалено указанное
количество элементов)

+
+

v.mas.splice(0);

+
+

+
+

v.mas.splice(0,2);
//удаление 2 элементов подряд

+
+

+
+

Сделать из массива строку,
разделяя каждый элемент
указанным символом

+
+

v.mas.join(';')
//v.mas = [1,2,3,4];

+
+

'1;2;3;4'

+
+

Сделать из строки массив
по разделителю

+
+

v.mas = v.str.split(‘,’)
//v.str = ‘1,2,3,4’

+
+

[‘1’,’2’,’3’,’4’]

+
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-


-

-
-

Действие

-
-

- Пример на JS

-
-

- Результат

-
-

- Работа со строками

-
-

Определение - длины строки -

-
-

'Lexema - Studio'.length

-
-

13

-
-

Заменить - первое вхождение символа или подстроки - в строке

-
-

'Le123ma'.replace('123', - 'xe')

-
-

'Lexema'

-
-

Заменить - все вхождения символа или подстроки - в строке (/g - – глобальный поиск, регулярное - выражение)

-
-

'L5x5ma'.replace(/5/g, - 'e')

-
-

'Lexema'

-
-

Проверка - содержания в строке символа или - подстроки -

-
-

'Lexema'.includes('x')

-
-

'True'

-
-

Поиск - символа или подстроки в строке, - возвращение индекса первого - вхождения (отсчет с 0). Если не найдено, - возвращается -1. -

-
-

'Lexema'.indexOf('e');
'Lexema'.indexOf('5');

-
-

1
-1

-
-

Поиск - символа или подстроки в строке, - возвращение индекса последнего - вхождения (отсчет с 0). Если не найдено, - возвращается -1.

-
-

'Lexema'.lastIndexOf('e');
'Lexema'.lastIndexOf('5');

-
-

3
-1

-
-

Получение - подстроки из строки по индексу её - начала и, по желанию, конца (иначе - берется всё с первого индекса и до - конца строки)

-
-

'Lexema - Studio'.substring(7);
'Lexema Studio'.substring(7,9);

-
-

'Studio'
'St'

-
-

- Математические - операции

-
-

Стандартные - математические операции – «+», «-», - «/», «*» -

-
-

15+2.23;
10/3;

-
-

17.23
3.333333333

-
-

Округление - числа до ближайшего целого

-
-

Math.round(3.3333)

-
-

3

-
-

Округление - числа в большую сторону

-
-

Math.ceil(3.3333)

-
-

4

-
-

Округление - числа в меньшую сторону

-
-

Math.floor(3.99)

-
-

3

-
-

Оставить - в числе заданное количество знаков - после запятой. Возвращает строку

-
-

3.3333.toFixed(2)

-
-

3.33

-
-

Сконвертировать - из строки в целое число

-
-

parseInt('5')

-
-

5

-
-

Сконвертировать - из строки в число с плавающей запятой

-
-

parseFloat('5.231')

-
-

5.231

-
-

- Работа с массивами

-
-

Создать - пустой массив

-
-

v.mas - = []

-
-


-

-
-

Создать - заполненный массив

-
-

v.mas - = [1,2,3,4]

-
-


-

-
-

Добавить - элемент в массив

-
-

v.mas.push('Lexema')

-
-

-
-

-
-

Обратиться - к элементу массива по его номеру (с 0)

-
-

v.mas[4]

-
-

'Lexema'

-
-

Получить - количество элементов массива

-
-

v.mas.length

-
-

5

-
-

Удалить - элемент из массива по его индексу (при - указании второго параметра, будет - удалено указанное количество элементов)

-
-

v.mas.splice(0);
v.mas.splice(0,2);//удаление - 2 элементов подряд

-
-


-

-
-

Сделать - из массива строку, разделяя каждый - элемент указанным символом

-
-

v.mas - = [1,2,3,4];
v.mas.join(';');

-
-

'1;2;3;4'

-
-

Сделать - из строки массив по разделителю

-
-

v.str - = ‘1,2,3,4’
v.mas = v.str.split(‘,’);

-
-

[‘1’,’2’,’3’,’4’]

-
- -
### Горячие клавиши Приложение поддерживает следующий набор комбинаций горячих клавиш: diff --git a/docs/browser.md b/docs/browser.md index 4aa986a..033914b 100644 --- a/docs/browser.md +++ b/docs/browser.md @@ -43,7 +43,7 @@ Selenium WebDriver и позволяет реализовывать основ «Поднять» или «Опустить», в зависимости от того, где эта строка должна находиться. -
+
Рис. 2. Кнопки для изменения порядка команд
@@ -118,8 +118,8 @@ chromium (например, chromium-gost). Если данное поле не ## Описание действий -Модуль предлагает использование 7 основных действий – перейти на -страницу, перезагрузить страницу, перейти назад или вперед, работа со +Модуль предлагает использование 8 основных действий – перейти на +страницу, перезагрузить страницу, получить адрес страницы, перейти назад или вперед, работа со страницей, работа со вкладками и закрыть браузер. Каждое действие требует заполнения определенных полей. @@ -137,7 +137,8 @@ chromium (например, chromium-gost). Если данное поле не **Поле «Пауза»** — ожидает указанное количество миллисекунд после выполнения действия. **Поле «Скриншот»** — при установленной галочке делает скриншот после выполнения -команды и сохраняет его в папку screen, находящуюся в папке с программой. +команды и сохраняет его в папку screen, находящуюся в папке с программой. Название +изображения – описание действия + «.bmp». **Поле «Примечание»** — строка с примечанием к команде. @@ -166,6 +167,11 @@ chromium (например, chromium-gost). Если данное поле не Действие не имеет никаких дополнительных для настройки полей. +#### Действие «Получить адрес страницы» + +Действие получает адрес текущей открытой страницы и записывает результат +в указанную переменную. + #### Действие «Назад» Действие позволяет выполнять переход к странице, которая была открыта в @@ -334,6 +340,10 @@ chromium (например, chromium-gost). Если данное поле не document.querySelectorAll("\[height='24'\]").length» (такой запрос вернет количество элементов на странице, высота которых равна 24); +- Получить скриншот – делается скриншот текущего экрана и сохраняет + его по пути, указанном в поле «Переменная». Путь должен быть указан + полностью – с названием и расширением сохраняемого изображения; + - Нажать кнопку на клавиатуре – позволяет нажать кнопку на клавиатуре внутри браузера. diff --git a/docs/clicker.md b/docs/clicker.md index d041e9d..aed7fc7 100644 --- a/docs/clicker.md +++ b/docs/clicker.md @@ -13,50 +13,21 @@ рекомендуется на компьютерах с таким же разрешением, как и тот, на котором был написан данный робот. -### Создание макроса +### Интерфейс модуля -При открытии модуля «Кликер» появится диалоговое окно «Запись действий -макроса», состоящее из трех элементов – кнопки «Начать запись», области, -в которой будут отображены записанные действия, и кнопки «Сохранить». +Модуль «Кликер» состоит из нескольких областей – область выбора действия, +настройки действия (не видна на данном скриншоте, появляется при выборе +действия), и списка команд. -
+
-
Рис. 1. Запись действий макроса
+
Рис. 1. Интерфейс модуля «Кликер»
-По нажатию кнопки «Начать запись» программа переходит в режим -***ожидания нажатия кнопки «TAB»**,* по которой открывается окно -создания действия (команды). +### Раздел «Действия» -
- -
Рис. 2. Создание команды
- -В открывшемся окне происходит настройка действия (описание всех -возможных действий будет дано ниже). По завершению создания команды и -нажатию кнопки сохранить, новое действие будет добавлено в макрос. - -
- -
Рис. 3. Добавление команды
- -Изменить положение действия в списке команд можно с помощью кнопок с -изображением стрелок, расположенных в правой части блока. - -
- -
Рис. 4. Изменение порядка команды
- -Кнопка с изображением крестика, расположенная между стрелками, -предназначена для удаления действия из списка команд. - -Для сохранения макроса необходимо нажать на кнопку «Сохранить». - -### Создание команды - -Окно создания команды состоит из статичных и изменяющихся полей. -Статичными являются такие поля, как «Действие», «Пауза» и «Примечание». - -### Статичные поля +В данном разделе выбирается необходимое действие, заполняется по желанию +его описание (комментарий), и устанавливается значение паузы - время, +которое должно пройти после выполнения действия. ***Действие*** @@ -76,31 +47,91 @@ иконке) в поле «Пауза» следует написать некоторое значение, например, 5000, т.е. 5 секунд. -***Примечание*** +***Описание*** -Поле «Примечание» позволяет писать комментарии, чтобы не запутаться в -командах. +Поле «Описание» позволяет писать комментарии, чтобы не запутаться +в командах. -### Поля, появляющиеся только при определенных действиях +***Кнопка «Начать запись»*** + +Нажатие этой кнопки сворачивает интерфейс Lexema Studio и записывает +каждый ваш клик по монитору, создавая на каждый клик действия и +добавляя их в «Список команд». Для остановки записи необходимо +открыть программу и нажать на ту же кнопку (её название будет +изменено на «Остановить запись»). Нужно обратить внимание, что +действия открытия студии тоже будут записаны. Скорее всего, их +необходимо будет удалить вручную. + +***Кнопка «Получить координаты»*** + +Данная кнопка позволяет заполнить поля с координатами при +выбранном действии. Для этого необходимо выбрать нужное +действие, нажать эту кнопку, навестись на необходимое место +на экране и нажать кнопку «TAB» на клавиатуре. Программа +подставит выбранные значения в нужные поля. + +### Разделы «Настройка действия» и «Список команд» + +В данном разделе настраиваются выбранные ранее действия. +Набор полей в данном разделе не всегда одинаков – он меняется +в зависимости от выбранного действия. После заполнения +действия необходимо нажать кнопку под настройкой – «Добавить», +после чего действие будет добавлено в «Список команд». + +Для редактирования существующего действия необходимо нажать +на него в списке команд, изменить нужные поля и нажать +«Редактировать». Если же нажать «Добавить», то оно добавится +в конец списка команд и выбранное действие изменено не будет, +таким образом можно копировать действия. + +Для удаления команды необходимо нажать на команду в списке +команд и затем на кнопку «Удалить», + +***Изменение порядка действий*** + +Для изменения порядка действий предусмотрены кнопки «Поднять» +и «Опустить». Кнопки расположены справа сверху от списка команд. +Изменение порядка действий бывает необходимо, когда требуется +добавить действие, которое не предусмотрели сразу и не внесли в +список команд. В таком случае вы можете добавить действие стандартным +способом, а затем переместить его. + +
+ +
+ +
Рис. 2. Изменение порядка действий
+ +***Отключение команды*** + +Если вы не хотите удалять команду, так как хотели бы, например, +проверить, как работает робот без неё, а затем вернуть её в +работу, то можно отключить команду, нажав на соответствующую +ей строку правой кнопкой мыши и отключить или, наоборот, включить её. + +
+ +
Рис. 3. Контекстное меню команды
+ + +### Описание полей для работы с координатами ***Переключатели «Изображение», «Координаты» и «Селекторы»*** -При создании действий, связанных с кликом или наведением мыши, вам -предлагается выбрать, куда кликать – по определенным координатам или по -изображению. Если программа, с которой вы работаете, статичная и не -меняет расположение своих кнопок, то можно воспользоваться кликом по -координатам. Тогда возникает вопрос, как рассчитать координаты? Все -очень просто – при нажатии кнопки «TAB» нужно располагать мышь ровно в -том месте, куда следует нажать. В диалоговом окне создания команды -координаты уже будут заполнены. +При создании действий, связанных с кликом или наведением мыши, вам +предлагается выбрать, куда кликать – по определенным координатам +или по изображению. Если программа, с которой вы работаете, статичная +и не меняет расположение своих кнопок, то можно воспользоваться кликом +по координатам. Для заполнения данных полей необходимо воспользоваться +кнопкой «Получить координаты», находящейся в разделе выбора действия. -Если программа может менять расположение её элементов, то настоятельно -рекомендуем использовать клик по изображению. Для этого нажмите на +Если программа может менять расположение её элементов, то можно +использовать клик по изображению. Для этого нажмите на переключатель «**Изображение**». -
+
-
Рис. 5. Создание команды
+
Рис. 4. Создание команды
При изменении переключателя изменится нижняя часть окна – появятся кнопки «Выбрать изображение», «Выделить изображение» и поле для ввода @@ -132,7 +163,7 @@
-
Рис. 6. Пример отличия искомого изображения от действительного
+
Рис. 5. Пример отличия искомого изображения от действительного
Поля «Количество попыток» и «Пауза между ошибками» предназначены для случаев, когда программа не смогла найти заданное ей изображение. Вы @@ -153,23 +184,12 @@ используя не просто координаты или изображение, а путь относительно родительского компонента экрана с использованием специальной разметки. Они работают с системой компьютера, некоторыми desktop-приложениями. -Использование подобно работе с координатами – необходимо навестить на -искомый элемент и вызвать окно настройки действия по кнопке «TAB». При -переключении настроек на «Селекторы», путь до элемента уже будет введен. +Использование подобно работе с координатами – необходимо нажать «Получить +координаты», навестись на искомый элемент и нажать «TAB». -
+
-
Рис. 7. Создание команды через селекторы Windows
- -***Прокрутка мыши*** - -Данное поле появляется при действии «Прокрутка мыши». В него вводится -значение в пикселях, на сколько необходимо прокрутить колесико мыши. -Если прокрутка вверх, то значение должно быть положительным, если вниз, -то отрицательным. - -Во всех полях окна создания команды ***возможно использование -переменных.*** +
Рис. 6. Создание команды через селекторы Windows
### Описание действий, доступных в модуле @@ -195,11 +215,13 @@ #### Действие «Прокрутка мыши» -Прокрутка колесом мыши вниз или вверх по странице. Здесь координаты -играют роль того, где будет находиться курсор при прокрутке колеса, так -как ползунков на экране может быть несколько. Для прокрутки экрана вниз -в поле «Прокрутка мыши» должно быть введено отрицательное значение -(-150), вверх - положительное (150). +Прокрутка колесом мыши вниз или вверх по странице. Здесь координаты +играют роль того, где будет находиться курсор при прокрутке колеса, +так как ползунков на экране может быть несколько. При выборе данного +действия появляется поле «Прокрутка мыши». В данное поле вводится +количество «прокруток колесика», на которое необходимо прокрутить мышь. +Для прокрутки экрана вниз в поле «Прокрутка мыши» должно быть введено +отрицательное значение (-150), вверх - положительное (150). Число прокрутки измеряется в количестве прокруток колесом мыши. @@ -209,9 +231,9 @@ курсор, нажать клавишу «TAB» на клавиатуре, выбрать действие «прокрутка мыши» и заполнить поле «Прокрутка мыши», как показано на рисунке 8: -
+
-
Рис. 8. Пример настройки команды
+
Рис. 7. Пример настройки команды
#### Действие «Ввести текст» @@ -235,9 +257,9 @@ Пример заполнения действия: -
+
-
Рис. 9. Пример заполнения
+
Рис. 8. Пример заполнения
#### Действие «Нажать кнопку» @@ -247,9 +269,9 @@ расширенных клавиатурах (изменение громкости звука, запуск/остановка музыки и другие нестандартные кнопки). -
+
-
Рис. 10. Действие «Нажать кнопку»
+
Рис. 9. Действие «Нажать кнопку»
#### Действие «Нажать две кнопки» @@ -258,21 +280,12 @@ выпадающих списках «Кнопка». Список кнопок тот же, что и в действии «Нажать кнопку». -
- -
Рис. 11. Действие «Нажать две кнопки»
- #### Действие «Скопировать» Имитирует нажатие сочетания клавиш клавиатуры CTRL+C. Копирует выделенное заранее значение в буфер обмена и записывает его, при необходимости, в переменную, указанную в поле «Записать в». Данное поле -**не обязательно** к заполнению. Ввод переменной начинается с символов -«v.». - -
- -
Рис. 12. Действие «Скопировать»
+**не обязательно** к заполнению. #### Действие «Вставить» @@ -295,9 +308,9 @@ Окно модуля выглядит следующим образом: -
+
-
Рис. 13. Окно модуля
+
Рис. 10. Окно модуля
Кнопки «Выбрать изображение» и «Выделить изображение» позволяют выбрать изображение для поиска. @@ -341,9 +354,9 @@ «Результат» только одно поле – «Переменная», а также появилось поле «Минимальная дистанция». -
+
-
Рис. 14. Окно модуля
+
Рис. 11. Окно модуля
**В поле «Переменная»** вводится название переменной с символов «v.», в которую запишется результат поиска. @@ -391,14 +404,14 @@ y, а в поле «similarity» - процент совпадения найд
-
Рис. 15. Пример
+
Рис. 12. Пример
Для этого создадим действие «Поиск изображений» и выберем в нем в качестве искомого изображения эту синенькую точку: -
+
-
Рис. 16. Настройка действия
+
Рис. 13. Настройка действия
Для нажатия на каждую такую точку и прочтения сообщений, необходимо добавить цикл по количеству изображений, и в каждому шаге цикла нажимать @@ -423,9 +436,9 @@ y, а в поле «similarity» - процент совпадения найд В поле «Имя файла» должно быть название скриншота. Если расширение не будет указано, то изображение будет сохранено в формате png. -
+
-
Рис. 17. Окно модуля «Создать скриншот»
+
Рис. 14. Окно модуля «Создать скриншот»
## Модуль «Получить активное окно» @@ -439,12 +452,12 @@ y, а в поле «similarity» - процент совпадения найд записывает в указанную переменную название активного окна ***строчными буквами***. -
+
-
Рис. 18. Пример заполнения модуля «Получить активное окно»
+
Рис. 15. Пример заполнения модуля «Получить активное окно»
Пример переменной в результате заполнения модулем: -
+
-
Рис. 19. Результат работы модуля
\ No newline at end of file +
Рис. 16. Результат работы модуля
\ No newline at end of file diff --git a/docs/email.md b/docs/email.md index 45e0e97..a3009cc 100644 --- a/docs/email.md +++ b/docs/email.md @@ -13,7 +13,7 @@ #### Вкладка «Настройки» -
+
Рис. 1. Окно модуля
@@ -23,7 +23,7 @@ предоставляет возможность самостоятельной настройки параметров доступа к почтовой службе. -
+
Рис. 2. Пример настройки почтовый службы «Mail»
@@ -31,6 +31,13 @@ при выборе пользовательских настроек. Представляют собой набор обязательных полей для подключения к почтовым сервисам. +*Проверку безопасности сертификата можно отключить*, если вы используете +проверенный хост и на устройстве нет выхода во внешний интернет для +проверок сертификатов. Для этого необходимо в файле конфигурации студии +установить флаг «CheckCertificate» в состояние «false» +(по умолчанию значение «true»). + + **Поле «Доменное имя»** необходимо для некоторых почтовых служб (в основном, корпоративных) для указания доменного имени, необходимого для авторизации. @@ -44,10 +51,48 @@ **Флажок «Показывать пароль»** предоставляет возможность показать пароль для проверки его правильности. -
+
Рис. 3. Пример заполненной вкладки «Настройки»
+#### Вкладка «Письмо» + +На данной вкладке настраивается письмо, которое будет отправлено +получателям, указанным на следующей вкладке «Получатель». Все поля н +еобязательны для заполнения, если не заполнить ни одного из них будет +отправлено пустое письмо с темой «<Без темы>». + +Поле «В ответ на сообщение» заполняется только в том случае, если +необходимо отправить письмо не самостоятельное, а ответом на какое-либо +считанное сообщение. + +
+ +
Рис. 4. Вкладка «Письмо»
+ +Для прикрепления одного файла во вложение следует нажать на кнопку +«Выбрать файл» и в открывшемся диалоговом окне выбрать требуемый файл. + +Для прикрепления сразу нескольких файлов необходимо нажать на кнопку +«Выбрать папку» и в открывшемся диалоговом окне выбрать папку со всеми +требуемыми файлами. + +Каждое из полей формы может быть заполнено переменной. + +Поле «В ответ на сообщение» должно быть заполнено переменной-письмом, +то есть полученной при помощи модуля «Считать письмо», причем должно +быть подано именно одно письмо, а не список писем. При заполнении +этого поля становится доступными для выбора флажки «Изменить тему +сообщения» и «Прикрепить переписку» - при ответе на сообщение тема +письма может быть оставлена прежняя с добавлением к ней в начале +«Re:», либо вы можете самостоятельно изменить тему, установив флажок +и введя свою тему; если необходимо прикрепить текст переписки, то +нужно установить галочку «Прикрепить переписку», иначе будет отправлен +только текущий текст сообщения. Так же появится галочка «Ответить всем» +на вкладке «Получатель», если она установлена, то письмо будет +отправлено всем, кто участвовал в переписке, в ином случае можно +самостоятельно указать список получателей письма. + #### Вкладка «Получатель» На данной вкладке заполняется информация о лицах, которым будет @@ -57,13 +102,15 @@ - ручной ввод списка получателей (имена и e-mail’ы); -- из переменной-элемента, в виде одного e-mail’а; +- из переменной-строки, в виде одного e-mail’а или их перечня через запятую; - из переменной-списка, в виде нескольких e-mail’ов. -
+- установкой флажка «Ответить всем», если письмо – ответ на другое сообщение. -
Рис. 4. Вкладка «Получатель»
+
+ +
Рис. 5. Вкладка «Получатель»
Если выбран переключатель «Список», то поле «Переменная» недоступно для ввода, иначе – наоборот, доступно поле «Переменная», но недоступны @@ -75,9 +122,9 @@ окна. Если необходимо удалить какого-либо получателя из таблицы, необходимо выбрать строку с ним и нажать на кнопку «Удалить». -
+
-
Рис. 5. Пример заполнения таблицы получателей
+
Рис. 6. Пример заполнения таблицы получателей
Если используется метод выбора получателей через переменную, то поля «Имя получателя», «E-mail получателя» и таблица становятся недоступными. @@ -86,29 +133,18 @@ может быть списком из email’ов, либо строкой с перечислением их через запятую. -
+
-
Рис. 6. Вкладка «Получатель»
+
Рис. 7. Вкладка «Получатель»
-#### Вкладка «Письмо» +Если письмо является ответом на сообщение, то появляется возможность +установить флажок «Ответить всем», в таком случае письмо будет +отправлено всем участникам переписки, указывать вручную адреса не +будет необходимости. -На данной вкладке настраивается письмо, которое будет отправлено -получателям, указанным на вкладке «Получатель». Все поля необязательны -для заполнения, если не заполнить ни одного из них будет отправлено -пустое письмо с темой «<Без темы>». +
-
- -
Рис. 7. Вкладка «Письмо»
- -Для прикрепления одного файла во вложение следует нажать на кнопку -«Выбрать файл» и в открывшемся диалоговом окне выбрать требуемый файл. - -Для прикрепления сразу нескольких файлов необходимо нажать на кнопку -«Выбрать папку» и в открывшемся диалоговом окне выбрать папку со всеми -требуемыми файлами. - -Каждое из полей формы может быть заполнено переменной. +
Рис. 8. Флажок «Ответить всем»
## Модуль «Считать письма» @@ -132,18 +168,18 @@ «Порт» и «Безопасность» заполняются автоматически (кроме режима «Пользовательские настройки»). -
+
-
Рис. 8. Окно модуля с примером авто-заполнения полей
+
Рис. 9. Окно модуля с примером авто-заполнения полей
#### Вкладка «Настройки чтения» Вкладка «Настройки чтения» представляет собой набор полей, которые заполняются в зависимости от того, какие письма следует считать. -
+
-
Рис. 9. Вкладка «Настройка чтения»
+
Рис. 10. Вкладка «Настройка чтения»
**Поле «Переменная».** В поле ожидается ввод названия переменной, в которую будет внесена информация о считанных письмах. В программе это @@ -161,23 +197,28 @@ 6. Date – дата получения письма; -7. Id – уникальный идентификатор письма. +7. Id – уникальный идентификатор письма; + +8. References – ссылки на другие письма, которые могут быть установлены самой почтовой системой. Данное поле необходимо для корректной отправки ответа на сообщение; + +9. ForReplyId – идентификатор сообщения, который необходим для отправки ответного письма на данное сообщение. + Примеры работы с переменными - v.mails\[2\].Attachments\[0\] – получение пути первого вложения третьего считанного письма: -
+
-
Рис. 10. Пример получения пути до первого вложения второго письма
+
Рис. 11. Пример получения пути до первого вложения второго письма
- v.mails\[3\].Subject – получение темы четвертого скачанного сообщения: -
+
-
Рис. 11. Пример получения темы первого письма
+
Рис. 12. Пример получения темы первого письма
**Поле «Скачивать вложения в папку»** предназначено для ввода пути до папки, в которую загрузятся все вложения считанных писем. Если оставить @@ -216,12 +257,12 @@ IMAP.* по теме сообщений. Если необходимо скачать письма с темой, содержащей или не содержащей определенную строку, то следует выбрать одноименную операцию в выпадающем списке и вписать нужную строку в появившемся поле -(рисунок 12). *Доступно только для протокола +(рисунок 13). *Доступно только для протокола IMAP.* -
+
-
Рис. 12. Фильтр по теме сообщений
+
Рис. 13. Фильтр по теме сообщений
**Поле «Фильтр по дате»** предназначено для настройки фильтрации считывания писем по дате. При указании значения в данном поле, робот @@ -259,9 +300,9 @@ IMAP.* - Загрузка только даты сообщения. -
+
-
Рис. 13. Вкладка «Параметры загрузки»
+
Рис. 14. Вкладка «Параметры загрузки»
С помощью данной функции можно загрузить только, например, «шапки» писем, отобрать из них необходимые, и догрузить по ним всю информацию с @@ -282,7 +323,7 @@ IMAP.*
-
Рис. 14. Включение IMAP протокола в Яндекс
+
Рис. 15. Включение IMAP протокола в Яндекс
Если настройки «Портальный пароль» нет, значит в вашем аккаунте предусмотрено использование паролей приложений, которые для работы @@ -292,15 +333,15 @@ Lexema-RPA Studio необходимо выключить. Для этого п
-
Рис. 15. Пароли приложений в настройках аккаунта
+
Рис. 16. Пароли приложений в настройках аккаунта
-
Рис. 16. Выключение паролей приложения
+
Рис. 17. Выключение паролей приложения
Затем вернитесь на страницу с включением настроек почтовых программ и установите галочку напротив «Портального пароля», как это изображено на -рисунке 14. +рисунке 15. 2. POP3 @@ -311,7 +352,7 @@ Lexema-RPA Studio необходимо выключить. Для этого п
-
Рис. 17. Включение протокола POP3 в Яндекс
+
Рис. 18. Включение протокола POP3 в Яндекс
2. GMail @@ -323,7 +364,7 @@ Lexema-RPA Studio необходимо выключить. Для этого п
-
Рис. 18. Включение протокола IMAP в Gmail
+
Рис. 19. Включение протокола IMAP в Gmail
2. POP3 @@ -333,7 +374,7 @@ Lexema-RPA Studio необходимо выключить. Для этого п
-
Рис. 19. Включение POP3 протокола в Gmail
+
Рис. 20. Включение POP3 протокола в Gmail
## Модуль «Действия над письмами» @@ -354,18 +395,18 @@ Lexema-RPA Studio необходимо выключить. Для этого п заполнятся автоматически, при пользовательских настройках их необходимо заполнять вручную. -
+
-
Рис. 20. Вкладка «Настройки» модуля «Переместить письмо»
+
Рис. 21. Вкладка «Настройки» модуля «Переместить письмо»
#### Вкладка «Действие» На данной вкладке производится настройка действия, совершаемого над сообщением. -
+
-
Рис. 21. Вкладка «Параметры перемещения»
+
Рис. 22. Вкладка «Параметры перемещения»
**Поле «Действие»** позволяет выбрать одно из трёх доступных действий – «Переместить письмо», «Удалить письмо» и «Загрузить всю информацию из diff --git a/docs/excel.md b/docs/excel.md index de16b5b..8314f09 100644 --- a/docs/excel.md +++ b/docs/excel.md @@ -2,10 +2,27 @@ ## Основные моменты модуля -Модуль «Excel» является самым обширным модулем в программе. Данный -модуль предназначен для обработки Excel-файлов в фоновом режиме, -незаметном для пользователя компьютера. Модуль последовательно выполнит -заданный ему список команд. +Модуль «Excel» является самым обширным модулем в программе. Данный модуль +предназначен для обработки Excel-файлов в фоновом режиме, незаметном для +пользователя компьютера. Модуль последовательно выполнит заданный ему +список команд. + +Excel-модуль работает с файлами следующим образом – как только он начинает +работу с некоторым файлом, то он открывает его (в фоновом, незаметном для +пользователя, режиме), и держит открытым до конца работы робота. Это было +сделано для ускорения работы модуля Excel – если модулей, использующих +один и тот же файл, к примеру, несколько, пришлось бы несколько раз +открывать и сохранять файл столько раз, сколько он используется что +отразилось бы на быстродействии программы. В связи с этим, файл +открывается при первом его использовании в модуле Excel и сохраняется +только один раз – в самом конце. Если файл вовсе нужно открыть только для +чтения и сохранять его не нужно – в модуле есть соответствующая настройка. +Иначе же, если файл нужно сохранить в процессе работы робота, так как его +нужно использовать вне его (отправить по почте, добавить в архив и другое), +то его необходимо сохранить действием «Сохранить файл», после чего он +будет сохранен и закрыт и станет доступным для сторонних приложений и +пользователям компьютера. + ### Интерфейс модуля @@ -13,7 +30,7 @@ часть окна), «Добавить команду», «Список команд» и окна с предварительным просмотром файла. -
+
Рис. 1. Окно модуля Excel
@@ -29,18 +46,25 @@ ### Раздел «Общие настройки» -Раздел «Общие настройки» состоит из поля «Имя файла», «Пароль» и кнопку -«Выбрать ячейку». Поле «Пароль» подлежит заполнению только у -запароленных книг. +Раздел «Общие настройки» состоит из поля «Имя файла», «Пароль», флажок +«Только для чтения» и кнопку «Выбрать ячейку». Поле «Пароль» подлежит +заполнению только у запароленных книг. Работу с модулем Excel советуем начинать с выбора рабочего файла. После того, как по кнопке «Открыть файл» в поле «Имя файла» будет выбран файл, необходимо подождать несколько секунд и указанный файл будет отображен в окне предварительного просмотра (Рис. 3). -
+ +
Рис. 3. Общие настройки
+Поле «Только для чтения» позволяет открыть книгу и работать с ней, не +сохраняя сделанные в ней изменения. Однако книгу можно сохранить, выбрав +соответствующее действие, если это вдруг понадобится. Так же, не +обязательно ставить галочку «Только для чтения» в каждом модуле работы +с конкретным файлом, достаточно установить её в первом модуле. + ### Разделы «Добавить команду» и «Список команд» Раздел «Добавить команду» является основным «полотном» данного модуля. В @@ -61,7 +85,7 @@ Для добавления команды предусмотрена кнопка «Добавить». Она заносит созданное действие в таблицу «Список команд». -
+
Рис. 4. Добавление команды
@@ -74,7 +98,7 @@ если нужно выполнить действие несколько раз, достаточно его копировать, а не создавать вновь. -
+
Рис. 5. Отображение команды
@@ -95,9 +119,9 @@ таком случае вы можете добавить действие стандартным способом, а затем переместить его. -
+
-
+
Рис. 6. Изменение порядка действий
@@ -112,7 +136,7 @@ можно отключить команду, нажав на соответствующую ей строку правой кнопкой мыши и отключить или, наоборот, включить её. -
+
Рис. 7. Контекстное меню команды
@@ -127,11 +151,11 @@ ячейка, хотя был выбран диапазон – это означает, что в данном действии использование диапазона невозможно.*** -
+
Рис. 8. Выбор диапазона в окне предварительного просмотра
-
+
Рис. 9. Выбрать ячейку
@@ -144,204 +168,10 @@ Для сохранения команды в модуле Excel нажмите на кнопку «Сохранить» в правом нижнем углу модуля. -
+
Рис. 10. Сохранение в модуле Excel
-## Набор полей в составе модуля - -Для каждого действия в разделе «Добавить команду» существует свой набор -необходимых для него полей, который будет отображен при выборе действия. -По умолчанию, отображены поля «Лист», «Ячейки», «Формула» и -«Переменная». Почти все команды имеют именно такой набор полей, но -некоторые требуют несколько иной информации для выполнения действия. - -### Перечень возможных полей с правилами их заполнения - -1. Лист – поле, в которое необходимо указать имя или номер листа - (начиная с 0), на котором необходимо выполнить указанное действие; - -2. Ячейки – поле, в котором ожидается либо адрес одной ячейки (A1), - либо диапазон ячеек (A1:C10). Если адрес ячейки вычисляется - динамически и неизвестен, то можно использовать номера колонок и - строк ячеек, то есть вместо «C1» можно написать «3,1», где 3 – номер - колонки, 1 – номер строки. Так же можно указать диапазон – вместо - «A3:D4» - «1,3:4,4». Второй формат написания ячеек может быть - использован только по отношению к полям «Ячейка(-и)», но невозможен - в полях «Формула» (см. след. пункт); - -3. Формула – поле для ввода формулы в стандартном формате Excel. - Например «=ЕСЛИ(A2 > B2:1:0)». Для более удобного ввода длинных - формул поле можно расширить, нажав на кнопку со стрелочкой в поле - ввода: - -
- -
Рис. 11. Поле «Формула»
- -4. Переменная – поле для ввода названия переменной, в которую будет - помещен результат выполнения действия. Название вводится с символов - «v.»; - -5. Значение – поле для ввода текста или названия переменной, в которой - лежит значение, используемое в выбранном действии; - -6. Столбец – номер (с 1) или название столбца; - -7. Строка – номер строки (с 1). В некоторых действиях («Найти данные», - «Найти лист») – текстовая строка для поиска в файле; - -8. Путь к файлу – путь до папки, в которую будет помещен файл. Можно - выбрать с помощью диалога выбора папки по нажатию на кнопку в поле: - -
- -
Рис. 12. Поле «Путь к файлу»
- -9. Имя файла – название файла, можно указать как с расширением, так и - без, в таком случае будет создан файл с расширением xlsx; - -10. Путь копируемого файла – путь до файла вместе с его расширением, - который будет использоваться в данном действии помимо основного - файла для копирования данных из него. Можно выбрать с помощью - диалога выбора файлов по нажатию на кнопку в поле: - -
- -
Рис. 13. Поле «Путь копируемого файла»
- -11. Лист копируемого файла – название или номер листа (с 0) в копируемом - файле; - -12. Колонки (ч/з ;) – аналогично полю «Столбец», только здесь возможно - их перечисление через символ «;»; - -13. Значения (ч/з ;) – строковые значения (или переменные, хранящие их), - перечисленные через «;»; - -14. Строка, колонка – номер строки и номер колонки, перечисленные через - запятую; - -15. Ячейка из диапазона значений – любая ячейка из таблицы, к которой - применяется действие (например, если таблица A1:D10, то любая ячейка - из этого диапазона – B5); - -16. Функция – выпадающий список с набором функций, который меняется в - зависимости от выбранного действия; обязателен выбор одного из - представленных значений; - -17. По убыванию – флажок, использующийся в действии «Добавить - сортировку», который ставится, если необходимо сортировать по - убыванию, и не ставится в противном случае; - -18. Диапазон таблицы – аналогично полю «Ячейки», но с обязательным - условием, что это должен быть именно диапазон (то есть должен - присутствовать символ «:»); - -19. Лист для вставки – название или номер листа (с 0); - -20. Уникальные столбцы – используется в действии «Получить уникальные - значения столбца», необходим ввод названий или номеров столбцов (с - 1-цы), которые должны быть уникальными; - -21. Для колонок – аналогично полю «Столбец»; - -22. При каждом изменении в колонке – аналогично полю «Столбец»; - -23. Лист, диапазон - поле, в которое должен быть введен лист файла - (аналогично полю «Лист»), затем поставлена запятая и указан диапазон - или ячейка (аналогично полю «Ячейки»); - -24. Лист, диапазон источника – аналогично полю «Лист, диапазон»; - -25. Лист, диапазон для вставки – аналогично полю «Лист, диапазон»; - -26. Поля в столбцах – используется в действии «Сводная таблица», - необходимо ввести название колонки из рабочей таблицы (не A, B, C и - т.д., а именно название столбца вашей таблицы, например «Дата - создания», без использования кавычек); - -27. Поля в значениях – аналогично «Поля в столбцах»; - -28. Поля в строках – аналогично «Поля в столбцах»; - -29. Копируемый лист – аналогично полю «Лист»; - -30. Копируемый диапазон/ячейка – аналогично полю «Ячейки»; - -31. Диапазон/ячейка для вставки – аналогично полю «Ячейки»; - -32. Файл для вставки (необяз.) – путь до файла с его расширением, - является необязательным полем; - -33. Расположение (лев. верхн.,прав. нижн.) – две ячейки, разделенные - запятой, которые обозначают положение - первая – левый верхний угол, - вторая – правый нижний; - -34. Диапазон названий – аналогично полю «Ячейки»; - -35. Диапазон аргументов - аналогично полю «Ячейки»; - -36. Диапазон значений - аналогично полю «Ячейки»; - -37. Ячейка для вставки - аналогично полю «Ячейки», но только в - единственном числе; - -38. Тип данных – выпадающий список, обязателен выбор одного значения из - представленных; - -39. Операция – аналогично «Типу данных»; - -40. Критерии (ч/з ;) – аргументы для выбранной операции, могут быть как - числами, так и строками, перечисляются через «;»; - -41. Цвет заливки – цвет в формате ARGB, с перечислением каждого - параметра через запятую или в формате HEX (например, \#FFFFFF), - возможен выбор цвета через диалог выбора цвета по кнопке в поле: - -
- -
Рис. 14. Поле «Цвет заливки»
- -42. Цвет текста – аналогично «Цвет заливки»; - -43. Цвет – аналогично полю «Цвет заливки»; - -44. Значение для сравнения – текстовое или числовое значение; - -45. Ячейка/диапазон – аналогично полю «Ячейки»; - -46. Столбцы – перечисление номеров (с 1-цы) или названий необходимых - столбцов через запятую; - -47. Ширина – число, как целое, так и дробное (через «.» или «,»); - -48. Строки – перечисление номеров (с 1-цы) строк через запятую; - -49. Высота – аналогично полю «Ширина»; - -50. Общее положение – выпадающий список, обязателен выбор одного из - предложенных значений; - -51. Выравнивание содержимого – аналогично полю «Общее положение»; - -52. Шрифт – выпадающий список со всеми шрифтами, имеющимися в Microsoft - Office, необходимо выбрать один из них; - -53. Стиль текста – аналогично полю «Общее положение»; - -54. Размер – аналогично полю «Ширина»; - -55. Расположение – аналогично полю «Общее положение»; - -56. Стиль – аналогично полю «Общее положение». - -Во всех полях можно использовать переменные, но в них должно содержаться -то, что требуют поля, то есть, в поле «Столбец» можно написать v.column, -но тогда в v.column должен содержаться номер столбца, начинающийся с -единицы, либо его название. Поля, которые закрашены серым цветом, не -используются в выбранном действии. - ## Описание действий, доступных в модуле Действия разделены на группы для удобной навигации по выпадающему @@ -358,9 +188,9 @@ переменная с типом «Элемент», если же диапазон, то будет создана переменная с типом «Таблица». Все значения будут являться строками. -
+
-
Рис. 15. Пример настройки действия «Считать данные»
+
Рис. 11. Пример настройки действия «Считать данные»
#### Действие «Записать данные» @@ -369,9 +199,9 @@ чтобы в ячейке было что-то иное, необходимо использовать действие «Формат ячейки», описанное далее. -
+
-
Рис. 16. Пример настройки действия «Записать данные»
+
Рис. 12. Пример настройки действия «Записать данные»
#### Действие «Формула» @@ -379,9 +209,9 @@ и вернуть её результат в указанную переменную. Поле «Переменная» можно оставить пустым, если результат выполнения данной формулы не важен. -
+
-
Рис. 17. Пример настройки действия «Формула»
+
Рис. 13. Пример настройки действия «Формула»
**СОВЕТ.** Предположим, что вам необходимо написать формулу, применимую к текущей строке, и «растянуть» её на несколько других строк, как в @@ -390,27 +220,27 @@ Excel. Начните с создания действия «Формула» д ячейку/диапазон» применительно к настроенной формуле. То есть для выше предложенной формулы «растягивание» будет выглядеть так: -
+
-
Рис. 18. Пример настройки действия «Скопировать и вставить +
Рис. 14. Пример настройки действия «Скопировать и вставить ячейку/диапазон»
#### Действие «Получить формулу» Действие возвращает формулу из ячейки в указанную переменную. -
+
-
Рис. 19. Пример настройки действия «Получить формулу»
+
Рис. 15. Пример настройки действия «Получить формулу»
#### Действие «Заменить формулу на её значение» Данное действие заменяет формулу в ячейке или диапазоне ячеек на её результат. -
+
-
Рис. 20. Пример настройки действия «Заменить формулу на ее значение»
+
Рис. 16. Пример настройки действия «Заменить формулу на ее значение»
### Группа «Работа со строками» @@ -418,35 +248,35 @@ Excel. Начните с создания действия «Формула» д Действие вставляет новую строку в указанное место. -
+
-
Рис. 21. Пример настройки действия «Добавление строки»
+
Рис. 17. Пример настройки действия «Добавление строки»
#### Действие «Удалить строку» Действие удаляет указанную строку. -
+
-
Рис. 22. Пример настройки действия «Удаление строки»
+
Рис. 18. Пример настройки действия «Удаление строки»
#### Действие «Получить количество строк» Действие возвращает номер последней используемой строки в листе в указанную переменную. Результат будет являться числом. -
+
-
Рис. 23. Пример настройки действия «Получение количества строк»
+
Рис. 19. Пример настройки действия «Получение количества строк»
#### Действие «Получить количество отфильтрованных строк» Действие возвращает количество видимых строк при примененном фильтре в указанную переменную. Результат будет являться числом. -
+
-
Рис. 24. Пример настройки действия «Получение количества +
Рис. 20. Пример настройки действия «Получение количества отфильтрованных строк»
#### Действие «Переместить строку» @@ -455,9 +285,9 @@ Excel. Начните с создания действия «Формула» д из поля «Лист» вместо указанной в поле «Номер строки для вставки» листа «Лист для вставки». -
+
-
Рис. 25. Пример настройки действия «Переместить строку»
+
Рис. 21. Пример настройки действия «Переместить строку»
В данном примере строка 14 с листа Лист1 будет перемещена на место 16 строки листа Лист2. @@ -478,16 +308,16 @@ Excel. Начните с создания действия «Формула» д
-
Рис. 26. Пример настройки действия «Сгруппировать строки»
+
Рис. 22. Пример настройки действия «Сгруппировать строки»
#### Действие «Удалить группировку строк» Действие предназначено для удаления 1-го уровня существующей группировки по строкам. Входные данные аналогичны действию «Сгруппировать строки». -
+
-
Рис. 27. Пример настройки действия «Удалить группировку строк»
+
Рис. 23. Пример настройки действия «Удалить группировку строк»
#### Действие «Уровень группировки строки» @@ -498,9 +328,9 @@ Excel. Начните с создания действия «Формула» д иначе – массивом чисел, где индекс массива будет соответствовать индексу указанной строки. -
+
-
Рис. 28. Пример настройки действия «Уровень группировки строк»
+
Рис. 24. Пример настройки действия «Уровень группировки строк»
### Группа «Работа с колонками» @@ -508,26 +338,26 @@ Excel. Начните с создания действия «Формула» д Действие добавляет новый столбец в указанное место. -
+
-
Рис. 29. Пример настройки действия «Добавление столбца»
+
Рис. 25. Пример настройки действия «Добавление столбца»
#### Действие «Удалить столбец» Действие удаляет указанный столбец. -
+
-
Рис. 30. Пример настройки действия «Удаление столбца»
+
Рис. 26. Пример настройки действия «Удаление столбца»
#### Действие «Получить количество столбцов» Действие возвращает номер самого последнего используемого столбца. Результат будет являться числом. -
+
-
Рис. 31. Пример настройки действия «Получение количества столбцов»
+
Рис. 27. Пример настройки действия «Получение количества столбцов»
#### Действие «Сгруппировать столбцы» @@ -546,16 +376,16 @@ Excel. Начните с создания действия «Формула» д
-
Рис. 32. Пример настройки действия «Сгруппировать столбцы»
+
Рис. 28. Пример настройки действия «Сгруппировать столбцы»
#### Действие «Удалить группировку колонок» Действие позволяет удалить один уровень группировки у указанных столбцов. -
+
-
Рис. 33. Пример настройки действия «Удалить группировку колонок»
+
Рис. 29. Пример настройки действия «Удалить группировку колонок»
#### Действие «Уровень группировки столбца» @@ -567,9 +397,9 @@ Excel. Начните с создания действия «Формула» д массивом чисел, где индекс массива будет соответствовать индексу указанной колонки. -
+
-
Рис. 34. Пример настройки действия «Уровень группировки столбца»
+
Рис. 30. Пример настройки действия «Уровень группировки столбца»
### Группа «Работа с листами и файлами» @@ -577,42 +407,42 @@ Excel. Начните с создания действия «Формула» д Действие создает новый лист с указанным именем. -
+
-
Рис. 35. Пример настройки действия «Создание нового листа»
+
Рис. 31. Пример настройки действия «Создание нового листа»
#### Действие «Удалить лист» Действие удаляет лист с указанным именем. -
+
-
Рис. 36. Пример настройки действия «Удаление листа»
+
Рис. 32. Пример настройки действия «Удаление листа»
#### Действие «Очистить лист» Действие очищает ячейки листа от данных. **Не очищает форматирование!** -
+
-
Рис. 37. Пример настройки действия «Очищение листа»
+
Рис. 33. Пример настройки действия «Очищение листа»
#### Действие «Получить список листов» Возвращает переменную-список, содержащую названия всех листов файла. -
+
-
Рис. 38. Пример настройки действия «Получение списка листов»
+
Рис. 34. Пример настройки действия «Получение списка листов»
#### Действие «Ориентация страницы» Изменение ориентации страницы Excel. Доступные ориентации – книжная и альбомная. -
+
-
Рис. 39. Пример настройки действия «Ориентация страницы»
+
Рис. 35. Пример настройки действия «Ориентация страницы»
#### Действие «Настройки печати» @@ -620,9 +450,9 @@ Excel. Начните с создания действия «Формула» д на странице при печати, а также масштаб этой области. Аналогично одноименной настройке в Excel. -
+
-
Рис. 40. Пример настройки действия «Настройки печати»
+
Рис. 36. Пример настройки действия «Настройки печати»
#### Действие «Режим просмотра книги» @@ -631,7 +461,7 @@ Excel. Начните с создания действия «Формула» д
-
Рис. 41. Пример настройки действия «Режим просмотра книги»
+
Рис. 37. Пример настройки действия «Режим просмотра книги»
#### Действие «Поля» @@ -645,7 +475,7 @@ Excel. Начните с создания действия «Формула» д
-
Рис. 42. Пример настройки действия «Поля»
+
Рис. 38. Пример настройки действия «Поля»
#### Действие «Настройка колонтитулов» @@ -666,7 +496,7 @@ Excel. Начните с создания действия «Формула» д
-
Рис. 43. Пример настройки действия «Настройка колонтитулов»
+
Рис. 39. Пример настройки действия «Настройка колонтитулов»
Таблица 1. @@ -805,23 +635,36 @@ Excel. Начните с создания действия «Формула» д указано в поле, иначе - по умолчанию (Лист 1, Sheet 1, в зависимости от языка системы). -
+
-
Рис. 44. Пример настройки действия «Создание нового файла»
+
Рис. 40. Пример настройки действия «Создание нового файла»
Если после создания файла необходимо выполнить с ним какие-либо действия, то **необходимо создать новый модуль «Excel»**, в котором в поле «Имя файла» в области настроек следует указать путь до созданного файла. -#### Действие «Заполнить лист на основе Excel-файла» -Данное действие производит заполнение листа текущего файла по аналогии с -листом какого-либо другого файла. В поле «Лист» указывается лист -текущего файла. +#### Действие «Сохранить файл» -
+Действие сохранит файл и закроет его. После этого действия не может +быть других действий. Если файл нужен для работы повторно, нужно +создать новый модуль Excel и работать с ним уже в нем. -
Рис. 45. Пример настройки действия «Заполнение листа»
+
+ +
Рис. 41. Пример настройки действия «Сохранить файл»
+ +#### Действие «Скопировать лист» + +Данное действие производит заполнение листа текущего файла по аналогии с +другим листом из этого же или какого-либо другого файла. В поле «Лист» +указывается лист текущего файла, «Путь копируемого файла» может быть +оставлен пустым, если копируется файл внутри того же документа, «Лист +копируемого файла» - название листа, с которого копируются данные. + +
+ +
Рис. 42. Пример настройки действия «Скопировать лист»
#### Действие «Экспортировать в PDF» @@ -841,7 +684,7 @@ PDF будет производиться по стандартным настр
-
Рис. 46. Пример настройки действия «Экспортирование в PDF»
+
Рис. 43. Пример настройки действия «Экспортирование в PDF»
### Группа «Поиск» @@ -855,7 +698,7 @@ PDF будет производиться по стандартным настр
-
Рис. 47. Пример настройки действия «Найти данные»
+
Рис. 44. Пример настройки действия «Найти данные»
#### Действие «Поиск строки по значениям колонок» @@ -868,9 +711,9 @@ PDF будет производиться по стандартным настр переменную будет записан номер первой найденной строки или -1, если таких строк нет. -
+
-
Рис. 48. Пример настройки действия «Поиск строки»
+
Рис. 45. Пример настройки действия «Поиск строки»
В данном случае будет искаться одна строка, в колонке A которой 23.03.2020, а в колонке B – Уфа. @@ -884,7 +727,7 @@ PDF будет производиться по стандартным настр
-
Рис. 49. Пример настройки действия «Найти лист»
+
Рис. 46. Пример настройки действия «Найти лист»
### Группа «Другие функции» @@ -894,9 +737,9 @@ PDF будет производиться по стандартным настр возвращает результат в переменную (в данном примере результатом будет ячейка D13). -
+
-
Рис. 50. Пример настройки действия «Сместить ячейку»
+
Рис. 47. Пример настройки действия «Сместить ячейку»
#### Действие «Наложить фильтр» @@ -913,17 +756,17 @@ PDF будет производиться по стандартным настр Если необходимо просто включить фильтр в таблице, но без определенной фильтрации, то нужно оставить поле «Функция» пустым. -
+
-
Рис. 51. Пример настройки действия «Наложить фильтр»
+
Рис. 48. Пример настройки действия «Наложить фильтр»
#### Действие «Удалить фильтр» Действие удаляет все фильтры с листа. -
+
-
Рис. 52. Пример настройки действия «Удаление фильтра»
+
Рис. 49. Пример настройки действия «Удаление фильтра»
#### Действие «Добавить сортировку» @@ -931,18 +774,18 @@ PDF будет производиться по стандартным настр столбцу. В зависимости от флажка определяется, сортируется столбец по убыванию или по возрастанию. Столбец для сортировки должен быть один. -
+
-
Рис. 53. Пример настройки действия «Добавление сортировки»
+
Рис. 50. Пример настройки действия «Добавление сортировки»
#### Действие «Очистить диапазон» Действие удаляет все значения и форматирования ячеек в указанном диапазоне. -
+
-
Рис. 54. Пример настройки действия «Очищение диапазона»
+
Рис. 51. Пример настройки действия «Очищение диапазона»
#### Действие «Получить уникальные значения столбца» @@ -952,30 +795,30 @@ PDF будет производиться по стандартным настр в лист, но в тот же диапазон. В зависимости от наличия дубликатов, количество строк может быть уменьшено. -
+
-
Рис. 55. Пример настройки действия «Получение уникальных значений»
+
Рис. 52. Пример настройки действия «Получение уникальных значений»
#### Действие «Промежуточные итоги» Действие добавляет операцию Excel «Промежуточные итоги» на указанный лист к указанному диапазону. -
+
-
Рис. 56. Пример настройки действия «Промежуточные итоги»
+
Рис. 53. Пример настройки действия «Промежуточные итоги»
Поле «Для колонок» соответствует полю в Excel «Добавить итоги по» -(выделено зеленым на рисунке 57), поле «При каждом изменении в +(выделено зеленым на рисунке 54), поле «При каждом изменении в колонке» соответствует аналогичному полю в Excel, но должно быть заполнено названием колонки Excel (A, B, … или 1, 2, …) (выделено -красным на рисунке 57, поле «Функция» заполняется операцией, которая +красным на рисунке 54), поле «Функция» заполняется операцией, которая должна быть применена для выбранных колонок (выделено синим на рисунке -57). +54).
-
Рис. 57. Настройка действия «Промежуточные итоги» в Excel
+
Рис. 54. Настройка действия «Промежуточные итоги» в Excel
#### Действие «Сводная таблица» @@ -984,9 +827,9 @@ PDF будет производиться по стандартным настр диапазон источника». Все перечисления в данном модуле должны быть указаны через символ «;». -
+
-
Рис. 58. Пример настройки действия «Сводная таблица»
+
Рис. 55. Пример настройки действия «Сводная таблица»
В поля «Поля в столбцах», «Поля в значениях» и «Поля в строках» вписываются **названия колонок таблицы-источника** (а не Excel-таблицы), @@ -994,149 +837,142 @@ PDF будет производиться по стандартным настр «Поля в столбцах» соответствуют названиям столбцов таблицы, значения которых должны быть расположены в столбцах сводной таблицы (выделено -зеленым на рисунке 59); +зеленым на рисунке 56); «Поля в строках» соответствуют названиям столбцов таблицы, значения которых должны быть расположены в строках сводной таблицы (выделено -синим на рисунке 59); +синим на рисунке 56); «Поля в значениях» соответствуют названиям столбцов таблицы, значения которых должны быть расположены в значениях сводной таблицы (выделено -красным на рисунке 59); +красным на рисунке 56);
-
Рис. 59. Настройка действия «Сводная таблица» в Excel
+
Рис. 56. Настройка действия «Сводная таблица» в Excel
Для того, чтобы изменить функцию подсчета значений в полях «Значения», необходимо к выбранному полю добавить символ «:» и название функции. Все названия приведены в таблице ниже. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Функция в - Excel

-
-

Обозначение - в Lexema-RPA - Studio (варианты написания - указаны через запятую)

-
-

Сумма

-
-

sum, - сумма

-
-

Количество

-
-

count, - количество

-
-

Среднее

-
-

avg, - среднее, average

-
-

Максимум

-
-

max, - макс, максимум

-
-

Минимум

-
-

min, - мин, минимум

-
-

Произведение

-
-

product, - multiply, произведение, умножение

-
-

Количество - чисел

-
-

countnumbers, - количествочисел

-
-

Стандартное - отклонение

-
-

stddev, - стандартноеотклонение

-
-

Несмещенное - стандартное отклонение

-
-

stdtevp, - несмещенноестандартноеотклонение

-
-

Дисперсия

-
-

var, дисперсия

-
-

Несмещенная - дисперсия

-
-

varp, - несмещеннаядисперсия

-
-
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+

Функция в Excel

+
+

Обозначение в Lexema-RPA Studio
(варианты написания указаны через запятую)

+
+

Сумма

+
+

sum, сумма

+
+

Количество

+
+

count, количество

+
+

Среднее

+
+

avg, среднее, average

+
+

Максимум

+
+

max, макс, максимум

+
+

Минимум

+
+

min, мин, минимум

+
+

Произведение

+
+

product, multiply, произведение, умножение

+
+

Количество чисел

+
+

countnumbers, количествочисел

+
+

Стандартное отклонение

+
+

stddev, стандартноеотклонение

+
+

Несмещенное стандартное отклонение

+
+

stdtevp, несмещенноестандартноеотклонение

+
+

Дисперсия

+
+

var, дисперсия

+
+

Несмещенная дисперсия

+
+

varp, несмещеннаядисперсия

+
+ Пример использования функции подсчета приведен на рисунке ниже.
-
Рис. 60. Пример использования функций подсчета значений
+
Рис. 57. Пример использования функций подсчета значений
+ +#### Действие «Обновить сводные таблицы на листе» + +Данное действие обновляет сводные таблицы, то есть если данные, на +которых они были построены, были изменены, для пересчета значений в +сводной таблице необходимо их обновить. Обновляет все таблицы на одном листе. + +
+ +
Рис. 58. Пример настройки действия «Обновить сводные таблицы на листе»
#### Действие «Скопировать и вставить ячейку/диапазон» @@ -1146,16 +982,16 @@ PDF будет производиться по стандартным настр
-
Рис. 61. Пример настройки действия «Скопировать и вставить +
Рис. 59. Пример настройки действия «Скопировать и вставить ячейку/диапазон»
#### Действие «Отобразить в виде процентов» Действие переводит выбранный диапазон в проценты. -
+
-
Рис. 62. Пример настройки действия «Отображение в виде процентов»
+
Рис. 60. Пример настройки действия «Отображение в виде процентов»
#### Действие «Круговая диаграмма» @@ -1165,27 +1001,27 @@ PDF будет производиться по стандартным настр «Расположение» указываются границы расположения круговой диаграммы, а именно левый верхний угол и правый нижний через запятую. -
+
-
Рис. 63. Пример настройки действия «Создание круговой диаграммы»
+
Рис. 61. Пример настройки действия «Создание круговой диаграммы»
**ПРИМЕР.** Построение круговой диаграммы для двух параметров, указанных в столбце A, по соответствующим им параметрам, указанным в столбце B. Заполнение -действия для данного примера указано на рисунке 63. +действия для данного примера указано на рисунке 61. -Пример исходных данных представлен на рисунке 64. +Пример исходных данных представлен на рисунке 62.
-
Рис. 64. Пример исходных данных
+
Рис. 62. Пример исходных данных
-Результат построения круговой диаграммы представлен на рисунке 65. +Результат построения круговой диаграммы представлен на рисунке 63.
-
Рис. 65. Результат выполнения действия «Круговая диаграмма»
+
Рис. 63. Результат выполнения действия «Круговая диаграмма»
#### Действие «График» @@ -1193,16 +1029,16 @@ A, по соответствующим им параметрам, указанн необходимо указать в поле «Диапазон значений» в виде одномерного диапазона (по одной колонке или по одной строке). Если рядов больше, чем один, то последующие ряды нужно указать в таком же виде через «;», как -указано на рисунке 66. Диапазон аргументов должен быть один и +указано на рисунке 64. Диапазон аргументов должен быть один и указывается аналогично ряду. «Ячейки с названиями рядов» заполняются названиями ячеек через «;», их количество должно быть равно количеству рядов, первая ячейка отображает название первого ряда и т.д. В ячейку для вставки записывается ячейка, в которой будет располагаться левый верхний угол графика. -
+
-
Рис. 66. Пример настройки действия «График»
+
Рис. 64. Пример настройки действия «График»
**ПРИМЕР.** @@ -1210,19 +1046,19 @@ A, по соответствующим им параметрам, указанн времени. Так как валют две, то график должен состоять из двух рядов. В качестве аргументов выступит столбец с указанием дат – A, в качестве значений будет два столбца, первый – B, курс евро, и второй – C, курс -доллара. Заполнение действия представлено на рисунке 66. +доллара. Заполнение действия представлено на рисунке 64. -Пример исходных данных представлен на рисунке 67. +Пример исходных данных представлен на рисунке 65.
-
Рис. 67. Пример исходных данных
+
Рис. 65. Пример исходных данных
-Результат работы программы представлен на рисунке 68. +Результат работы программы представлен на рисунке 66.
-
Рис. 68. Результат выполнения действия «График»
+
Рис. 66. Результат выполнения действия «График»
#### Действие «Проверка значений» @@ -1252,19 +1088,19 @@ A, по соответствующим им параметрам, указанн его пустым, то будет отображаться ошибка «Введенное значение неверно. Набор значений, которые могут быть введены в ячейку, ограничен». -
+
-
Рис. 69. Пример настройки действия «Проверка значений»
+
Рис. 67. Пример настройки действия «Проверка значений»
**ПРИМЕР.** Для создания списка, состоящего из некоторых заданных в какой-либо колонке значений, действие заполняется так, как указано на рисунке -65. Пусть в ячейках А2:А6 будут следующие значения: +67. Пусть в ячейках А2:А6 будут следующие значения:
-
Рис. 70. Пример исходных данных
+
Рис. 68. Пример исходных данных
Тогда после работы робота при нажатии на любую ячейку из диапазона С2:С6 будет появляться стрелочка для открытия выпадающего списка, в котором @@ -1272,7 +1108,7 @@ A, по соответствующим им параметрам, указанн
-
Рис. 71. Результат выполнения действия «Проверка значений»
+
Рис. 69. Результат выполнения действия «Проверка значений»
Второй пример - создание правила, позволяющего вводить в диапазон ячеек A1:A5 только действительные числа, находящиеся в промежутке между 5 и @@ -1280,16 +1116,16 @@ A1:A5 только действительные числа, находящиес «Введено неверное значение. Должно быть введено действительное число между 5 и 10»: -
+
-
Рис. 72. Пример создания правила для проверки значений
+
Рис. 70. Пример создания правила для проверки значений
После работы робота при попытке ввести число, находящееся вне диапазона от 5 до 10, появляется ошибка:
-
Рис. 73. Результат выполнения действия «Проверка значений»
+
Рис. 71. Результат выполнения действия «Проверка значений»
#### Действие «Добавить изображение» @@ -1298,9 +1134,9 @@ A1:A5 только действительные числа, находящиес его добавлении в файл Excel. В поле «Ячейки» указывается левый верхний угол расположения изображения. -
+
-
Рис. 74. Пример настройки действия «Добавить изображение»
+
Рис. 72. Пример настройки действия «Добавить изображение»
### Группа «Форматирование» @@ -1319,24 +1155,24 @@ A1:A5 только действительные числа, находящиес
-
Рис. 75. Пример настройки действия «Условное форматирование - цвет»
+
Рис. 73. Пример настройки действия «Условное форматирование - цвет»
**ПРИМЕР.** Окрасим все ячейки в столбцах B и C в зеленый цвет, если значение курса -меньше или равно 82. Действие заполняется как на рисунке 75. +меньше или равно 82. Действие заполняется как на рисунке 73. -Исходные данные представлены на рисунке 76. +Исходные данные представлены на рисунке 74.
-
Рис. 76. Пример исходных данных
+
Рис. 74. Пример исходных данных
-Результат работы программы представлен на рисунке 77. +Результат работы программы представлен на рисунке 75.
-
Рис. 77. Результат выполнения действия «Условное форматирование - цвет»
+
Рис. 75. Результат выполнения действия «Условное форматирование - цвет»
#### Действие «Условное форматирование - выравнивание» @@ -1354,24 +1190,24 @@ A1:A5 только действительные числа, находящиес
-
Рис. 78. Пример настройки действия «Условное форматирование - выравнивание»
+
Рис. 76. Пример настройки действия «Условное форматирование - выравнивание»
**ПРИМЕР.** Пусть все ячейки в столбцах B и C будут выровнены по левому краю, если -значение курса меньше или равно 82. Действие заполняется как на рис. 78. +значение курса меньше или равно 82. Действие заполняется как на рис. 76. -Исходные данные представлены на рисунке 79. +Исходные данные представлены на рисунке 77.
-
Рис. 79. Пример исходных данных
+
Рис. 77. Пример исходных данных
-Результат работы программы представлен на рисунке 80. +Результат работы программы представлен на рисунке 78.
-
Рис. 80. Результат выполнения действия «Условное форматирование - выравнивание»
+
Рис. 78. Результат выполнения действия «Условное форматирование - выравнивание»
#### Действие «Условное форматирование - шрифт» @@ -1391,24 +1227,24 @@ A1:A5 только действительные числа, находящиес
-
Рис. 81. Пример настройки действия «Условное форматирование - шрифт»
+
Рис. 79. Пример настройки действия «Условное форматирование - шрифт»
**ПРИМЕР.** Выделим все значения в столбцах B и C полужирным стилем текста, если их -значения меньше или равны 78. Действие заполняется как на рис. 81. +значения меньше или равны 78. Действие заполняется как на рис. 79. -Исходные данные представлены на рисунке 82. +Исходные данные представлены на рисунке 80.
-
Рис. 82. Пример исходных данных
+
Рис. 80. Пример исходных данных
-Результат работы программы представлен на рисунке 83. +Результат работы программы представлен на рисунке 81.
-
Рис. 83. Результат выполнения действия «Условное форматирование - шрифт»
+
Рис. 81. Результат выполнения действия «Условное форматирование - шрифт»
#### Действие «Цвет ячейки/диапазона» @@ -1417,24 +1253,24 @@ A1:A5 только действительные числа, находящиес
-
Рис. 84. Пример настройки действия «Цвет ячейки/диапазона»
+
Рис. 82. Пример настройки действия «Цвет ячейки/диапазона»
**ПРИМЕР.** -На рисунке 84 представлено, как залить диапазон ячеек A17:C19 в +На рисунке 82 представлено, как залить диапазон ячеек A17:C19 в голубой цвет, а текст в этих ячейках окрасить в фиолетовый. -Исходные данные представлены на рисунке 85: +Исходные данные представлены на рисунке 83:
-
Рис. 85. Пример исходных данных
+
Рис. 83. Пример исходных данных
-Результат работы робота представлен на рисунке 86: +Результат работы робота представлен на рисунке 84:
-
Рис. 86. Результат выполнения действия «Цвет ячейки/диапазона»
+
Рис. 84. Результат выполнения действия «Цвет ячейки/диапазона»
#### Действие «Получить цвет ячейки» @@ -1444,7 +1280,28 @@ A1:A5 только действительные числа, находящиес
-
Рис. 87. Пример настройки действия «Получить цвет ячейки»
+
Рис. 85. Пример настройки действия «Получить цвет ячейки»
+ +#### Действие «Цвет/шрифт части текста» + +Данное действие позволяет окрасить текст и изменить его шрифт частично. +Для этого необходимо знать начальный символ окрашивания и его конец +(длина окрашиваемого текста + начальный символ окрашивания), которые +указываются через запятую. Если оставить пустыми шрифт или цвет, +будут оставлены те значения, которые уже присущи тексту. + +
+ +
Рис. 85. Пример настройки действия «Цвет/шрифт части текста»
+ +#### Действие «Добавить форматированный текст» + +Данное действие позволяет добавить текст к уже заполненной ячейке, +причем с отличающимся форматированием. + +
+ +
Рис. 86. Пример настройки действия «Добавить форматированный текст»
#### Действие «Сделать гиперссылкой @@ -1454,7 +1311,7 @@ A1:A5 только действительные числа, находящиес
-
Рис. 88. Пример настройки действия «Сделать гиперссылкой»
+
Рис. 87. Пример настройки действия «Сделать гиперссылкой»
#### Действие «Ширина столбца(-ов)» @@ -1462,53 +1319,53 @@ A1:A5 только действительные числа, находящиес через запятую, писать их номера вместо названий (с 1-цы). Ширина указывается в той же единице измерения, которая используется в Excel. -
+
-
Рис. 89. Пример настройки действия «Ширина столбца(-ов)»
+
Рис. 88. Пример настройки действия «Ширина столбца(-ов)»
**ПРИМЕР.** -На рисунке 89 представлено, как заполнить действие для установки ширины +На рисунке 88 представлено, как заполнить действие для установки ширины столбцов B и C в 16 пунктов. В поле «Столбцы» можно было бы написать «2,3», то есть второй и третий столбцы. -Исходные данные представлены на рисунке 90: +Исходные данные представлены на рисунке 89:
-
Рис. 90. Пример исходных данных
+
Рис. 89. Пример исходных данных
-Результат работы представлен на рисунке 91: +Результат работы представлен на рисунке 90:
-
Рис. 91. Результат выполнения действия «Ширина столбца(-ов)»
+
Рис. 90. Результат выполнения действия «Ширина столбца(-ов)»
#### Действие «Высота строки (-ок)» Действие изменяет высоту указанных строк. Используется та же единица измерения, что и в Excel. -
+
-
Рис. 92. Пример настройки действия «Высота строки(-ок)»
+
Рис. 91. Пример настройки действия «Высота строки(-ок)»
**ПРИМЕР.** Изменим высоту первой строки, сделав её равной 30 пунктам. Для этого -заполняем действие так, как указано на рисунке 92. +заполняем действие так, как указано на рисунке 91. -Исходные данные представлены на рисунке 93: +Исходные данные представлены на рисунке 92:
-
Рис. 93. Пример исходных данных
+
Рис. 92. Пример исходных данных
-Результат работы робота представлен на рисунке 94: +Результат работы робота представлен на рисунке 93:
-
Рис. 94. Результат выполнения действия «Высота строки(-ок)»
+
Рис. 93. Результат выполнения действия «Высота строки(-ок)»
#### Действие «Объединить ячейки» @@ -1522,28 +1379,28 @@ A1:A5 только действительные числа, находящиес - объединение по столбцам. -
+
-
Рис. 95. Пример настройки действия «Объединить ячейки»
+
Рис. 94. Пример настройки действия «Объединить ячейки»
**ПРИМЕР.** -На рисунке 95 представлено заполнение действия для объединения +На рисунке 94 представлено заполнение действия для объединения колонок в диапазоне ячеек A2:C4. -Исходные данные представлены на рисунке 96: +Исходные данные представлены на рисунке 95:
-
Рис. 96. Пример исходных данных
+
Рис. 95. Пример исходных данных
Результат работы представлен на рисунке 96:
-
Рис. 97. Результат выполнения действия «Объединить ячейки»
+
Рис. 96. Результат выполнения действия «Объединить ячейки»
-***Действие «Получить объединенные ячейки»*** +#### Действие «Получить объединенные ячейки» Действие принимает на вход ячейку (или диапазон ячеек) и возвращает для неё (или каждой из диапазона) null, если ячейка не объединена с другими ячейками, @@ -1551,56 +1408,56 @@ A1:A5 только действительные числа, находящиес
-
Рис. 98. Пример настройки действия «Получить объединенные ячейки»
+
Рис. 97. Пример настройки действия «Получить объединенные ячейки»
Например, для ячеек «B2», «B3» и «B4» с рисунка 96 результатом будет «B2:B4», а для ячейки B1 – null. -***Действие «Очистить форматирование»*** +#### Действие «Очистить форматирование» Действие очищает форматирование в указанном диапазоне выбранного листа. -
+
-
Рис. 99. Пример настройки действия «Очистить форматирование»
+
Рис. 98. Пример настройки действия «Очистить форматирование»
**ПРИМЕР.** Очистим форматирование, которое содержится в диапазоне A17:C19. Для -этого заполним действие так, как указано на рисунке 99 и запустим +этого заполним действие так, как указано на рисунке 98 и запустим робота. -Исходные данные представлены на рисунке 100: +Исходные данные представлены на рисунке 99:
-
Рис. 100. Пример исходных данных
+
Рис. 99. Пример исходных данных
-Результат работы представлен на рисунке 101 +Результат работы представлен на рисунке 100
-
Рис. 101. Результат выполнения действия «Очистить форматирование»
+
Рис. 100. Результат выполнения действия «Очистить форматирование»
-***Действие «Формат ячейки»*** +#### Действие «Формат ячейки» Действие меняет формат указанной ячейки на выбранный. По умолчанию, все значения, заносимые в Excel студией, имеют строковый формат, поэтому, для корректного пересчета формул или сортировки, необходимо привести данные к нужному формату. -
+
-
Рис. 102. Пример настройки действия «Формат ячейки»
+
Рис. 101. Пример настройки действия «Формат ячейки»
#### Действие «Формат числа» Действие отображает число по определенным правилам числового формата Excel. -
+
-
Рис. 103. Пример настройки действия «Формат числа»
+
Рис. 102. Пример настройки действия «Формат числа»
Примеры форматов можно посмотреть в программе Excel, кликнув правой кнопкой левой кнопкой мыши по ячейке – «Формат ячейки» – вкладка «Число» @@ -1608,31 +1465,31 @@ Excel.
-
Рис. 104. Просмотр примеров форматов числа в Excel
+
Рис. 103. Просмотр примеров форматов числа в Excel
Наиболее часто используемые форматы числа предлагаются в студии при наведении на поле для ввода формата. -
+
-
Рис. 105. Просмотр примеров форматов числа в студии
+
Рис. 104. Просмотр примеров форматов числа в студии
**ПРИМЕР.** Отформатируем число, содержащееся в ячейке A1 в денежный долларовый -формат. Для этого заполним действие так, как указано на рисунке 105. +формат. Для этого заполним действие так, как указано на рисунке 104. -Исходные данные представлены на рисунке 106: +Исходные данные представлены на рисунке 105:
-
Рис. 106. Пример исходных данных
+
Рис. 105. Пример исходных данных
Результат работы представлен на рисунке ниже:
-
Рис. 107. Результат выполнения действия «Формат числа»
+
Рис. 106. Результат выполнения действия «Формат числа»
#### Действие «Получить тип ячейки» @@ -1644,7 +1501,7 @@ Excel.
-
Рис. 108. Пример заполнения действия «Получить тип ячейки»
+
Рис. 107. Пример заполнения действия «Получить тип ячейки»
#### Действие «Выравнивание» @@ -1656,26 +1513,26 @@ Excel. содержимого по левому/правому краю, либо по верхнему/нижнему краю, либо по центру. -
+
-
Рис. 109. Пример настройки действия «Выравнивание»
+
Рис. 108. Пример настройки действия «Выравнивание»
**ПРИМЕР.** -В заполненном на рисунке 109 действии настраивается выравнивание +В заполненном на рисунке 108 действии настраивается выравнивание ячейки А1 по центру относительно вертикали. -Исходное положение текста в ячейке представлено на рисунке 110: +Исходное положение текста в ячейке представлено на рисунке 109:
-
Рис. 110. Пример исходных данных
+
Рис. 109. Пример исходных данных
-Результат работы представлен на рисунке 111: +Результат работы представлен на рисунке 110:
-
Рис. 111. Результат выполнения действия «Выравнивание»
+
Рис. 110. Результат выполнения действия «Выравнивание»
#### Действие «Перенос текста» @@ -1683,9 +1540,9 @@ Excel. текста», функция которой – отображение текста ячейки в несколько строк, если он не помещается в одну. -
+
-
Рис. 112. Пример настройки действия «Перенос текста»
+
Рис. 111. Пример настройки действия «Перенос текста»
#### Действие «Шрифт» @@ -1693,27 +1550,27 @@ Excel. листе. Модуль предоставляет выбор всех стандартных шрифтов, доступных в пакете Microsoft Office. -
+
-
Рис. 113. Пример настройки действия «Изменение шрифта»
+
Рис. 112. Пример настройки действия «Изменение шрифта»
**ПРИМЕР.** Изменим шрифт текста, находящегося в ячейке B1 так, как указано в -действии на рисунке 113 – сам шрифт изменим на Batang, зададим стиль +действии на рисунке 112 – сам шрифт изменим на Batang, зададим стиль текста – полужирный курсив, а размер текста 16. -Исходное форматирование текста представлен на рисунке 114: +Исходное форматирование текста представлен на рисунке 113:
-
Рис. 114. Пример исходных данных
+
Рис. 113. Пример исходных данных
-Результат работы представлен на рисунке 115: +Результат работы представлен на рисунке 114:
-
Рис. 115. Результат выполнения действия «Шрифт»
+
Рис. 114. Результат выполнения действия «Шрифт»
#### Действие «Границы» @@ -1722,60 +1579,50 @@ Excel. только правая и др., цвет границ и их стиль – толстая, тонкая, штриховая линия и др. -
+
-
Рис. 116. Пример настройки действия «Границы»
+
Рис. 115. Пример настройки действия «Границы»
**ПРИМЕР.** Добавим штрихпунктирную внешнюю границу для блока текста, находящегося в диапазоне A2:A6. Для этого необходимо заполнить действие так, как -указано на рисунке 116. +указано на рисунке 115. -Исходный вид блока текста представлен на рисунке 117: +Исходный вид блока текста представлен на рисунке 116:
-
Рис. 117. Пример исходных данных
+
Рис. 116. Пример исходных данных
Результат работы представлен на рисунке 117:
-
Рис. 118. Результат выполнения действия «Границы»
+
Рис. 117. Результат выполнения действия «Границы»
-## Модуль «Закрыть Excel-файл» +#### Действие «Добавить заметку к ячейке» -Excel-модуль работает с файлами следующим образом – как только он -начинает работу с некоторым файлом, то он открывает его (в фоновом, -незаметном для пользователя, режиме), и держит открытым до конца работы -робота. Это было сделано для ускорения работы модуля Excel – если -модулей, использующих один и тот же файл, к примеру, несколько, пришлось -бы несколько раз открывать и сохранять файл столько раз, сколько он -используется что отразилось бы на быстродействии программы. В связи с -этим, файл открывается при первом его использовании в модуле Excel и -сохраняется только один раз – в самом конце. Но! Так как файл является -открытым, с самим файлом нельзя ничего делать – переносить, -архивировать, удалять за ненадобностью (например, провели расчеты в -новом файле, взяли данные и затем его удалили), так как он занят. Для -таких задач существует модуль «Закрыть Excel-файл» - он закрывает и -сохраняет заданные ему файлы. Если эти файлы впоследствии снова будут -использоваться – они опять откроются и, в следующий раз, будут закрыты -либо этим же модулем, либо в конце работы робота. +Действие позволяет добавить к одной ячейке заметку. Для её заполнения +необходим автор заметки, её значение и ячейка, к которой она применяется. +К одной ячейке не может быть добавлено несколько заметок. -Интерфейс модуля состоит из одного поля и списка путей к файлам, которые -необходимо закрыть. +
-
+
Рис. 118. Пример настройки действия «Добавить заметку к ячейке»
-
Рис. 119. Окно «Закрыть Excel-файл»
+#### Действие «Удалить заметку к ячейке» -**Поле «Путь к файлу»** заполняется путем до файла, который необходимо -закрыть. Он может содержаться в переменной, или можно выбрать его -вручную, нажав на кнопку с изображением папки, находящуюся в поле для -ввода. +Действие удаляет заметку, прикрепленную к заданной ячейке. -По кнопке «Добавить» указанный в поле «Путь к файлу» путь будет занесен -в «Список файлов». +
-По кнопке «Удалить» можно удалить выбранный путь из «Списка файлов». \ No newline at end of file +
Рис. 119. Пример настройки действия «Удалить заметку к ячейке»
+ +#### Действие «Удалить все заметки на листе» + +Действие удаляет все заметки с выбранного листа. + +
+ +
Рис. 120. Пример настройки действия «Удалить все заметки на листе»
\ No newline at end of file diff --git a/docs/file_module.md b/docs/file_module.md index 4174135..234408e 100644 --- a/docs/file_module.md +++ b/docs/file_module.md @@ -14,7 +14,7 @@ Вторая – непосредственно список команд. И третья – это область предварительного просмотра текстовых файлов. -
+
Рис. 1. Окно модуля
@@ -50,7 +50,7 @@ соответствующую отключаемой команде строку правой кнопкой мыши и выбрав «Отключить/включить». -
+
Рис. 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. Пример настройки действия «Переименовать файл»
@@ -167,7 +167,7 @@ C:\\Users\\user\\Desktop\\Документы\\text.docx). Действие удаляет выбранный файл. -
+
Рис. 12. Пример настройки действия «Удалить файл»
@@ -182,7 +182,7 @@ C:\\Users\\user\\Desktop\\Документы\\text.docx). Если поле «Переменная» будет заполнено, то в указанную в нем переменную будет возвращено расположение нового файла. -
+
Рис. 13. Пример настройки действия «Скопировать файл»
@@ -192,7 +192,7 @@ C:\\Users\\user\\Desktop\\Документы\\text.docx). в переменную. Результат имеет тип bool, то есть 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. Пример настройки действия «Удалить папку»
@@ -231,7 +231,7 @@ C:\\Users\\user\\Desktop\\Документы\\text.docx). в переменную. Результат имеет тип bool, то есть true - если существует, и иначе false. -
+
Рис. 18. Пример настройки действия «Проверить существование папки»
@@ -240,7 +240,7 @@ C:\\Users\\user\\Desktop\\Документы\\text.docx). Действие создает переменную-список, в которой лежат пути до каждого файла в папке. -
+
Рис. 19. Пример настройки действия «Проверить существование папки»
@@ -251,7 +251,7 @@ C:\\Users\\user\\Desktop\\Документы\\text.docx). указанную в нем переменную будет возвращено расположение созданного архива. -
+
Рис. 20. Пример настройки действия «Заархивировать папку»
@@ -262,4 +262,13 @@ C:\\Users\\user\\Desktop\\Документы\\text.docx).
-
Рис. 21. Пример настройки действия «Распаковать архив»
\ No newline at end of file +
Рис. 21. Пример настройки действия «Распаковать архив»
+ +#### Действие «Получить base64 из файла» + +ДДействие преобразовывает файл в строку, закодированную стандартом Base64. Это +может пригодиться при загрузке файла базу данных, отправке в веб-запросах и другом. + +
+ +
Рис. 22. Пример настройки действия «Получить base64 из файла»
\ No newline at end of file diff --git a/docs/interface.md b/docs/interface.md index 06f3bdd..e92a3db 100644 --- a/docs/interface.md +++ b/docs/interface.md @@ -26,7 +26,7 @@ - Окно с предварительным просмотром диалогового окна на текущий момент > (правая часть окна). -
+
Рис. 1. Основное окно модуля
@@ -35,14 +35,31 @@ ## Настройки окна -К настройкам окна относится название окна – «Титул», его ширина и высота -и настройка сетки. При установке флажка «На весь экран» поля «Высота» и -«Ширина» не будут учитываться. +К настройкам окна относится название окна – «Титул», его ширина и высота +и настройка кнопок и сетки. При установке флажка «На весь экран» поля +«Высота» и «Ширина» не будут учитываться. + +Поле «Кнопки» позволяет выбрать набор кнопок, которые будут располагаться +на создаваемом окне. Доступный перечень: + +1. «Ок»; +2. «Ок» и «Отмена»; +3. «Да» и «Нет»; +4. «Да» «Нет» и «Отмена». + +После данного поля стоит поле «Переменная», в которую вводится значение +переменной, в которую будет введен результат выбора кнопки: + +1. При нажатии на кнопку «Да» будет записано значение «yes»; +2. При нажатии на кнопку «Нет» будет записано значение «no»; +3. При нажатии на кнопку «Отмена» будет записано значение «cancel»; +4. При нажатии на кнопку «Ок» будет записано значение «ok». + По нажатию на кнопку «Настройка сетки» появится окно настроек строк и колонок сетки. -
+
Рис. 2. Настройка сетки
@@ -90,7 +107,7 @@ Для каждой колонки можно задать свою ширину, для каждой строки – высоту: -
+
Рис. 6. Пример настройки сетки
@@ -99,13 +116,13 @@ два раза и их всего две, то в поле «Ширина» можно ввести «1\*» для первой колонки, и «2\*» для второй: -
+
Рис. 7. Пример использования относительных размеров
Результат такой разметки: -
+
Рис. 8. Пример разметки
@@ -122,7 +139,7 @@ Для добавления на окно нового элемента необходимо заполнить поля, представленные на рисунке 9: -
+
Рис. 9. Поля для добавления нового элемента
@@ -132,7 +149,7 @@ ### Поле «Тип» -
+
Рис. 10. Выпадающий список с выбором типа элемента
@@ -140,21 +157,21 @@ - Поле для ввода – поле, в которое можно ввести любую строку; ->
+>
Рис. 11. Элемент «Поле для ввода»
- Надпись – статичная строка текста, которая не может быть отредактирована пользователем; -
+
Рис. 12. Элемент «Надпись»
- Выпадающий список – поле со стрелочкой сбоку, по нажатию которого открывается список заранее определенных значений; ->
+>
Рис. 13. Элемент «Выпадающий список»
@@ -162,7 +179,7 @@ Возможно редактирование полей таблицы, но невозможно создание новых колонок в ней; ->
+>
Рис. 14. Элемент «Таблица»
@@ -172,7 +189,7 @@ автоматически подберет наиболее подходящую дату к введенным данным. Формат даты ДД.ММ.ГГГГ; -
+
Рис. 15. Элемент «Выбор даты»
@@ -180,7 +197,7 @@ которую пользователю будет предложено выбрать файл. Путь до выбранного файла запишется в это поле. -
+
Рис. 16. Элемент «Выбор файла»
@@ -198,7 +215,7 @@ файлы с расширениями .csv и начинающимися на .xl (то есть .xlsx, xls и другие). -
+
- Выбор папки – поле с иконкой в виде трех точек, по нажатию на которую пользователю будет предложено выбрать папку. Путь до @@ -249,19 +266,19 @@ переменные, состоящие из одного столбца. Например, введено следующее значение, при приведенных далее примерах заполнения переменных: -
+
Рис. 19. Пример заполнения поля «Источник данных»
-
+
-
+
Рис. 20. Примеры заполнения используемых переменных
Результат будет выглядеть следующим образом: -
+
Рис. 21. Пример результирующих данных
@@ -290,7 +307,7 @@ даты, нам необходимо разместить его не просто в 1 колонке и 0 строке, но и объединить для него две колонки, чтобы оно занимало сразу обе: -
+
Рис. 23. Пример заполнения полей элемента интерфейса для настройки объединения колонок
@@ -319,7 +336,7 @@ После нажатия на нее элемент сразу отобразиться в окне предпросмотра в правой части окна. -
+
Рис. 26. Пример заполненного окна модуля «Интерфейс»
diff --git a/docs/konfiguration.md b/docs/konfiguration.md index ff3ab88..c776a7f 100644 --- a/docs/konfiguration.md +++ b/docs/konfiguration.md @@ -64,5 +64,22 @@ ChromeProxyExtension.exe, если по какой-то причине прог почтовому серверу для работы с почтой; 12. CheckCertificate – проверять ли безопасность сертификата почтового сервера -при работе с почтой (по умолчанию true). +при работе с почтой (по умолчанию true); + +13. RuCatchaURL – адрес сервера RuCaptcha – если интернет на устройстве +органиченный, то есть возможность развернуть сервер для сервиса локально; + +14. ShowAllLogs – отображать все логи или только логи отрабатываемых модулей +(без логирования внутренних ошибок, которые могут быть как критическими, так +и обычными предупреждениями). Для отображения всех логов – «true», иначе «false»; + +15. UseAutoSave – если «true» - включает авто сохранение разрабатываемых модулей. +Сохранение происходит в момент сохранения модуля (относится ко всем модулям, +которые настраиваются внутри самих себя). Для отключения необходимо установить +флаг «false»; + +16. ClickOpen – флаг, отвечающий за поведение робота при открытии его не через +студию (дабл клик по роботу): если значение «true» - запускает робота (без +интерфейса студии), если значение «false» - открывает студию с загруженным роботом. + diff --git a/docs/media/image100.png b/docs/media/image100.png index 886a16d..6ac9cc9 100644 Binary files a/docs/media/image100.png and b/docs/media/image100.png differ diff --git a/docs/media/image101.png b/docs/media/image101.png index 5a4c3ff..26f7c7b 100644 Binary files a/docs/media/image101.png and b/docs/media/image101.png differ diff --git a/docs/media/image103.png b/docs/media/image103.png index e6724ec..79daefa 100644 Binary files a/docs/media/image103.png and b/docs/media/image103.png differ diff --git a/docs/media/image104.png b/docs/media/image104.png index c4e3eaa..660bd15 100644 Binary files a/docs/media/image104.png and b/docs/media/image104.png differ diff --git a/docs/media/image105.png b/docs/media/image105.png index 461c60d..33a5cfc 100644 Binary files a/docs/media/image105.png and b/docs/media/image105.png differ diff --git a/docs/media/image106.png b/docs/media/image106.png index 8ccbd5f..b0a5ba9 100644 Binary files a/docs/media/image106.png and b/docs/media/image106.png differ diff --git a/docs/media/image107.png b/docs/media/image107.png index 140f3fa..3d27115 100644 Binary files a/docs/media/image107.png and b/docs/media/image107.png differ diff --git a/docs/media/image108.png b/docs/media/image108.png index 3d0e370..f2fe114 100644 Binary files a/docs/media/image108.png and b/docs/media/image108.png differ diff --git a/docs/media/image109.png b/docs/media/image109.png index 6d8f48e..6e1dac9 100644 Binary files a/docs/media/image109.png and b/docs/media/image109.png differ diff --git a/docs/media/image110.png b/docs/media/image110.png index 8ff9a8e..fed1857 100644 Binary files a/docs/media/image110.png and b/docs/media/image110.png differ diff --git a/docs/media/image111.png b/docs/media/image111.png index d79a9ce..9c935a9 100644 Binary files a/docs/media/image111.png and b/docs/media/image111.png differ diff --git a/docs/media/image113.png b/docs/media/image113.png index 927b94f..0e22432 100644 Binary files a/docs/media/image113.png and b/docs/media/image113.png differ diff --git a/docs/media/image115.png b/docs/media/image115.png index 6cec372..11a1fe4 100644 Binary files a/docs/media/image115.png and b/docs/media/image115.png differ diff --git a/docs/media/image116.png b/docs/media/image116.png index 511ef20..b534e32 100644 Binary files a/docs/media/image116.png and b/docs/media/image116.png differ diff --git a/docs/media/image117.png b/docs/media/image117.png index 4108a45..38803c2 100644 Binary files a/docs/media/image117.png and b/docs/media/image117.png differ diff --git a/docs/media/image120.png b/docs/media/image120.png index 59d8194..1fc87e6 100644 Binary files a/docs/media/image120.png and b/docs/media/image120.png differ diff --git a/docs/media/image123.png b/docs/media/image123.png index a233ef1..f17f9f3 100644 Binary files a/docs/media/image123.png and b/docs/media/image123.png differ diff --git a/docs/media/image126.png b/docs/media/image126.png index b0737ea..84e5fd9 100644 Binary files a/docs/media/image126.png and b/docs/media/image126.png differ diff --git a/docs/media/image128.png b/docs/media/image128.png index fe9c852..703bf0f 100644 Binary files a/docs/media/image128.png and b/docs/media/image128.png differ diff --git a/docs/media/image134.png b/docs/media/image134.png index daf8daa..6f9deb1 100644 Binary files a/docs/media/image134.png and b/docs/media/image134.png differ diff --git a/docs/media/image137.png b/docs/media/image137.png index c082bfc..3b51e10 100644 Binary files a/docs/media/image137.png and b/docs/media/image137.png differ diff --git a/docs/media/image140.png b/docs/media/image140.png index 9729a74..4fce2c3 100644 Binary files a/docs/media/image140.png and b/docs/media/image140.png differ diff --git a/docs/media/image143.png b/docs/media/image143.png index 5cc1d19..51e797b 100644 Binary files a/docs/media/image143.png and b/docs/media/image143.png differ diff --git a/docs/media/image146.png b/docs/media/image146.png index d821b7f..11599b6 100644 Binary files a/docs/media/image146.png and b/docs/media/image146.png differ diff --git a/docs/media/image147.png b/docs/media/image147.png index 196acbe..83db26e 100644 Binary files a/docs/media/image147.png and b/docs/media/image147.png differ diff --git a/docs/media/image149.png b/docs/media/image149.png index fe783b4..30915e1 100644 Binary files a/docs/media/image149.png and b/docs/media/image149.png differ diff --git a/docs/media/image152.png b/docs/media/image152.png index 871b1a1..17b0625 100644 Binary files a/docs/media/image152.png and b/docs/media/image152.png differ diff --git a/docs/media/image155.png b/docs/media/image155.png index 8b6887f..62f2835 100644 Binary files a/docs/media/image155.png and b/docs/media/image155.png differ diff --git a/docs/media/image156.png b/docs/media/image156.png index 2cfeb98..69c775b 100644 Binary files a/docs/media/image156.png and b/docs/media/image156.png differ diff --git a/docs/media/image159.png b/docs/media/image159.png index 078f602..0cb2b05 100644 Binary files a/docs/media/image159.png and b/docs/media/image159.png differ diff --git a/docs/media/image174.png b/docs/media/image174.png index 4df3b09..4dc9b7e 100644 Binary files a/docs/media/image174.png and b/docs/media/image174.png differ diff --git a/docs/media/image175.png b/docs/media/image175.png index 8d6e8ce..0a329bb 100644 Binary files a/docs/media/image175.png and b/docs/media/image175.png differ diff --git a/docs/media/image176.png b/docs/media/image176.png index 5deea93..73d74da 100644 Binary files a/docs/media/image176.png and b/docs/media/image176.png differ diff --git a/docs/media/image177.png b/docs/media/image177.png index 716457b..de7b292 100644 Binary files a/docs/media/image177.png and b/docs/media/image177.png differ diff --git a/docs/media/image178.png b/docs/media/image178.png index 11d49a0..c317e14 100644 Binary files a/docs/media/image178.png and b/docs/media/image178.png differ diff --git a/docs/media/image181.png b/docs/media/image181.png index 08431ef..d80b26f 100644 Binary files a/docs/media/image181.png and b/docs/media/image181.png differ diff --git a/docs/media/image182.png b/docs/media/image182.png index 6449b2f..9f0901e 100644 Binary files a/docs/media/image182.png and b/docs/media/image182.png differ diff --git a/docs/media/image183.png b/docs/media/image183.png index cf74215..4146a2b 100644 Binary files a/docs/media/image183.png and b/docs/media/image183.png differ diff --git a/docs/media/image184.png b/docs/media/image184.png index de7e6a6..1a8f042 100644 Binary files a/docs/media/image184.png and b/docs/media/image184.png differ diff --git a/docs/media/image187.png b/docs/media/image187.png index 34137e7..494c645 100644 Binary files a/docs/media/image187.png and b/docs/media/image187.png differ diff --git a/docs/media/image188.png b/docs/media/image188.png index 8f8758b..233e6d4 100644 Binary files a/docs/media/image188.png and b/docs/media/image188.png differ diff --git a/docs/media/image190.png b/docs/media/image190.png index 0a0107f..f2a49d0 100644 Binary files a/docs/media/image190.png and b/docs/media/image190.png differ diff --git a/docs/media/image191.png b/docs/media/image191.png index 490a2c1..ab07741 100644 Binary files a/docs/media/image191.png and b/docs/media/image191.png differ diff --git a/docs/media/image192.png b/docs/media/image192.png index e1989f5..f4360c7 100644 Binary files a/docs/media/image192.png and b/docs/media/image192.png differ diff --git a/docs/media/image193.png b/docs/media/image193.png index 5ed197b..33100f2 100644 Binary files a/docs/media/image193.png and b/docs/media/image193.png differ diff --git a/docs/media/image194.png b/docs/media/image194.png index 5f5e25e..101e2d6 100644 Binary files a/docs/media/image194.png and b/docs/media/image194.png differ diff --git a/docs/media/image195.png b/docs/media/image195.png index 1287af2..4b64dfd 100644 Binary files a/docs/media/image195.png and b/docs/media/image195.png differ diff --git a/docs/media/image197.png b/docs/media/image197.png index 132f065..4c4b086 100644 Binary files a/docs/media/image197.png and b/docs/media/image197.png differ diff --git a/docs/media/image198.png b/docs/media/image198.png index aaf5a23..b964205 100644 Binary files a/docs/media/image198.png and b/docs/media/image198.png differ diff --git a/docs/media/image199.png b/docs/media/image199.png index 65298c6..926cb02 100644 Binary files a/docs/media/image199.png and b/docs/media/image199.png differ diff --git a/docs/media/image200.png b/docs/media/image200.png index e3cc311..18b198b 100644 Binary files a/docs/media/image200.png and b/docs/media/image200.png differ diff --git a/docs/media/image201.png b/docs/media/image201.png index c73ab5f..b3323d9 100644 Binary files a/docs/media/image201.png and b/docs/media/image201.png differ diff --git a/docs/media/image202.png b/docs/media/image202.png index 003096b..d9e6b5d 100644 Binary files a/docs/media/image202.png and b/docs/media/image202.png differ diff --git a/docs/media/image203.png b/docs/media/image203.png index 457b16c..5de3478 100644 Binary files a/docs/media/image203.png and b/docs/media/image203.png differ diff --git a/docs/media/image204.png b/docs/media/image204.png index bfee04f..559cb37 100644 Binary files a/docs/media/image204.png and b/docs/media/image204.png differ diff --git a/docs/media/image206.png b/docs/media/image206.png index 42344e9..7148b1c 100644 Binary files a/docs/media/image206.png and b/docs/media/image206.png differ diff --git a/docs/media/image207.png b/docs/media/image207.png index e9e7fab..419082b 100644 Binary files a/docs/media/image207.png and b/docs/media/image207.png differ diff --git a/docs/media/image208.png b/docs/media/image208.png index 115c196..304829e 100644 Binary files a/docs/media/image208.png and b/docs/media/image208.png differ diff --git a/docs/media/image209.png b/docs/media/image209.png index 175eae4..1ec92a8 100644 Binary files a/docs/media/image209.png and b/docs/media/image209.png differ diff --git a/docs/media/image210.png b/docs/media/image210.png index 5c50cf9..1a321aa 100644 Binary files a/docs/media/image210.png and b/docs/media/image210.png differ diff --git a/docs/media/image211.png b/docs/media/image211.png index b674580..4eee1ed 100644 Binary files a/docs/media/image211.png and b/docs/media/image211.png differ diff --git a/docs/media/image212.png b/docs/media/image212.png index 346efe0..986bfc0 100644 Binary files a/docs/media/image212.png and b/docs/media/image212.png differ diff --git a/docs/media/image213.png b/docs/media/image213.png index f277949..070a76f 100644 Binary files a/docs/media/image213.png and b/docs/media/image213.png differ diff --git a/docs/media/image214.png b/docs/media/image214.png index d91b8d8..5393580 100644 Binary files a/docs/media/image214.png and b/docs/media/image214.png differ diff --git a/docs/media/image216.png b/docs/media/image216.png index 79db34b..0fbe7cf 100644 Binary files a/docs/media/image216.png and b/docs/media/image216.png differ diff --git a/docs/media/image218.png b/docs/media/image218.png index b926073..65a3fc4 100644 Binary files a/docs/media/image218.png and b/docs/media/image218.png differ diff --git a/docs/media/image219.png b/docs/media/image219.png index 21e4ec4..f208d64 100644 Binary files a/docs/media/image219.png and b/docs/media/image219.png differ diff --git a/docs/media/image220.png b/docs/media/image220.png index e2ceddf..d19a438 100644 Binary files a/docs/media/image220.png and b/docs/media/image220.png differ diff --git a/docs/media/image221.png b/docs/media/image221.png index 9ea6b8f..deb19e9 100644 Binary files a/docs/media/image221.png and b/docs/media/image221.png differ diff --git a/docs/media/image222.png b/docs/media/image222.png index 7a61d92..6aad8db 100644 Binary files a/docs/media/image222.png and b/docs/media/image222.png differ diff --git a/docs/media/image223.png b/docs/media/image223.png index fda02c9..95611af 100644 Binary files a/docs/media/image223.png and b/docs/media/image223.png differ diff --git a/docs/media/image224.png b/docs/media/image224.png index 681179a..af7a60d 100644 Binary files a/docs/media/image224.png and b/docs/media/image224.png differ diff --git a/docs/media/image225.png b/docs/media/image225.png index 9c3bafe..2d39500 100644 Binary files a/docs/media/image225.png and b/docs/media/image225.png differ diff --git a/docs/media/image226.png b/docs/media/image226.png index af5741e..d1a00d8 100644 Binary files a/docs/media/image226.png and b/docs/media/image226.png differ diff --git a/docs/media/image227.png b/docs/media/image227.png index f4c3fe3..914b2d0 100644 Binary files a/docs/media/image227.png and b/docs/media/image227.png differ diff --git a/docs/media/image228.png b/docs/media/image228.png index be4ecc6..2afdcc6 100644 Binary files a/docs/media/image228.png and b/docs/media/image228.png differ diff --git a/docs/media/image229.png b/docs/media/image229.png index 55d2c6e..e472c08 100644 Binary files a/docs/media/image229.png and b/docs/media/image229.png differ diff --git a/docs/media/image230.png b/docs/media/image230.png index e53b630..ab742d3 100644 Binary files a/docs/media/image230.png and b/docs/media/image230.png differ diff --git a/docs/media/image231.png b/docs/media/image231.png index 861d2d7..1b99873 100644 Binary files a/docs/media/image231.png and b/docs/media/image231.png differ diff --git a/docs/media/image232.png b/docs/media/image232.png index 9c69f62..72869e0 100644 Binary files a/docs/media/image232.png and b/docs/media/image232.png differ diff --git a/docs/media/image233.png b/docs/media/image233.png index 48da8f2..3eb90cc 100644 Binary files a/docs/media/image233.png and b/docs/media/image233.png differ diff --git a/docs/media/image234.png b/docs/media/image234.png index dc56d79..40d3fa8 100644 Binary files a/docs/media/image234.png and b/docs/media/image234.png differ diff --git a/docs/media/image235.png b/docs/media/image235.png index e38035f..64bdf31 100644 Binary files a/docs/media/image235.png and b/docs/media/image235.png differ diff --git a/docs/media/image236.png b/docs/media/image236.png index f686dd2..9b932ad 100644 Binary files a/docs/media/image236.png and b/docs/media/image236.png differ diff --git a/docs/media/image237.png b/docs/media/image237.png index 09c0e7f..5cb07c5 100644 Binary files a/docs/media/image237.png and b/docs/media/image237.png differ diff --git a/docs/media/image238.png b/docs/media/image238.png index a587d6b..8836d3e 100644 Binary files a/docs/media/image238.png and b/docs/media/image238.png differ diff --git a/docs/media/image239.png b/docs/media/image239.png index a911e78..7a618d0 100644 Binary files a/docs/media/image239.png and b/docs/media/image239.png differ diff --git a/docs/media/image240.png b/docs/media/image240.png index b41f294..c1973a1 100644 Binary files a/docs/media/image240.png and b/docs/media/image240.png differ diff --git a/docs/media/image242.png b/docs/media/image242.png index d071e77..20254b1 100644 Binary files a/docs/media/image242.png and b/docs/media/image242.png differ diff --git a/docs/media/image243.png b/docs/media/image243.png index 59dcebd..1dd59f2 100644 Binary files a/docs/media/image243.png and b/docs/media/image243.png differ diff --git a/docs/media/image245.png b/docs/media/image245.png index 87946c5..7560bc0 100644 Binary files a/docs/media/image245.png and b/docs/media/image245.png differ diff --git a/docs/media/image246.png b/docs/media/image246.png index 4cb65b1..87ae20b 100644 Binary files a/docs/media/image246.png and b/docs/media/image246.png differ diff --git a/docs/media/image247.png b/docs/media/image247.png index 818fe27..179ab94 100644 Binary files a/docs/media/image247.png and b/docs/media/image247.png differ diff --git a/docs/media/image248.png b/docs/media/image248.png index bc4f768..9e49d66 100644 Binary files a/docs/media/image248.png and b/docs/media/image248.png differ diff --git a/docs/media/image249.png b/docs/media/image249.png index 2aaecaa..6542d76 100644 Binary files a/docs/media/image249.png and b/docs/media/image249.png differ diff --git a/docs/media/image250.png b/docs/media/image250.png index 7c6d098..f2922cd 100644 Binary files a/docs/media/image250.png and b/docs/media/image250.png differ diff --git a/docs/media/image251.png b/docs/media/image251.png index 314372c..2e8ac65 100644 Binary files a/docs/media/image251.png and b/docs/media/image251.png differ diff --git a/docs/media/image252.png b/docs/media/image252.png index 08e5cfd..e37881a 100644 Binary files a/docs/media/image252.png and b/docs/media/image252.png differ diff --git a/docs/media/image253.png b/docs/media/image253.png index 6c37412..ee64211 100644 Binary files a/docs/media/image253.png and b/docs/media/image253.png differ diff --git a/docs/media/image254.png b/docs/media/image254.png index 7f41613..e7f184f 100644 Binary files a/docs/media/image254.png and b/docs/media/image254.png differ diff --git a/docs/media/image255.png b/docs/media/image255.png index 4d2d628..1307f6a 100644 Binary files a/docs/media/image255.png and b/docs/media/image255.png differ diff --git a/docs/media/image256.png b/docs/media/image256.png index f1ef428..99a807b 100644 Binary files a/docs/media/image256.png and b/docs/media/image256.png differ diff --git a/docs/media/image257.png b/docs/media/image257.png index 807b5bc..df794c0 100644 Binary files a/docs/media/image257.png and b/docs/media/image257.png differ diff --git a/docs/media/image258.png b/docs/media/image258.png index ae3c75c..d49a5dd 100644 Binary files a/docs/media/image258.png and b/docs/media/image258.png differ diff --git a/docs/media/image259.png b/docs/media/image259.png index 307c9db..2e4186f 100644 Binary files a/docs/media/image259.png and b/docs/media/image259.png differ diff --git a/docs/media/image266.png b/docs/media/image266.png index 73778f2..cdda38f 100644 Binary files a/docs/media/image266.png and b/docs/media/image266.png differ diff --git a/docs/media/image267.png b/docs/media/image267.png index fc0d9e7..a777b3f 100644 Binary files a/docs/media/image267.png and b/docs/media/image267.png differ diff --git a/docs/media/image269.png b/docs/media/image269.png index 18e5729..124de81 100644 Binary files a/docs/media/image269.png and b/docs/media/image269.png differ diff --git a/docs/media/image275.png b/docs/media/image275.png index 8f83238..4974e85 100644 Binary files a/docs/media/image275.png and b/docs/media/image275.png differ diff --git a/docs/media/image276.png b/docs/media/image276.png index fb04063..6f69e27 100644 Binary files a/docs/media/image276.png and b/docs/media/image276.png differ diff --git a/docs/media/image280.png b/docs/media/image280.png index a15ff0f..dab6234 100644 Binary files a/docs/media/image280.png and b/docs/media/image280.png differ diff --git a/docs/media/image281.png b/docs/media/image281.png index b12c5a4..7a77661 100644 Binary files a/docs/media/image281.png and b/docs/media/image281.png differ diff --git a/docs/media/image282.png b/docs/media/image282.png index c8a83ee..56de1f5 100644 Binary files a/docs/media/image282.png and b/docs/media/image282.png differ diff --git a/docs/media/image283.png b/docs/media/image283.png index 2d5b72b..c445e00 100644 Binary files a/docs/media/image283.png and b/docs/media/image283.png differ diff --git a/docs/media/image284.png b/docs/media/image284.png index 1b3c305..4524aef 100644 Binary files a/docs/media/image284.png and b/docs/media/image284.png differ diff --git a/docs/media/image285.png b/docs/media/image285.png index 9ff3107..83de011 100644 Binary files a/docs/media/image285.png and b/docs/media/image285.png differ diff --git a/docs/media/image286.png b/docs/media/image286.png index 0f155a9..14e573a 100644 Binary files a/docs/media/image286.png and b/docs/media/image286.png differ diff --git a/docs/media/image287.png b/docs/media/image287.png index 6e6b8e4..9121f95 100644 Binary files a/docs/media/image287.png and b/docs/media/image287.png differ diff --git a/docs/media/image288.png b/docs/media/image288.png index 604acd8..02e32f9 100644 Binary files a/docs/media/image288.png and b/docs/media/image288.png differ diff --git a/docs/media/image289.png b/docs/media/image289.png index 8d99a16..04e0f8e 100644 Binary files a/docs/media/image289.png and b/docs/media/image289.png differ diff --git a/docs/media/image290.png b/docs/media/image290.png index cec45b5..6f65134 100644 Binary files a/docs/media/image290.png and b/docs/media/image290.png differ diff --git a/docs/media/image292.png b/docs/media/image292.png index 850dcc5..19bf845 100644 Binary files a/docs/media/image292.png and b/docs/media/image292.png differ diff --git a/docs/media/image293.png b/docs/media/image293.png index 0ceafbf..1d9f797 100644 Binary files a/docs/media/image293.png and b/docs/media/image293.png differ diff --git a/docs/media/image294.png b/docs/media/image294.png index 2961a3f..cd04199 100644 Binary files a/docs/media/image294.png and b/docs/media/image294.png differ diff --git a/docs/media/image295.png b/docs/media/image295.png index f1c3155..78b88cd 100644 Binary files a/docs/media/image295.png and b/docs/media/image295.png differ diff --git a/docs/media/image297.png b/docs/media/image297.png index 4872bb7..45e9c17 100644 Binary files a/docs/media/image297.png and b/docs/media/image297.png differ diff --git a/docs/media/image300.png b/docs/media/image300.png index b68f486..75503a2 100644 Binary files a/docs/media/image300.png and b/docs/media/image300.png differ diff --git a/docs/media/image302.png b/docs/media/image302.png index 460daad..2c297a3 100644 Binary files a/docs/media/image302.png and b/docs/media/image302.png differ diff --git a/docs/media/image303.png b/docs/media/image303.png index 474d66f..92cb39d 100644 Binary files a/docs/media/image303.png and b/docs/media/image303.png differ diff --git a/docs/media/image304.png b/docs/media/image304.png index 98d59d4..71ccaa4 100644 Binary files a/docs/media/image304.png and b/docs/media/image304.png differ diff --git a/docs/media/image305.png b/docs/media/image305.png index cc0a9c0..40276af 100644 Binary files a/docs/media/image305.png and b/docs/media/image305.png differ diff --git a/docs/media/image306.png b/docs/media/image306.png index 76cf853..8b6f774 100644 Binary files a/docs/media/image306.png and b/docs/media/image306.png differ diff --git a/docs/media/image307.png b/docs/media/image307.png index 3d20947..ef79437 100644 Binary files a/docs/media/image307.png and b/docs/media/image307.png differ diff --git a/docs/media/image308.png b/docs/media/image308.png index 5d49bc9..0524c1a 100644 Binary files a/docs/media/image308.png and b/docs/media/image308.png differ diff --git a/docs/media/image309.png b/docs/media/image309.png index 093e41d..5ac1cca 100644 Binary files a/docs/media/image309.png and b/docs/media/image309.png differ diff --git a/docs/media/image310.png b/docs/media/image310.png index 3d16fc8..2696d2d 100644 Binary files a/docs/media/image310.png and b/docs/media/image310.png differ diff --git a/docs/media/image311.png b/docs/media/image311.png index 34c5405..73a86e2 100644 Binary files a/docs/media/image311.png and b/docs/media/image311.png differ diff --git a/docs/media/image315.png b/docs/media/image315.png index 36cf4e3..3b74e67 100644 Binary files a/docs/media/image315.png and b/docs/media/image315.png differ diff --git a/docs/media/image316.png b/docs/media/image316.png index 7893d6e..5778c97 100644 Binary files a/docs/media/image316.png and b/docs/media/image316.png differ diff --git a/docs/media/image317.png b/docs/media/image317.png index 669866d..c71bdbf 100644 Binary files a/docs/media/image317.png and b/docs/media/image317.png differ diff --git a/docs/media/image318.png b/docs/media/image318.png index a8024f9..b3a6b0e 100644 Binary files a/docs/media/image318.png and b/docs/media/image318.png differ diff --git a/docs/media/image319.png b/docs/media/image319.png index d24f242..56d10df 100644 Binary files a/docs/media/image319.png and b/docs/media/image319.png differ diff --git a/docs/media/image321.png b/docs/media/image321.png index 9835713..52168e4 100644 Binary files a/docs/media/image321.png and b/docs/media/image321.png differ diff --git a/docs/media/image322.png b/docs/media/image322.png index 02c01ee..85b90e5 100644 Binary files a/docs/media/image322.png and b/docs/media/image322.png differ diff --git a/docs/media/image323.png b/docs/media/image323.png index 5991c1b..a590ad7 100644 Binary files a/docs/media/image323.png and b/docs/media/image323.png differ diff --git a/docs/media/image328.png b/docs/media/image328.png index 90d36c6..2d8f11f 100644 Binary files a/docs/media/image328.png and b/docs/media/image328.png differ diff --git a/docs/media/image329.png b/docs/media/image329.png index c23570b..689f820 100644 Binary files a/docs/media/image329.png and b/docs/media/image329.png differ diff --git a/docs/media/image330.png b/docs/media/image330.png index c1d6d05..cd52be5 100644 Binary files a/docs/media/image330.png and b/docs/media/image330.png differ diff --git a/docs/media/image331.png b/docs/media/image331.png index 9f66afa..2c0eb85 100644 Binary files a/docs/media/image331.png and b/docs/media/image331.png differ diff --git a/docs/media/image332.png b/docs/media/image332.png index 93f68e0..4343447 100644 Binary files a/docs/media/image332.png and b/docs/media/image332.png differ diff --git a/docs/media/image333.png b/docs/media/image333.png index 87e372a..938655a 100644 Binary files a/docs/media/image333.png and b/docs/media/image333.png differ diff --git a/docs/media/image334.png b/docs/media/image334.png index a314254..88ad6ca 100644 Binary files a/docs/media/image334.png and b/docs/media/image334.png differ diff --git a/docs/media/image335.png b/docs/media/image335.png index cf355a3..ff08a47 100644 Binary files a/docs/media/image335.png and b/docs/media/image335.png differ diff --git a/docs/media/image336.png b/docs/media/image336.png index 5395a0d..5cbe4ec 100644 Binary files a/docs/media/image336.png and b/docs/media/image336.png differ diff --git a/docs/media/image337.png b/docs/media/image337.png index 2373557..de7dab6 100644 Binary files a/docs/media/image337.png and b/docs/media/image337.png differ diff --git a/docs/media/image338.png b/docs/media/image338.png index 86c2eae..4f38250 100644 Binary files a/docs/media/image338.png and b/docs/media/image338.png differ diff --git a/docs/media/image339.png b/docs/media/image339.png index 9a8b7f4..913518c 100644 Binary files a/docs/media/image339.png and b/docs/media/image339.png differ diff --git a/docs/media/image340.png b/docs/media/image340.png index 8f3fa49..829d304 100644 Binary files a/docs/media/image340.png and b/docs/media/image340.png differ diff --git a/docs/media/image341.png b/docs/media/image341.png index d54afee..4f5d7a0 100644 Binary files a/docs/media/image341.png and b/docs/media/image341.png differ diff --git a/docs/media/image342.png b/docs/media/image342.png index f803c8b..b98521d 100644 Binary files a/docs/media/image342.png and b/docs/media/image342.png differ diff --git a/docs/media/image343.png b/docs/media/image343.png index 3e2d980..c298712 100644 Binary files a/docs/media/image343.png and b/docs/media/image343.png differ diff --git a/docs/media/image344.png b/docs/media/image344.png index b20842b..00d4ef4 100644 Binary files a/docs/media/image344.png and b/docs/media/image344.png differ diff --git a/docs/media/image345.png b/docs/media/image345.png index 4de7987..13b1756 100644 Binary files a/docs/media/image345.png and b/docs/media/image345.png differ diff --git a/docs/media/image346.png b/docs/media/image346.png index bfed80b..f587c4d 100644 Binary files a/docs/media/image346.png and b/docs/media/image346.png differ diff --git a/docs/media/image347.png b/docs/media/image347.png index e0af9e5..30d9c4f 100644 Binary files a/docs/media/image347.png and b/docs/media/image347.png differ diff --git a/docs/media/image348.png b/docs/media/image348.png index ce55b0d..1a0ca36 100644 Binary files a/docs/media/image348.png and b/docs/media/image348.png differ diff --git a/docs/media/image349.png b/docs/media/image349.png index 5de39c7..28f0f4c 100644 Binary files a/docs/media/image349.png and b/docs/media/image349.png differ diff --git a/docs/media/image350.png b/docs/media/image350.png index b48e9fa..0190ad5 100644 Binary files a/docs/media/image350.png and b/docs/media/image350.png differ diff --git a/docs/media/image351.png b/docs/media/image351.png index c724607..ba34139 100644 Binary files a/docs/media/image351.png and b/docs/media/image351.png differ diff --git a/docs/media/image370.png b/docs/media/image370.png index 0c8563e..438fba0 100644 Binary files a/docs/media/image370.png and b/docs/media/image370.png differ diff --git a/docs/media/image371.png b/docs/media/image371.png index b9ad26b..711635c 100644 Binary files a/docs/media/image371.png and b/docs/media/image371.png differ diff --git a/docs/media/image376.png b/docs/media/image376.png new file mode 100644 index 0000000..9e37e2e Binary files /dev/null and b/docs/media/image376.png differ diff --git a/docs/media/image377.png b/docs/media/image377.png new file mode 100644 index 0000000..0c90d74 Binary files /dev/null and b/docs/media/image377.png differ diff --git a/docs/media/image378.png b/docs/media/image378.png new file mode 100644 index 0000000..bb22140 Binary files /dev/null and b/docs/media/image378.png differ diff --git a/docs/media/image379.png b/docs/media/image379.png new file mode 100644 index 0000000..ded603b Binary files /dev/null and b/docs/media/image379.png differ diff --git a/docs/media/image380.png b/docs/media/image380.png new file mode 100644 index 0000000..4f2a207 Binary files /dev/null and b/docs/media/image380.png differ diff --git a/docs/media/image381.png b/docs/media/image381.png new file mode 100644 index 0000000..7b33f3d Binary files /dev/null and b/docs/media/image381.png differ diff --git a/docs/media/image382.png b/docs/media/image382.png new file mode 100644 index 0000000..8c354d2 Binary files /dev/null and b/docs/media/image382.png differ diff --git a/docs/media/image383.png b/docs/media/image383.png new file mode 100644 index 0000000..5c79a55 Binary files /dev/null and b/docs/media/image383.png differ diff --git a/docs/media/image384.png b/docs/media/image384.png new file mode 100644 index 0000000..dd9042f Binary files /dev/null and b/docs/media/image384.png differ diff --git a/docs/media/image385.png b/docs/media/image385.png new file mode 100644 index 0000000..7262b7c Binary files /dev/null and b/docs/media/image385.png differ diff --git a/docs/media/image58.png b/docs/media/image58.png index e11022b..9ce9209 100644 Binary files a/docs/media/image58.png and b/docs/media/image58.png differ diff --git a/docs/media/image60.png b/docs/media/image60.png index f370cb3..d3598f5 100644 Binary files a/docs/media/image60.png and b/docs/media/image60.png differ diff --git a/docs/media/image61.png b/docs/media/image61.png index a500b48..a6e6878 100644 Binary files a/docs/media/image61.png and b/docs/media/image61.png differ diff --git a/docs/media/image62.png b/docs/media/image62.png index 3dec7c3..685bc22 100644 Binary files a/docs/media/image62.png and b/docs/media/image62.png differ diff --git a/docs/media/image63.png b/docs/media/image63.png index 66a242a..d039326 100644 Binary files a/docs/media/image63.png and b/docs/media/image63.png differ diff --git a/docs/media/image64.png b/docs/media/image64.png index 13c6085..3b21c53 100644 Binary files a/docs/media/image64.png and b/docs/media/image64.png differ diff --git a/docs/media/image65.png b/docs/media/image65.png index 66cdfca..b722b1d 100644 Binary files a/docs/media/image65.png and b/docs/media/image65.png differ diff --git a/docs/media/image66.png b/docs/media/image66.png index c8169a4..220e28a 100644 Binary files a/docs/media/image66.png and b/docs/media/image66.png differ diff --git a/docs/media/image67.png b/docs/media/image67.png index 6ca39ec..9695730 100644 Binary files a/docs/media/image67.png and b/docs/media/image67.png differ diff --git a/docs/media/image68.png b/docs/media/image68.png index 9fd7535..1342d9e 100644 Binary files a/docs/media/image68.png and b/docs/media/image68.png differ diff --git a/docs/media/image73.png b/docs/media/image73.png index dc4c8df..dba1975 100644 Binary files a/docs/media/image73.png and b/docs/media/image73.png differ diff --git a/docs/media/image74.png b/docs/media/image74.png index 50734cb..00f9c8c 100644 Binary files a/docs/media/image74.png and b/docs/media/image74.png differ diff --git a/docs/media/image75.png b/docs/media/image75.png index fffb9f6..6464a59 100644 Binary files a/docs/media/image75.png and b/docs/media/image75.png differ diff --git a/docs/media/image76.png b/docs/media/image76.png index 6c03ac4..b6d025e 100644 Binary files a/docs/media/image76.png and b/docs/media/image76.png differ diff --git a/docs/media/image77.png b/docs/media/image77.png index b41dbc1..77dd0b8 100644 Binary files a/docs/media/image77.png and b/docs/media/image77.png differ diff --git a/docs/media/image78.png b/docs/media/image78.png index cb7135b..c22dd3a 100644 Binary files a/docs/media/image78.png and b/docs/media/image78.png differ diff --git a/docs/media/image79.png b/docs/media/image79.png index 1450ab0..6a6b629 100644 Binary files a/docs/media/image79.png and b/docs/media/image79.png differ diff --git a/docs/media/image80.png b/docs/media/image80.png index 51e7def..769502f 100644 Binary files a/docs/media/image80.png and b/docs/media/image80.png differ diff --git a/docs/media/image81.png b/docs/media/image81.png index 9dfbee3..640da6b 100644 Binary files a/docs/media/image81.png and b/docs/media/image81.png differ diff --git a/docs/media/image82.png b/docs/media/image82.png index 16aef6f..2e8c8fb 100644 Binary files a/docs/media/image82.png and b/docs/media/image82.png differ diff --git a/docs/media/image83.png b/docs/media/image83.png index 1e6137c..90e5c1c 100644 Binary files a/docs/media/image83.png and b/docs/media/image83.png differ diff --git a/docs/media/image85.png b/docs/media/image85.png index 198ca23..f4dc76a 100644 Binary files a/docs/media/image85.png and b/docs/media/image85.png differ diff --git a/docs/media/image86.png b/docs/media/image86.png index 8fd9532..5152b26 100644 Binary files a/docs/media/image86.png and b/docs/media/image86.png differ diff --git a/docs/media/image87.png b/docs/media/image87.png index c8eda4c..eb97632 100644 Binary files a/docs/media/image87.png and b/docs/media/image87.png differ diff --git a/docs/media/image88.png b/docs/media/image88.png index f7fcc53..2759d47 100644 Binary files a/docs/media/image88.png and b/docs/media/image88.png differ diff --git a/docs/media/image89.png b/docs/media/image89.png index ac0cc00..2af1081 100644 Binary files a/docs/media/image89.png and b/docs/media/image89.png differ diff --git a/docs/media/image91.png b/docs/media/image91.png index b4ea060..d286d9c 100644 Binary files a/docs/media/image91.png and b/docs/media/image91.png differ diff --git a/docs/media/image92.png b/docs/media/image92.png index 8a68f3f..169ba64 100644 Binary files a/docs/media/image92.png and b/docs/media/image92.png differ diff --git a/docs/media/image93.png b/docs/media/image93.png index a3e4560..9c7bdc2 100644 Binary files a/docs/media/image93.png and b/docs/media/image93.png differ diff --git a/docs/media/image94.png b/docs/media/image94.png index db315da..1d6228f 100644 Binary files a/docs/media/image94.png and b/docs/media/image94.png differ diff --git a/docs/media/image95.png b/docs/media/image95.png index 631bdb9..5b59b03 100644 Binary files a/docs/media/image95.png and b/docs/media/image95.png differ diff --git a/docs/media/image96.png b/docs/media/image96.png index 721e53d..35fe501 100644 Binary files a/docs/media/image96.png and b/docs/media/image96.png differ diff --git a/docs/media/image97.png b/docs/media/image97.png index 12c71c4..fd4380c 100644 Binary files a/docs/media/image97.png and b/docs/media/image97.png differ diff --git a/docs/media/image98.png b/docs/media/image98.png index 39024e9..acf6eb6 100644 Binary files a/docs/media/image98.png and b/docs/media/image98.png differ diff --git a/docs/media/image99.png b/docs/media/image99.png index 10a7e1c..529098b 100644 Binary files a/docs/media/image99.png and b/docs/media/image99.png differ diff --git a/docs/operators.md b/docs/operators.md index e4835a4..8155a81 100644 --- a/docs/operators.md +++ b/docs/operators.md @@ -19,7 +19,7 @@ «THEN», при значении «False» - в раздел «ELSE». Действия добавляются в модуль перетаскиванием их из меню или другого места рабочей области. -
+
Рис. 1. Условный модуль
@@ -36,7 +36,7 @@ Конструктор условий позволяет составлять условия в соответствии с синтаксисом языка 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. Внешний вид модуля
@@ -209,7 +209,7 @@ Excel-файл. Но что, если этих писем нет? Для этого проверяем наличие писем, и, если их нет, робот прекратит работу, иначе – продолжит. -
+
Рис. 18. Пример использования модуля «Return»
@@ -237,7 +237,7 @@ Excel-файл. Но что, если этих писем нет? Для это который в свою очередь находится внутри цикла (вложенность модулей не ограничена). -
+
Рис. 20. Модуль «Continue»
@@ -248,7 +248,7 @@ Excel-файл. Но что, если этих писем нет? Для это в начале цикла проверить наличие файла и, если его нет, то перейти к следующей итерации цикла. -
+
Рис. 21. Пример работы с «Continue»
@@ -267,7 +267,7 @@ Excel-файл. Но что, если этих писем нет? Для это расположенном в нижней части модуля, следует располагать действия, которые требуется выполнять в цикле. -
+
Рис. 22. Вид модуля
@@ -278,14 +278,14 @@ Excel-файл. Но что, если этих писем нет? Для это Добавление действий в модуль происходит с помощью перетаскивания из меню модулей или из рабочей области проекта. -
+
Рис. 23. Добавление действий
При нажатии на кнопку «Свернуть» действия, описанные в цикле, сворачиваются для более компактного отображения команды. -
+
Рис. 24. Свернутый вид модуля
@@ -294,7 +294,7 @@ Excel-файл. Но что, если этих писем нет? Для это Данный модуль позволяет обрабатывать ошибки, которые могут возникнуть в процессе выполнения некоторого блока модулей. -
+
Рис. 25. Внешний вид модуля Try/Catch
@@ -330,7 +330,7 @@ Excel, причем в модуле Excel путь до файла будет в письма и Excel, а в блоке CATCH модуль «Интерфейс» для вывода пользовательского окна. -
+
Рис. 26. Пример использования модуля «Try/Catch»
@@ -340,7 +340,7 @@ Excel, причем в модуле Excel путь до файла будет в содержаться текст «Не удалось открыть документ C:\\Reports\\Отчет за день.xlsx». -
+
Рис. 27. Пример обработки ошибки – окно с информацией
@@ -364,7 +364,7 @@ Case могут быть только внутри блока Switch**. необходимого алгоритма. По кнопке «Добавить» добавляются эти самые подмодули. -
+
Рис. 28. Модуль «Switch»
@@ -376,7 +376,7 @@ Case могут быть только внутри блока Switch**. выполняться, остальные блоки Case выполнены не будут (даже если они содержат то же значение). -
+
Рис. 29. Модули «Switch – Case»
diff --git a/docs/orkestrator.md b/docs/orkestrator.md index e8eaafc..c5d60b5 100644 --- a/docs/orkestrator.md +++ b/docs/orkestrator.md @@ -9,7 +9,7 @@ открыто окно, позволяющее опубликовать нового робота и/или настроить расписание запусков уже опубликованных роботов. -
+
Рис. 1. Окно оркестратора
@@ -50,7 +50,7 @@ Client, которая, находясь в фоновом режиме рабо повторов и интервал запуска, машина для запуска, на которой запущен RPA Client. -
+
Рис. 2. Перечень полей для настройки задачи запуска
@@ -62,7 +62,7 @@ Client. представлено выпадающим списком, в котором предложены все ваши опубликованные роботы. -
+
Рис. 3. Выпадающий список с перечнем опубликованных роботов
@@ -79,7 +79,7 @@ Client. робота (если повторы есть). Для настройки поля необходимо нажать на кнопку-стрелочку в углу поля. -
+
Рис. 4. Кнопка открытия настроек интервала
@@ -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 197d904..63c9c7b 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. Окно модуля
@@ -301,7 +301,7 @@ Http-запросы – запросы для передачи информац Данный модуль состоит из полей: «Ссылка», «Логин», «Пароль», «Переменная» и «Тип запроса». -
+
Рис. 7. Пример настройки GET запроса
@@ -334,7 +334,7 @@ Http-запросы – запросы для передачи информац вкладок Headers и Body с одинаковыми полями Name и Value. Внизу модуля расположена таблица с добавленными значениями аргументов. -
+
Рис. 8. Интерфейс модуля «HTTP запрос»
@@ -358,7 +358,7 @@ Http-запросы – запросы для передачи информац Модуль состоит из нескольких полей для подключения к серверу, ввода названия переменной и выпадающего списка с выбором действия. -
+
Рис. 9. Интерфейс модуля «FTP запрос»
@@ -387,7 +387,7 @@ Http-запросы – запросы для передачи информац Окно модуля состоит из двух полей – поля «Переменная» и «XML». -
+
Рис. 10. Окно модуля «XML»
@@ -399,7 +399,7 @@ Http-запросы – запросы для передачи информац Результат работы модуля при его настройке, указанной на рисунке 14: -
+
Рис. 11. Объект – результат парсинга XML
@@ -415,7 +415,7 @@ Http-запросы – запросы для передачи информац действием, кнопок управления создаваемым действием и таблицей-списком созданных действий. -
+
Рис. 12. Интерфейс модуля «PDF»
@@ -440,7 +440,7 @@ Http-запросы – запросы для передачи информац непосредственно текстом, а не изображением. Полученный текст будет записан в указанную переменную. -
+
Рис. 13. Пример настройки действия «Получить text»
@@ -450,7 +450,7 @@ Http-запросы – запросы для передачи информац .jpg в указанную в поле «Папка» директорию. В указанную переменную будет записан список путей до выделенных изображений. -
+
Рис. 14. Пример настройки действия «Получить image»
@@ -459,7 +459,7 @@ Http-запросы – запросы для передачи информац Действие объединяет два указанных PDF файла и сохраняет их в файле, который необходимо указать в поле «Значение». -
+
Рис. 15. Пример настройки действия «Объединить документы»
@@ -471,7 +471,7 @@ Http-запросы – запросы для передачи информац миллисекунд, которые необходимо подождать. Допускается использование переменной. -
+
Рис. 16. Окно модуля «Пауза»
@@ -481,7 +481,7 @@ Http-запросы – запросы для передачи информац Для использования модуля необходимо заполнить адрес прокси-сервера. -
+
Рис. 17. Окно модуля «Прокси»
@@ -490,7 +490,7 @@ Http-запросы – запросы для передачи информац Модуль «Лог» предназначен для вывода некоторых сообщений или значений переменных в «Отладочный вывод» во время работы робота. -
+
Рис. 18. Окно модуля «Лог»
@@ -629,7 +629,8 @@ Lexema-RPA Studio содержит набор модулей, позволяющ **Id капчи** – необходимо указать переменную для идентификации капчи, ту, которая была указана в модуле загрузки капчи. -## Модуль «Вырезать изображение» +## Модуль «Вырезать изображение» + Данный модуль позволяет изменять размер изображения, задавая координаты левого верхнего и правого нижнего углов интересующего фрагмента.
@@ -649,3 +650,17 @@ Lexema-RPA Studio содержит набор модулей, позволяющ **Название** – название итогового фрагмента изображения, если оно не указано в пути выше. Если расширение не указано, будет сохранен в формате bmp. + +## Модуль «Буфер обмена» + +Модуль позволяет работать с буфером обмена устройства. + +
+ +
Рис. 26. Интерфейс «Буфер обмена»
+ +В данном модуле предлагаются следующие действия по работе с буфером: +1. Записать в буфер обмена; +2. Считать из буфера обмена; +3. Очистить буфер обмена; +4. Проверить наличие строки в буфере обмена. diff --git a/docs/telegram.md b/docs/telegram.md index b4b1728..b3c3923 100644 --- a/docs/telegram.md +++ b/docs/telegram.md @@ -1,49 +1,28 @@ # МОДУЛЬ «TELEGRAM» -Модуль «Telegram» позволяет использовать мессенджер Telegram в роботах – -с помощью него можно считывать и отправлять сообщения, вложения. Можно -управлять ботом, оповещать пользователей о начале или окончании работы -робота и многое другое. +Модуль «Telegram» позволяет использовать мессенджер Telegram в роботах +– с помощью него можно считывать и отправлять сообщения, вложения с +помощью telegram-бота. -Следует заметить, что на данный момент модуль находится в стадии -разработки и работает исключительно из самой программы (не работает +Следует заметить, что на данный момент модуль находится в стадии +разработки и работает исключительно из самой программы (не работает через оркестратор). + ## Основные моменты модуля Интерфейс модуля состоит из блока настроек, области добавления команды, таблицы со списком команд и кнопок «Сохранить»/«Отмена». -
+
Рис. 1. Окно модуля «Telegram»
### Настройка модуля -Блок настроек состоит из двух полей и кнопки. Данный модуль отвечает за -авторизацию в мессенджере. - -В **поле «Номер телефона»** должен быть введен номер телефона, на -котором зарегистрирован аккаунт. Номер должен начинаться с кода страны, -неважно, в каком формате (например, «8», «+7» или просто «7»). Если -необходимо войти под учетной записью telegram-бота, то в это поле -вписывается его токен, который выдается telegram’ом при его регистрации. - -После заполнения номера телефона (если это не бот), требуется нажать -кнопку **«Запросить код»**. В этот момент по этому номеру телефона в -telegram придет код подтверждения авторизации, как если бы вы входили с -другого устройства. Этот код необходимо ввести в **поле «Код -авторизации»**. - -*Обратите внимание*, что после того, как вы ввели код авторизации в -поле, вы еще **не авторизовались в telegram**. Авторизация произойдет в -момент запуска робота. В этот момент в telegram поступит сообщение, что -был совершен вход в аккаунт. Если вы ввели код, а затем сохранили проект -и вышли, при следующем входе и запуске робота велика вероятность того, -что код авторизации уже не действителен, так как у него есть свой срок -действия (несколько минут). То есть, если вы решили подключить telegram, -то перед сохранением проекта, запустите его хотя бы на одном тестовом -действии (считать сообщение или отправить его своему знакомому). +Блок настроек состоит из одного поля – «Токен бота». В данное поле +должен быть введен токен telegram-бота, который выдается при его +регистрации. ### Функциональность модуля @@ -73,7 +52,7 @@ telegram придет код подтверждения авторизации, соответствующую отключаемой команде строку правой кнопкой мыши и выбрав «Отключить/включить». -
+
Рис. 2. Контекстное меню команды
@@ -99,7 +78,7 @@ telegram придет код подтверждения авторизации, необходимо сохранить. Делается это по кнопке «Сохранить» в правом нижнем углу модуля. -
+
Рис. 3. Кнопка «Сохранить»
@@ -109,10 +88,10 @@ telegram придет код подтверждения авторизации, Данное действие позволяет отправить сообщение пользователю или в чат. -В поле «Пользователь» указывается username пользователя или его номер -телефона или полное название чата, в который необходимо отправить -сообщение. Чтобы узнать username пользователя, необходимо открыть -подробную информацию о нём. +В поле «Пользователь» указывается идентификатор диалога или наименование +группы, в который/которую необходимо отправить сообщение. Идентификатор +можно получить только с помощью другого действия модуля, он не виден из +приложения. Чтобы отправить несколько вложений, необходимо разделить путь до каждого вложения символом «;». Каждое вложение будет отправлено отдельным @@ -121,76 +100,34 @@ telegram придет код подтверждения авторизации, отправить и текст, и несколько вложений, лучше разделить это на две отдельные команды – отправку вложений и отправку текста. -
+
Рис. 4. Пример заполнения действия «Отправить сообщение»
#### Получить список всех диалогов -С помощью этого действия можно получить список всех диалогов с -пользователями. Настройка действия состоит только из указания +С помощью этого действия можно получить список всех непрочитанных ботом +сообщений с пользователями. Настройка действия состоит только из указания переменной, в которую запишется результат выполнения действия. -Переменная будет являться массивом объектов с полями: Username, -FirstName, LastName и Phone, которые будут заполняться соответствующими -полями из профиля Telegram текущего диалога. +Переменная будет являться массивом объектов с полями: Message, Date, +From, ChatId и ChatName. Поле From – объект с полями id, first_name, +username и language_code, в которых хранится информация о пользователе, +который отправил сообщение. Id из From равно ChatId, второе было добавлено +для использования меньшей вложенности. -
+Если сообщение взято из диалога с пользователем, то заполняется поле ChatId, +которое в последствии может использоваться для отправки ему сообщения. Если +сообщение взято из чата/группы, то заполняется поле ChatName, по которому +необходимо обращаться, чтобы отправить туда сообщение. + +
Рис. 5. Пример заполнения действия «Получить список всех диалогов»
Результат заполнения переменной представлен на следующем рисунке. -
+
Рис. 6. Пример заполнения переменной в результате выполнения действия -«Получить список всех диалогов»
- -#### Получить список всех чатов и каналов - -С помощью этого действия можно получить список всех чатов и каналов, в -которых присутствует авторизованный аккаунт. Настройка действия состоит -только из указания переменной, в которую запишется результат выполнения -действия. - -Переменная будет являться массивом объектов с полями: Id и Title. По -любому из этих параметров затем можно отправлять сообщения в чат или -канал (если авторизованный пользователь имеет соответствующие права). - -
- -
Рис. 7. Пример заполнения действия «Получить список всех чатов и -каналов»
- -#### Получить список чатов с непрочитанными сообщениями - -С помощью этого действия можно получить список всех чатов, в которых у -авторизованного пользователя есть непрочитанные сообщения. Настройка -действия состоит только из указания переменной, в которую запишется -результат выполнения действия. - -Переменная будет являться массивом объектов с полями: Name и -UnreadCount, Name будет содержать название чата, UnreadCount – -количество непрочитанных сообщений в чате. - -
- -
Рис. 8. Пример заполнения действия «Получить список чатов с -непрочитанными сообщениями»
- -#### Получить непрочитанные сообщения от пользователя - -С помощью этого действия можно получить список всех непрочитанных -сообщений от определенного пользователя. Для настройки действия -необходимо заполнить поле «Пользователь» (username/телефон -пользователя), из диалога с которым нужно получить непрочитанные -сообщения, и поле «Переменная», в которую запишется результат действия. - -Переменная будет являться массивом объектов с полями: Massge и Date, где -в поле Message лежит текст сообщения, в Date дата и время в формате -дд.мм.гггг ч.мм.сс. - -
- -
Рис. 9. Пример заполнения действия «Получить непрочитанные сообщения -от пользователя»
+«Получить список всех диалогов»
\ No newline at end of file diff --git a/docs/text_analysis.md b/docs/text_analysis.md index 7a40f57..f54300e 100644 --- a/docs/text_analysis.md +++ b/docs/text_analysis.md @@ -33,21 +33,21 @@ В модуле предложены следующие методы анализа текста: 1. **Расстрояние Левенштейна** – рассчитывает разницу между двумя - > строками. Например – «Lexema RPA» и «Lexema SR» отличаются на 3 - > символа – слова «Lexema» совпадают полностью, остальные символы - > различны, то есть результат, записанный в переменную, будет равен - > 3; + строками. Например – «Lexema RPA» и «Lexema SR» отличаются на 3 + символа – слова «Lexema» совпадают полностью, остальные символы + различны, то есть результат, записанный в переменную, будет равен + 3; 2. **3-граммы** – метод, основанный на работе с n-граммами, в нашем - > случае n=3 – оценивается схожесть каждых 3 символов. Чем больше - > число (до 1), тем большую схожесть имеют строки. В примере «Lexema - > RPA» и «Lexema SR» результатом будет число 0,52. + случае n=3 – оценивается схожесть каждых 3 символов. Чем больше + число (до 1), тем большую схожесть имеют строки. В примере «Lexema + RPA» и «Lexema SR» результатом будет число 0,52. 3. **Сходство Джаро-Винклера** – мера схожести строк для измерения - > расстояния между двумя последовательностями символов. Чем меньше - > расстояние Джаро-Винклера для двух строк, тем больше сходства - > имеют эти строки друг с другом. Для примера «Lexema RPA» и «Lexema - > SR» результатом будет число 0,5. + расстояния между двумя последовательностями символов. Чем меньше + расстояние Джаро-Винклера для двух строк, тем больше сходства + имеют эти строки друг с другом. Для примера «Lexema RPA» и «Lexema + SR» результатом будет число 0,5. ## Модуль «Распознавание текста» @@ -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. Окно модуля