Class DataSourceTable

DatenQuelleTabelle

Auf vorhandene Datenquellentabellen zugreifen und diese ändern Wenn Sie eine neue Datenquellentabelle auf einem neuen Tabellenblatt erstellen möchten, verwenden Sie Spreadsheet.insertSheetWithDataSourceTable(spec).

Verwenden Sie diese Klasse nur mit BigQuery-Datenquellen.

In diesem Beispiel wird gezeigt, wie Sie eine neue Datenquellentabelle erstellen.

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

In diesem Beispiel wird gezeigt, wie Sie eine Datenquelle bearbeiten.

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

Methoden

MethodeRückgabetypKurzbeschreibung
addColumns(columnNames)DataSourceTableFügt der Datenquellentabelle Spalten hinzu.
addFilter(columnName, filterCriteria)DataSourceTableFügt einen Filter hinzu, der auf die Datenquellentabelle angewendet wird.
addSortSpec(columnName, ascending)DataSourceTableFügt der Datensourcetabelle eine Sortierspezifikation für eine Spalte hinzu.
addSortSpec(columnName, sortOrder)DataSourceTableFügt der Datensourcetabelle eine Sortierspezifikation für eine Spalte hinzu.
cancelDataRefresh()DataSourceTableBricht die Datenaktualisierung ab, die mit diesem Objekt verknüpft ist, falls sie gerade ausgeführt wird.
forceRefreshData()DataSourceTableAktualisiert die Daten dieses Objekts unabhängig vom aktuellen Status.
getColumns()DataSourceTableColumn[]Ruft alle Datenquellenspalten ab, die der Datenquellentabelle hinzugefügt wurden.
getDataSource()DataSourceRuft die Datenquelle ab, mit der das Objekt verknüpft ist.
getFilters()DataSourceTableFilter[]Gibt alle Filter zurück, die auf die Datenquellentabelle angewendet wurden.
getRange()RangeGibt den Range zurück, der von dieser Datenquellentabelle abgedeckt wird.
getRowLimit()Integer|nullGibt das Zeilenlimit für die Datenquellentabelle zurück.
getSortSpecs()SortSpec[]Ruft alle Sortierspezifikationen in der Datenquellentabelle ab.
getStatus()DataExecutionStatusRuft den Status der Datenausführung des Objekts ab.
isSyncingAllColumns()BooleanGibt zurück, ob alle Spalten in der zugehörigen Datenquelle mit der Datenquellentabelle synchronisiert werden.
refreshData()DataSourceTableAktualisiert die Daten des Objekts.
removeAllColumns()DataSourceTableEntfernt alle Spalten in der Datenquellentabelle.
removeAllSortSpecs()DataSourceTableEntfernt alle Sortierspezifikationen in der Datenquellentabelle.
setRowLimit(rowLimit)DataSourceTableAktualisiert das Zeilenlimit für die Datenquellentabelle.
syncAllColumns()DataSourceTableAlle aktuellen und zukünftigen Spalten in der zugehörigen Datenquelle mit der Datenquellentabelle synchronisieren.
waitForCompletion(timeoutInSeconds)DataExecutionStatusWartet, bis die aktuelle Ausführung abgeschlossen ist. Es kommt nach der angegebenen Anzahl von Sekunden zu einer Zeitüberschreitung.

Detaillierte Dokumentation

addColumns(columnNames)

Fügt der Datenquellentabelle Spalten hinzu.

Parameter

NameTypBeschreibung
columnNamesString[]Die Liste der Namen der Spalten, die hinzugefügt werden sollen.

Rückflug

DataSourceTable: Die Datenquellentabelle für die Verkettung.

Autorisierung

Scripts, die diese Methode verwenden, benötigen eine Autorisierung für mindestens einen der folgenden Zugriffsbereiche:

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

addFilter(columnName, filterCriteria)

Fügt einen Filter hinzu, der auf die Datenquellentabelle angewendet wird.

Parameter

NameTypBeschreibung
columnNameStringDer Name der Spalte, auf die dieser Filter angewendet werden soll.
filterCriteriaFilterCriteriaDie anzuwendenden Filterkriterien.

Rückflug

DataSourceTable: Die Datenquellentabelle für die Verkettung.

Autorisierung

Scripts, die diese Methode verwenden, benötigen eine Autorisierung für mindestens einen der folgenden Zugriffsbereiche:

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

addSortSpec(columnName, ascending)

Fügt der Datensourcetabelle eine Sortierspezifikation für eine Spalte hinzu.

Parameter

NameTypBeschreibung
columnNameStringDer Name der Spalte, nach der sortiert werden soll.
ascendingBooleanWenn true, sortieren Sie die Spalte in aufsteigender Reihenfolge. Wenn false, sortieren Sie die Spalte in absteigender Reihenfolge.

Rückflug

DataSourceTable: Das Datenquellenblatt für die Verkettung.

Autorisierung

Scripts, die diese Methode verwenden, benötigen eine Autorisierung für mindestens einen der folgenden Zugriffsbereiche:

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

addSortSpec(columnName, sortOrder)

Fügt der Datensourcetabelle eine Sortierspezifikation für eine Spalte hinzu.

Parameter

NameTypBeschreibung
columnNameStringDer Name der Spalte, nach der sortiert werden soll.
sortOrderSortOrderDie Sortierreihenfolge.

Rückflug

DataSourceTable: Das Datenquellenblatt für die Verkettung.

Autorisierung

Scripts, die diese Methode verwenden, benötigen eine Autorisierung für mindestens einen der folgenden Zugriffsbereiche:

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

cancelDataRefresh()

Bricht die Datenaktualisierung ab, die mit diesem Objekt verknüpft ist, falls sie gerade ausgeführt wird.

In diesem Beispiel wird gezeigt, wie Sie das Aktualisieren einer Formel abbrechen.

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

Löst eine Ausnahme aus, wenn der Datenquellentyp nicht aktiviert ist. Mit SpreadsheetApp#enable...Execution()-Methoden können Sie die Datenabfrage für einen bestimmten Datenquellentyp aktivieren.

Rückflug

DataSourceTable: Das Datenobjekt.

Autorisierung

Scripts, die diese Methode verwenden, benötigen eine Autorisierung für mindestens einen der folgenden Zugriffsbereiche:

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

forceRefreshData()

Aktualisiert die Daten dieses Objekts unabhängig vom aktuellen Status. Weitere Informationen finden Sie unter refreshData(). Wenn Sie eine aktuell laufende Aktualisierung dieses Objekts abbrechen möchten, lesen Sie cancelDataRefresh().

Löst eine Ausnahme aus, wenn der Datenquellentyp nicht aktiviert ist. Mit SpreadsheetApp#enable...Execution()-Methoden können Sie die Datenabfrage für einen bestimmten Datenquellentyp aktivieren.

Rückflug

DataSourceTable: Das Datenobjekt.

Autorisierung

Scripts, die diese Methode verwenden, benötigen eine Autorisierung für mindestens einen der folgenden Zugriffsbereiche:

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

getColumns()

Ruft alle Datenquellenspalten ab, die der Datenquellentabelle hinzugefügt wurden.

Rückflug

DataSourceTableColumn[]: Eine Liste der Spalten der Datenquellentabelle.

Autorisierung

Scripts, die diese Methode verwenden, benötigen eine Autorisierung für mindestens einen der folgenden Zugriffsbereiche:

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

getDataSource()

Ruft die Datenquelle ab, mit der das Objekt verknüpft ist.

Rückflug

DataSource: Die Datenquelle.

Autorisierung

Scripts, die diese Methode verwenden, benötigen eine Autorisierung für mindestens einen der folgenden Zugriffsbereiche:

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

getFilters()

Gibt alle Filter zurück, die auf die Datenquellentabelle angewendet wurden.

Rückflug

DataSourceTableFilter[]: Ein Array aller Filter, die auf die Datenquellentabelle angewendet werden.

Autorisierung

Scripts, die diese Methode verwenden, benötigen eine Autorisierung für mindestens einen der folgenden Zugriffsbereiche:

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

getRange()

Gibt den Range zurück, der von dieser Datenquellentabelle abgedeckt wird.

Rückflug

Range – Der Bereich.

Autorisierung

Scripts, die diese Methode verwenden, benötigen eine Autorisierung für mindestens einen der folgenden Zugriffsbereiche:

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

getRowLimit()

Gibt das Zeilenlimit für die Datenquellentabelle zurück.

Rückflug

Integer|null: Das Zeilenlimit für die Datenquellentabelle oder null, wenn kein Limit festgelegt ist und für die Tabelle das Standardlimit wie in der Google Sheets-Benutzeroberfläche verwendet wird.

Autorisierung

Scripts, die diese Methode verwenden, benötigen eine Autorisierung für mindestens einen der folgenden Zugriffsbereiche:

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

getSortSpecs()

Ruft alle Sortierspezifikationen in der Datenquellentabelle ab.

Rückflug

SortSpec[]: Eine Liste mit Sortierspezifikationen.

Autorisierung

Scripts, die diese Methode verwenden, benötigen eine Autorisierung für mindestens einen der folgenden Zugriffsbereiche:

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

getStatus()

Ruft den Status der Datenausführung des Objekts ab.

Rückflug

DataExecutionStatus: Der Status der Datenausführung.

Autorisierung

Scripts, die diese Methode verwenden, benötigen eine Autorisierung für mindestens einen der folgenden Zugriffsbereiche:

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

isSyncingAllColumns()

Gibt zurück, ob alle Spalten in der zugehörigen Datenquelle mit der Datenquellentabelle synchronisiert werden.

Rückflug

Boolean – True, wenn in der Datenquellentabelle alle Spalten der zugehörigen Datenquelle synchronisiert werden, andernfalls false.

Autorisierung

Scripts, die diese Methode verwenden, benötigen eine Autorisierung für mindestens einen der folgenden Zugriffsbereiche:

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

refreshData()

Aktualisiert die Daten des Objekts.

Löst eine Ausnahme aus, wenn sich die Instanz derzeit im Status error befindet. Verwenden Sie DataSource#updateSpec(), um die Spezifikation zu aktualisieren. Die Methode wird gegenüber forceRefreshData() bevorzugt, um unerwartete Änderungen an der Datenquelle zu verhindern.

Löst eine Ausnahme aus, wenn der Datenquellentyp nicht aktiviert ist. Mit SpreadsheetApp#enable...Execution()-Methoden können Sie die Datenabfrage für einen bestimmten Datenquelltyp aktivieren.

Rückflug

DataSourceTable: Das Datenobjekt.

Autorisierung

Scripts, die diese Methode verwenden, benötigen eine Autorisierung für mindestens einen der folgenden Zugriffsbereiche:

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

removeAllColumns()

Entfernt alle Spalten in der Datenquellentabelle.

Rückflug

DataSourceTable: Die Datenquellentabelle für die Verkettung.

Autorisierung

Scripts, die diese Methode verwenden, benötigen eine Autorisierung für mindestens einen der folgenden Zugriffsbereiche:

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

removeAllSortSpecs()

Entfernt alle Sortierspezifikationen in der Datenquellentabelle.

Rückflug

DataSourceTable: Das Datenquellenblatt für die Verkettung.

Autorisierung

Scripts, die diese Methode verwenden, benötigen eine Autorisierung für mindestens einen der folgenden Zugriffsbereiche:

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

setRowLimit(rowLimit)

Aktualisiert das Zeilenlimit für die Datenquellentabelle. Wenn das angegebene Zeilenlimit null ist, wird die Datenquellentabelle so aktualisiert, dass das standardmäßige maximale Zeilenlimit wie in der Google Sheets-Benutzeroberfläche verwendet wird.

Parameter

NameTypBeschreibung
rowLimitIntegerDas neue Zeilenlimit für die Datentabelle. Wenn null, wird die Tabelle so aktualisiert, dass das Standardzeilenlimit verwendet wird.

Rückflug

DataSourceTable: Die Datenquellentabelle für die Verkettung.

Autorisierung

Scripts, die diese Methode verwenden, benötigen eine Autorisierung für mindestens einen der folgenden Zugriffsbereiche:

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

syncAllColumns()

Alle aktuellen und zukünftigen Spalten in der zugehörigen Datenquelle mit der Datenquellentabelle synchronisieren.

Rückflug

DataSourceTable: Die Datenquellentabelle für die Verkettung.

Autorisierung

Scripts, die diese Methode verwenden, benötigen eine Autorisierung für mindestens einen der folgenden Zugriffsbereiche:

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

waitForCompletion(timeoutInSeconds)

Wartet, bis die aktuelle Ausführung abgeschlossen ist. Es kommt nach der angegebenen Anzahl von Sekunden zu einer Zeitüberschreitung. Löst eine Ausnahme aus, wenn die Ausführung bei Zeitüberschreitung nicht abgeschlossen ist, bricht die Datenausführung jedoch nicht ab.

Parameter

NameTypBeschreibung
timeoutInSecondsIntegerDie Zeit in Sekunden, die auf die Ausführung von Daten gewartet werden soll. Das Maximum beträgt 300 Sekunden.

Rückflug

DataExecutionStatus: Der Status der Datenausführung.

Autorisierung

Scripts, die diese Methode verwenden, benötigen eine Autorisierung für mindestens einen der folgenden Zugriffsbereiche:

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