Class DataSourceTable

DadosOrigemTabela

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

Use essa classe apenas com fontes de dados do BigQuery.

Este exemplo mostra como criar uma nova tabela de fonte de dados.

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

Este exemplo mostra como editar uma fonte de dados.

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

Métodos

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

Documentação detalhada

addColumns(columnNames)

Adiciona colunas à tabela da fonte de dados.

Parâmetros

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

Retornar

DataSourceTable: a tabela 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

addFilter(columnName, filterCriteria)

Adiciona um filtro aplicado à tabela da fonte de dados.

Parâmetros

NomeTipoDescrição
columnNameStringO nome da coluna em que o filtro será aplicado.
filterCriteriaFilterCriteriaOs critérios de filtro a serem aplicados.

Retornar

DataSourceTable: a tabela 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, ascending)

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

Parâmetros

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

Retornar

DataSourceTable: a planilha da origem 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 origem de dados.

Parâmetros

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

Retornar

DataSourceTable: a planilha da origem 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 ela 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();

Gera uma exceção 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 de dados.

Retornar

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 em andamento desse objeto, consulte cancelDataRefresh().

Gera uma exceção 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 de dados.

Retornar

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 da fonte de dados adicionadas à tabela da fonte de dados.

Retornar

DataSourceTableColumn[]: uma lista de colunas da tabela da 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()

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

Retornar

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 da fonte de dados.

Retornar

DataSourceTableFilter[]: uma matriz de todos os filtros aplicados à tabela de origem 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 a tabela da fonte de dados abrange.

Retornar

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 da fonte de dados.

Retornar

Integer: o limite de linhas da tabela da fonte de dados ou null se nenhum limite for definido e a tabela usar o limite máximo padrão, como na interface das 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 da fonte de dados.

Retornar

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.

Retornar

DataExecutionStatus: o status de execução dos 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 da fonte de dados está sincronizando todas as colunas na fonte de dados associada.

Retornar

Boolean: True se a tabela da fonte de dados estiver sincronizando todas as colunas na fonte de dados associada ou false, caso contrário.

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 estiver no estado error. Use DataSource#updateSpec() para atualizar a especificação. O método é preferível a forceRefreshData() para evitar edições inesperadas na fonte de dados.

Gera uma exceção 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 de dados.

Retornar

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 da tabela da fonte de dados.

Retornar

DataSourceTable: a tabela 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

removeAllSortSpecs()

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

Retornar

DataSourceTable: a planilha da origem 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 da fonte de dados. Se o limite de linhas fornecido for null, a tabela de origem de dados será atualizada para usar o limite máximo de linhas padrão, como na interface das Planilhas Google.

Parâmetros

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

Retornar

DataSourceTable: a tabela 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

syncAllColumns()

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

Retornar

DataSourceTable: a tabela 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

waitForCompletion(timeoutInSeconds)

Aguarda até a conclusão da execução atual e expira após o número de segundos fornecido. Gera uma exceção se a execução não for concluída quando o tempo limite expirar, mas não cancela a execução de dados.

Parâmetros

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

Retornar

DataExecutionStatus: o status de execução dos 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