Table processing
Please read the Terms of Use for Materials on ZennoLab
Table of contents
Description
Tables are used to obtain more complexly organized data than lists (for example, a list of products for an online store, where different data are presented line by line: name, price, description, etc.).
The action is used both when working with Tables and with Google Sheets, but Google Sheets has several unique actions, which are described in the article Google Sheets Operations.
How to add a table to a project?
Before getting started, you need to create a Table or Google Sheets .
How to add an action to a project?
Through the context menu Add Action → Tables → Table processing
Or use smart search .
What is it used for?
Working with complex data
Adding and Retrieving Table Items
Removing Rows, Columns and Duplicates
Linking to a file
Getting the number of rows and columns
How to work with an action?
Get column
Put the values of the given column into a list
We select the table with which we will work.
We indicate the function.
We set a column or variable.
A list into which we put all the column values.
Get lines
Receiving a string with the ability to delete from the table and write to the list, variables.
We select the table with which we will work.
We indicate the function.
String criteria (you can specify a variable):
a) All
b) Does not contain text
c) Not matching regular expression
d) First
e) By numbers
f) Random
g) Contains text
h) Matching regexRemove after getting.
Place the result to a list or variables.
Add list
Put values from the list into the given column.
We select the table with which we will work.
We indicate the function.
We set a column or variable.
List with values.
Add line
Add a line to the table.
We select the table with which we will work.
We indicate the function.
Insert static text or variable.
Important note
Record cell
Add text to a specific cell.
We select the table with which we will work.
We indicate the function.
We set static coordinates of the cell or through variables.
Insert static text or variable.
Get the number of columns
How many columns does the table have
We select the table with which we will work.
We indicate the function.
The variable to get the result.
Get number of lines
How many lines does the table contain
We select the table with which we will work.
We indicate the function.
The variable to get the result.
Bind to file
Binding a table to a file during project execution.
This action should be used when the file path is not known at the time of the template start and will be calculated only during project execution.
We select the table with which we will work.
We indicate the function.
Select a file or specify a variable containing the path to the file.
If the file is missing in the specified path, Zennoposter will automatically create it.
Read cell
Get values from a given cell
We select the table with which we will work.
We indicate the function.
We set static coordinates of the cell or through variables.
Variable for the result.
Sort
Sort table elements in descending or ascending order.
We select the table with which we will work.
We indicate the function.
Zennoposter will automatically detect the columns containing values and offer a choice.
Use the principle as for numbers (this option will work if the column contains only integer values. If there are fractional numbers, then the column will be sorted according to the principle of rows).
We set the type of sorting in descending or ascending order .
Save to file
Saving a table to a file during project execution
We select the table with which we will work.
We indicate the function.
Select a file or specify a variable containing the path to the file.
Remove duplicates
Removing duplicate values in tables
We select the table with which we will work.
We indicate the function.
Zennoposter will automatically detect the columns containing values and offer a choice.
Delete column
Removes the specified table column entirely
We select the table with which we will work.
We indicate the function.
We set a column or variable.
Delete lines
Removes the given rows in all columns
We select the table with which we will work.
We indicate the function.
String criteria (you can specify a variable):
a) All
b) Not containing text
c) Not matching regex
d) First
e) By numbers (numbering from zero!)
f) Random
g) Containing text
h) Containing only space symbols
i) Matching regex
Guidelines for working with tables
Do not bind very large files of hundreds of megabytes to the table without the "Save table changes to file" option, especially if you have little RAM.
When using a table linked to one file in multiple templates, use one separator. If in one template the columns are separated through
;
, and in the other through-
then an error will occur.If the template works in multi-threaded mode and you need each thread to work with its own row, enable the "Save table changes to file" option and take data from the table with deletion after taking it.
If all projects only read the file, then there will be no problems. When you use file synchronization, there is one table for all threads and all changes in any thread are displayed in the table.
If you do not use file synchronization, then a copy of the table will be created for each thread. In this case, deleting a table row in one thread in other threads will not change the table.
Keep in mind that tables in RAM take up much more space than the original file on your hard drive. For example, in RAM, a table based on a 10 MB CSV file in 100 threads without synchronization with the file may take 5 GB. Avoid using lists and tables in "no sync" mode with the file unnecessarily.
Usage example
Collect from the pages the name of the desired products in the list and add them from the list to the table for further use
Loading pages.
We collect the necessary values into a list.
We create a table.
Add an action and specify the function to add a list.
We indicate the list and the column in which we will save the values.