【问题标题】:Cognos condiotional style highlight top valuesCognos 条件样式突出显示最高值
【发布时间】:2020-09-29 01:54:03
【问题描述】:

我有一个交叉表,我试图将条件样式应用于一组行,其中行数据项“Measure”以单词“Channel”开头。我有一个排名公式来获得排序的值,这样我就可以获得前三名。我想更改前三个值的背景。

我有来自数据集的以下数据项“百分比样式”:

情况下 [C].[C_Segment_Journey_Metrics_Data_Set_Data_Module].[Query1_0].[Percentage_] 不为空且 [C].[C_Segment_Journey_Metrics_Data_Set_Data_Module].[Query1_0].[Measure_Name] 以“通道”开头 然后排名([C].[C_Segment_Journey_Metrics_Data_Set_Data_Module].[Query1_0].[Measure_Name] 以“频道”开头的情况 然后 [C].[C_Segment_Journey_Metrics_Data_Set_Data_Module].[Query1_0].[Percentage_] 否则为空 结束描述 对于 [C].[C_Segment_Journey_Metrics_Data_Set_Data_Module].[Query1_0].[Measure_Name] 以“通道”开头的情况 然后 [C].[C_Segment_Journey_Metrics_Data_Set_Data_Module].[Query1_0].[Segment_Desc] 否则为空 结尾) 否则为空 结束

以及应用于同一数据集的百分比字段的条件样式:

[Query1].[Percentage Style] 介于 1 和 3 之间 和 [Query1]。[Measure_Name] 以“Channel”开头

如果我在报告中将“百分比样式”数据项作为“百分比”旁边的一列,则此方法有效。两者都在“Segment Desc”数据项下作为列。

我尝试在“Segment Desc”的属性列表中添加“百分比样式”作为一个项目,但这会产生非常不同的结果。 “百分比样式”的计算方式似乎不同。我不确定此时还可以尝试什么。我愿意接受任何建议。

【问题讨论】:

    标签: styles conditional-statements crosstab cognos


    【解决方案1】:

    您也许可以使用报告表达式而不是实际数据项来实现这一点。如果您的数据已经从高到低排序,则不需要排名,您可以使用 RowNumber() 表达式。

    这是一个例子:

    <report xmlns="http://developer.cognos.com/schemas/report/15.4/"           expressionLocale="en-us" useStyleVersion="11.5">
    
                <drillBehavior/>
                <layouts>
                    <layout>
                        <reportPages>
                            <page name="Page1">
                                <style>
                                    <defaultStyles>
                                        <defaultStyle refStyle="pg"/>
                                    </defaultStyles>
                                </style>
                                <pageBody>
                                    <style>
                                        <defaultStyles>
                                            <defaultStyle refStyle="pb"/>
                                        </defaultStyles>
                                    </style>
                                    <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>
                            </textItem>
                        </contents>
                        <style>
                            <CSS value="padding:16px;"/>
                        </style>
                    </block>
                </contents>
            </noDataHandler>
            <style>
                <CSS value="border-collapse:collapse"/>
                <defaultStyles>
                    <defaultStyle refStyle="xt"/>
                </defaultStyles>
            </style>
        <crosstabRows><crosstabNode><crosstabNestedNodes><crosstabNode><crosstabNodeMembers><crosstabNodeMember refDataItem="Order method type" edgeLocation="e2"><style><defaultStyles><defaultStyle refStyle="ml"/></defaultStyles></style><contents><textItem><dataSource><memberCaption/></dataSource></textItem><textItem><dataSource><reportExpression>RowNumber ()</reportExpression></dataSource></textItem></contents><sortList><sortItem sortOrder="descending" refDataItem="Revenue"/></sortList></crosstabNodeMember></crosstabNodeMembers></crosstabNode></crosstabNestedNodes><crosstabNodeMembers><crosstabNodeMember refDataItem="Product line code" edgeLocation="e1"><style><defaultStyles><defaultStyle refStyle="ml"/></defaultStyles></style><contents><textItem><dataSource><memberCaption/></dataSource></textItem></contents></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="Revenue" edgeLocation="e3"><style><defaultStyles><defaultStyle refStyle="ml"/></defaultStyles></style><contents><textItem><dataSource><memberCaption/></dataSource></textItem></contents></crosstabNodeMember></crosstabNodeMembers></crosstabNode></crosstabColumns><crosstabIntersections><crosstabIntersection row="e2" column="e3"><conditionalStyleRefs><conditionalStyleRef refConditionalStyle="Conditional Style 1"/></conditionalStyleRefs></crosstabIntersection></crosstabIntersections></crosstab></contents>
                                </pageBody>
                            </page>
                        </reportPages>
                    </layout>
                </layouts>
            <queries><query name="Query1"><source><model/></source><selection><dataItem aggregate="none" rollupAggregate="none" name="Product line code"><expression>[Sales (query)].[Products].[Product line code]</expression><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="1"/><XMLAttribute output="no" name="RS_dataUsage" value="1"/></XMLAttributes></dataItem><dataItem aggregate="none" rollupAggregate="none" name="Order method type"><expression>[Sales (query)].[Order method].[Order method type]</expression><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="3"/><XMLAttribute output="no" name="RS_dataUsage" value="0"/></XMLAttributes></dataItem><dataItem aggregate="total" name="Revenue"><expression>[Sales (query)].[Sales].[Revenue]</expression><XMLAttributes><XMLAttribute output="no" name="RS_dataType" value="2"/><XMLAttribute output="no" name="RS_dataUsage" value="2"/></XMLAttributes></dataItem></selection></query></queries><XMLAttributes><XMLAttribute output="no" name="RS_CreateExtendedDataItems" value="true"/><XMLAttribute output="no" name="listSeparator" value=","/><XMLAttribute output="no" name="decimalSeparator" value="."/></XMLAttributes><modelPath>/content/folder[@name=&apos;Samples_LG_DQ&apos;]/folder[@name=&apos;Models&apos;]/package[@name=&apos;GO Sales (query)&apos;]/model[@name=&apos;model&apos;]</modelPath><namedConditionalStyles><advancedConditionalStyle name="Conditional Style 1"><styleCases><styleCase><style><CSS value="background-color:yellow"/></style><reportCondition>[Query1].[Product line code]= 991 and RowNumber ()&lt;=3</reportCondition></styleCase></styleCases><styleDefault/></advancedConditionalStyle></namedConditionalStyles></report>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-09-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多