Class DataSourceSpecBuilder

DataSourceSpecBuilder

O builder de DataSourceSpec. Para criar uma especificação para um determinado tipo, use o método as...(). Para criar um builder, use SpreadsheetApp.newDataSourceSpec(). Para usar a especificação, consulte DataSourceTable.

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

Este exemplo mostra como criar uma especificação de fonte de dados do BigQuery.

const spec = SpreadsheetApp.newDataSourceSpec()
                 .asBigQuery()
                 .setProjectId('big_query_project')
                 .setRawQuery('select @FIELD from table limit @LIMIT')
                 .setParameterFromCell('FIELD', 'Sheet1!A1')
                 .setParameterFromCell('LIMIT', 'namedRangeCell')
                 .build();

Este exemplo mostra como criar uma especificação de fonte de dados do Looker. Ele retorna um objeto LookerDataSourceSpec depois de usar build().

const spec = SpreadsheetApp.newDataSourceSpec()
                 .asLooker()
                 .setInstanceUrl('https://looker_instance_url.com')
                 .setModelName('model_name')
                 .setExploreName('explore_name')
                 .build();

Métodos

MétodoTipo de retornoBreve descrição
asBigQuery()BigQueryDataSourceSpecBuilderRetorna o builder da fonte de dados do BigQuery.
asLooker()LookerDataSourceSpecBuilderRecebe o builder da origem de dados do Looker.
build()DataSourceSpecCria uma especificação de fonte de dados com base nas configurações deste criador.
copy()DataSourceSpecBuilderCria uma DataSourceSpecBuilder com base nas configurações da fonte de dados.
getParameters()DataSourceParameter[]Recebe os parâmetros da fonte de dados.
getType()DataSourceTypeRecebe o tipo da fonte de dados.
removeAllParameters()DataSourceSpecBuilderRemove todos os parâmetros.
removeParameter(parameterName)DataSourceSpecBuilderRemove o parâmetro especificado.
setParameterFromCell(parameterName, sourceCell)DataSourceSpecBuilderAdiciona um parâmetro ou, se o parâmetro com o nome existir, atualiza a célula de origem para construtores de especificação de origem de dados do tipo DataSourceType.BIGQUERY.

Documentação detalhada

asBigQuery()

Retorna o builder da fonte de dados do BigQuery.

Retornar

BigQueryDataSourceSpecBuilder: o criador de especificações de origem de dados do BigQuery.


asLooker()

Recebe o builder da origem de dados do Looker.

const spec = SpreadsheetApp.newDataSourceSpec()
                 .asLooker()
                 .setInstanceUrl('https://looker_instance_url.com')
                 .setModelName('model_name')
                 .setExploreName('explore_name')
                 .build();

Retornar

LookerDataSourceSpecBuilder: o criador de especificação de fonte de dados do Looker.


build()

Cria uma especificação de fonte de dados com base nas configurações deste criador. É necessário usar as...() para especificar um tipo de fonte de dados antes da criação.

O exemplo de código a seguir cria uma especificação de fonte de dados do BigQuery.

const bigQueryDataSourceSpec = SpreadsheetApp.newDataSourceSpec().asBigQuery();
// TODO(developer): Replace with the required dataset, project and table IDs.
bigQueryDataSourceSpec.setDatasetId('my data set id');
bigQueryDataSourceSpec.setProjectId('my project id');
bigQueryDataSourceSpec.setTableId('my table id');

bigQueryDataSourceSpec.build();

O exemplo de código a seguir cria uma especificação de fonte de dados do Looker.

const lookerDataSourceSpecBuilder =
    SpreadsheetApp.newDataSourceSpec().asLooker();
const lookerSpec = lookerDataSourceSpecBuilder.setExploreName('my explore name')
                       .setInstanceUrl('my instance url')
                       .setModelName('my model name')
                       .build();

Retornar

DataSourceSpec: a especificação da fonte de dados.


copy()

Cria uma DataSourceSpecBuilder com base nas configurações da fonte de dados.

// TODO(developer): Replace the URL with your own.
const ss = SpreadsheetApp.openByUrl(
    'https://docs.google.com/spreadsheets/d/abc123456/edit',
);
const spec = ss.getDataSources()[0].getSpec();

const newSpec = spec.copy();

Retornar

DataSourceSpecBuilder: o builder.


getParameters()

Recebe os parâmetros da fonte de dados.

// TODO(developer): Replace the URL with your own.
const ss = SpreadsheetApp.openByUrl(
    'https://docs.google.com/spreadsheets/d/abc123456/edit',
);
const spec = ss.getDataSources()[0].getSpec();
const parameters = spec.getParameters();

Esse método está disponível apenas para fontes de dados do BigQuery.

Retornar

DataSourceParameter[]: a lista de parâmetros.


getType()

Recebe o tipo da fonte de dados.

// TODO(developer): Replace the URL with your own.
const ss = SpreadsheetApp.openByUrl(
    'https://docs.google.com/spreadsheets/d/abc123456/edit',
);
const spec = ss.getDataSources()[0].getSpec();
const type = spec.getType();

Retornar

DataSourceType: o tipo de origem de dados.


removeAllParameters()

Remove todos os parâmetros.

const specBuilder = SpreadsheetApp.newDataSourceSpec();
specBuilder.removeAllParameters();

Retornar

DataSourceSpecBuilder: o builder para encadeamento.


removeParameter(parameterName)

Remove o parâmetro especificado.

const specBuilder = SpreadsheetApp.newDataSourceSpec();
specBuilder.removeParameter('x');

Parâmetros

NomeTipoDescrição
parameterNameStringO nome do parâmetro a ser removido.

Retornar

DataSourceSpecBuilder: o builder para encadeamento.


setParameterFromCell(parameterName, sourceCell)

Adiciona um parâmetro ou, se o parâmetro com o nome existir, atualiza a célula de origem para construtores de especificação de origem de dados do tipo DataSourceType.BIGQUERY.

Esse método está disponível apenas para fontes de dados do BigQuery.

const specBuilder = SpreadsheetApp.newDataSourceSpec().asBigQuery();
specBuilder.setParameterFromCell('x', 'A1');
const bigQuerySpec = specBuilder.build();

Parâmetros

NomeTipoDescrição
parameterNameStringO nome do parâmetro.
sourceCellStringA célula de origem, conforme especificada na notação A1.

Retornar

DataSourceSpecBuilder: o builder para encadeamento.