Class DataSourceTable

DataSourceTable

Auf vorhandene Tabellentabelle zugreifen und sie ändern. Verwenden Sie Spreadsheet.insertSheetWithDataSourceTable(spec), um eine neue Tabelle in einer neuen Tabelle zu erstellen.

Verwenden Sie diese Klasse nur mit Daten, die mit einer Datenbank verbunden sind.

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

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

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

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

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 einer Spalte in der Datenquellentabelle eine Sortierspezifikation hinzu.
addSortSpec(columnName, sortOrder)DataSourceTableFügt einer Spalte in der Datenquellentabelle eine Sortierspezifikation hinzu.
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()RangeRuft die Range ab, die diese Datenquellentabelle umfasst.
getRowLimit()IntegerGibt das Zeilenlimit für die Datenquellentabelle zurück.
getSortSpecs()SortSpec[]Ruft alle Sortierspezifikationen in der Datenquellentabelle ab.
getStatus()DataExecutionStatusRuft den Datenausführungsstatus des Objekts ab.
isSyncingAllColumns()BooleanGibt zurück, ob die Datenquellentabelle alle Spalten in der zugehörigen Datenquelle synchronisiert.
refreshData()DataSourceTableAktualisiert die Daten des Objekts.
removeAllColumns()DataSourceTableEntfernt alle Spalten aus der Datenquellentabelle.
removeAllSortSpecs()DataSourceTableEntfernt alle Sortierspezifikationen aus der Datenquellentabelle.
setRowLimit(rowLimit)DataSourceTableDas Zeilenlimit für die Tabelle der Datenquelle wird aktualisiert.
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. Das Zeitlimit wird nach der angegebenen Anzahl von Sekunden überschritten.

Detaillierte Dokumentation

addColumns(columnNames)

Fügt der Datenquellentabelle Spalten hinzu.

Parameter

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

Zurücksenden

DataSourceTable: Die Datenquellentabelle zum Verketten.

Autorisierung

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

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

Zurücksenden

DataSourceTable: Die Datenquellentabelle zum Verketten.

Autorisierung

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

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

addSortSpec(columnName, ascending)

Fügt einer Spalte in der Datenquellentabelle eine Sortierspezifikation hinzu.

Parameter

NameTypBeschreibung
columnNameStringDer Name der zu sortierenden Spalte.
ascendingBooleanBei true sortieren Sie die Spalte in aufsteigender Reihenfolge, bei false die Spalte in absteigender Reihenfolge.

Zurücksenden

DataSourceTable: Das Datenquellentabellenblatt zum Verketten.

Autorisierung

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

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

addSortSpec(columnName, sortOrder)

Fügt einer Spalte in der Datenquellentabelle eine Sortierspezifikation hinzu.

Parameter

NameTypBeschreibung
columnNameStringDer Name der zu sortierenden Spalte.
sortOrderSortOrderDie Sortierreihenfolge.

Zurücksenden

DataSourceTable: Das Datenquellentabellenblatt zum Verketten.

Autorisierung

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

  • 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 findest du unter refreshData().

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

Zurücksenden

DataSourceTable: Das Datenobjekt.

Autorisierung

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

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

getColumns()

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

Zurücksenden

DataSourceTableColumn[]: Eine Liste von Spalten der Datenquellentabelle.

Autorisierung

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

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

Zurücksenden

DataSource: Die Datenquelle.

Autorisierung

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

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

Zurücksenden

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

Autorisierung

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

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

getRange()

Ruft die Range ab, die diese Datenquellentabelle umfasst.

Zurücksenden

Range: Der Bereich.

Autorisierung

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

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

getRowLimit()

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

Zurücksenden

Integer: Das Zeilenlimit für die Datenquellentabelle oder null, wenn kein Limit festgelegt ist, und die Tabelle das maximale Standardlimit wie in der Google Tabellen-UI verwendet.

Autorisierung

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

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

getSortSpecs()

Ruft alle Sortierspezifikationen in der Datenquellentabelle ab.

Zurücksenden

SortSpec[]: Eine Liste von Sortierspezifikationen.

Autorisierung

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

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

getStatus()

Ruft den Datenausführungsstatus des Objekts ab.

Zurücksenden

DataExecutionStatus: Der Status der Datenausführung.

Autorisierung

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

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

isSyncingAllColumns()

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

Zurücksenden

Boolean: True, wenn die Datenquellentabelle alle Spalten in der zugehörigen Datenquelle synchronisiert. Andernfalls ist false.

Autorisierung

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

  • 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 sie sich 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. Verwenden Sie SpreadsheetApp#enable...Execution()-Methoden, um die Datenausführung für einen bestimmten Datenquellentyp zu aktivieren.

Zurücksenden

DataSourceTable: Das Datenobjekt.

Autorisierung

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

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

removeAllColumns()

Entfernt alle Spalten aus der Datenquellentabelle.

Zurücksenden

DataSourceTable: Die Datenquellentabelle zum Verketten.

Autorisierung

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

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

removeAllSortSpecs()

Entfernt alle Sortierspezifikationen aus der Datenquellentabelle.

Zurücksenden

DataSourceTable: Das Datenquellentabellenblatt zum Verketten.

Autorisierung

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

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

setRowLimit(rowLimit)

Das Zeilenlimit für die Tabelle der Datenquelle wird aktualisiert. Wenn das bereitgestellte Zeilenlimit null ist, wird die Datenquellentabelle so aktualisiert, dass das maximale Zeilenlimit für Standarddaten wie in der Google Tabellen-UI verwendet wird.

Parameter

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

Zurücksenden

DataSourceTable: Die Datenquellentabelle zum Verketten.

Autorisierung

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

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

Zurücksenden

DataSourceTable: Die Datenquellentabelle zum Verketten.

Autorisierung

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

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

waitForCompletion(timeoutInSeconds)

Wartet, bis die aktuelle Ausführung abgeschlossen ist. Das Zeitlimit wird nach der angegebenen Anzahl von Sekunden überschritten. Löst eine Ausnahme aus, wenn die Ausführung bei der Zeitüberschreitung nicht abgeschlossen ist, die Datenausführung jedoch nicht abgebrochen wird.

Parameter

NameTypBeschreibung
timeoutInSecondsIntegerDie Wartezeit in Sekunden auf die Datenausführung. Der Höchstwert beträgt 300 Sekunden.

Zurücksenden

DataExecutionStatus: Der Status der Datenausführung.

Autorisierung

Für Skripts, die diese Methode verwenden, ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

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