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 Таблиц.

Авторизация

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

  • 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 Sheets.

Параметры

Имя Тип Описание
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