new DataSource(definition [, opt_options])
Classe responsável pela execução e manipulação de Fontes de Dados (por exemplo, scripts .ids).
Parameters:
Name | Type | Argument | Description |
---|---|---|---|
definition |
DataSourceDef | Record.<*, *> | number | Chave da configuração da consulta de DataSource ou objeto literal contendo as mesmas propriedades definidas na iVFS e capturadas através da chave. |
|
opt_options |
Record.<*, *> |
<optional> |
Objeto literal com opções de configuração do DataSource. |
- See:
-
- DataSourceDef
Example
var options = { specializedFilters: [ //Especializa a importação dos filtros {classKey: -2007889000, prefix: 'PES'} ], specializedColumns: [ //Especializa a importação das colunas {classKey: -2007889000, prefix: 'PES'} ] }; new DataSource(-2007890000, dtsOptions);
Members
-
<static> ColumnOps :string
-
Operadores para colunas de Datasource.
Type:
- string
Properties:
Name Type Default Description DIMENSION
string ! DERIVATION
string . -
columns :DataSourceColumns
-
Coleção das colunas disponíveis dos dados retornados.
Type:
- DataSourceColumns
-
filters :DataSourceFilters
-
Coleção dos filtros disponíveis para a consulta dos dados.
Type:
- DataSourceFilters
-
help :string
-
Ajuda para o usuário final que deve explicar o propósito das informações retornadas por esta fonte de dados e deve orientar o usuário quanto ao seu uso.
Type:
- string
-
key :number
-
Obtém a chave do arquivo da Virtual File System que define esta fonte de dados.
Type:
- number
-
public :boolean
-
Indica se a definição da fonte de dados é pública. Se a está propriedade for declarada como "true" outros sistemas poderão utilizá-la via API HTTP. Optar por tornar uma fonte de dados pública é perigoso quando DataSourceDef#onGetQuery da definição da fonte de dados retorna uma consulta sql pois, não serão testadas as permissões do usuário. No caso, recomenda-se definir como retorno, uma instância de IQuery em DataSourceDef#onGetQuery.
Type:
- boolean
-
url :string
-
Obtém a URL do arquivo que define esta fonte de dados.
Type:
- string
Methods
-
<static> list()
-
Lista todos os DataSources existentes na base.
Returns:
DataSet com a chave, nome e url das fontes de dados existentes na base de dados.
- Type
- DataSet
-
<static> loadDefinitionFile(fileId)
-
Retorna o objeto contendo a definição declarada no arquivo informado. A definição pode ser realizada por meio de um objeto literal ou de um script JavaScript que deixa a definição na pilha de execução.
Esta função pode ser utilizada para carregar a definição de qualquer componente da API de fontes de dados, como o próprio DataSource, o DataSourceQuery e o DataSourceVisualization.Parameters:
Name Type Description fileId
number | string Chave ou caminho na UFS do arquivo contendo a definição a ser instanciada.
Returns:
Objeto contendo a definição declarada no arquivo.
- Type
- Object
-
convertColumns_(columns)
-
Converte as colunas do formato objeto literal para o formato nativo do DataSource.
Parameters:
Name Type Description columns
Array Colunas JSON
Returns:
Lista de colunas no formato nativo do DataSource @private
- Type
- DataSourceColumns
-
createColumns(jsonColumns)
-
Cria o objeto de colunas.
Parameters:
Name Type Description jsonColumns
Array.<DataSourceColumnDef> | Array.<Object> Colunas no formato JSON que serão processadas para gerar o objeto de colunas.
-
createFilters(jsonFilters)
-
Cria o objeto de filtros.
Parameters:
Name Type Description jsonFilters
Array.<DataSourceFilterDef> | Array.<Object> Filtros no formato JSON que serão processados para gerar o objeto de filtros.
Returns:
- Type
- DataSourceFilters
-
createFiltersFromMap(filtersMap)
-
Deriva filtros a partir de um array de objetos com chave e valor, onde a chave deverá ser o nome do filtro e o valor deve ser correspondente ao valor do filtro.
Parameters:
Name Type Description filtersMap
Object.<string, *> Mapa que representa os filtros que serão utilizados na fonte de dados.
Returns:
Coleção dos filtros criados a partir do mapa.
- Type
- DataSourceFilters
-
getDataSet(filters, columns)
-
Obtém uma seleção de registros desta fonte de dados. Serão retornadas as informações referenciadas pelas colunas informadas em columns dos registros que satisfaçam os filtros informados em filters.
Parameters:
Name Type Description filters
DataSourceFilters Coleção dos filtros que determinam quais registros devem ser retornados.
columns
DataSourceColumns Coleção das colunas quem devem ser retornadas.
Returns:
DataSet contendo os registros que satisfazem os filtros informados.
- Type
- DataSet
-
getQuery(filters, columns)
-
Retorna o comando SQL responsável por gerar o DataSet do DataSource.
Para gerar o comando SQL será necessário informar uma coleção de filtros e colunas.Parameters:
Name Type Description filters
DataSourceFilters Coleção de filtros usado para gerar o SQL o DataSource.
columns
DataSourceColumns Coleção de colunas que deverão ser geradas no DataSet gerado pelo DataSource.
Returns:
Comando SQL gerado pelo DataSource.
- Type
- string
Example
var DataSource = require('@nginstack/datasource/lib/DataSource'); var dts = new DataSource(-1898142161); var filters = dts.createFilters([{name: "LOG_IKEY", value: -1}]) var columns = dts.createColumns([{name: "LOG_IKEY"}]) var ds = dts.getQuery(filters, columns)
-
getResult(filters, columns)
-
Retorna uma representação de um resultado DataSourceResult especializado para uma consulta de uma fonte de dados.
Parameters:
Name Type Description filters
Array.<DataSourceFilterDef> | Array.<Object> Definições de filtro em formato JSON que serão transformados para o objeto de filtros de uma fonte de dados com a finalidade de restringir a consulta dos dados realizada pela API de fontes de dados.
columns
Array.<DataSourceColumnDef> | Array.<Object> Definições de colunas em formato de JSON que serão transformadas para o objeto de colunas de fonte de dados com a finalidade de projetar as colunas que irão fazer parte do resultado do consumo de uma fonte de dados.
Returns:
Resultado especializado.
- Type
- DataSourceResult
-
mountDataSet(ds)
-
Executa a função onMountDataSet, caso ela esteja definida no DataSource.
Parameters:
Name Type Description ds
DataSet O dataSet utilizado pelo dataSource na montagem do retorno.
Returns:
Novo dataset gerado com a regra de negócio definida na função onMountDataSet.
- Type
- DataSet
-
purgeUnsolicitedColumns(ds, columns)
-
Remove as colunas inseridas pela fonte de dados que não foram solicitadas em columns.
Parameters:
Name Type Description ds
DataSet DataSet que terá removidas as colunas não definidas em columns.
columns
DataSourceColumns Colunas solicitadas.
Returns:
DataSet sem as colunas não solicitadas.
- Type
- DataSet
-
<inner> fillSourceColumns(columnDef)
-
Preenche as colunas com as definições.
This:
- bdo.database.DataSource
Parameters:
Name Type Description columnDef
DataSourceColumnDef Definição da coluna
-
<inner> fillSourceFilters(filterDef)
-
Preenche os filtros com as definições.
This:
- bdo.database.DataSource
Parameters:
Name Type Description filterDef
DataSourceColumnDef Definição dos filtros