Class DataSourceTable

DatenQuelleTabelle

Auf vorhandene Datenquellentabelle zugreifen und diese bearbeiten. Wenn Sie eine neue Tabelle für die Datenquelle 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ügen Sie der Datenquellentabelle Spalten hinzu.
addFilter(columnName, filterCriteria)DataSourceTableHiermit wird ein Filter hinzugefügt, der auf die Datenquellentabelle angewendet wird.
addSortSpec(columnName, ascending)DataSourceTableHiermit wird einer Spalte in der Datenquellentabelle eine Sortierspezifikation hinzugefügt.
addSortSpec(columnName, sortOrder)DataSourceTableHiermit wird einer Spalte in der Datenquellentabelle eine Sortierspezifikation hinzugefügt.
cancelDataRefresh()DataSourceTableBricht die Datenaktualisierung für dieses Objekt ab, falls sie gerade ausgeführt wird.
forceRefreshData()DataSourceTableDie Daten dieses Objekts werden unabhängig vom aktuellen Status aktualisiert.
getColumns()DataSourceTableColumn[]Hier werden alle Datenquellenspalten abgerufen, 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, den diese Datenquellentabelle umfasst.
getRowLimit()IntegerGibt das Zeilenlimit für die Datenquellentabelle zurück.
getSortSpecs()SortSpec[]Hier werden alle Sortiervorgaben in der Datenquellentabelle abgerufen.
getStatus()DataExecutionStatusRuft den Status der Datenausführung des Objekts ab.
isSyncingAllColumns()BooleanGibt an, ob in der Datenquellentabelle alle Spalten in der zugehörigen Datenquelle synchronisiert werden.
refreshData()DataSourceTableAktualisiert die Daten des Objekts.
removeAllColumns()DataSourceTableAlle Spalten in der Datenquellentabelle werden entfernt.
removeAllSortSpecs()DataSourceTableEntfernt alle Sortiervorgaben in der Datenquellentabelle.
setRowLimit(rowLimit)DataSourceTableAktualisiert das Zeilenlimit für die Datenquellentabelle.
syncAllColumns()DataSourceTableSynchronisieren Sie alle aktuellen und zukünftigen Spalten in der verknüpften Datenquelle mit der Datenquellentabelle.
waitForCompletion(timeoutInSeconds)DataExecutionStatusEs wird gewartet, bis die aktuelle Ausführung abgeschlossen ist. Nach der angegebenen Anzahl von Sekunden kommt es zu einer Zeitüberschreitung.

Detaillierte Dokumentation

addColumns(columnNames)

Fügen Sie der Datenquellentabelle Spalten hinzu.

Parameter

NameTypBeschreibung
columnNamesString[]Die Liste der Namen der hinzuzufügenden Spalten.

Rückflug

DataSourceTable: Die Datenquellentabelle für die Verknüpfung.

Autorisierung

Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:

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

addFilter(columnName, filterCriteria)

Hiermit wird ein Filter hinzugefügt, 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 Verknüpfung.

Autorisierung

Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:

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

addSortSpec(columnName, ascending)

Hiermit wird einer Spalte in der Datenquellentabelle eine Sortierspezifikation hinzugefügt.

Parameter

NameTypBeschreibung
columnNameStringDer Name der Spalte, nach der sortiert werden soll.
ascendingBooleanWenn true ausgewählt ist, wird die Spalte in aufsteigender Reihenfolge sortiert. Bei false wird sie in absteigender Reihenfolge sortiert.

Rückflug

DataSourceTable: Tabelle mit der Datenquelle, die verkettet werden soll.

Autorisierung

Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:

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

addSortSpec(columnName, sortOrder)

Hiermit wird einer Spalte in der Datenquellentabelle eine Sortierspezifikation hinzugefügt.

Parameter

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

Rückflug

DataSourceTable: Tabelle mit der Datenquelle, die verkettet werden soll.

Autorisierung

Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:

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

cancelDataRefresh()

Bricht die Datenaktualisierung für dieses Objekt ab, falls sie gerade ausgeführt wird.

In diesem Beispiel wird gezeigt, wie Sie die Aktualisierung 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 Datenausführung für einen bestimmten Datenquellentyp aktivieren.

Rückflug

DataSourceTable: Das Datenobjekt.

Autorisierung

Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:

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

forceRefreshData()

Die Daten dieses Objekts werden unabhängig vom aktuellen Status aktualisiert. Weitere Informationen finden Sie unter refreshData(). Informationen zum Abbrechen einer aktuell laufenden Aktualisierung dieses Objekts finden Sie unter cancelDataRefresh().

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

Rückflug

DataSourceTable: Das Datenobjekt.

Autorisierung

Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:

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

getColumns()

Hier werden alle Datenquellenspalten abgerufen, die der Datenquellentabelle hinzugefügt wurden.

Rückflug

DataSourceTableColumn[]: Liste der Tabellenspalten der Datenquelle.

Autorisierung

Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:

  • 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: Datenquelle

Autorisierung

Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:

  • 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, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:

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

getRange()

Gibt den Range zurück, den diese Datenquellentabelle umfasst.

Rückflug

Range – Der Bereich.

Autorisierung

Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:

  • 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: Zeilenlimit für die Datenquellentabelle oder null, wenn kein Limit festgelegt ist und die Tabelle das Standardlimit wie in Google Tabellen verwendet.

Autorisierung

Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:

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

getSortSpecs()

Hier werden alle Sortiervorgaben in der Datenquellentabelle abgerufen.

Rückflug

SortSpec[]: Liste der Sortiervorgaben.

Autorisierung

Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:

  • 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, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:

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

isSyncingAllColumns()

Gibt an, ob in der Datenquellentabelle alle Spalten in der zugehörigen Datenquelle synchronisiert werden.

Rückflug

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

Autorisierung

Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:

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

refreshData()

Aktualisiert die Daten des Objekts.

Eine Ausnahme wird geworfen, wenn der aktuelle Status error ist. Verwenden Sie DataSource#updateSpec(), um die Spezifikation zu aktualisieren. Diese 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 Datenausführung für einen bestimmten Datenquellentyp aktivieren.

Rückflug

DataSourceTable: Das Datenobjekt.

Autorisierung

Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:

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

removeAllColumns()

Alle Spalten in der Datenquellentabelle werden entfernt.

Rückflug

DataSourceTable: Die Datenquellentabelle für die Verknüpfung.

Autorisierung

Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:

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

removeAllSortSpecs()

Entfernt alle Sortiervorgaben in der Datenquellentabelle.

Rückflug

DataSourceTable: Tabelle mit der Datenquelle, die verkettet werden soll.

Autorisierung

Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:

  • 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 Tabellen-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 Verknüpfung.

Autorisierung

Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:

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

syncAllColumns()

Synchronisieren Sie alle aktuellen und zukünftigen Spalten in der verknüpften Datenquelle mit der Datenquellentabelle.

Rückflug

DataSourceTable: Die Datenquellentabelle für die Verknüpfung.

Autorisierung

Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:

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

waitForCompletion(timeoutInSeconds)

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

Parameter

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

Rückflug

DataExecutionStatus: Der Status der Datenausführung.

Autorisierung

Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:

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