Class DataSourceTable

Tabelaźródładanych

Dostęp do istniejącej tabeli źródła danych i jej modyfikowanie. Aby utworzyć nową tabelę źródła danych w nowym arkuszu, użyj kodu Spreadsheet.insertSheetWithDataSourceTable(spec).

Używaj tej klasy tylko ze ź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 w kolumnie tabeli źródła danych.
addSortSpec(columnName, sortOrder)DataSourceTableDodaje specyfikację sortowania w kolumnie tabeli źródła danych.
cancelDataRefresh()DataSourceTableAnuluje odświeżanie danych powiązane z tym obiektem, jeśli jest ono obecnie w toku.
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 połączony jest obiekt.
getFilters()DataSourceTableFilter[]Zwraca wszystkie filtry zastosowane do tabeli źródła danych.
getRange()RangePobiera Range, na których rozciąga się ta tabela źródła danych.
getRowLimit()Integer|nullZwraca 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)DataSourceTableAktualizuje limit wierszy w tabeli źródła danych.
syncAllColumns()DataSourceTableSynchronizuj wszystkie bieżące i przyszłe kolumny w powiązanym źródle danych z tabelą źródła danych.
waitForCompletion(timeoutInSeconds)DataExecutionStatusCzeka na zakończenie bieżącego działania. Po upływie podanej liczby sekund następuje przekroczenie limitu czasu.

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 łączenia.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego 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 zostać zastosowany ten filtr.
filterCriteriaFilterCriteriaKryteria filtra do zastosowania.

Powrót

DataSourceTable – tabela źródła danych do łączenia.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego z tych zakresów:

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

addSortSpec(columnName, ascending)

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

Parametry

NazwaTypOpis
columnNameStringNazwa kolumny, według której ma być wykonane sortowanie.
ascendingBooleanJeśli true, posortuj kolumnę w kolejności rosnącej; jeśli false, posortuj kolumnę w kolejności malejącej.

Powrót

DataSourceTable – arkusz źródła danych do łączenia.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego z tych zakresów:

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

addSortSpec(columnName, sortOrder)

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

Parametry

NazwaTypOpis
columnNameStringNazwa kolumny, według której ma być wykonane sortowanie.
sortOrderSortOrderKolejność sortowania.

Powrót

DataSourceTable – arkusz źródła danych do łączenia.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego 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 ono obecnie w toku.

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();

Zgłasza wyjątek, jeśli typ źródła danych nie jest włączony. Użyj metod SpreadsheetApp#enable...Execution(), aby umożliwić wykonywanie zapytań do bazy danych w przypadku określonego typu źródła danych.

Powrót

DataSourceTable – obiekt danych.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego 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 sekcji refreshData(). Jeśli chcesz anulować aktualnie trwające odświeżanie tego obiektu, zapoznaj się z sekcją cancelDataRefresh().

Zgłasza wyjątek, jeśli typ źródła danych nie jest włączony. Użyj metod SpreadsheetApp#enable...Execution(), aby umożliwić wykonywanie zapytań do bazy danych w przypadku określonego typu źródła danych.

Powrót

DataSourceTable – obiekt danych.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego 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 korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego 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 połączony jest obiekt.

Powrót

DataSource – źródło danych.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego 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 korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego z tych zakresów:

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

getRange()

Pobiera Range, na których rozciąga się ta tabela źródła danych.

Powrót

Range – zakres.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego 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|null – limit wierszy w tabeli źródła danych lub null, jeśli nie ustawiono limitu, a tabela korzysta z domyślnego limitu maksymalnego, tak jak w interfejsie Arkuszy Google.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego 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 korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego 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 wykonywania zapytań do bazy danych.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego 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 korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego z tych zakresów:

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

refreshData()

Odświeża dane obiektu.

Zgłasza wyjątek, jeśli obecnie jest w stanie error. Użyj DataSource#updateSpec(), aby zaktualizować specyfikację. Ta metoda jest preferowana w stosunku do forceRefreshData(), ponieważ zapobiega nieoczekiwanym zmianom w źródle danych.

Zgłasza wyjątek, jeśli typ źródła danych nie jest włączony. Użyj metod SpreadsheetApp#enable...Execution(), aby umożliwić wykonywanie zapytań do bazy danych w przypadku określonego typu źródła danych.

Powrót

DataSourceTable – obiekt danych.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego 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 łączenia.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego 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 do łączenia.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego z tych zakresów:

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

setRowLimit(rowLimit)

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

Parametry

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

Powrót

DataSourceTable – tabela źródła danych do łączenia.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego z tych zakresów:

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

syncAllColumns()

Synchronizuj wszystkie bieżące 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 łączenia.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego 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 działania. Po upływie podanej liczby sekund następuje przekroczenie limitu czasu. Zwraca wyjątek, jeśli wykonanie nie zostanie ukończone przed upływem limitu czasu, ale nie anuluje wykonania danych.

Parametry

NazwaTypOpis
timeoutInSecondsIntegerCzas oczekiwania na wykonanie zapytania do bazy danych w sekundach. Maksymalny czas to 300 sekund.

Powrót

DataExecutionStatus – stan wykonywania zapytań do bazy danych.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego z tych zakresów:

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