Инструменты пользователя

Инструменты сайта


Боковая панель

Перевод этой страницы:

ru:tables

Таблицы

Для чего используются таблицы

  • У вас есть файл, в котором лежат данные готовых аккаунтов в таком формате:
	login1;pass1;email1
	login2;pass2;email2
	login3;pass3;email3
	....

Вам нужно при каждом выполнении проекта взять строку из этого файла (данные одного аккаунта) и получить отдельно login, pass и email.

  • У вас есть обычный файл в формате .xls, .xlsx, .odt или .csv и нужен доступ к данным из него.
  • Вам нужно сохранить какие-то созданные в проекте данные в виде таблицы или просто в формат Exсel

Места, в которых создаются таблицы

Таблицы можно создать в двух местах:

  1. В редакторе проектов, перетащив ее иконку с панели инструментов в окно редактора.
  2. При записи проекта под деревом проекта есть небольшая область с профилем и переменными. Там можно создать таблицу, кликнув по пустой области правой кнопкой мышки.

Настройка таблиц

В редакторе проектов таблица отображается значком в самом низу, под областью редактора. Там же где вы видите настройки профиля, переменные и т.д. При записи проектов это значок будет под деревом проекта. Нажав правую кнопку мыши на этом значке, можно изменить название таблицы на удобное вам, открыть окно редактирования параметров, или удалить таблицу. Можно записать в таблицу данные вручную, а можно загружать их из файла. Для того, чтобы загружать данные таблицы из файла, поставьте галку «Загружать из файла», и, если нужно полностью синхронизировать таблицу с файлом, поставьте галку «Сохранять изменения таблицы в файл». Также понадобится указать путь к файлу, и разделитель. Если у вас обычный .xls, .xlsx, .odt или .csv файл, то просто выберите вариант с этими расширениями, и указывать разделитель не нужно. Если файл, например, .txt, то выберите «свой формат», и укажите символы разделителя.

Доступ к данным таблицы

Для использования данных, содержащихся в таблице, создано действие «операции над таблицей», с его помощью вы сможете брать строки или ячейки, добавлять или удалять их, и сохранять данные в файл. Разметка в таблице простая, как в обычном Excel документе, столбцы именуются латинскими буквами, строки - цифрами (начиная с нуля).
Обратите внимание: положить все ячейки таблицы из одной строки (т.е. прочитать login, pass и email) в переменные можно в одно действие. Это делается через операцию «взять строку». Не нужно для этого создавать много действий, которые будут читать каждую ячейку таблицы отдельно.
При указании номеров строк можно использовать диапазоны.

Ограничения и предосторожности

  • Не создавайте очень большие файлы в сотни мегабайт, особенно если у вас мало оперативной памяти.
  • Нельзя полностью синхронизировать таблицу с файлом (с сохранением изменений в файл) из нескольких проектов с разными разделителями. Т.е. например, у вас два разных проекта. В обоих вы используете один и тот же файл. Но в первом столбцы разделены через ';', а в другом через '-' то произойдет ошибка.
  • Ограничения при многопоточности читайте ниже

Многопоточный доступ к одному и тому же файлу

Если вы выполняете свой проект многопоточно (при полной синхронизации файла с таблицей) то никаких проблем не будет при соблюдении простого правила: работайте с таблицей в одно действие. Например, вам нужно взять строку с удалением. Будет не правильно, если вы сначала в одном действии возьмете строку, а в другом ее удалите. Это можно сделать в одно действие - при взятии строки установить галку «С удалением». В одно действие можно сделать практически все, что вам может понадобиться при работе с таблицей.
Если все проекты только читают файл, то проблем, вообще, не будет, как бы вы не работали с таблицей.

Обратите внимание !!!

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

ru/tables.txt · Последние изменения: 2015/07/14 15:51 (внешнее изменение)