Class DataSourceTable

TabelSumberData

Mengakses dan mengubah tabel sumber data yang ada. Untuk membuat tabel sumber data baru di sheet baru, gunakan Spreadsheet.insertSheetWithDataSourceTable(spec).

Hanya gunakan class ini dengan sumber data BigQuery.

Contoh ini menunjukkan cara membuat tabel sumber data baru.

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

Contoh ini menunjukkan cara mengedit sumber data.

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

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
addColumns(columnNames)DataSourceTableMenambahkan kolom ke tabel sumber data.
addFilter(columnName, filterCriteria)DataSourceTableMenambahkan filter yang diterapkan ke tabel sumber data.
addSortSpec(columnName, ascending)DataSourceTableMenambahkan spesifikasi pengurutan pada kolom di tabel sumber data.
addSortSpec(columnName, sortOrder)DataSourceTableMenambahkan spesifikasi pengurutan pada kolom di tabel sumber data.
cancelDataRefresh()DataSourceTableMembatalkan pembaruan data yang terkait dengan objek ini jika saat ini sedang berjalan.
forceRefreshData()DataSourceTableMemperbarui data objek ini terlepas dari status saat ini.
getColumns()DataSourceTableColumn[]Mendapatkan semua kolom sumber data yang ditambahkan ke tabel sumber data.
getDataSource()DataSourceMendapatkan sumber data yang ditautkan ke objek.
getFilters()DataSourceTableFilter[]Menampilkan semua filter yang diterapkan ke tabel sumber data.
getRange()RangeMendapatkan Range yang dijangkau tabel sumber data ini.
getRowLimit()IntegerMenampilkan batas baris untuk tabel sumber data.
getSortSpecs()SortSpec[]Mendapatkan semua spesifikasi pengurutan dalam tabel sumber data.
getStatus()DataExecutionStatusMendapatkan status eksekusi data objek.
isSyncingAllColumns()BooleanMenampilkan apakah tabel sumber data menyinkronkan semua kolom di sumber data terkait.
refreshData()DataSourceTableMemperbarui data objek.
removeAllColumns()DataSourceTableMenghapus semua kolom dalam tabel sumber data.
removeAllSortSpecs()DataSourceTableMenghapus semua spesifikasi pengurutan di tabel sumber data.
setRowLimit(rowLimit)DataSourceTableMemperbarui batas baris untuk tabel sumber data.
syncAllColumns()DataSourceTableSinkronkan semua kolom yang ada dan kolom di masa mendatang di sumber data terkait ke tabel sumber data.
waitForCompletion(timeoutInSeconds)DataExecutionStatusMenunggu hingga eksekusi saat ini selesai, waktu tunggu habis setelah jumlah detik yang diberikan.

Dokumentasi mendetail

addColumns(columnNames)

Menambahkan kolom ke tabel sumber data.

Parameter

NamaJenisDeskripsi
columnNamesString[]Daftar nama kolom yang akan ditambahkan.

Pulang pergi

DataSourceTable — Tabel sumber data, untuk pembuatan rantai.

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

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

addFilter(columnName, filterCriteria)

Menambahkan filter yang diterapkan ke tabel sumber data.

Parameter

NamaJenisDeskripsi
columnNameStringNama kolom yang akan menerapkan filter ini.
filterCriteriaFilterCriteriaKriteria filter yang akan diterapkan.

Pulang pergi

DataSourceTable — Tabel sumber data, untuk pembuatan rantai.

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

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

addSortSpec(columnName, ascending)

Menambahkan spesifikasi pengurutan pada kolom di tabel sumber data.

Parameter

NamaJenisDeskripsi
columnNameStringNama kolom yang akan diurutkan.
ascendingBooleanJika true, urutkan kolom dari bawah ke atas; jika false, urutkan kolom dari atas ke bawah.

Pulang pergi

DataSourceTable — Sheet sumber data, untuk penyambungan.

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

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

addSortSpec(columnName, sortOrder)

Menambahkan spesifikasi pengurutan pada kolom di tabel sumber data.

Parameter

NamaJenisDeskripsi
columnNameStringNama kolom yang akan diurutkan.
sortOrderSortOrderUrutan pengurutan.

Pulang pergi

DataSourceTable — Sheet sumber data, untuk penyambungan.

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

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

cancelDataRefresh()

Membatalkan pembaruan data yang terkait dengan objek ini jika saat ini sedang berjalan.

Contoh ini menunjukkan cara membatalkan pembaruan formula.

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

Menampilkan pengecualian jika jenis sumber data tidak diaktifkan. Gunakan metode SpreadsheetApp#enable...Execution() untuk mengaktifkan eksekusi data untuk jenis sumber data tertentu.

Pulang pergi

DataSourceTable — Objek data.

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

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

forceRefreshData()

Memperbarui data objek ini terlepas dari status saat ini. Lihat refreshData() untuk mengetahui detail selengkapnya. Jika Anda ingin membatalkan pembaruan objek ini yang sedang berjalan, lihat cancelDataRefresh().

Menampilkan pengecualian jika jenis sumber data tidak diaktifkan. Gunakan metode SpreadsheetApp#enable...Execution() untuk mengaktifkan eksekusi data untuk jenis sumber data tertentu.

Pulang pergi

DataSourceTable — Objek data.

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

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

getColumns()

Mendapatkan semua kolom sumber data yang ditambahkan ke tabel sumber data.

Pulang pergi

DataSourceTableColumn[] — Daftar kolom tabel sumber data.

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

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

getDataSource()

Mendapatkan sumber data yang ditautkan ke objek.

Pulang pergi

DataSource — Sumber data.

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

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

getFilters()

Menampilkan semua filter yang diterapkan ke tabel sumber data.

Pulang pergi

DataSourceTableFilter[] — Array dari semua filter yang diterapkan ke tabel sumber data.

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

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

getRange()

Mendapatkan Range yang dijangkau tabel sumber data ini.

Pulang pergi

Range — Rentang.

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

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

getRowLimit()

Menampilkan batas baris untuk tabel sumber data.

Pulang pergi

Integer — Batas baris untuk tabel sumber data, atau null jika tidak ada batas yang ditetapkan dan tabel menggunakan batas maksimum default seperti di UI Google Spreadsheet.

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

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

getSortSpecs()

Mendapatkan semua spesifikasi pengurutan dalam tabel sumber data.

Pulang pergi

SortSpec[] — Daftar spesifikasi pengurutan.

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

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

getStatus()

Mendapatkan status eksekusi data objek.

Pulang pergi

DataExecutionStatus — Status eksekusi data.

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

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

isSyncingAllColumns()

Menampilkan apakah tabel sumber data menyinkronkan semua kolom di sumber data terkait.

Pulang pergi

BooleanTrue jika tabel sumber data menyinkronkan semua kolom di sumber data terkait, atau false jika tidak.

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

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

refreshData()

Memperbarui data objek.

Menampilkan pengecualian jika saat ini dalam status error. Gunakan DataSource#updateSpec() untuk memperbarui spesifikasi. Metode ini lebih disukai daripada forceRefreshData() untuk mencegah pengeditan yang tidak terduga pada sumber data.

Menampilkan pengecualian jika jenis sumber data tidak diaktifkan. Gunakan metode SpreadsheetApp#enable...Execution() untuk mengaktifkan eksekusi data untuk jenis sumber data tertentu.

Pulang pergi

DataSourceTable — Objek data.

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

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

removeAllColumns()

Menghapus semua kolom dalam tabel sumber data.

Pulang pergi

DataSourceTable — Tabel sumber data, untuk pembuatan rantai.

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

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

removeAllSortSpecs()

Menghapus semua spesifikasi pengurutan di tabel sumber data.

Pulang pergi

DataSourceTable — Sheet sumber data, untuk penyambungan.

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

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

setRowLimit(rowLimit)

Memperbarui batas baris untuk tabel sumber data. Jika batas baris yang diberikan adalah null, update tabel sumber data untuk menggunakan batas baris maksimum default seperti di UI Google Spreadsheet.

Parameter

NamaJenisDeskripsi
rowLimitIntegerBatas baris baru untuk tabel data. Jika null, memperbarui tabel untuk menggunakan batas baris default.

Pulang pergi

DataSourceTable — Tabel sumber data, untuk pembuatan rantai.

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

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

syncAllColumns()

Sinkronkan semua kolom yang ada dan kolom di masa mendatang di sumber data terkait ke tabel sumber data.

Pulang pergi

DataSourceTable — Tabel sumber data, untuk pembuatan rantai.

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

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

waitForCompletion(timeoutInSeconds)

Menunggu hingga eksekusi saat ini selesai, waktu tunggu habis setelah jumlah detik yang diberikan. Menampilkan pengecualian jika eksekusi tidak selesai saat waktu tunggu habis, tetapi tidak membatalkan eksekusi data.

Parameter

NamaJenisDeskripsi
timeoutInSecondsIntegerWaktu tunggu eksekusi data, dalam detik. Durasi maksimumnya adalah 300 detik.

Pulang pergi

DataExecutionStatus — Status eksekusi data.

Otorisasi

Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:

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