Class DataSourceTable

VeriKaynakTablo

Mevcut veri kaynağı tablosuna erişme ve bu tabloyu değiştirme Yeni bir sayfada yeni bir veri kaynağı tablosu oluşturmak için Spreadsheet.insertSheetWithDataSourceTable(spec) simgesini 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, 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()DataSourceTableGeçerli 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()Integer|nullVeri 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ı geçtikten sonra zaman aşımına uğrar.

Ayrıntılı belgeler

addColumns(columnNames)

Veri kaynağı tablosuna sütun ekler.

Parametreler

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

Return

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

Yetkilendirme

Bu yöntemi kullanan komut dosyaları, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

  • 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ı, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

  • 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ıralanacak 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ı, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

  • 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ıralanacak sütunun adı.
sortOrderSortOrderSıralama ölçütü.

Return

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

Yetkilendirme

Bu yöntemi kullanan komut dosyaları, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

  • 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 oluşturur. Belirli bir veri kaynağı türü için veri yürütmeyi etkinleştirmek üzere SpreadsheetApp#enable...Execution() yöntemlerini kullanın.

Return

DataSourceTable: Veri nesnesi.

Yetkilendirme

Bu yöntemi kullanan komut dosyaları, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

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

forceRefreshData()

Geçerli 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 devam eden yenileme işlemini iptal etmek istiyorsanız cancelDataRefresh() başlıklı makaleyi inceleyin.

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

Return

DataSourceTable: Veri nesnesi.

Yetkilendirme

Bu yöntemi kullanan komut dosyaları, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

  • 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ğı tablosu sütunlarının listesi.

Yetkilendirme

Bu yöntemi kullanan komut dosyaları, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

  • 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ı, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

  • 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ı, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

  • 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ı, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

  • 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|null: Veri kaynağı tablosu için satır sınırı veya sınır ayarlanmamışsa ve tablo Google E-Tablolar kullanıcı arayüzündeki gibi varsayılan maksimum sınırı kullanıyorsa null.

Yetkilendirme

Bu yöntemi kullanan komut dosyaları, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

  • 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 spesifikasyonlarının listesi.

Yetkilendirme

Bu yöntemi kullanan komut dosyaları, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

  • 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ı, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

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

Yetkilendirme

Bu yöntemi kullanan komut dosyaları, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

  • 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. Bu yöntem, veri kaynağında beklenmedik düzenlemeleri önlemek için forceRefreshData() yerine tercih edilir.

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

Return

DataSourceTable: Veri nesnesi.

Yetkilendirme

Bu yöntemi kullanan komut dosyaları, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

  • 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ı, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

  • 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ı, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

  • 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ı, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

  • 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ı, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

  • 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ı geçtikten sonra zaman aşımına uğrar. Zaman aşımına uğradığında yürütme tamamlanmazsa istisna oluşturur ancak veri yürütmeyi iptal etmez.

Parametreler

AdTürAçıklama
timeoutInSecondsIntegerVeri yürütme işleminin tamamlanması için beklenecek süre (saniye). Maksimum süre 300 saniyedir.

Return

DataExecutionStatus: Veri yürütme durumu.

Yetkilendirme

Bu yöntemi kullanan komut dosyaları, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

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