Чтение данных из Google-таблиц

Если вы используете Google таблицы для хранения данных, например, списка рецептов или каталога товаров, вы можете получить их в смартапе с помощью блока HTTP-запрос.

Блок получает данные только с первого листа таблицы.

Для чтения данных из таблицы, к ней надо предоставить доступ по ссылке.

Для чтения данных из разных Google таблиц в зависимости от ввода пользователя:

  1. Добавьте в сценарий экран с блоком Ввод текста.

    Блок сохраняет в переменную $table реплику пользователя, в зависимости от которой выбирается таблица.

    Сохранение ввода пользователя

  2. Добавьте экран с блоком Условия.

    В результате проверки условий, блок сохраняет идентификатор таблицы в переменную $id, которая используется при запросе данных.

    Блок Условия

    Пример условий:

    $id = ($sheet == "Таблица 1") ? "<Идентификатор первой таблицы>" : false
    $id = ($sheet == "Таблица 2") ? "<Идентификатор второй таблицы>" : false
    $id = ($sheet == "Таблица 3") ? "<Идентификатор третьей таблицы>" : false

    Идентификатор находится в веб-адресе таблицы в виде строки из букв и цифр.

  3. Добавьте экран с блоком HTTP-запрос, который будет запрашивать данные из таблицы.

    В поле URL блока укажите адрес сервиса, который преобразует данный таблицы в формат JSON:

    https://smartapp-code.sberdevices.ru/tools/api/googlesheet2json?sheet=1&id=${id}

    Блок использует HTTP метод GET для обращения к таблице с помощью переменной, полученной от блока Условия. Результат запроса сохраняется в переменной $content с помощью системной переменной $httpResponse.

    Параметры блока HTTP-запрос

  4. Добавьте экран с блоком Текст, чтобы проверить результат чтения данных.

    В блоке укажите переменную $content, полученную в результате HTTP-запроса.

    Вывод данных таблицы

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

Сценарий чтения данных из таблиц

Заметили ошибку?

Выделите текст и нажмите Ctrl + Enter, чтобы сообщить нам о ней