Сценарий

Активити Сценарий позволяет создавать сценарии на языке C# и использует сущность Context. При этом можно использовать контекстные переменные, что позволяет гибко управлять процессом. Подробнее о контекстных переменных читайте в этой статье.

Все сценарии в процессе отделены друг от друга. Из одного сценария мы не можем взаимодействовать напрямую с другим сценарием. Единственная точка взаимодействия — контекст процесса, который доступен в каждом сценарии. Все сценарии представлены отдельными файлами и выполняются отдельно в момент выполнения активити Сценарий.

Для примера создадим несколько переменных различных типов.

сценарий пример

Настройки активити

Чтобы открыть окно настроек, нажмите на активити на графической модели процесса.

Вкладка «Параметры»

На вкладке Параметры отображаются основные параметры активити:

сценарий

  • Наименование название активити на графической модели процесса. При добавлении активити его название задается по шаблону. В этом поле название можно изменить.

Редактирование скрипта

С помощью кнопки Редактировать скрипт можно отредактировать или сгенерировать новый проект сценария.

При этом окно Дизайнера ELMA RPA свернется, и автоматически откроется папка script, расположенная по пути ../<папка с файлами системы>/Users/<Username>/AppData/Local/ELMA_RPA/script, и отобразится панель управления панель управления для добавления файлов в процесс или отмены.

В указанной выше папке временно создается проект, содержащий в себе четыре файла:

  • Context.cs — файл контекста процесса;
  • Program.cs — файл с имплементацией простейшей консольной программы. В этом файле описано создание контекста и вызов скрипта. В скрипт передается созданный контекст. Вы можете использовать это для отладки скрипта;
  • Script.csproj — файл проекта;
  • ScriptActivity.cs — файл скрипта, который используется в активити Сценарий.

Проект генерируется для Visual Studio 2019, но можно использовать любую другую IDE или редактор.

Откройте файл Script.csproj.

скрипт 2

В этом окне вы можете увидеть структуру проекта — те файлы, которые есть в папке. Script.csproj является корнем и специальным объектом, но его можно изменять как обычный файл. Однако мы не рекомендуем изменять его, если вы не знаете структуру файлов новых проектов .NET Core.

скрипт 3

Context.cs изменять не нужно. Он имеет сгенерированный класс с набором свойств контекстных переменных, которые мы создали в Дизайнере ELMA RPA на вкладке Контекст. Будем работать с ними в ScriptActivity.cs и в Program.cs.

 Откроем файл ScriptActivity.cs.

скрипт 4

Мы видим сгенерированный класс ScriptActivity в пространстве имен Scripts. В классе сгенерирован пустой метод Execute, который принимает контекст, который сгенерирован в файле Context.cs.

скрипт 5

Метод Execute — точка входа для активити Сценарий. Это главный метод, который выполняется первым. Он аналогичен методу Main для какой-либо программы. Кроме метода Execute можно создать другие методы в этом классе или даже новые классы или структуры в этом файле.

Мы написали логику и хотим ее проверить. Можно воспользоваться уже сгенерированным файлом Program.cs. В нем по умолчанию хранится класс и метод, в котором описаны объекты класса (Context и ScriptActivity), а также запуск метода Execute у экземпляра класса ScriptActivity. Таким образом мы моделируем то, что происходит при выполнении сценария в активити.

скрипт 6

Мы можем установить значение контекстных переменных, симулируя определенное состояние процесса.

скрипт 7

Мы можем не только написать скрипт, но и запустить его. После компиляции проекта на выходе получаем исполняемый файл — консольное приложение, которое можно запустить и посмотреть результат.

скрипт 8

Кроме того, можно отладить скрипт при помощи трассировки, собрав консольное приложение в режиме Debug.

скрипт 9

Использование NuGet пакетов

Вы можете использовать NuGet пакеты. ELMA RPA определит, что их требуется использовать, и будет собирать проекты скриптов вместе с зависимостями к NuGet пакетам.

Пакеты NuGet содержат многократно используемый код, предлагаемый другими разработчиками для ваших проектов. Это облегчает написание логики скриптов и экономит время. Рекомендуется ознакомиться с некоторыми популярными NuGet пакетами.

Напомним, как можно добавить NuGet пакет в Visual Studio 2019. Вызовите контекстное меню проекта и выберите Manage NuGet Packages... .

скрипт 15

Далее откроется вкладка визуального менеджера NuGet пакетов для текущего проекта. Вы можете находить пакеты, устанавливать их определенные версии, обновлять и удалять их.

скрипты 10

Кроме визуального менеджера NuGet пакетов, их можно устанавливать в Package Manager Console, в командной строке или вручную прописывать в файле проекта.

Добавление внешних библиотек

Вы можете добавлять внешние библиотеки (*.dll) в проект скрипта. ELMA RPA может собрать временный проект, используя сторонние библиотеки. Рекомендуем использовать это в крайних случаях.

Вы можете добавить внешнюю библиотеку (*.dll) к проекту двумя способами.

  1. Откройте окно настройки ссылок.

скрипт 12

В открывшемся окне нажмите на кнопку Browse… и выберите требуемую библиотеку.

  1. Укажите в файле проекта (Script.csproj) вручную:

<Project Sdk="Microsoft.NET.Sdk">
          ....
          <ItemGroup>
            <Reference Include="Название сборки">
              <HintPath>Путь до файла библиотеки (*.dll)</HintPath>
            </Reference>
          </ItemGroup>
       </Project>

После этого сохраните изменения в файлах и подтвердите изменения скрипта, нажав на панели управления на кнопку скрипт 11.

Кроме Visual Studio также достаточно просто и удобно использовать Visual Studio Code. При установке необходимых расширений можно использовать автоматические подсказки (IntelliSense) при изменении кода, а также легко создавать конфигурации для сборки и отладки. Для отладки можно использовать трассировку кода.

скрипт 13

Вкладка «Обработчики»

О вкладке Обработчики можно прочитать в статье «Общие принципы настройки активити».