Class DataSourceTable

Tabla defuentes de datos

Acceder a la tabla de la fuente de datos existente y modificarla Para crear una nueva tabla de fuente de datos en una hoja nueva, usa Spreadsheet.insertSheetWithDataSourceTable(spec).

Usa esta clase solo con fuentes de datos de BigQuery.

En este ejemplo, se muestra cómo crear una nueva tabla de fuentes de datos.

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

En este ejemplo, se muestra cómo editar una fuente de datos.

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 datos que se muestraDescripción breve
addColumns(columnNames)DataSourceTableAgrega columnas a la tabla de la fuente de datos.
addFilter(columnName, filterCriteria)DataSourceTableAgrega un filtro aplicado a la tabla de la fuente de datos.
addSortSpec(columnName, ascending)DataSourceTableAgrega una especificación de orden a una columna en la tabla de la fuente de datos.
addSortSpec(columnName, sortOrder)DataSourceTableAgrega una especificación de orden a una columna en la tabla de la fuente de datos.
cancelDataRefresh()DataSourceTableCancela la actualización de datos asociada con este objeto si se está ejecutando.
forceRefreshData()DataSourceTableActualiza los datos de este objeto independientemente del estado actual.
getColumns()DataSourceTableColumn[]Obtiene todas las columnas de la fuente de datos que se agregaron a la tabla de la fuente de datos.
getDataSource()DataSourceObtiene la fuente de datos a la que está vinculado el objeto.
getFilters()DataSourceTableFilter[]Muestra todos los filtros aplicados a la tabla de la fuente de datos.
getRange()RangeObtiene el Range que abarca esta tabla de fuente de datos.
getRowLimit()IntegerDevuelve el límite de filas de la tabla de la fuente de datos.
getSortSpecs()SortSpec[]Obtiene todas las especificaciones de ordenamiento en la tabla de la fuente de datos.
getStatus()DataExecutionStatusObtiene el estado de ejecución de datos del objeto.
isSyncingAllColumns()BooleanMuestra si la tabla de la fuente de datos sincroniza todas las columnas de la fuente de datos asociada.
refreshData()DataSourceTableActualiza los datos del objeto.
removeAllColumns()DataSourceTableQuita todas las columnas de la tabla de la fuente de datos.
removeAllSortSpecs()DataSourceTableQuita todas las especificaciones de ordenamiento de la tabla de la fuente de datos.
setRowLimit(rowLimit)DataSourceTableActualiza el límite de filas de la tabla de la fuente de datos.
syncAllColumns()DataSourceTableSincroniza todas las columnas actuales y futuras de la fuente de datos asociada con la tabla de la fuente de datos.
waitForCompletion(timeoutInSeconds)DataExecutionStatusEspera hasta que se complete la ejecución actual y se agote el tiempo de espera después de la cantidad de segundos proporcionada.

Documentación detallada

addColumns(columnNames)

Agrega columnas a la tabla de la fuente de datos.

Parámetros

NombreTipoDescripción
columnNamesString[]Es la lista de los nombres de las columnas que se agregarán.

Volver

DataSourceTable: Es la tabla de la fuente de datos para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:

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

addFilter(columnName, filterCriteria)

Agrega un filtro aplicado a la tabla de la fuente de datos.

Parámetros

NombreTipoDescripción
columnNameStringEs el nombre de la columna a la que se aplicará este filtro.
filterCriteriaFilterCriteriaLos criterios de filtro que se aplicarán.

Volver

DataSourceTable: Es la tabla de la fuente de datos para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:

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

addSortSpec(columnName, ascending)

Agrega una especificación de orden a una columna en la tabla de la fuente de datos.

Parámetros

NombreTipoDescripción
columnNameStringEs el nombre de la columna que se ordenará.
ascendingBooleanSi es true, ordena la columna de forma ascendente. Si es false, ordena la columna de forma descendente.

Volver

DataSourceTable: Es la hoja de la fuente de datos para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:

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

addSortSpec(columnName, sortOrder)

Agrega una especificación de orden a una columna en la tabla de la fuente de datos.

Parámetros

NombreTipoDescripción
columnNameStringEs el nombre de la columna que se ordenará.
sortOrderSortOrderEs el orden de clasificación.

Volver

DataSourceTable: Es la hoja de la fuente de datos para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:

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

cancelDataRefresh()

Cancela la actualización de datos asociada con este objeto si se está ejecutando.

En este ejemplo, se muestra cómo cancelar una actualización de fórmula.

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

Genera una excepción si el tipo de fuente de datos no está habilitado. Usa métodos SpreadsheetApp#enable...Execution() para habilitar la ejecución de datos para un tipo de fuente de datos específico.

Volver

DataSourceTable: Es el objeto de datos.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:

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

forceRefreshData()

Actualiza los datos de este objeto independientemente del estado actual. Consulta refreshData() para obtener más detalles. Si quieres cancelar una actualización de este objeto que se está ejecutando, consulta cancelDataRefresh().

Genera una excepción si el tipo de fuente de datos no está habilitado. Usa métodos SpreadsheetApp#enable...Execution() para habilitar la ejecución de datos para un tipo de fuente de datos específico.

Volver

DataSourceTable: Es el objeto de datos.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:

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

getColumns()

Obtiene todas las columnas de la fuente de datos que se agregaron a la tabla de la fuente de datos.

Volver

DataSourceTableColumn[]: Es una lista de columnas de la tabla de la fuente de datos.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:

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

getDataSource()

Obtiene la fuente de datos a la que está vinculado el objeto.

Volver

DataSource: Es la fuente de datos.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:

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

getFilters()

Muestra todos los filtros aplicados a la tabla de la fuente de datos.

Volver

DataSourceTableFilter[]: Es un array de todos los filtros aplicados a la tabla de la fuente de datos.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:

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

getRange()

Obtiene el Range que abarca esta tabla de fuente de datos.

Volver

Range: Es el rango.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:

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

getRowLimit()

Devuelve el límite de filas de la tabla de la fuente de datos.

Volver

Integer: Es el límite de filas de la tabla de la fuente de datos o null si no se establece un límite y la tabla usa el límite máximo predeterminado como en la IU de Hojas de cálculo de Google.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:

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

getSortSpecs()

Obtiene todas las especificaciones de ordenamiento en la tabla de la fuente de datos.

Volver

SortSpec[]: Es una lista de especificaciones de orden.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:

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

getStatus()

Obtiene el estado de ejecución de datos del objeto.

Volver

DataExecutionStatus: Es el estado de ejecución de los datos.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:

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

isSyncingAllColumns()

Muestra si la tabla de la fuente de datos sincroniza todas las columnas de la fuente de datos asociada.

Volver

Boolean: Es True si la tabla de la fuente de datos sincroniza todas las columnas de la fuente de datos asociada, o false de lo contrario.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:

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

refreshData()

Actualiza los datos del objeto.

Lanza una excepción si se encuentra en el estado error. Usa DataSource#updateSpec() para actualizar la especificación. Se prefiere el método a forceRefreshData() para evitar ediciones inesperadas en la fuente de datos.

Genera una excepción si el tipo de fuente de datos no está habilitado. Usa métodos SpreadsheetApp#enable...Execution() para habilitar la ejecución de datos para un tipo de fuente de datos específico.

Volver

DataSourceTable: Es el objeto de datos.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:

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

removeAllColumns()

Quita todas las columnas de la tabla de la fuente de datos.

Volver

DataSourceTable: Es la tabla de la fuente de datos para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:

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

removeAllSortSpecs()

Quita todas las especificaciones de ordenamiento de la tabla de la fuente de datos.

Volver

DataSourceTable: Es la hoja de la fuente de datos para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:

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

setRowLimit(rowLimit)

Actualiza el límite de filas de la tabla de la fuente de datos. Si el límite de filas proporcionado es null, actualiza la tabla de la fuente de datos para usar el límite máximo de filas predeterminado, como en la IU de Hojas de cálculo de Google.

Parámetros

NombreTipoDescripción
rowLimitIntegerEs el nuevo límite de filas para la tabla de datos. Si es null, actualiza la tabla para usar el límite de filas predeterminado.

Volver

DataSourceTable: Es la tabla de la fuente de datos para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:

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

syncAllColumns()

Sincroniza todas las columnas actuales y futuras de la fuente de datos asociada con la tabla de la fuente de datos.

Volver

DataSourceTable: Es la tabla de la fuente de datos para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:

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

waitForCompletion(timeoutInSeconds)

Espera hasta que se complete la ejecución actual y se agote el tiempo de espera después de la cantidad de segundos proporcionada. Arroja una excepción si la ejecución no se completa cuando se agota el tiempo de espera, pero no cancela la ejecución de datos.

Parámetros

NombreTipoDescripción
timeoutInSecondsIntegerEs el tiempo que se debe esperar para la ejecución de datos, en segundos. El máximo es de 300 segundos.

Volver

DataExecutionStatus: Es el estado de ejecución de los datos.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:

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