pinSeries (wbk, series, callback);
wbk. Sets workbook value.
series. Sets series.
callback. Sets handler for operation execution end.
The pinSeries method pins series.
To execute the example, the page must contain the WorkbookBox component named workbookBox (see Example of Creating the WorkbookBox Component), and the workbook must contain a calculated series. In the document opening event handler add the following code:
//Create an indicator to be used to determine whether there are blocked series in workbook var someSerieIsPinnedFlag; //Variable used to store array of selected series var selSeries; //Button, clicking which blocks or unblocks the selected series var pinSerieButton = new PP.Ui.Button({ ParentNode: document.body, //DOM parent node Content: "Block Series", //Text Click: PP.Delegate(onClickPinSerie) }); //Block Series button click event function onClickPinSerie() { //Create an object containing a series for blocking or unblocking var series = {}; series.its = {}; series.its.it = []; //Create an object containing a series for blocking var pinnedSerie = { id: "", k: PP.Mb.UINT32MAXVALUE }; if (selSeries && selSeries.length > 0) { var selSerie = undefined; //Depending on whether there are blocked series in workbook, create an object passed to the //pinSeries method as a parameter if (!someSerieIsPinnedFlag) { selSerie = selSeries[0]; pinnedSerie.id = selSerie.id; pinnedSerie.k = selSerie.k; } else { for (var i = 0; i < selSeries.length; i++) { series.its.it.push({ k: selSeries[i].k, id: selSeries[i].id, kind: selSeries[i].kind }); } } } series.pinned = pinnedSerie; //Set blocking in workbook wbk.getActiveSheet().setPinned(pinnedSerie.k != PP.Mb.UINT32MAXVALUE ? pinnedSerie : undefined); //Block the selected series tsService.pinSeries(wbk.getActiveSheet(), series, PP.Delegate(onResponse)) } //pinSeries method execution end event handler function onResponse() { //Refresh entore component for displaying workbook workbookBox.refreshAll(); } //Repository interaction end handler. Used to set availability of the //"Block Series" button depending on whether it is available to block the selected series and set whether //there are blocked series in workbook metabase.EndRequest.add(PP.Delegate(function(){ selSeries = wbk.getActiveSheet().getSelectedSeries(); if (selSeries.length == 1 && selSeries[0].calc && selSeries[0].calc.formula) { pinSerieButton.setEnabled(True); } else { pinSerieButton.setEnabled(False); } someSerieIsPinnedFlag = (wbk.getActiveSheet().getPinned() ? true : false); }));
After executing the example the Block Series button is placed in the HTML page. Select a calculated series and click the Block Series button. After that the selected series is blocked.
See also: