Class DataSourceTable

Оптимизируйте свои подборки Сохраняйте и классифицируйте контент в соответствии со своими настройками.
Таблица источника данных

Доступ и изменение существующей таблицы источника данных. Чтобы создать новую таблицу источника данных на новом листе, используйте Spreadsheet.insertSheetWithDataSourceTable(spec) .

Используйте этот класс только с данными, подключенными к базе данных.

В этом примере показано, как создать новую таблицу источника данных.

SpreadsheetApp.enableBigQueryExecution();
var spreadsheet = SpreadsheetApp.getActive();
var spec = SpreadsheetApp.newDataSourceSpec()
           .asBigQuery()
           .setProjectId('big_query_project')
           .setRawQuery('select @FIELD from table limit @LIMIT')
           .setParameterFromCell('FIELD', 'Sheet1!A1')
           .setParameterFromCell('LIMIT', 'namedRangeCell')
           .build();
// Starts data execution asynchronously.
var dataSheet = spreadsheet.insertSheetWithDataSourceTable(spec);
var dataSourceTable = dataSheet.getDataSourceTables()[0];
// waitForCompletion() blocks script execution until data execution completes.
dataSourceTable.waitForCompletion(60);
// Check status after execution.
Logger.log("Data execution state: %s.", dataSourceTable.getStatus().getExecutionState());

В этом примере показано, как редактировать источник данных.

SpreadsheetApp.enableBigQueryExecution();
var dataSheet = SpreadsheetApp.getActive().getSheetByName("Data Sheet 1");
var dataSourceTable = dataSheet.getDataSourceTables()[0];
var dataSource = dataSourceTable.getDataSource();
var newSpec = dataSource.getSpec()
              .copy()
              .asBigQuery()
              .setRawQuery('select name from table limit 2')
              .removeAllParameters()
              .build();
// Updates data source specification and starts data execution asynchronously.
dataSource.updateSpec(newSpec);
// Check status during execution.
Logger.log("Data execution state: %s.", dataSourceTable.getStatus().getExecutionState());
// waitForCompletion() blocks script execution until data execution completes.
dataSourceTable.waitForCompletion(60);
// Check status after execution.
Logger.log("Data execution state: %s.", dataSourceTable.getStatus().getExecutionState());

Методы

Метод Тип возврата Краткое описание
addColumns(columnNames) DataSourceTable Добавляет столбцы в таблицу источника данных.
addFilter(columnName, filterCriteria) DataSourceTable Добавляет фильтр, применяемый к таблице источника данных.
addSortSpec(columnName, ascending) DataSourceTable Добавляет спецификацию сортировки для столбца в таблице источника данных.
addSortSpec(columnName, sortOrder) DataSourceTable Добавляет спецификацию сортировки для столбца в таблице источника данных.
forceRefreshData() DataSourceTable Обновляет данные этого объекта независимо от текущего состояния.
getColumns() DataSourceTableColumn[] Получает все столбцы источника данных, добавленные в таблицу источника данных.
getDataSource() DataSource Получает источник данных, с которым связан объект.
getFilters() DataSourceTableFilter[] Возвращает все фильтры, примененные к таблице источника данных.
getRange() Range Получает Range , который охватывает эта таблица источника данных.
getRowLimit() Integer Возвращает ограничение на количество строк для таблицы источника данных.
getSortSpecs() SortSpec[] Получает все спецификации сортировки в таблице источника данных.
getStatus() DataExecutionStatus Получает состояние выполнения данных объекта.
isSyncingAllColumns() Boolean Возвращает, синхронизирует ли таблица источника данных все столбцы в связанном источнике данных.
refreshData() DataSourceTable Обновляет данные объекта.
removeAllColumns() DataSourceTable Удаляет все столбцы в таблице источника данных.
removeAllSortSpecs() DataSourceTable Удаляет все спецификации сортировки в таблице источника данных.
setRowLimit(rowLimit) DataSourceTable Обновляет лимит строк для таблицы источника данных.
syncAllColumns() DataSourceTable Синхронизируйте все текущие и будущие столбцы в связанном источнике данных с таблицей источника данных.
waitForCompletion(timeoutInSeconds) DataExecutionStatus Ожидает завершения текущего выполнения, время ожидания истекает через указанное количество секунд.

Подробная документация

addColumns(columnNames)

Добавляет столбцы в таблицу источника данных.

Параметры

Имя Тип Описание
columnNames String[] Список имен столбцов для добавления.

Возвращаться

DataSourceTable — таблица источника данных для цепочки.

Авторизация

Сценарии, использующие этот метод, требуют авторизации в одной или нескольких следующих областях :

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

addFilter(columnName, filterCriteria)

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

Параметры

Имя Тип Описание
columnName String Имя столбца, к которому нужно применить этот фильтр.
filterCriteria FilterCriteria Критерии фильтра для применения.

Возвращаться

DataSourceTable — таблица источника данных для цепочки.

Авторизация

Сценарии, использующие этот метод, требуют авторизации в одной или нескольких следующих областях :

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

addSortSpec(columnName, ascending)

Добавляет спецификацию сортировки для столбца в таблице источника данных.

Параметры

Имя Тип Описание
columnName String Имя столбца для сортировки.
ascending Boolean Если true , отсортируйте столбец в порядке возрастания; если false , отсортируйте столбец в порядке убывания.

Возвращаться

DataSourceTable — Лист источника данных для цепочки.

Авторизация

Сценарии, использующие этот метод, требуют авторизации в одной или нескольких следующих областях :

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

addSortSpec(columnName, sortOrder)

Добавляет спецификацию сортировки для столбца в таблице источника данных.

Параметры

Имя Тип Описание
columnName String Имя столбца для сортировки.
sortOrder SortOrder Порядок сортировки.

Возвращаться

DataSourceTable — Лист источника данных для цепочки.

Авторизация

Сценарии, использующие этот метод, требуют авторизации в одной или нескольких следующих областях :

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

forceRefreshData()

Обновляет данные этого объекта независимо от текущего состояния. Подробнее см. в разделе refreshData() .

Выдает исключение, если тип источника данных не включен. Используйте методы SpreadsheetApp#enable...Execution() , чтобы включить выполнение данных для определенного типа источника данных.

Возвращаться

DataSourceTable — Объект данных.

Авторизация

Сценарии, использующие этот метод, требуют авторизации в одной или нескольких следующих областях :

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getColumns()

Получает все столбцы источника данных, добавленные в таблицу источника данных.

Возвращаться

DataSourceTableColumn[] — Список столбцов таблицы источника данных.

Авторизация

Сценарии, использующие этот метод, требуют авторизации в одной или нескольких следующих областях :

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getDataSource()

Получает источник данных, с которым связан объект.

Возвращаться

DataSource — источник данных.

Авторизация

Сценарии, использующие этот метод, требуют авторизации в одной или нескольких следующих областях :

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getFilters()

Возвращает все фильтры, примененные к таблице источника данных.

Возвращаться

DataSourceTableFilter[] — Массив всех фильтров, примененных к таблице источника данных.

Авторизация

Сценарии, использующие этот метод, требуют авторизации в одной или нескольких следующих областях :

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getRange()

Получает Range , который охватывает эта таблица источника данных.

Возвращаться

Range — диапазон.

Авторизация

Сценарии, использующие этот метод, требуют авторизации в одной или нескольких следующих областях :

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getRowLimit()

Возвращает ограничение на количество строк для таблицы источника данных.

Возвращаться

Integer — ограничение строки для таблицы источника данных или null , если ограничение не установлено и таблица использует максимальное ограничение по умолчанию, как в пользовательском интерфейсе Google Sheets.

Авторизация

Сценарии, использующие этот метод, требуют авторизации в одной или нескольких следующих областях :

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getSortSpecs()

Получает все спецификации сортировки в таблице источника данных.

Возвращаться

SortSpec[] — список спецификаций сортировки.

Авторизация

Сценарии, использующие этот метод, требуют авторизации в одной или нескольких следующих областях :

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getStatus()

Получает состояние выполнения данных объекта.

Возвращаться

DataExecutionStatus — статус выполнения данных.

Авторизация

Сценарии, использующие этот метод, требуют авторизации в одной или нескольких следующих областях :

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

isSyncingAllColumns()

Возвращает, синхронизирует ли таблица источника данных все столбцы в связанном источнике данных.

Возвращаться

BooleanTrue , если таблица источника данных синхронизирует все столбцы в связанном источнике данных, или false в противном случае.

Авторизация

Сценарии, использующие этот метод, требуют авторизации в одной или нескольких следующих областях :

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

refreshData()

Обновляет данные объекта.

Выдает исключение, если в настоящее время находится в состоянии error . Используйте DataSource#updateSpec() для обновления спецификации. Этот метод предпочтительнее, чем forceRefreshData() , чтобы предотвратить непредвиденные изменения в источнике данных.

Выдает исключение, если тип источника данных не включен. Используйте методы SpreadsheetApp#enable...Execution() , чтобы включить выполнение данных для определенного типа источника данных.

Возвращаться

DataSourceTable — Объект данных.

Авторизация

Сценарии, использующие этот метод, требуют авторизации в одной или нескольких следующих областях :

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

removeAllColumns()

Удаляет все столбцы в таблице источника данных.

Возвращаться

DataSourceTable — таблица источника данных для цепочки.

Авторизация

Сценарии, использующие этот метод, требуют авторизации в одной или нескольких следующих областях :

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

removeAllSortSpecs()

Удаляет все спецификации сортировки в таблице источника данных.

Возвращаться

DataSourceTable — Лист источника данных для цепочки.

Авторизация

Сценарии, использующие этот метод, требуют авторизации в одной или нескольких следующих областях :

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

setRowLimit(rowLimit)

Обновляет лимит строк для таблицы источника данных. Если указанный предел строк равен null , таблица источника данных обновляется, чтобы использовать максимальный предел строк по умолчанию, как в пользовательском интерфейсе Google Таблиц.

Параметры

Имя Тип Описание
rowLimit Integer Новый лимит строк для таблицы данных. Если null , обновляет таблицу, чтобы использовать предел строк по умолчанию.

Возвращаться

DataSourceTable — таблица источника данных для цепочки.

Авторизация

Сценарии, использующие этот метод, требуют авторизации в одной или нескольких следующих областях :

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

syncAllColumns()

Синхронизируйте все текущие и будущие столбцы в связанном источнике данных с таблицей источника данных.

Возвращаться

DataSourceTable — таблица источника данных для цепочки.

Авторизация

Сценарии, использующие этот метод, требуют авторизации в одной или нескольких следующих областях :

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

waitForCompletion(timeoutInSeconds)

Ожидает завершения текущего выполнения, время ожидания истекает через указанное количество секунд. Выдает исключение, если выполнение не завершено по истечении времени ожидания, но не отменяет выполнение данных.

Параметры

Имя Тип Описание
timeoutInSeconds Integer Время ожидания выполнения данных в секундах. Максимум 300 секунд.

Возвращаться

DataExecutionStatus — статус выполнения данных.

Авторизация

Сценарии, использующие этот метод, требуют авторизации в одной или нескольких следующих областях :

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets