LoginSignup
2
2

More than 1 year has passed since last update.

Cognos Analytics リストとクロス集計の枠固定JavaScript

Last updated at Posted at 2017-09-29

概要

Cognos Analyticsの完全な相互作用モードで、リストやクロス集計の枠固定(Header Freeze)を実装するJavaScriptの説明です。
001.PNG

内容

リンクだけなのですが、Youtube上に実装方法が説明された動画があります。
IBM Cognos Analytics - Custom JavaScript Controls - Freeze Columns
https://www.youtube.com/watch?v=kzStfI59Gj0

実際のJavaScriptサンプルソースは、以下のリンクから here をクリックして頂くと、ソース置き場に辿り着きます。
https://www.ibm.com/developerworks/community/blogs/b4a2eef5-e39f-45c7-8d10-29eb159a398b/entry/IBM_Cognos_Analytics_Custom_JavaScript_Controls_Freeze_Columns?lang=en

枠固定は非常に要件の多い実装なので、情報共有として投稿しておきます。

JavaScriptファイルとレポートスペック(2021/11/17追記)

前述のリンクが切れていて、ソースの取得が出来ないようなので、こちらにファイルの中身を貼っておきます。
Cognos Analytics 11.2.1でも動作する事を確認しました。

FreezeColumns.js

define(["jquery"], function ($) {
    "use strict";

    /*
    NOTES:
        Date Last Updated: 1/30/2017
        Author: Jeff Martin
        Usage: Custom control used to freeze columns when scrolling.  Designed for lists, but will work with crosstab unless there
        are nested items in the Rows drop zone.
        Here is a sample config object:
            {
                "controlName":"List1",
                "block":"Block1",
                "columnsToFreeze": 1
            }

       */

    function FreezeColumns() {
    };

    FreezeColumns.prototype.draw = function (oControlHost) {

        //variable to reference the json config
        var conf = oControlHost.configuration;
        //check for config
        if (!conf) {
            throw new scriptableReportError("FreezeColumns", "draw method", "Missing configuration.");
        }

        //We know there is a config object so we check to make sure it has the required properties.
        if (!(conf.hasOwnProperty("controlName") && conf.hasOwnProperty("block"))) {
            throw new scriptableReportError("FreezeColumns", "draw method",
                "Configuration object needs at least one property (controlName;block)");
        }

        //Config is good so we move on.
        //get control id so the wrapper is unique if contorl is used multiple times on a page.
        var uniqueId = oControlHost.page.getControlByName(conf.controlName).element.id;

        //jquery references to target control and custom control
        var control = $("#" + uniqueId);
        var container = $("#" + oControlHost.container.id);

        //get wrapper div width
        var freezeWidth =
            this.calculateWidth((!conf.columnsToFreeze ? 1 : conf.columnsToFreeze), control);

        //add div to hold our control and enable the freezing
        container.append("<div id='" + uniqueId + "freezeWrapper' style='overflow-x:hidden;background-color:white'></div>");

        //add local variables for the new divs
        var freezeDiv = $("#" + uniqueId + "freezeWrapper");

        //overlay freezeDiv on the block
        var block = oControlHost.page.getControlByName(conf.block).element.id;
        freezeDiv.offset($("#" + block).offset());

        //set width
        freezeDiv.css("width", freezeWidth);

        //clone control into the freezeDiv that has been sized and clipped
        freezeDiv.append(control.clone());

        //make sure custom control doesn't take up space
        $("[specname='customControl']").css("height", 0);

    };

    FreezeColumns.prototype.calculateWidth = function (numFields, ctrl) {

        var calculatedWidth = 0;

        for (var i = 0; i < numFields; i++) {
            calculatedWidth += ctrl.find("td").eq(i).outerWidth() + 1  /*assumes default borders*/;
        };

        return calculatedWidth;
    };

    return FreezeColumns;
});

レポートスペック

<report xmlns="http://developer.cognos.com/schemas/report/13.3/"           expressionLocale="en" useStyleVersion="11.4">

                <drillBehavior/>

                <layouts>
                    <layout>
                        <reportPages>
                            <page name="Page1"><style><defaultStyles><defaultStyle refStyle="pg"/></defaultStyles></style>
                                <pageBody><style><defaultStyles><defaultStyle refStyle="pb"/></defaultStyles><CSS value="text-align:center"/></style>
                                    <contents>

                                    <table><style><defaultStyles><defaultStyle refStyle="tb"/></defaultStyles><CSS value="border-collapse:collapse;width:100%"/></style><tableRows><tableRow><tableCells><tableCell><contents><block>
            <contents><textItem><dataSource><staticValue>List - Freeze 1 Column</staticValue></dataSource></textItem></contents>
        <style><CSS value="font-weight:bold"/></style></block><block name="Block1">
            <contents><list horizontalPagination="true" name="List1" refQuery="Query1">



            <noDataHandler>
                <contents>
                    <block>
                        <contents>
                            <textItem>
                                <dataSource>
                                    <staticValue>No Data Available</staticValue>
                                </dataSource>
                                <style>
                                    <CSS value="padding:10px 18px;"/>
                                </style>
                            </textItem>
                        </contents>
                    </block>
                </contents>
            </noDataHandler>
            <style>
                <CSS value="border-collapse:collapse;width:1000px"/>
                <defaultStyles>
                    <defaultStyle refStyle="ls"/>
                </defaultStyles>
            </style>
        <listColumns><listColumn><listColumnTitle><style><defaultStyles><defaultStyle refStyle="lt"/></defaultStyles></style><contents><textItem><dataSource><dataItemLabel refDataItem="Product line"/></dataSource></textItem></contents></listColumnTitle><listColumnBody><style><defaultStyles><defaultStyle refStyle="lc"/></defaultStyles></style><contents><textItem><dataSource><dataItemValue refDataItem="Product line"/></dataSource></textItem></contents></listColumnBody></listColumn><listColumn><listColumnTitle><style><defaultStyles><defaultStyle refStyle="lt"/></defaultStyles></style><contents><textItem><dataSource><dataItemLabel refDataItem="Quantity"/></dataSource></textItem></contents></listColumnTitle><listColumnBody><style><defaultStyles><defaultStyle refStyle="lm"/></defaultStyles></style><contents><textItem><dataSource><dataItemValue refDataItem="Quantity"/></dataSource></textItem></contents></listColumnBody></listColumn><listColumn><listColumnTitle><style><defaultStyles><defaultStyle refStyle="lt"/></defaultStyles></style><contents><textItem><dataSource><dataItemLabel refDataItem="Unit cost"/></dataSource></textItem></contents></listColumnTitle><listColumnBody><style><defaultStyles><defaultStyle refStyle="lm"/></defaultStyles></style><contents><textItem><dataSource><dataItemValue refDataItem="Unit cost"/></dataSource></textItem></contents></listColumnBody></listColumn><listColumn><listColumnTitle><style><defaultStyles><defaultStyle refStyle="lt"/></defaultStyles></style><contents><textItem><dataSource><dataItemLabel refDataItem="Unit price"/></dataSource></textItem></contents></listColumnTitle><listColumnBody><style><defaultStyles><defaultStyle refStyle="lm"/></defaultStyles></style><contents><textItem><dataSource><dataItemValue refDataItem="Unit price"/></dataSource></textItem></contents></listColumnBody></listColumn><listColumn><listColumnTitle><style><defaultStyles><defaultStyle refStyle="lt"/></defaultStyles></style><contents><textItem><dataSource><dataItemLabel refDataItem="Unit sale price"/></dataSource></textItem></contents></listColumnTitle><listColumnBody><style><defaultStyles><defaultStyle refStyle="lm"/></defaultStyles></style><contents><textItem><dataSource><dataItemValue refDataItem="Unit sale price"/></dataSource></textItem></contents></listColumnBody></listColumn><listColumn><listColumnTitle><style><defaultStyles><defaultStyle refStyle="lt"/></defaultStyles></style><contents><textItem><dataSource><dataItemLabel refDataItem="Revenue"/></dataSource></textItem></contents></listColumnTitle><listColumnBody><style><defaultStyles><defaultStyle refStyle="lm"/></defaultStyles></style><contents><textItem><dataSource><dataItemValue refDataItem="Revenue"/></dataSource></textItem></contents></listColumnBody></listColumn><listColumn><listColumnTitle><style><defaultStyles><defaultStyle refStyle="lt"/></defaultStyles></style><contents><textItem><dataSource><dataItemLabel refDataItem="Product cost"/></dataSource></textItem></contents></listColumnTitle><listColumnBody><style><defaultStyles><defaultStyle refStyle="lm"/></defaultStyles></style><contents><textItem><dataSource><dataItemValue refDataItem="Product cost"/></dataSource></textItem></contents></listColumnBody></listColumn><listColumn><listColumnTitle><style><defaultStyles><defaultStyle refStyle="lt"/></defaultStyles></style><contents><textItem><dataSource><dataItemLabel refDataItem="Gross profit"/></dataSource></textItem></contents></listColumnTitle><listColumnBody><style><defaultStyles><defaultStyle refStyle="lm"/></defaultStyles></style><contents><textItem><dataSource><dataItemValue refDataItem="Gross profit"/></dataSource></textItem></contents></listColumnBody></listColumn><listColumn><listColumnTitle><style><defaultStyles><defaultStyle refStyle="lt"/></defaultStyles></style><contents><textItem><dataSource><dataItemLabel refDataItem="Planned revenue"/></dataSource></textItem></contents></listColumnTitle><listColumnBody><style><defaultStyles><defaultStyle refStyle="lm"/></defaultStyles></style><contents><textItem><dataSource><dataItemValue refDataItem="Planned revenue"/></dataSource></textItem></contents></listColumnBody></listColumn></listColumns><listOverallGroup><listFooter><listRows><listRow><rowCells><rowCell><contents><textItem><dataSource><staticValue>Overall</staticValue></dataSource></textItem><textItem><dataSource><staticValue> - </staticValue></dataSource></textItem><textItem><dataSource><staticValue>Summary</staticValue></dataSource></textItem></contents><style><defaultStyles><defaultStyle refStyle="if"/></defaultStyles></style></rowCell><rowCell><contents><textItem><dataSource><dataItemValue refDataItem="Summary(Quantity)"/></dataSource></textItem></contents><style><defaultStyles><defaultStyle refStyle="is"/></defaultStyles></style></rowCell><rowCell><contents><textItem><dataSource><dataItemValue refDataItem="Summary(Unit cost)"/></dataSource></textItem></contents><style><defaultStyles><defaultStyle refStyle="is"/></defaultStyles></style></rowCell><rowCell><contents><textItem><dataSource><dataItemValue refDataItem="Summary(Unit price)"/></dataSource></textItem></contents><style><defaultStyles><defaultStyle refStyle="is"/></defaultStyles></style></rowCell><rowCell><contents><textItem><dataSource><dataItemValue refDataItem="Summary(Unit sale price)"/></dataSource></textItem></contents><style><defaultStyles><defaultStyle refStyle="is"/></defaultStyles></style></rowCell><rowCell><contents><textItem><dataSource><dataItemValue refDataItem="Summary(Revenue)"/></dataSource></textItem></contents><style><defaultStyles><defaultStyle refStyle="is"/></defaultStyles></style></rowCell><rowCell><contents><textItem><dataSource><dataItemValue refDataItem="Summary(Product cost)"/></dataSource></textItem></contents><style><defaultStyles><defaultStyle refStyle="is"/></defaultStyles></style></rowCell><rowCell><contents><textItem><dataSource><dataItemValue refDataItem="Summary(Gross profit)"/></dataSource></textItem></contents><style><defaultStyles><defaultStyle refStyle="is"/></defaultStyles></style></rowCell><rowCell><contents><textItem><dataSource><dataItemValue refDataItem="Summary(Planned revenue)"/></dataSource></textItem></contents><style><defaultStyles><defaultStyle refStyle="is"/></defaultStyles></style></rowCell></rowCells></listRow></listRows></listFooter></listOverallGroup></list></contents>
        <style><CSS value="width:743px;overflow:auto;border:1pt solid silver"/></style></block><customControl path="../samples/javascript/FreezeColumns/FreezeColumns"><configuration>{
    &quot;controlName&quot;: &quot;List1&quot;,
    &quot;block&quot;: &quot;Block1&quot;
}</configuration></customControl></contents><style><CSS value="text-align:center"/></style></tableCell></tableCells></tableRow><tableRow><tableCells><tableCell><contents><block>
            <contents><textItem><dataSource><staticValue>List - Freeze 2 Columns</staticValue></dataSource></textItem></contents>
        <style><CSS value="font-weight:bold"/></style></block><block name="Block2">
            <contents><list horizontalPagination="true" name="List2" refQuery="Query1">



            <noDataHandler>
                <contents>
                    <block>
                        <contents>
                            <textItem>
                                <dataSource>
                                    <staticValue>No Data Available</staticValue>
                                </dataSource>
                                <style>
                                    <CSS value="padding:10px 18px;"/>
                                </style>
                            </textItem>
                        </contents>
                    </block>
                </contents>
            </noDataHandler>
            <style>
                <CSS value="border-collapse:collapse;width:1000px"/>
                <defaultStyles>
                    <defaultStyle refStyle="ls"/>
                </defaultStyles>
            </style>
        <listColumns><listColumn><listColumnTitle><style><defaultStyles><defaultStyle refStyle="lt"/></defaultStyles></style><contents><textItem><dataSource><dataItemLabel refDataItem="Product line"/></dataSource></textItem></contents></listColumnTitle><listColumnBody><style><defaultStyles><defaultStyle refStyle="lc"/></defaultStyles></style><contents><textItem><dataSource><dataItemValue refDataItem="Product line"/></dataSource></textItem></contents></listColumnBody></listColumn><listColumn><listColumnTitle><style><defaultStyles><defaultStyle refStyle="lt"/></defaultStyles></style><contents><textItem><dataSource><dataItemLabel refDataItem="Year"/></dataSource></textItem></contents></listColumnTitle><listColumnBody><style><defaultStyles><defaultStyle refStyle="lc"/></defaultStyles></style><contents><textItem><dataSource><dataItemValue refDataItem="Year"/></dataSource></textItem></contents></listColumnBody></listColumn><listColumn><listColumnTitle><style><defaultStyles><defaultStyle refStyle="lt"/></defaultStyles></style><contents><textItem><dataSource><dataItemLabel refDataItem="Quantity"/></dataSource></textItem></contents></listColumnTitle><listColumnBody><style><defaultStyles><defaultStyle refStyle="lm"/></defaultStyles></style><contents><textItem><dataSource><dataItemValue refDataItem="Quantity"/></dataSource></textItem></contents></listColumnBody></listColumn><listColumn><listColumnTitle><style><defaultStyles><defaultStyle refStyle="lt"/></defaultStyles></style><contents><textItem><dataSource><dataItemLabel refDataItem="Unit cost"/></dataSource></textItem></contents></listColumnTitle><listColumnBody><style><defaultStyles><defaultStyle refStyle="lm"/></defaultStyles></style><contents><textItem><dataSource><dataItemValue refDataItem="Unit cost"/></dataSource></textItem></contents></listColumnBody></listColumn><listColumn><listColumnTitle><style><defaultStyles><defaultStyle refStyle="lt"/></defaultStyles></style><contents><textItem><dataSource><dataItemLabel refDataItem="Unit price"/></dataSource></textItem></contents></listColumnTitle><listColumnBody><style><defaultStyles><defaultStyle refStyle="lm"/></defaultStyles></style><contents><textItem><dataSource><dataItemValue refDataItem="Unit price"/></dataSource></textItem></contents></listColumnBody></listColumn><listColumn><listColumnTitle><style><defaultStyles><defaultStyle refStyle="lt"/></defaultStyles></style><contents><textItem><dataSource><dataItemLabel refDataItem="Revenue"/></dataSource></textItem></contents></listColumnTitle><listColumnBody><style><defaultStyles><defaultStyle refStyle="lm"/></defaultStyles></style><contents><textItem><dataSource><dataItemValue refDataItem="Revenue"/></dataSource></textItem></contents></listColumnBody></listColumn><listColumn><listColumnTitle><style><defaultStyles><defaultStyle refStyle="lt"/></defaultStyles></style><contents><textItem><dataSource><dataItemLabel refDataItem="Product cost"/></dataSource></textItem></contents></listColumnTitle><listColumnBody><style><defaultStyles><defaultStyle refStyle="lm"/></defaultStyles></style><contents><textItem><dataSource><dataItemValue refDataItem="Product cost"/></dataSource></textItem></contents></listColumnBody></listColumn><listColumn><listColumnTitle><style><defaultStyles><defaultStyle refStyle="lt"/></defaultStyles></style><contents><textItem><dataSource><dataItemLabel refDataItem="Gross profit"/></dataSource></textItem></contents></listColumnTitle><listColumnBody><style><defaultStyles><defaultStyle refStyle="lm"/></defaultStyles></style><contents><textItem><dataSource><dataItemValue refDataItem="Gross profit"/></dataSource></textItem></contents></listColumnBody></listColumn><listColumn><listColumnTitle><style><defaultStyles><defaultStyle refStyle="lt"/></defaultStyles></style><contents><textItem><dataSource><dataItemLabel refDataItem="Planned revenue"/></dataSource></textItem></contents></listColumnTitle><listColumnBody><style><defaultStyles><defaultStyle refStyle="lm"/></defaultStyles></style><contents><textItem><dataSource><dataItemValue refDataItem="Planned revenue"/></dataSource></textItem></contents></listColumnBody></listColumn></listColumns><sortList><sortItem sortOrder="descending" refDataItem="Year"/></sortList><listOverallGroup><listFooter><listRows><listRow><rowCells><rowCell colSpan="2"><contents><textItem><dataSource><staticValue>Overall</staticValue></dataSource></textItem><textItem><dataSource><staticValue> - </staticValue></dataSource></textItem><textItem><dataSource><staticValue>Summary</staticValue></dataSource></textItem></contents><style><defaultStyles><defaultStyle refStyle="if"/></defaultStyles></style></rowCell><rowCell><contents><textItem><dataSource><dataItemValue refDataItem="Summary(Quantity)1"/></dataSource></textItem></contents><style><defaultStyles><defaultStyle refStyle="is"/></defaultStyles></style></rowCell><rowCell><contents><textItem><dataSource><dataItemValue refDataItem="Summary(Unit cost)1"/></dataSource></textItem></contents><style><defaultStyles><defaultStyle refStyle="is"/></defaultStyles></style></rowCell><rowCell><contents><textItem><dataSource><dataItemValue refDataItem="Summary(Unit price)1"/></dataSource></textItem></contents><style><defaultStyles><defaultStyle refStyle="is"/></defaultStyles></style></rowCell><rowCell><contents><textItem><dataSource><dataItemValue refDataItem="Summary(Revenue)1"/></dataSource></textItem></contents><style><defaultStyles><defaultStyle refStyle="is"/></defaultStyles></style></rowCell><rowCell><contents><textItem><dataSource><dataItemValue refDataItem="Summary(Product cost)1"/></dataSource></textItem></contents><style><defaultStyles><defaultStyle refStyle="is"/></defaultStyles></style></rowCell><rowCell><contents><textItem><dataSource><dataItemValue refDataItem="Summary(Gross profit)1"/></dataSource></textItem></contents><style><defaultStyles><defaultStyle refStyle="is"/></defaultStyles></style></rowCell><rowCell><contents><textItem><dataSource><dataItemValue refDataItem="Summary(Planned revenue)1"/></dataSource></textItem></contents><style><defaultStyles><defaultStyle refStyle="is"/></defaultStyles></style></rowCell></rowCells></listRow></listRows></listFooter></listOverallGroup></list></contents>
        <style><CSS value="width:743px;overflow:auto;border:1pt solid silver"/></style></block><customControl path="../samples/javascript/FreezeColumns/FreezeColumns"><configuration>{
    &quot;controlName&quot;: &quot;List2&quot;,
    &quot;block&quot;: &quot;Block2&quot;,
    &quot;columnsToFreeze&quot;: 2
}</configuration></customControl></contents><style><CSS value="padding-top:10px;padding-bottom:10px;text-align:center"/></style></tableCell></tableCells></tableRow><tableRow><tableCells><tableCell><contents><block>
            <contents><textItem><dataSource><staticValue>Crosstab - Freeze Rows Dropzone (not nested)</staticValue></dataSource></textItem></contents>
        <style><CSS value="font-weight:bold"/></style></block><block name="Block3">
            <contents><crosstab horizontalPagination="true" name="Crosstab1" refQuery="Query1">
            <crosstabCorner>
                <contents/>
                <style>
                    <defaultStyles>
                        <defaultStyle refStyle="xm"/>
                    </defaultStyles>
                </style>
            </crosstabCorner>


            <noDataHandler>
                <contents>
                    <block>
                        <contents>
                            <textItem>
                                <dataSource>
                                    <staticValue>No Data Available</staticValue>
                                </dataSource>
                                <style>
                                    <CSS value="padding:10px 18px;"/>
                                </style>
                            </textItem>
                        </contents>
                    </block>
                </contents>
            </noDataHandler>
            <style>
                <CSS value="border-collapse:collapse;width:1000px"/>
                <defaultStyles>
                    <defaultStyle refStyle="xt"/>
                </defaultStyles>
            </style>
        <crosstabRows><crosstabNode><crosstabNodeMembers><crosstabNodeMember refDataItem="Product line" edgeLocation="e1"><style><defaultStyles><defaultStyle refStyle="ml"/></defaultStyles></style><contents><textItem><dataSource><memberCaption/></dataSource></textItem></contents></crosstabNodeMember></crosstabNodeMembers></crosstabNode><crosstabNode><crosstabNodeMembers><crosstabNodeMember refDataItem="Summary(Product line)" edgeLocation="e10"><style><defaultStyles><defaultStyle refStyle="ol"/></defaultStyles></style><contents><textItem><dataSource><dataItemLabel refDataItem="Summary(Product line)"/></dataSource></textItem></contents><factCell><style><defaultStyles><defaultStyle refStyle="ov"/></defaultStyles></style></factCell></crosstabNodeMember></crosstabNodeMembers></crosstabNode></crosstabRows><crosstabFactCell><contents><textItem><dataSource><cellValue/></dataSource></textItem></contents><style><defaultStyles><defaultStyle refStyle="mv"/></defaultStyles></style></crosstabFactCell><crosstabColumns><crosstabNode><crosstabNodeMembers><crosstabNodeMember refDataItem="Quantity" edgeLocation="e2"><style><defaultStyles><defaultStyle refStyle="ml"/></defaultStyles></style><contents><textItem><dataSource><memberCaption/></dataSource></textItem></contents></crosstabNodeMember></crosstabNodeMembers></crosstabNode><crosstabNode><crosstabNodeMembers><crosstabNodeMember refDataItem="Unit cost" edgeLocation="e3"><style><defaultStyles><defaultStyle refStyle="ml"/></defaultStyles></style><contents><textItem><dataSource><memberCaption/></dataSource></textItem></contents></crosstabNodeMember></crosstabNodeMembers></crosstabNode><crosstabNode><crosstabNodeMembers><crosstabNodeMember refDataItem="Unit price" edgeLocation="e4"><style><defaultStyles><defaultStyle refStyle="ml"/></defaultStyles></style><contents><textItem><dataSource><memberCaption/></dataSource></textItem></contents></crosstabNodeMember></crosstabNodeMembers></crosstabNode><crosstabNode><crosstabNodeMembers><crosstabNodeMember refDataItem="Unit sale price" edgeLocation="e5"><style><defaultStyles><defaultStyle refStyle="ml"/></defaultStyles></style><contents><textItem><dataSource><memberCaption/></dataSource></textItem></contents></crosstabNodeMember></crosstabNodeMembers></crosstabNode><crosstabNode><crosstabNodeMembers><crosstabNodeMember refDataItem="Revenue" edgeLocation="e6"><style><defaultStyles><defaultStyle refStyle="ml"/></defaultStyles></style><contents><textItem><dataSource><memberCaption/></dataSource></textItem></contents></crosstabNodeMember></crosstabNodeMembers></crosstabNode><crosstabNode><crosstabNodeMembers><crosstabNodeMember refDataItem="Product cost" edgeLocation="e7"><style><defaultStyles><defaultStyle refStyle="ml"/></defaultStyles></style><contents><textItem><dataSource><memberCaption/></dataSource></textItem></contents></crosstabNodeMember></crosstabNodeMembers></crosstabNode><crosstabNode><crosstabNodeMembers><crosstabNodeMember refDataItem="Gross profit" edgeLocation="e8"><style><defaultStyles><defaultStyle refStyle="ml"/></defaultStyles></style><contents><textItem><dataSource><memberCaption/></dataSource></textItem></contents></crosstabNodeMember></crosstabNodeMembers></crosstabNode><crosstabNode><crosstabNodeMembers><crosstabNodeMember refDataItem="Planned revenue" edgeLocation="e9"><style><defaultStyles><defaultStyle refStyle="ml"/></defaultStyles></style><contents><textItem><dataSource><memberCaption/></dataSource></textItem></contents></crosstabNodeMember></crosstabNodeMembers></crosstabNode></crosstabColumns></crosstab></contents>
        <style><CSS value="width:743px;overflow:auto;border:1pt solid silver"/></style></block><customControl path="../samples/javascript/FreezeColumns/FreezeColumns"><configuration>{
    &quot;controlName&quot;: &quot;Crosstab1&quot;,
    &quot;block&quot;: &quot;Block3&quot;
}</configuration></customControl></contents><style><CSS value="text-align:center"/></style></tableCell></tableCells></tableRow></tableRows></table></contents>
                                </pageBody>

                                <pageFooter>
                                    <contents>
                                        <table>
                                            <tableRows>
                                                <tableRow>
                                                    <tableCells>
                                                        <tableCell>
                                                            <contents>
                                                                <date>
                                                                    <style>
                                                                        <dataFormat>
                                                                            <dateFormat/>
                                                                        </dataFormat>
                                                                    </style>
                                                                </date>
                                                            </contents>
                                                            <style>
                                                                <CSS value="width:25%;text-align:left;vertical-align:top"/>
                                                            <defaultStyles><defaultStyle refStyle="FooterDateTableCell"/></defaultStyles></style>
                                                        </tableCell>
                                                        <tableCell>
                                                            <contents>
                                                                <pageNumber/>
                                                            </contents>
                                                            <style>
                                                                <CSS value="width:50%;text-align:center;vertical-align:top"/>
                                                            <defaultStyles><defaultStyle refStyle="FooterPageNumberTableCell"/></defaultStyles></style>
                                                        </tableCell>
                                                        <tableCell>
                                                            <contents>
                                                                <time>
                                                                    <style>
                                                                        <dataFormat>
                                                                            <timeFormat/>
                                                                        </dataFormat>
                                                                    </style>
                                                                </time>
                                                            </contents>
                                                            <style>
                                                                <CSS value="width:25%;text-align:right;vertical-align:top"/>
                                                            <defaultStyles><defaultStyle refStyle="FooterTimeTableCell"/></defaultStyles></style>
                                                        </tableCell>
                                                    </tableCells>
                                                </tableRow>
                                            </tableRows>
                                            <style>
                                                <defaultStyles>
                                                    <defaultStyle refStyle="tb"/>
                                                </defaultStyles>
                                                <CSS value="width:100%;border-collapse:collapse;border-spacing:0px"/>
                                            </style>
                                        </table>
                                    </contents>
                                    <style>

                                        <CSS value="padding:10px"/>
                                    <defaultStyles><defaultStyle refStyle="FooterPageFooter"/></defaultStyles></style>
                                </pageFooter>
                            <pageHeader><contents><block>
            <contents><textItem><dataSource><staticValue>Freeze Columns - Custom JavaScript Control</staticValue></dataSource></textItem></contents>
        <style><defaultStyles><defaultStyle refStyle="HeaderReportTitleTableCell"/></defaultStyles><CSS value="text-align:center;font-size:20pt;font-weight:bold;border-bottom:1pt solid silver"/></style></block></contents><style><defaultStyles><defaultStyle refStyle="ph"/></defaultStyles></style></pageHeader></page>
                        </reportPages>
                    </layout>
                </layouts>
            <XMLAttributes><XMLAttribute name="RS_CreateExtendedDataItems" output="no" value="true"/><XMLAttribute output="no" name="listSeparator" value=","/><XMLAttribute output="no" name="RS_modelModificationTime" value="2015-11-25T21:38:24.820Z"/></XMLAttributes><queries><query name="Query1"><source><model/></source><selection><dataItemListSummary refDataItem="Quantity" aggregateMethod="aggregate" name="Summary(Quantity)"><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="2"/></XMLAttributes></dataItemListSummary><dataItemListSummary refDataItem="Unit cost" aggregateMethod="aggregate" name="Summary(Unit cost)"><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="9"/></XMLAttributes></dataItemListSummary><dataItemListSummary refDataItem="Unit price" aggregateMethod="aggregate" name="Summary(Unit price)"><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="9"/></XMLAttributes></dataItemListSummary><dataItemListSummary refDataItem="Unit sale price" aggregateMethod="aggregate" name="Summary(Unit sale price)"><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="9"/></XMLAttributes></dataItemListSummary><dataItemListSummary refDataItem="Revenue" aggregateMethod="aggregate" name="Summary(Revenue)"><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="2"/></XMLAttributes></dataItemListSummary><dataItemListSummary refDataItem="Product cost" aggregateMethod="aggregate" name="Summary(Product cost)"><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="2"/></XMLAttributes></dataItemListSummary><dataItemListSummary refDataItem="Gross profit" aggregateMethod="aggregate" name="Summary(Gross profit)"><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="2"/></XMLAttributes></dataItemListSummary><dataItemListSummary refDataItem="Planned revenue" aggregateMethod="aggregate" name="Summary(Planned revenue)"><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="2"/></XMLAttributes></dataItemListSummary><dataItem aggregate="none" rollupAggregate="none" name="Product line"><expression>[Sales (query)].[Products].[Product line]</expression><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="3"/><XMLAttribute output="no" name="RS_dataUsage" value="0"/></XMLAttributes></dataItem><dataItem aggregate="total" name="Quantity"><expression>[Sales (query)].[Sales].[Quantity]</expression><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="2"/><XMLAttribute output="no" name="RS_dataUsage" value="2"/></XMLAttributes></dataItem><dataItem name="Unit cost"><expression>[Sales (query)].[Sales].[Unit cost]</expression><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="3"/><XMLAttribute output="no" name="RS_dataUsage" value="2"/></XMLAttributes></dataItem><dataItem name="Unit price"><expression>[Sales (query)].[Sales].[Unit price]</expression><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="3"/><XMLAttribute output="no" name="RS_dataUsage" value="2"/></XMLAttributes></dataItem><dataItem name="Unit sale price"><expression>[Sales (query)].[Sales].[Unit sale price]</expression><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="3"/><XMLAttribute output="no" name="RS_dataUsage" value="2"/></XMLAttributes></dataItem><dataItem aggregate="total" name="Revenue"><expression>[Sales (query)].[Sales].[Revenue]</expression><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="3"/><XMLAttribute output="no" name="RS_dataUsage" value="2"/></XMLAttributes></dataItem><dataItem aggregate="total" name="Product cost"><expression>[Sales (query)].[Sales].[Product cost]</expression><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="3"/><XMLAttribute output="no" name="RS_dataUsage" value="2"/></XMLAttributes></dataItem><dataItem aggregate="total" name="Gross profit"><expression>[Sales (query)].[Sales].[Gross profit]</expression><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="3"/><XMLAttribute output="no" name="RS_dataUsage" value="2"/></XMLAttributes></dataItem><dataItem aggregate="total" name="Planned revenue"><expression>[Sales (query)].[Sales].[Planned revenue]</expression><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="3"/><XMLAttribute output="no" name="RS_dataUsage" value="2"/></XMLAttributes></dataItem><dataItem aggregate="none" rollupAggregate="none" name="Year"><expression>[Sales (query)].[Time].[Year]</expression><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="1"/><XMLAttribute output="no" name="RS_dataUsage" value="0"/></XMLAttributes></dataItem><dataItemListSummary refDataItem="Unit sale price" aggregateMethod="aggregate" name="Summary(Unit sale price)1"><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="9"/></XMLAttributes></dataItemListSummary><dataItemListSummary refDataItem="Quantity" aggregateMethod="aggregate" name="Summary(Quantity)1"><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="2"/></XMLAttributes></dataItemListSummary><dataItemListSummary refDataItem="Unit cost" aggregateMethod="aggregate" name="Summary(Unit cost)1"><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="9"/></XMLAttributes></dataItemListSummary><dataItemListSummary refDataItem="Unit price" aggregateMethod="aggregate" name="Summary(Unit price)1"><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="9"/></XMLAttributes></dataItemListSummary><dataItemListSummary refDataItem="Revenue" aggregateMethod="aggregate" name="Summary(Revenue)1"><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="2"/></XMLAttributes></dataItemListSummary><dataItemListSummary refDataItem="Product cost" aggregateMethod="aggregate" name="Summary(Product cost)1"><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="2"/></XMLAttributes></dataItemListSummary><dataItemListSummary refDataItem="Gross profit" aggregateMethod="aggregate" name="Summary(Gross profit)1"><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="2"/></XMLAttributes></dataItemListSummary><dataItemListSummary refDataItem="Planned revenue" aggregateMethod="aggregate" name="Summary(Planned revenue)1"><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="2"/></XMLAttributes></dataItemListSummary><dataItemEdgeSummary solveOrder="1" refDataItem="Product line" aggregateMethod="aggregate" name="Summary(Product line)" label="Summary"><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="3"/></XMLAttributes></dataItemEdgeSummary></selection><detailFilters><detailFilter><filterDefinition><filterInValues refDataItem="Year" dataType="integer"><filterValues><filterValue>2013</filterValue></filterValues></filterInValues></filterDefinition></detailFilter></detailFilters></query></queries><modelPath>/content/folder[@name=&apos;Samples&apos;]/folder[@name=&apos;Models&apos;]/package[@name=&apos;GO sales (query)&apos;]/model[@name=&apos;model&apos;]</modelPath><reportName>FreezeColumns</reportName></report>
2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2