Чтение таблицы

Read table

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

Свойства

Символ * в названии свойства указывает на обязательность заполнения.

Свойство
Тип
Описание

Вывод

Переменная

Переменная для хранения результатов чтения таблицы

Переменная (таблица)

System.Data.DataTable

Переменная для хранения результатов чтения таблицы

Общие

Наименование

String

Название операции чтения таблицы

Отключить логирование

Boolean

Отключение логирования данной операции

Пауза до (мс)

Int32

Время ожидания перед началом операции (мс)

Пауза после (мс)

Int32

Время ожидания после завершения операции (мс)

Продолжить при ошибке

Boolean

Продолжение выполнения сценария в случае ошибки

Скриншот завершения

Boolean

Сделать скриншот после завершения операции

Скриншот ошибки

Boolean

Сделать скриншот в случае ошибки

Процесс

Алгоритм

String

Определяет способ чтения таблицы (Actual, Table Move)

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

Int32

Количество столбцов таблицы для более точного чтения и разделения данных. Функция доступна с версии Студии 1.24.8

Область

String

Координаты области, в которой происходит чтение данных

Обнаружить заголовки

Boolean

Формирует заголовки из повторяющихся данных. Если все ячейки столбца содержат одинаковые значения, это значение объединяется с названием столбца в единый заголовок. Функция доступна с версии Студии 1.24.8

Таймаут*

Int32

Предельное время ожидания завершения процесса (мс)

Шаблон поиска

String

Шаблон поиска элемента управления

Элемент

LTools.Desktop.Model.DUIControl

Ссылка на элемент управления

Алгоритм: Определяет способ чтения таблицы.

  • Actual: Работает в зависимости от условий, обеспечивает чтение данных.

  • Table Move: Новый алгоритм (доступен только для Win32), предназначенный для полного считывания данных из виртуальных таблиц. Функция доступна с версии 1.24.8

Свойства LTools.Desktop.Model.UIDataTable

  • RowCount: [Int32] Количество строк

  • ColumnCount: [Int32] Количество столбцов

  • Headers: [List<String>] Заголовки колонок

  • Data: [List<List<String>>] Данные таблицы

Новый алгоритм Table Move

Новый мастер чтения таблиц

С версии 1.25.1 улучшен инструмент Мастер чтения таблиц. Этот инструмент позволяет эффективно настраивать, извлекать и обрабатывать данные из веб-таблиц.

Окно "Парсинг данных" отображает информацию о количестве извлечённых строк и столбцов. Если данные не найдены, отображается 0 строк, 0 столбцов. Содержит следующие элементы:

  • Кнопка "Подтвердить": Завершает процесс извлечения с текущими настройками.

  • Кнопка "Настройки" (иконка шестерёнки)

Дополнительные параметры настройки:

    • Сохранить в переменную — позволяет сохранить извлечённые данные в указанную переменную.

    • Ограничить извлечение — устанавливает ограничения на количество строк и столбцов.

    • Дополнительные параметры — позволяют задать специфические настройки для точного извлечения данных.

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

Как использовать мастер чтения таблиц

  1. В активности Чтение таблицы нажмите на кнопку "Мастер".

  2. Укажите место считывания данных на экране.

  3. Подтвердите процесс извлечения с текущими настройками.

  4. Дождитесь завершения прогресса парсинга.

  5. Проверьте предварительный результат в окне "Парсинг данных".

  6. При необходимости откройте Настройки для уточнения параметров извлечения.

  7. Подтвердите процесс, нажав кнопку "Подтвердить".

  8. Если требуется повторная настройка, воспользуйтесь опцией сброса параметров и начните процесс заново.

Если необходимо воспользоваться старым мастером чтения таблиц, то перейдите в Настройки СтудииОбщиеЭлементы — Установить чек бокс Использовать старый мастер чтения таблиц.

Только код

Пример использования элемента в процессе с типом Только код (Pure code)

LTools.Desktop.DesktopApp app = LTools.Desktop.DesktopApp.Init(wf, null, "Test_*", 20000, true, LTools.Desktop.Model.DesktopTypes.UIAUTOMATION);
//Шаблон поиска
LTools.Desktop.Model.UIDataTable tbl = app.ReadDataGrid("{\"Name\":\"\",\"AutomationID\":\"dtgrdSample\",\"ClassName\":\"DataGrid\",\"AUIProperties\":[],\"TextSearchMode\":0,\"IsRoot\":false,\"IsQuickSearch\":false}");
//Элемент
LTools.Desktop.Model.DUIControl el = app.FindElement("{\"Name\":\"\",\"AutomationID\":\"dtgrdSample\",\"ClassName\":\"DataGrid\",\"AUIProperties\":[],\"TextSearchMode\":0,\"IsRoot\":false,\"IsQuickSearch\":false}");
tbl = app.ReadDataGrid(el);
foreach (var r in tbl.Data)
	foreach (var c in r)
		LTools.Workflow.PrimoApp.AddToLog(wf, c);

Last updated

Was this helpful?