Class DataSourceTable

DataSourceTable

Acessar e modificar a tabela de fonte de dados atual. Para criar uma nova tabela de fonte de dados em uma nova página, use Spreadsheet.insertSheetWithDataSourceTable(spec).

Use essa classe apenas com dados conectados a um banco de dados.

Neste exemplo, mostramos como criar uma nova tabela de fonte de dados.

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

Neste exemplo, mostramos como editar uma fonte de dados.

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

Métodos

MétodoTipo de retornoBreve descrição
addColumns(columnNames)DataSourceTableAdiciona colunas à tabela de fonte de dados.
addFilter(columnName, filterCriteria)DataSourceTableAdiciona um filtro aplicado à tabela de fonte de dados.
addSortSpec(columnName, ascending)DataSourceTableAdiciona uma especificação de classificação a uma coluna na tabela de fonte de dados.
addSortSpec(columnName, sortOrder)DataSourceTableAdiciona uma especificação de classificação a uma coluna na tabela de fonte de dados.
cancelDataRefresh()DataSourceTableCancela a atualização de dados associada a esse objeto se ele estiver em execução.
forceRefreshData()DataSourceTableAtualiza os dados desse objeto, independentemente do estado atual.
getColumns()DataSourceTableColumn[]Recebe todas as colunas de fonte de dados adicionadas à tabela de fonte de dados.
getDataSource()DataSourceExtrai a fonte de dados à qual o objeto está vinculado.
getFilters()DataSourceTableFilter[]Retorna todos os filtros aplicados à tabela de fonte de dados.
getRange()RangeRecebe o Range que esta tabela de fonte de dados abrange.
getRowLimit()IntegerRetorna o limite de linhas da tabela de fonte de dados.
getSortSpecs()SortSpec[]Recebe todas as especificações de classificação na tabela de fonte de dados.
getStatus()DataExecutionStatusRecebe o status de execução de dados do objeto.
isSyncingAllColumns()BooleanRetorna se a tabela de fonte de dados está sincronizando todas as colunas na fonte de dados associada.
refreshData()DataSourceTableAtualiza os dados do objeto.
removeAllColumns()DataSourceTableRemove todas as colunas na tabela de fonte de dados.
removeAllSortSpecs()DataSourceTableRemove todas as especificações de classificação na tabela de fonte de dados.
setRowLimit(rowLimit)DataSourceTableAtualiza o limite de linhas da tabela de fonte de dados.
syncAllColumns()DataSourceTableSincronize todas as colunas atuais e futuras da fonte de dados associada com a tabela de fontes de dados.
waitForCompletion(timeoutInSeconds)DataExecutionStatusAguarda a execução atual, expirando após o número fornecido de segundos.

Documentação detalhada

addColumns(columnNames)

Adiciona colunas à tabela de fonte de dados.

Parâmetros

NomeTipoDescrição
columnNamesString[]A lista dos nomes das colunas a serem adicionadas.

Retorno

DataSourceTable: a tabela de fonte de dados para encadeamento.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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

addFilter(columnName, filterCriteria)

Adiciona um filtro aplicado à tabela de fonte de dados.

Parâmetros

NomeTipoDescrição
columnNameStringO nome da coluna à qual aplicar este filtro.
filterCriteriaFilterCriteriaOs critérios de filtro a serem aplicados.

Retorno

DataSourceTable: a tabela de fonte de dados para encadeamento.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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

addSortSpec(columnName, ascending)

Adiciona uma especificação de classificação a uma coluna na tabela de fonte de dados.

Parâmetros

NomeTipoDescrição
columnNameStringO nome da coluna a ser classificada.
ascendingBooleanSe for true, classifique a coluna em ordem crescente. Se for false, classifique a coluna em ordem decrescente.

Retorno

DataSourceTable: a página da fonte de dados para encadeamento.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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

addSortSpec(columnName, sortOrder)

Adiciona uma especificação de classificação a uma coluna na tabela de fonte de dados.

Parâmetros

NomeTipoDescrição
columnNameStringO nome da coluna a ser classificada.
sortOrderSortOrderA ordem de classificação.

Retorno

DataSourceTable: a página da fonte de dados para encadeamento.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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

cancelDataRefresh()

Cancela a atualização de dados associada a esse objeto se ele estiver em execução.

Este exemplo mostra como cancelar uma atualização de fórmula.

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

Uma exceção é gerada se o tipo de fonte de dados não estiver ativado. Use os métodos SpreadsheetApp#enable...Execution() para ativar a execução de dados para um tipo específico de fonte.

Retorno

DataSourceTable: o objeto de dados.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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

forceRefreshData()

Atualiza os dados desse objeto, independentemente do estado atual. Consulte refreshData() para mais detalhes. Se você quiser cancelar uma atualização desse objeto em execução no momento, consulte cancelDataRefresh().

Uma exceção é gerada se o tipo de fonte de dados não estiver ativado. Use os métodos SpreadsheetApp#enable...Execution() para ativar a execução de dados para um tipo específico de fonte.

Retorno

DataSourceTable: o objeto de dados.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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

getColumns()

Recebe todas as colunas de fonte de dados adicionadas à tabela de fonte de dados.

Retorno

DataSourceTableColumn[]: uma lista de colunas da tabela de fonte de dados.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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

getDataSource()

Extrai a fonte de dados à qual o objeto está vinculado.

Retorno

DataSource: é a fonte de dados.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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

getFilters()

Retorna todos os filtros aplicados à tabela de fonte de dados.

Retorno

DataSourceTableFilter[]: uma matriz de todos os filtros aplicados à tabela de fonte de dados.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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

getRange()

Recebe o Range que esta tabela de fonte de dados abrange.

Retorno

Range: o intervalo.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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

getRowLimit()

Retorna o limite de linhas da tabela de fonte de dados.

Retorno

Integer: o limite de linhas da tabela de fonte de dados ou null se nenhum limite for definido e a tabela usar o limite máximo padrão, como na IU do Planilhas Google.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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

getSortSpecs()

Recebe todas as especificações de classificação na tabela de fonte de dados.

Retorno

SortSpec[]: uma lista de especificações de classificação.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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

getStatus()

Recebe o status de execução de dados do objeto.

Retorno

DataExecutionStatus: o status da execução de dados.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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

isSyncingAllColumns()

Retorna se a tabela de fonte de dados está sincronizando todas as colunas na fonte de dados associada.

Retorno

Boolean: True se a tabela de fonte de dados estiver sincronizando todas as colunas na fonte de dados associada ou false se não estiver.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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

refreshData()

Atualiza os dados do objeto.

Gera uma exceção se atualmente estiver no estado error. Use DataSource#updateSpec() para atualizar a especificação. Esse método tem preferência em relação a forceRefreshData() para evitar edições inesperadas na fonte de dados.

Uma exceção é gerada se o tipo de fonte de dados não estiver ativado. Use os métodos SpreadsheetApp#enable...Execution() para ativar a execução de dados para um tipo específico de fonte.

Retorno

DataSourceTable: o objeto de dados.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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

removeAllColumns()

Remove todas as colunas na tabela de fonte de dados.

Retorno

DataSourceTable: a tabela de fonte de dados para encadeamento.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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

removeAllSortSpecs()

Remove todas as especificações de classificação na tabela de fonte de dados.

Retorno

DataSourceTable: a página da fonte de dados para encadeamento.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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

setRowLimit(rowLimit)

Atualiza o limite de linhas da tabela de fonte de dados. Se o limite de linhas fornecido for null, a tabela de fonte de dados será atualizada para usar o limite máximo padrão de linhas, como na IU do Planilhas Google.

Parâmetros

NomeTipoDescrição
rowLimitIntegerO novo limite de linhas da tabela de dados. Se null, atualiza a tabela para usar o limite de linhas padrão.

Retorno

DataSourceTable: a tabela de fonte de dados para encadeamento.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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

syncAllColumns()

Sincronize todas as colunas atuais e futuras da fonte de dados associada com a tabela de fontes de dados.

Retorno

DataSourceTable: a tabela de fonte de dados para encadeamento.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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

waitForCompletion(timeoutInSeconds)

Aguarda a execução atual, expirando após o número fornecido de segundos. Gera uma exceção se a execução não for concluída ao atingir o tempo limite, mas não cancelará a execução dos dados.

Parâmetros

NomeTipoDescrição
timeoutInSecondsIntegerO tempo de espera pela execução dos dados, em segundos. O máximo é de 300 segundos.

Retorno

DataExecutionStatus: o status da execução de dados.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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