setCalendarPeriod(dim: PP.Mb.DimSource, args: Object, callback: Function|PP.Delegate, errorCallback: Function|PP.Delegate);
dim. Справочник;
args. Аргументы операции. Объект должен содержать следующие поля: calendarLevel - устанавливаемый календарный период;
callback. Функция обратного вызова;
errorCallback. Функция обратного вызова при ошибке.
Метод setCalendarPeriod устанавливает календарный период для справочника.
Для выполнения примера предполагается наличие на html-странице компонента DimTree с наименованием «dimTree», источником которого является справочник «dim» (см. «Пример создания компонента DimTree»). Определим временной промежуток, охватываемый элементами справочника, используя разные календарные периоды:
// Создаём сервис для работы со справочниками var dimService = new PP.Mb.DimSrv({ Metabase: mb }); function setCalendarPeriod(period) { var args = { calendarLevel: period }; var readyCallback = function(sender, args) { // Прочитаем ответ сервера var res = JSON.parse(args.ResponseText); var firstSelected = PP.getProperty(res, "ChangeDimSelectionResult.selectionInfo.firstSelected"); var lastSelected = PP.getProperty(res, "ChangeDimSelectionResult.selectionInfo.lastSelected"); if(firstSelected && lastSelected) { console.log("%s - %s", firstSelected.n, lastSelected.n); } }; var errorCallback = function(sender, args) { console.log("Ошибка при установке календарного периода"); }; // Устанавливаем указанный календарный период для справочника dimService.setCalendarPeriod(dim, args, readyCallback, errorCallback); }; setCalendarPeriod("Month"); // Календарный период - месяц setCalendarPeriod("Quarter"); // Квартал setCalendarPeriod("Year"); // Год
В результате выполнения примера в консоли браузера был выведен временной промежуток, охватывающий все элементы справочника, в разных календарных периодах: месяц, квартал, год:
янв 1990 - дек 2005
I квартал 1990 - IV квартал 2005
1990 - 2005
См. также: