Работа с таблицами MaviBot
Создать новую запись в таблице со указанными значениями
Создать новую запись в таблице со указанными значениями.
new_record(table_id, data)
table_id
ID таблицы
data
словарь с данными для записи. Пример: {"column_name1": "value1", "column_name2": "value2"}. Если столбца не существует, он создаётся.
Ответ: ID новой записи
Пример

Редактировать существующую запись в таблице
edit_record(table_id, record_id, data)
table_id
ID таблицы
record_id
ID редактируемой записи
data
словарь с данными для редактирования. Пример: {"column_name1": "value3", "column_name2": "value4"}. Если столбца не существует, он НЕ создаётся.
Ответ:
Возвращает все данные отредактированной записи в формате: {"column_name1": "value3", "column_name2": "value4"}.
Пример

Удалить запись из таблицы по её ID
delete_record(table_id, record_id)
table_id
ID таблицы
record_id
ID удалённой записи
Ответ:
{'message': 'Удалённые записи: 1'}
Найти запись в таблице по указанному значению
find_record(table_id, value, find_in, return_from)
table_id
ID таблицы
value
значение для сопоставления
find_in -
необязательный параметр. Название столбца, по которому выполнять поиск. Если не указано, поиск будет выполняться по всем столбцам.
return_from
необязательный параметр. Название столбца, из которого нужно вернуть значение.
Ответ:
Если return_from указан, будет возвращено значение из указанного столбца (если он существует в таблице). Если return_from не указан или столбца не существует, в ответе будут возвращены все данные найденной записи, например: {"column_name1": "value3", "column_name2": "value4"}.
Пример

Получение значения из указанной записи
get_record_data(table_id, record_id)
table_id
ID таблицы
record_id
ID записи, из которой извлекаются значения
return_column
необязательный параметр. Название столбца, из которого нужно вернуть значение.
Ответ: если запись найдена, возвращается словарь вида {"column_name1": "value1", "column_name2": "value2"}. Если указан параметр return_column и такой столбец существует, будет возвращено только значение из этого столбца.
Где найти ID таблицы?

Чтобы работать с функциями чат-бота, вам понадобится ID таблицы. Найдите нужную таблицу в списке и нажмите на неё.

Затем нажмите на адресную строку.
В адресной строке вы увидите URL вида https://salebot.pro/projects/11111/table/2, где можно найти ID нужной таблицы:

Получение записи из таблицы
get_records_from_table(table_id, start_row, count, start_col, end_col) - получение записи из таблицы.
table_id
ID таблицы
start_row
Необязательный параметр, целое число. Указывает начало диапазона строк.
Номер строки, с которой начинать чтение (включительно). Указывайте без кавычек.
count
Необязательный параметр, целое число. Указывает количество строк для получения.
По умолчанию значение равно 1000, максимум — 5000. Указывайте без кавычек.
start_col
Необязательный параметр, строка. Указывает начало диапазона столбцов.
Название столбца, с которого начинать чтение (включительно). Указывайте в кавычках.
end_col
Необязательный параметр, строка. Указывает конец диапазона столбцов.
Название столбца, до которого читать значения таблицы (включительно). Указывайте в кавычках.
Если указать только начало диапазона строк или столбцов, будут возвращены все данные начиная с этой точки. Вы также можете не указывать начало и указать только конец, чтобы получить данные до этой точки.
Пример
В блоке, где нужно получить записи из таблицы, перейдите в «Калькулятор» раздел в настройках блока и укажите функцию с нужными параметрами.
Давайте посмотрим, как данные отображаются в таблице.


Теперь запустите блок "Старт" в тестовом режиме.

Мы видим данные, которые были записаны в переменную из таблицы, в сообщении, отправленном ботом. Поскольку мы обратились к переменной в сообщении с помощью #{} синтаксиса, данные, сохранённые в ней, были отображены в чате бота.

Получение данных из таблицы в указанном диапазоне
table_read_cells(table_id, cell_data) - позволяет получать данные из таблицы, указывая диапазоны.
! table_id
обязательный параметр, ID таблицы
! cell_data
обязательный параметр, словарь с диапазонами.
cell_data пример: '{"a1":"a1", "a3": "b4", "c1": "c3"}'
Если во время запроса не возникло проблем, ответом будет словарь, содержащий статус и все ячейки со значениями:
{"status": true, "A1": "value", "A3": "value", "B3": "value", "A4": "value", "B4": "value", "C1": "", "C2": "value", "C3": "ddddddd"или, в случае ошибки: {"status": false, "err": "Сообщение или описание ошибки"}
Пример в калькуляторе
Например, ячейки таблицы содержат следующие указанные значения:

Чтобы получить данные из таблицы через бота, передайте нужные диапазоны в функции в Калькуляторе.

В примере конструкция #{res}, которая хранит переменную, помогает показать в сообщении данные, полученные с помощью функции и указанного диапазона:

Если названия столбцов разные (например, "Product", "Number", "Amount"), необходимо указать диапазон в формате {"Product1":"Amount3"}, где:
• Product — это название первого столбца • 1 означает, что это столбец номер 1 • Сумма — это название третьего столбца • 3 означает, что это столбец номер 3



Последнее обновление