Class DataSourceTable

VeriKaynağıTablosu

Mevcut veri kaynağı tablosuna erişme ve tabloyu değiştirme. Yeni bir sayfada yeni bir veri kaynağı tablosu oluşturmak için Spreadsheet.insertSheetWithDataSourceTable(spec) işlevini kullanın.

Bu sınıfı yalnızca BigQuery veri kaynaklarıyla kullanın.

Bu örnekte, yeni bir veri kaynağı tablosunun nasıl oluşturulacağı gösterilmektedir.

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

Bu örnekte, bir veri kaynağının nasıl düzenleneceği gösterilmektedir.

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

Yöntemler

YöntemDönüş türüKısa açıklama
addColumns(columnNames)DataSourceTableVeri kaynağı tablosuna sütun ekler.
addFilter(columnName, filterCriteria)DataSourceTableVeri kaynağı tablosuna uygulanan bir filtre ekler.
addSortSpec(columnName, ascending)DataSourceTableVeri kaynağı tablosundaki bir sütuna sıralama özelliği ekler.
addSortSpec(columnName, sortOrder)DataSourceTableVeri kaynağı tablosundaki bir sütuna sıralama özelliği ekler.
cancelDataRefresh()DataSourceTableŞu anda çalışıyorsa bu nesneyle ilişkili veri yenilemeyi iptal eder.
forceRefreshData()DataSourceTableMevcut durumdan bağımsız olarak bu nesnenin verilerini yeniler.
getColumns()DataSourceTableColumn[]Veri kaynağı tablosuna eklenen tüm veri kaynağı sütunlarını alır.
getDataSource()DataSourceNesnenin bağlı olduğu veri kaynağını alır.
getFilters()DataSourceTableFilter[]Veri kaynağı tablosuna uygulanan tüm filtreleri döndürür.
getRange()RangeBu veri kaynağı tablosunun kapsadığı Range değerini alır.
getRowLimit()IntegerVeri kaynağı tablosunun satır sınırını döndürür.
getSortSpecs()SortSpec[]Veri kaynağı tablosundaki tüm sıralama özelliklerini alır.
getStatus()DataExecutionStatusNesnenin veri yürütme durumunu alır.
isSyncingAllColumns()BooleanVeri kaynağı tablosunun ilişkili veri kaynağındaki tüm sütunları senkronize edip etmediğini döndürür.
refreshData()DataSourceTableNesnenin verilerini yeniler.
removeAllColumns()DataSourceTableVeri kaynağı tablosundaki tüm sütunları kaldırır.
removeAllSortSpecs()DataSourceTableVeri kaynağı tablosundaki tüm sıralama özelliklerini kaldırır.
setRowLimit(rowLimit)DataSourceTableVeri kaynağı tablosunun satır sınırını günceller.
syncAllColumns()DataSourceTableİlişkili veri kaynağındaki mevcut ve gelecekteki tüm sütunları veri kaynağı tablosuyla senkronize edin.
waitForCompletion(timeoutInSeconds)DataExecutionStatusMevcut yürütme işlemi tamamlanana kadar bekler ve belirtilen saniye sayısı dolduktan sonra zaman aşımına uğrar.

Ayrıntılı dokümanlar

addColumns(columnNames)

Veri kaynağı tablosuna sütun ekler.

Parametreler

AdTürAçıklama
columnNamesString[]Eklenecek sütun adlarının listesi.

Return

DataSourceTable: Zincirleme için veri kaynağı tablosu.

Yetkilendirme

Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:

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

addFilter(columnName, filterCriteria)

Veri kaynağı tablosuna uygulanan bir filtre ekler.

Parametreler

AdTürAçıklama
columnNameStringBu filtrenin uygulanacağı sütunun adı.
filterCriteriaFilterCriteriaUygulanacak filtre ölçütleri.

Return

DataSourceTable: Zincirleme için veri kaynağı tablosu.

Yetkilendirme

Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:

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

addSortSpec(columnName, ascending)

Veri kaynağı tablosundaki bir sütuna sıralama özelliği ekler.

Parametreler

AdTürAçıklama
columnNameStringSıralamanın yapılacağı sütunun adı.
ascendingBooleantrue ise sütunu artan düzende, false ise azalan düzende sıralayın.

Return

DataSourceTable: Zincirleme için veri kaynağı sayfası.

Yetkilendirme

Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:

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

addSortSpec(columnName, sortOrder)

Veri kaynağı tablosundaki bir sütuna sıralama özelliği ekler.

Parametreler

AdTürAçıklama
columnNameStringSıralamanın yapılacağı sütunun adı.
sortOrderSortOrderSıralama ölçütü.

Return

DataSourceTable: Zincirleme için veri kaynağı sayfası.

Yetkilendirme

Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:

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

cancelDataRefresh()

Şu anda çalışıyorsa bu nesneyle ilişkili veri yenilemeyi iptal eder.

Bu örnekte, formül yenilemenin nasıl iptal edileceği gösterilmektedir.

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

Veri kaynağı türü etkinleştirilmemişse istisna atar. Belirli bir veri kaynağı türü için veri yürütme işlemini etkinleştirmek üzere SpreadsheetApp#enable...Execution() yöntemlerini kullanın.

Return

DataSourceTable: Veri nesnesi.

Yetkilendirme

Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:

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

forceRefreshData()

Mevcut durumdan bağımsız olarak bu nesnenin verilerini yeniler. Daha fazla bilgi için refreshData() bölümüne bakın. Bu nesnenin şu anda çalışan yenileme işlemini iptal etmek istiyorsanız cancelDataRefresh() bölümüne bakın.

Veri kaynağı türü etkinleştirilmemişse istisna atar. Belirli bir veri kaynağı türü için veri yürütme işlemini etkinleştirmek üzere SpreadsheetApp#enable...Execution() yöntemlerini kullanın.

Return

DataSourceTable: Veri nesnesi.

Yetkilendirme

Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:

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

getColumns()

Veri kaynağı tablosuna eklenen tüm veri kaynağı sütunlarını alır.

Return

DataSourceTableColumn[]: Veri kaynağı tablo sütunlarının listesi.

Yetkilendirme

Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:

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

getDataSource()

Nesnenin bağlı olduğu veri kaynağını alır.

Return

DataSource: Veri kaynağı.

Yetkilendirme

Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:

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

getFilters()

Veri kaynağı tablosuna uygulanan tüm filtreleri döndürür.

Return

DataSourceTableFilter[]: Veri kaynağı tablosuna uygulanan tüm filtrelerin dizisi.

Yetkilendirme

Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:

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

getRange()

Bu veri kaynağı tablosunun kapsadığı Range değerini alır.

Return

Range: Aralık.

Yetkilendirme

Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:

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

getRowLimit()

Veri kaynağı tablosunun satır sınırını döndürür.

Return

Integer: Veri kaynağı tablosunun satır sınırı veya sınır ayarlanmamışsa ve tablo Google E-Tablolar kullanıcı arayüzündeki varsayılan maksimum sınırı kullanıyorsa null.

Yetkilendirme

Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:

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

getSortSpecs()

Veri kaynağı tablosundaki tüm sıralama özelliklerini alır.

Return

SortSpec[]: Sıralama özelliklerinin listesi.

Yetkilendirme

Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:

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

getStatus()

Nesnenin veri yürütme durumunu alır.

Return

DataExecutionStatus: Veri yürütme durumu.

Yetkilendirme

Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:

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

isSyncingAllColumns()

Veri kaynağı tablosunun ilişkili veri kaynağındaki tüm sütunları senkronize edip etmediğini döndürür.

Return

Boolean: Veri kaynağı tablosu ilişkili veri kaynağındaki tüm sütunları senkronize ediyorsa True, aksi takdirde false değerini alır.

Yetkilendirme

Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:

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

refreshData()

Nesnenin verilerini yeniler.

Şu anda error durumundaysa istisna oluşturur. Spesifikasyonu güncellemek için DataSource#updateSpec() simgesini kullanın. Veri kaynağında beklenmedik düzenlemeleri önlemek için bu yöntem, forceRefreshData() yerine tercih edilir.

Veri kaynağı türü etkinleştirilmemişse istisna atar. Belirli bir veri kaynağı türü için veri yürütme işlemini etkinleştirmek üzere SpreadsheetApp#enable...Execution() yöntemlerini kullanın.

Return

DataSourceTable: Veri nesnesi.

Yetkilendirme

Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:

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

removeAllColumns()

Veri kaynağı tablosundaki tüm sütunları kaldırır.

Return

DataSourceTable: Zincirleme için veri kaynağı tablosu.

Yetkilendirme

Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:

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

removeAllSortSpecs()

Veri kaynağı tablosundaki tüm sıralama özelliklerini kaldırır.

Return

DataSourceTable: Zincirleme için veri kaynağı sayfası.

Yetkilendirme

Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:

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

setRowLimit(rowLimit)

Veri kaynağı tablosunun satır sınırını günceller. Sağlanan satır sınırı null ise veri kaynağı tablosunu, Google E-Tablolar kullanıcı arayüzündeki varsayılan maksimum satır sınırını kullanacak şekilde günceller.

Parametreler

AdTürAçıklama
rowLimitIntegerVeri tablosu için yeni satır sınırı. null ise tabloyu varsayılan satır sınırını kullanacak şekilde günceller.

Return

DataSourceTable: Zincirleme için veri kaynağı tablosu.

Yetkilendirme

Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:

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

syncAllColumns()

İlişkili veri kaynağındaki mevcut ve gelecekteki tüm sütunları veri kaynağı tablosuyla senkronize edin.

Return

DataSourceTable: Zincirleme için veri kaynağı tablosu.

Yetkilendirme

Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:

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

waitForCompletion(timeoutInSeconds)

Mevcut yürütme işlemi tamamlanana kadar bekler ve belirtilen saniye sayısı dolduktan sonra zaman aşımına uğrar. Zaman aşımı olduğunda yürütme tamamlanmazsa bir istisna oluşturur ancak veri yürütme işlemini iptal etmez.

Parametreler

AdTürAçıklama
timeoutInSecondsIntegerVeri yürütme işlemi için bekleme süresi (saniye cinsinden). Maksimum süre 300 saniyedir.

Return

DataExecutionStatus: Veri yürütme durumu.

Yetkilendirme

Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:

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