Перейти к содержанию

DataSource#

DataSource - компонента, которая содержит описание источника данных Pivotа.

Для задания источника данных нужно добавить тег DataSource в тег Pivot в разметке формы или вызвать метод setDataSource у экземпляра Pivot.

Для работы со свойствами и методами компоненты DataSource нужно получить ее экземпляр, вызвав метод getDataSource у экземпляра Pivot.

В качестве источника данных может выступать OLAP-куб (тип источника xmla), либо предоставленные программистом данные с помощью callbackа loader (тип источника custom).

Свойства#

Все свойства доступны только для чтения. Для изменения свойств необходимо перезадать источник данных с помощью метода setDataSource.

catalog#

тип значение по умолчанию допустимые значения
string -

Указывает базу данных (или начальный каталог) olap-куба (только для источника данных типа xmla)

cube#

тип значение по умолчанию допустимые значения
string -

Задает имя olap-куба (только для источника данных типа xmla)

retrieveFields#

тип значение по умолчанию допустимые значения
bool true true/false

Указывает, следует ли автоматически генерировать поля по источнику данных

type#

тип значение по умолчанию допустимые значения
string - xmla, custom

Тип источника данных

url#

тип значение по умолчанию допустимые значения
string - xmla, custom

Задает URL-адрес MSMDPUMP.dll в формате http://serverName:port/OLAP/msmdpump.dll (только для источника данных типа xmla)

Методы#

collapseAll(id)#

Сворачивает все элементы заголовка поля

  • id - идентификатор, в качестве которого может выступать name, dataField или caption поля
  • collapseHeaderItem(area, path) - сворачивает определенный элемент заголовка
  • area - область, к которой относится элемент ('row', 'column')
  • path - массив, содержащий набор ключей до этого элемента. В качестве ключа выступает свойство key элемента, полученного с помощью метода getData

expandAll(id)#

Раскрывает все элементы заголовка поля

  • id - идентификатор, в качестве которого может выступать name, dataField или caption поля

expandHeaderItem(area, path)#

Раскрывает определенный элемент заголовка

  • area - область, к которой относится элемент ('row', 'column')
  • path - массив, содержащий набор ключей до этого элемента. В качестве ключа выступает свойство key элемента, полученного с помощью метода getData

getAreaFields(area, collectGroups)#

Возвращает описание всех полей в области

  • area - область ('row', 'column')
  • collectGroups - флаг отображения группированных полей в виде одной записи (по умолчанию false)

getField(id)#

Возвращает описание поля

  • id - идентификатор, в качестве которого может выступать name, dataField или caption поля

getFields()#

Возвращает описание всех полей

getFilter()#

Возвращает условия фильтрации (только для источника данных типа custom)

getData()#

Возвращает загруженные данные

getInitialOptions()#

Возвращает объект опций источника данных

getState()#

Возвращает текущее состояние

isLoading()#

Возвращает флаг, загружаются ли данные

load()#

Начинает загрузку данных, возвращает Promise

reload()#

Очищает загруженные данные и вызывает метод load, возвращает Promise

setField(id, options)#

Обновляет значения свойств поля. Для обновления контрола нужно вызвать метод load()

  • id - идентификатор, в качестве которого может выступать name, dataField или caption поля
  • options - описание поля с помощью свойств

setFields(fields)#

Задает новую коллекцию полей. Для обновления контрола нужно вызвать метод load()

  • fields - массив объектов, каждый из которых описан с помощью свойств

setFilter(exp)#

Устанавливает фильтр (только для источника данных типа custom). Для обновления контрола нужно вызвать метод load()

setState(state)#

Устанавливает состояние - state - объект состояния, возвращаемый методом getState, или null или {} для сброса в состояние при инициализации

Объект опций#

Содержит описание параметров подключения и полей:

  • beforeSend - сallback
  • catalog - свойство catalog
  • cube - свойство cube
  • fields - массив объектов, содержащих описания Fieldurl на момент инициализации источника данных
  • filter - filter
  • loader - loader
  • retrieveFields - свойство retrieveFields
  • type - свойство typetype
  • url - свойство url

Callbacks#

beforeSend(e)#

Используется для настройки запроса перед его отправкой на сервер (только для источника данных типа xmla), где объект параметров запроса e содержит

  • url - URL запроса
  • method - метод запроса ("GET", "POST", "PATCH", "MERGE")
  • headers - заголовки запроса
  • xhrFields - собственные свойства объекта XMLHttpRequest
  • data - строка запроса
  • dataType - тип данных ожидаемого результата

filter()#

Используется для настройки фильтрации данных (только для источника данных типа custom). Должен возвращать условия фильтрации в виде массива.

loader()#

Используется для настройки загрузчика данных (только для источника данных типа custom). Должен возвращать данные в виде массива или объекта Promise.

События#

changed(s)#

Возникает после успешной загрузки данных, где

параметр тип описание
s DataSource ссылка на экземпляр DataSource

fieldsPrepared(s, e)#

Возникает, когда все поля загружены из источника данных и готовы к отображению, где

параметр тип описание
s Pivot ссылка на экземпляр DataSource
e object объект параметров события
e.args object аргументы события
e.args.fields конфигурации всех полей

loadFailed(s, e)#

Возникает при сбое загрузки данных, где

параметр тип описание
s Pivot ссылка на экземпляр DataSource
e object объект параметров события
e.args object аргументы события
e.args.error объект ошибки

loadingChanged(s, e)#

Возникает при изменении статуса загрузки данных, где

параметр тип описание
s Pivot ссылка на экземпляр DataSource
e object объект параметров события
e.args object аргументы события
e.args.isLoading индикатор, загружаются ли данные

Fields#