既存のデータソース テーブルにアクセスして変更する。新しいシートに新しいデータソース テーブルを作成するには、Spreadsheet.insertSheetWithDataSourceTable(spec)
を使用します。
このクラスは、BigQuery データソースでのみ使用してください。
この例では、新しいデータソース テーブルを作成する方法を示します。
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());
次の例は、データソースを編集する方法を示しています。
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());
メソッド
詳細なドキュメント
addColumns(columnNames)
データソース テーブルに列を追加します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
columnNames | String[] | 追加する列の名前のリスト。 |
戻る
DataSourceTable
- チェーンに使用するデータソース テーブル。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上を使用した承認が必要です。
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
addFilter(columnName, filterCriteria)
データソース テーブルに適用されるフィルタを追加します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
columnName | String | このフィルタを適用する列の名前。 |
filterCriteria | FilterCriteria | 適用するフィルタ条件。 |
戻る
DataSourceTable
- チェーンに使用するデータソース テーブル。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上を使用した承認が必要です。
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
addSortSpec(columnName, ascending)
データソース テーブルの列で並べ替えの仕様を追加します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
columnName | String | 並べ替える列の名前。 |
ascending | Boolean | true の場合、列を昇順で並べ替えます。false の場合、並べ替える
降順で並べ替えます |
戻る
DataSourceTable
- チェーン用のデータソース シート。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上を使用した承認が必要です。
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
addSortSpec(columnName, sortOrder)
データソース テーブルの列に並べ替え仕様を追加します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
columnName | String | 並べ替える列の名前。 |
sortOrder | SortOrder | 並べ替え順。 |
戻る
DataSourceTable
- チェーン用のデータソース シート。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上を使用した承認が必要です。
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
cancelDataRefresh()
現在実行中のこのオブジェクトに関連付けられているデータの更新をキャンセルします。
この例では、数式の更新をキャンセルする方法を示します。
const spreadsheet = SpreadsheetApp.getActive(); const formula = spreadsheet.getDataSourceFormulas()[0]; // Cancel the ongoing refresh on the formula. formula.cancelDataRefresh();
データソース タイプが有効になっていない場合、例外をスローします。SpreadsheetApp#enable...Execution()
メソッドを使用して、特定のデータソースのデータ実行を有効にする
あります。
戻る
DataSourceTable
- データ オブジェクト。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上を使用した承認が必要です。
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
forceRefreshData()
現在の状態に関係なく、このオブジェクトのデータを更新します。refreshData()
を表示:
詳しく見ていきますこのオブジェクトで現在実行中の更新をキャンセルする場合は、cancelDataRefresh()
をご覧ください。
データソース タイプが有効になっていない場合、例外をスローします。SpreadsheetApp#enable...Execution()
メソッドを使用して、特定のデータソースのデータ実行を有効にする
あります。
戻る
DataSourceTable
- データ オブジェクト。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getColumns()
データソース テーブルに追加されたすべてのデータソース列を取得します。
戻る
DataSourceTableColumn[]
- データソース テーブルの列のリスト。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getDataSource()
オブジェクトがリンクされているデータソースを取得します。
戻る
DataSource
- データソース。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上を使用した承認が必要です。
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getFilters()
データソース テーブルに適用されているすべてのフィルタを返します。
戻る
DataSourceTableFilter[]
- データソース テーブルに適用されているすべてのフィルタの配列。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上を使用した承認が必要です。
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getRange()
getRowLimit()
データソース テーブルの行の上限を返します。
戻る
Integer
- データソース テーブルの行の上限。上限が設定されておらず、null
を使用する場合は、
Google スプレッドシート UI と同様に、デフォルトの上限が使用されます。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上を使用した承認が必要です。
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getSortSpecs()
データソース テーブルのすべての並べ替え仕様を取得します。
戻る
SortSpec[]
- 並べ替え仕様のリスト。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上を使用した承認が必要です。
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getStatus()
オブジェクトのデータ実行ステータスを取得します。
戻る
DataExecutionStatus
- データの実行ステータス。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上を使用した承認が必要です。
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
isSyncingAllColumns()
データソース テーブルが、関連するデータソース内のすべての列を同期しているかどうかを返します。
戻る
Boolean
- データソース テーブルが関連データ内のすべての列を同期している場合は True
そうでない場合は false
を返します。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
refreshData()
オブジェクトのデータを更新します。
現在 error
状態の場合、例外をスローします。DataSource#updateSpec()
を使用して仕様を更新します。メソッドは次のとおりです。
データソースで予期しない編集が行われないように、forceRefreshData()
より優先します。
データソース タイプが有効になっていない場合、例外をスローします。SpreadsheetApp#enable...Execution()
メソッドを使用して、特定のデータソースのデータ実行を有効にする
あります。
戻る
DataSourceTable
- データ オブジェクト。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上を使用した承認が必要です。
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
removeAllColumns()
データソース テーブルのすべての列を削除します。
戻る
DataSourceTable
- チェーンに使用するデータソース テーブル。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
removeAllSortSpecs()
データソース テーブルの並べ替えの指定をすべて削除します。
戻る
DataSourceTable
- チェーン用のデータソース シート。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上を使用した承認が必要です。
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
setRowLimit(rowLimit)
データソース テーブルの行の上限を更新します。指定された行の上限が null
の場合、
次に、Google スプレッドシート UI と同様に、デフォルトの最大行数制限を使用するようにデータソース テーブルを更新します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
rowLimit | Integer | データテーブルの新しい行の上限。null の場合、デフォルトの行上限を使用するようにテーブルを更新します。 |
戻る
DataSourceTable
- チェーン接続用のデータソース テーブル。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
syncAllColumns()
関連付けられたデータソースの現在と将来のすべての列を、データソース テーブルに同期します。
戻る
DataSourceTable
- チェーンに使用するデータソース テーブル。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上を使用した承認が必要です。
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
waitForCompletion(timeoutInSeconds)
現在の実行が完了するまで待機し、指定された秒数が経過するとタイムアウトします。 タイムアウト時に実行が完了していない場合に例外をスローしますが、 データの実行に集中できます
パラメータ
名前 | 型 | 説明 |
---|---|---|
timeoutInSeconds | Integer | データの実行を待機する時間(秒)。上限は 300 です 秒です。 |
戻る
DataExecutionStatus
- データの実行ステータス。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上を使用した承認が必要です。
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets