compressRevision (wbk, metaData, callback);
wbk. Задает значение рабочей книги;
metaData. Задает метаданные с информацией о ревизиях и каталоге показателей;
callback. Задает обработчик окончания выполнения операции.
Метод compressRevision сжимает ревизии.
Для выполнения примера предполагается наличие на странице компонента WorkbookBox с наименованием «workbookBox» (см. «Пример создания компонента WorkbookBox»), также необходимо в обработчике события открытия документа добавить следующий код:
var compressRevisionButt = new PP.Ui.Button({
ParentNode: document.body, //родительский узел DOM
Content: "Сжать ревизию", //подпись
Click: PP.Delegate(onClickCallback)
});
function onClickCallback()
{
var rubKey = wbk.getActiveSheet().getRub().meta.obInst.obDesc.k;
var wbkPB = workbookBox.getPropertyBarView();
var panels = wbkPB._selfNavItems;
var revisionsPanel = null;
var i;
//Получаем панель ревизий базы данных временных рядов
for (i = 0; i < panels.length; i++)
{
if (panels[i]._GroupName == PP.TS.Ui.PropertyGroups.RubricatorRevisions && panels[i].getTag() == rubKey)
{
revisionsPanel = wbkPB._selfNavItems[i];
break;
}
}
//Получаем выбранный элемент списка ревизий
var sitem = revisionsPanel._RevisionsListBox.getSelectedItem();
if (!sitem)
return;
//Получаем ключ выбранной ревизии
var revKey = sitem.getId();
if (!revisionsPanel.getRubKey())
throw PP.ArgumentException(revisionsPanel);
//Создаем объект, содержащий данные о ревизии, которая будет сжата
var metadata = {
RubKey: revisionsPanel.getRubKey(),
Operation: PP.TS.Ui.WbkRevisionOperation.Compress,
RevKey: revKey,
SaveLabels: false,
OldestRevKey: revisionsPanel._OldestRevision.k.toString()
}
//Сжимаем ревизии
tsService.compressRevision(wbk, metadata, PP.Delegate(onResponse));
function onResponse(sender, args)
{
//Получаем список ревизий в полученном ответе сервера
var res = JSON.parse(args.ResponseText);
var revs = res.GetRubMdResult.meta.revisions.its.it;
//Устанавливаем новый список ревизий в панели ревизий
revisionsPanel.setRevisions(revs);
}
}
После выполнения примера на html-странице будет размещена кнопка с наименованием «Сжать ревизию». Необходимо на вкладке панели свойств «Данные» раскрыть панель с наименованием, соответствующим имени базы данных временных рядов. Затем в списке ревизий необходимо выбрать одну из доступных и нажать на кнопку «Сжать ревизию». После этого ревизии будут сжаты и все метки кроме выбранной удалятся. Если панель ревизий пуста, необходимо добавить ревизии, нажав на кнопку «Новая метка».
См. также: