assignSelection(dim: PP.Mb.DimSource, args: Object, callback: Function | PP.Delegate, errorCallback: Function | PP.Delegate);
dim. Справочник;
args. Аргументы операции. Объект должен содержать следующие поля: selId - моникёр отметки; assignOdId - моникёр импортируемой отметки; append - признак добавления отметки к уже имеющейся, если для аргумента установлено значение true, то отметка будет добавлена к уже имеющейся; keepGroup - признак сохранения установленных групп элементов, если для аргумента установлено значение true, то установленные группы будут сохранены; keepSchema - признак сохранения установленных схем элементов, если для аргумента установлено значение true, то установленные схемы будут сохранены; applyTransform - признак выполнения преобразований элементов, если для аргумента установлено значение true, то преобразования элементов будут выполнены; fireEvent - признак вызова события DimSrv.SelectionChanged, если для аргумента установлено значение true, то событие будет вызвано;
callback. Функция обратного вызова;
errorCallback. Функция обратного вызова при ошибке.
Метод assignSelection отмечает элементы справочника по указанному моникёру.
Для выполнения примера необходимо наличие объекта класса DimSrv с наименованием «dimService» (см. «Конструктор DimSrv»). Установим отметку всем дочерним элементам у элемента с ключом «YEARS:2000» и получим наименования всех отмеченных элементов:
// Добавляем обработчик события изменения отметки элементов dimService.SelectionChanged.add(function(sender, args) { console.log("Изменилась отметка элементов"); }); // Устанавливаем отметку всем дочерним элементам у элемента с ключом «YEARS:2000» var args = { keys: ["YEARS:2000"], selCommand: PP.Mb.SelCommands.Select, dmElRelative: PP.Mb.DmElRelative.Children }; dimService.selectByKeys(dim, args); // Получаем наименования всех отмеченных элементов справочника var func = function(sender, args) { var res = JSON.parse(args.ResponseText); var elems = res.GetDimElementsResult.els.e; console.log("Наименования отмеченных элементов:"); for (var i in elems) { console.log(elems[i].n); } } dimService.getAllSelectedEls(dim, func);
В результате выполнения примера в консоль были выведены наименования всех отмеченных элементов:
Наименования отмеченных элементов:
I квартал 2000
II квартал 2000
III квартал 2000
IV квартал 2000
Теперь программно откроем копию измерения и перенесём отметку из первого измерения:
// Создаём копию измерения var dim2 = dim.clone(); // Переносим отметку из первого справочника var args = { assignOdId: dim.getOdId(), append: true } dimService.assignSelection(dim2, args); // Получаем наименования всех отмеченных элементов нового справочника var func = function(sender, args) { var res = JSON.parse(args.ResponseText); var elems = res.GetDimElementsResult.els.e; console.log("Наименования отмеченных элементов нового справочника:"); for (var i in elems) { console.log(elems[i].n); } } dimService.getAllSelectedEls(dim2, func);
В результате в консоль будут выведены наименования отмеченных элементов нового справочника:
Наименования отмеченных элементов нового справочника:
I квартал 2000
II квартал 2000
III квартал 2000
IV квартал 2000
См. также: