Class DataSourceTable

Sourcede donnéesTable

Accéder à une table de source de données existante et la modifier Pour créer un tableau de source de données dans une nouvelle feuille, utilisez Spreadsheet.insertSheetWithDataSourceTable(spec).

N'utilisez cette classe qu'avec des sources de données BigQuery.

Cet exemple montre comment créer un tableau de source de données.

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

Cet exemple montre comment modifier une source de données.

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éthodes

MéthodeType renvoyéBrève description
addColumns(columnNames)DataSourceTableAjoute des colonnes à la table de la source de données.
addFilter(columnName, filterCriteria)DataSourceTableAjoute un filtre appliqué à la table de la source de données.
addSortSpec(columnName, ascending)DataSourceTableAjoute une spécification de tri à une colonne de la table de la source de données.
addSortSpec(columnName, sortOrder)DataSourceTableAjoute une spécification de tri à une colonne de la table de la source de données.
cancelDataRefresh()DataSourceTableAnnule l'actualisation des données associée à cet objet si elle est en cours.
forceRefreshData()DataSourceTableActualise les données de cet objet, quel que soit l'état actuel.
getColumns()DataSourceTableColumn[]Récupère toutes les colonnes de la source de données ajoutées à la table de la source de données.
getDataSource()DataSourceObtient la source de données à laquelle l'objet est associé.
getFilters()DataSourceTableFilter[]Renvoie tous les filtres appliqués à la table de la source de données.
getRange()RangeRécupère l'Range sur lequel s'étend cette table de source de données.
getRowLimit()IntegerRenvoie la limite de lignes pour la table de la source de données.
getSortSpecs()SortSpec[]Récupère toutes les spécifications de tri dans le tableau de la source de données.
getStatus()DataExecutionStatusRécupère l'état d'exécution des données de l'objet.
isSyncingAllColumns()BooleanIndique si la table de la source de données synchronise toutes les colonnes de la source de données associée.
refreshData()DataSourceTableActualise les données de l'objet.
removeAllColumns()DataSourceTableSupprime toutes les colonnes de la table de la source de données.
removeAllSortSpecs()DataSourceTableSupprime toutes les spécifications de tri de la table de la source de données.
setRowLimit(rowLimit)DataSourceTableMet à jour la limite de lignes pour la table de la source de données.
syncAllColumns()DataSourceTableSynchronisez toutes les colonnes actuelles et futures de la source de données associée avec la table de la source de données.
waitForCompletion(timeoutInSeconds)DataExecutionStatusAttend la fin de l'exécution en cours, avec un délai d'inactivité de 30 secondes.

Documentation détaillée

addColumns(columnNames)

Ajoute des colonnes à la table de la source de données.

Paramètres

NomTypeDescription
columnNamesString[]Liste des noms des colonnes à ajouter.

Renvois

DataSourceTable : table de la source de données, pour la concaténation.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:

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

addFilter(columnName, filterCriteria)

Ajoute un filtre appliqué à la table de la source de données.

Paramètres

NomTypeDescription
columnNameStringNom de la colonne à laquelle appliquer ce filtre.
filterCriteriaFilterCriteriaCritères de filtrage à appliquer.

Renvois

DataSourceTable : table de la source de données, pour la concaténation.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:

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

addSortSpec(columnName, ascending)

Ajoute une spécification de tri à une colonne de la table de la source de données.

Paramètres

NomTypeDescription
columnNameStringNom de la colonne à trier.
ascendingBooleanSi la valeur est true, la colonne est triée par ordre croissant. Si la valeur est false, la colonne est triée par ordre décroissant.

Renvois

DataSourceTable : feuille de la source de données, pour la concaténation.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:

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

addSortSpec(columnName, sortOrder)

Ajoute une spécification de tri à une colonne de la table de la source de données.

Paramètres

NomTypeDescription
columnNameStringNom de la colonne à trier.
sortOrderSortOrderOrdre de tri.

Renvois

DataSourceTable : feuille de la source de données, pour la concaténation.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:

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

cancelDataRefresh()

Annule l'actualisation des données associée à cet objet si elle est en cours.

Cet exemple montre comment annuler l'actualisation d'une formule.

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

Génère une exception si le type de source de données n'est pas activé. Utilisez les méthodes SpreadsheetApp#enable...Execution() pour activer l'exécution des données pour un type de source de données spécifique.

Renvois

DataSourceTable : objet de données.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:

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

forceRefreshData()

Actualise les données de cet objet, quel que soit l'état actuel. Pour en savoir plus, consultez refreshData(). Si vous souhaitez annuler une actualisation en cours de cet objet, consultez cancelDataRefresh().

Génère une exception si le type de source de données n'est pas activé. Utilisez les méthodes SpreadsheetApp#enable...Execution() pour activer l'exécution des données pour un type de source de données spécifique.

Renvois

DataSourceTable : objet de données.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:

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

getColumns()

Récupère toutes les colonnes de la source de données ajoutées à la table de la source de données.

Renvois

DataSourceTableColumn[] : liste des colonnes de la table de la source de données.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:

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

getDataSource()

Obtient la source de données à laquelle l'objet est associé.

Renvois

DataSource : source de données.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:

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

getFilters()

Renvoie tous les filtres appliqués à la table de la source de données.

Renvois

DataSourceTableFilter[] : tableau de tous les filtres appliqués à la table de la source de données.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:

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

getRange()

Récupère l'Range sur lequel s'étend cette table de source de données.

Renvois

Range : plage.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:

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

getRowLimit()

Renvoie la limite de lignes pour la table de la source de données.

Renvois

Integer : limite de lignes pour la table de la source de données, ou null si aucune limite n'est définie et que la table utilise la limite maximale par défaut, comme dans l'interface utilisateur de Google Sheets.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:

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

getSortSpecs()

Récupère toutes les spécifications de tri dans le tableau de la source de données.

Renvois

SortSpec[] : liste des spécifications de tri.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:

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

getStatus()

Récupère l'état d'exécution des données de l'objet.

Renvois

DataExecutionStatus : état d'exécution des données.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:

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

isSyncingAllColumns()

Indique si la table de la source de données synchronise toutes les colonnes de la source de données associée.

Renvois

Boolean : True si la table de la source de données synchronise toutes les colonnes de la source de données associée, ou false dans le cas contraire.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:

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

refreshData()

Actualise les données de l'objet.

Génère une exception si l'état actuel est error. Utilisez DataSource#updateSpec() pour mettre à jour la spécification. La méthode est préférable à forceRefreshData() pour éviter les modifications inattendues sur la source de données.

Génère une exception si le type de source de données n'est pas activé. Utilisez les méthodes SpreadsheetApp#enable...Execution() pour activer l'exécution des données pour un type de source de données spécifique.

Renvois

DataSourceTable : objet de données.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:

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

removeAllColumns()

Supprime toutes les colonnes de la table de la source de données.

Renvois

DataSourceTable : table de la source de données, pour la concaténation.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:

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

removeAllSortSpecs()

Supprime toutes les spécifications de tri de la table de la source de données.

Renvois

DataSourceTable : feuille de la source de données, pour la concaténation.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:

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

setRowLimit(rowLimit)

Met à jour la limite de lignes pour la table de la source de données. Si la limite de lignes fournie est null, la table de la source de données est mise à jour pour utiliser la limite maximale de lignes par défaut, comme dans l'interface utilisateur de Google Sheets.

Paramètres

NomTypeDescription
rowLimitIntegerNouvelle limite de lignes pour le tableau de données. Si la valeur est null, la table utilise la limite de lignes par défaut.

Renvois

DataSourceTable : table de la source de données, pour la concaténation.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:

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

syncAllColumns()

Synchronisez toutes les colonnes actuelles et futures de la source de données associée avec la table de la source de données.

Renvois

DataSourceTable : table de la source de données, pour la concaténation.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:

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

waitForCompletion(timeoutInSeconds)

Attend la fin de l'exécution en cours, avec un délai d'inactivité de 30 secondes. Génère une exception si l'exécution n'est pas terminée au moment de l'expiration du délai, mais n'annule pas l'exécution des données.

Paramètres

NomTypeDescription
timeoutInSecondsIntegerTemps d'attente de l'exécution des données, en secondes. La valeur maximale est de 300 secondes.

Renvois

DataExecutionStatus : état d'exécution des données.

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:

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