Class DataSourceTable

Źródłodanychtabeli

uzyskiwać dostęp do istniejącej tabeli źródła danych i ją modyfikować; Aby utworzyć nową tabelę źródła danych na nowym arkuszu, użyj kodu Spreadsheet.insertSheetWithDataSourceTable(spec).

Używaj tej klasy tylko z źródłami danych BigQuery.

Ten przykład pokazuje, jak utworzyć nową tabelę źródła danych.

SpreadsheetApp.enableBigQueryExecution();
const spreadsheet = SpreadsheetApp.getActive();
const 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.
const dataSheet = spreadsheet.insertSheetWithDataSourceTable(spec);
const 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(),
);

Ten przykład pokazuje, jak edytować źródło danych.

SpreadsheetApp.enableBigQueryExecution();
const dataSheet = SpreadsheetApp.getActive().getSheetByName('Data Sheet 1');
const dataSourceTable = dataSheet.getDataSourceTables()[0];
const dataSource = dataSourceTable.getDataSource();
const 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(),
);

Metody

MetodaZwracany typKrótki opis
addColumns(columnNames)DataSourceTableDodaje kolumny do tabeli źródła danych.
addFilter(columnName, filterCriteria)DataSourceTableDodaje filtr zastosowany do tabeli źródła danych.
addSortSpec(columnName, ascending)DataSourceTableDodaje specyfikację sortowania do kolumny w tabeli źródła danych.
addSortSpec(columnName, sortOrder)DataSourceTableDodaje specyfikację sortowania do kolumny w tabeli źródła danych.
cancelDataRefresh()DataSourceTableanuluje odświeżanie danych powiązane z tym obiektem, jeśli jest obecnie uruchomione.
forceRefreshData()DataSourceTableOdświeża dane tego obiektu niezależnie od jego bieżącego stanu.
getColumns()DataSourceTableColumn[]Pobiera wszystkie kolumny źródła danych dodane do tabeli źródła danych.
getDataSource()DataSourcePobiera źródło danych, z którym jest powiązany obiekt.
getFilters()DataSourceTableFilter[]Zwraca wszystkie filtry zastosowane do tabeli źródła danych.
getRange()RangePobiera Range, które obejmuje tabela źródła danych.
getRowLimit()IntegerZwraca limit wierszy dla tabeli źródła danych.
getSortSpecs()SortSpec[]Pobiera wszystkie specyfikacje sortowania w tabeli źródła danych.
getStatus()DataExecutionStatusPobiera stan wykonania danych obiektu.
isSyncingAllColumns()BooleanZwraca informację, czy tabela źródła danych synchronizuje wszystkie kolumny w powiązanym źródle danych.
refreshData()DataSourceTableOdświeża dane obiektu.
removeAllColumns()DataSourceTableUsuwa wszystkie kolumny w tabeli źródła danych.
removeAllSortSpecs()DataSourceTableUsuwa wszystkie specyfikacje sortowania w tabeli źródła danych.
setRowLimit(rowLimit)DataSourceTableZmienia limit wierszy tabeli źródła danych.
syncAllColumns()DataSourceTableSynchronizuj wszystkie obecne i przyszłe kolumny w powiązanym źródle danych z tabelą źródła danych.
waitForCompletion(timeoutInSeconds)DataExecutionStatusCzeka na zakończenie bieżącego wykonania, po czym po upływie podanej liczby sekund kończy działanie.

Szczegółowa dokumentacja

addColumns(columnNames)

Dodaje kolumny do tabeli źródła danych.

Parametry

NazwaTypOpis
columnNamesString[]Lista nazw kolumn do dodania.

Powrót

DataSourceTable – tabela źródła danych, do łańcuchowania.

Autoryzacja

Skrypty, które korzystają z tej metody, wymagają autoryzacji z co najmniej jednym z tych zakresów:

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

addFilter(columnName, filterCriteria)

Dodaje filtr zastosowany do tabeli źródła danych.

Parametry

NazwaTypOpis
columnNameStringNazwa kolumny, do której ma być zastosowany ten filtr.
filterCriteriaFilterCriteriaKryteria filtrowania, które mają być stosowane.

Powrót

DataSourceTable – tabela źródła danych, do łańcuchowania.

Autoryzacja

Skrypty, które korzystają z tej metody, wymagają autoryzacji z co najmniej jednym z tych zakresów:

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

addSortSpec(columnName, ascending)

Dodaje specyfikację sortowania do kolumny w tabeli źródła danych.

Parametry

NazwaTypOpis
columnNameStringNazwa kolumny, którą chcesz posortować.
ascendingBooleanJeśli true, posortuj kolumnę w kolejności rosnącej, a jeśli false – w kolejności malejącej.

Powrót

DataSourceTable – arkusz źródła danych, który służy do łańcuchowania.

Autoryzacja

Skrypty, które korzystają z tej metody, wymagają autoryzacji z co najmniej jednym z tych zakresów:

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

addSortSpec(columnName, sortOrder)

Dodaje specyfikację sortowania do kolumny w tabeli źródła danych.

Parametry

NazwaTypOpis
columnNameStringNazwa kolumny, którą chcesz posortować.
sortOrderSortOrderKolejność sortowania.

Powrót

DataSourceTable – arkusz źródła danych, który służy do łańcuchowania.

Autoryzacja

Skrypty, które korzystają z tej metody, wymagają autoryzacji z co najmniej jednym z tych zakresów:

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

cancelDataRefresh()

anuluje odświeżanie danych powiązane z tym obiektem, jeśli jest obecnie uruchomione.

Ten przykład pokazuje, jak anulować odświeżanie formuły.

const spreadsheet = SpreadsheetApp.getActive();
const formula = spreadsheet.getDataSourceFormulas()[0];
// Cancel the ongoing refresh on the formula.
formula.cancelDataRefresh();

Wyjątek jest zgłaszany, jeśli typ źródła danych nie jest włączony. Aby umożliwić wykonywanie zapytań do bazy danych w przypadku konkretnego typu źródła danych, użyj metody SpreadsheetApp#enable...Execution().

Powrót

DataSourceTable – obiekt danych.

Autoryzacja

Skrypty, które korzystają z tej metody, wymagają autoryzacji z co najmniej jednym z tych zakresów:

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

forceRefreshData()

Odświeża dane tego obiektu niezależnie od jego bieżącego stanu. Więcej informacji znajdziesz w artykule refreshData(). Jeśli chcesz anulować aktualnie wykonywane odświeżanie tego obiektu, zapoznaj się z artykułem cancelDataRefresh().

Wyjątek jest zgłaszany, jeśli typ źródła danych nie jest włączony. Aby umożliwić wykonywanie zapytań do bazy danych w przypadku konkretnego typu źródła danych, użyj metody SpreadsheetApp#enable...Execution().

Powrót

DataSourceTable – obiekt danych.

Autoryzacja

Skrypty, które korzystają z tej metody, wymagają autoryzacji z co najmniej jednym z tych zakresów:

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

getColumns()

Pobiera wszystkie kolumny źródła danych dodane do tabeli źródła danych.

Powrót

DataSourceTableColumn[] – lista kolumn tabeli źródła danych.

Autoryzacja

Skrypty, które korzystają z tej metody, wymagają autoryzacji z co najmniej jednym z tych zakresów:

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

getDataSource()

Pobiera źródło danych, z którym jest powiązany obiekt.

Powrót

DataSource – źródło danych.

Autoryzacja

Skrypty, które korzystają z tej metody, wymagają autoryzacji z co najmniej jednym z tych zakresów:

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

getFilters()

Zwraca wszystkie filtry zastosowane do tabeli źródła danych.

Powrót

DataSourceTableFilter[] – tablica wszystkich filtrów zastosowanych do tabeli źródła danych.

Autoryzacja

Skrypty, które korzystają z tej metody, wymagają autoryzacji z co najmniej jednym z tych zakresów:

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

getRange()

Pobiera Range, które obejmuje tabela źródła danych.

Powrót

Range – zakres.

Autoryzacja

Skrypty, które korzystają z tej metody, wymagają autoryzacji z co najmniej jednym z tych zakresów:

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

getRowLimit()

Zwraca limit wierszy dla tabeli źródła danych.

Powrót

Integer – limit wierszy w tabeli źródła danych lub null, jeśli nie ma ustawionego limitu, a tabela używa domyślnego maksymalnego limitu w interfejsie Arkuszy Google.

Autoryzacja

Skrypty, które korzystają z tej metody, wymagają autoryzacji z co najmniej jednym z tych zakresów:

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

getSortSpecs()

Pobiera wszystkie specyfikacje sortowania w tabeli źródła danych.

Powrót

SortSpec[] – lista specyfikacji sortowania.

Autoryzacja

Skrypty, które korzystają z tej metody, wymagają autoryzacji z co najmniej jednym z tych zakresów:

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

getStatus()

Pobiera stan wykonania danych obiektu.

Powrót

DataExecutionStatus – stan wykonania danych.

Autoryzacja

Skrypty, które korzystają z tej metody, wymagają autoryzacji z co najmniej jednym z tych zakresów:

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

isSyncingAllColumns()

Zwraca informację, czy tabela źródła danych synchronizuje wszystkie kolumny w powiązanym źródle danych.

Powrót

Boolean – True, jeśli tabela źródła danych synchronizuje wszystkie kolumny w powiązanym źródle danych, lub false w przeciwnym razie.

Autoryzacja

Skrypty, które korzystają z tej metody, wymagają autoryzacji z co najmniej jednym z tych zakresów:

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

refreshData()

Odświeża dane obiektu.

Wyjątek jest rzucany, jeśli aktualny stan to error. Aby zaktualizować specyfikację, użyj DataSource#updateSpec(). Ta metoda jest preferowana w stosunku do forceRefreshData(), ponieważ zapobiega nieoczekiwanym zmianom w źródle danych.

Wyjątek jest zgłaszany, jeśli typ źródła danych nie jest włączony. Aby umożliwić wykonywanie zapytań do bazy danych w przypadku konkretnego typu źródła danych, użyj metody SpreadsheetApp#enable...Execution().

Powrót

DataSourceTable – obiekt danych.

Autoryzacja

Skrypty, które korzystają z tej metody, wymagają autoryzacji z co najmniej jednym z tych zakresów:

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

removeAllColumns()

Usuwa wszystkie kolumny w tabeli źródła danych.

Powrót

DataSourceTable – tabela źródła danych, do łańcuchowania.

Autoryzacja

Skrypty, które korzystają z tej metody, wymagają autoryzacji z co najmniej jednym z tych zakresów:

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

removeAllSortSpecs()

Usuwa wszystkie specyfikacje sortowania w tabeli źródła danych.

Powrót

DataSourceTable – arkusz źródła danych, który służy do łańcuchowania.

Autoryzacja

Skrypty, które korzystają z tej metody, wymagają autoryzacji z co najmniej jednym z tych zakresów:

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

setRowLimit(rowLimit)

Zmienia limit wierszy tabeli źródła danych. Jeśli podany limit wierszy to null, aktualizuje tabelę źródła danych, aby używała domyślnego maksymalnego limitu wierszy jak w interfejsie Arkuszy Google.

Parametry

NazwaTypOpis
rowLimitIntegerNowy limit wierszy dla tabeli danych. Jeśli null, aktualizuje tabelę, aby używać domyślnego limitu wierszy.

Powrót

DataSourceTable – tabela źródła danych, do łańcuchowania.

Autoryzacja

Skrypty, które korzystają z tej metody, wymagają autoryzacji z co najmniej jednym z tych zakresów:

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

syncAllColumns()

Synchronizuj wszystkie obecne i przyszłe kolumny w powiązanym źródle danych z tabelą źródła danych.

Powrót

DataSourceTable – tabela źródła danych, do łańcuchowania.

Autoryzacja

Skrypty, które korzystają z tej metody, wymagają autoryzacji z co najmniej jednym z tych zakresów:

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

waitForCompletion(timeoutInSeconds)

Czeka na zakończenie bieżącego wykonania, po czym po upływie podanej liczby sekund kończy działanie. Wyjątek jest zwracany, jeśli wykonanie nie zostało ukończone, gdy upłynął limit czasu, ale nie anuluje wykonania danych.

Parametry

NazwaTypOpis
timeoutInSecondsIntegerCzas oczekiwania na wykonanie danych (w sekundach). Maksymalny czas trwania to 300 sekund.

Powrót

DataExecutionStatus – stan wykonania danych.

Autoryzacja

Skrypty, które korzystają z tej metody, wymagają autoryzacji z co najmniej jednym z tych zakresów:

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