1

我的团队一直致力于创建仪表板和钻取报告。我们已经过了概念验证阶段,现在正在努力构建“生产就绪”报告。在我们的会议上,有人提出报告的整体风格应该从 Cognos 的默认设置中改变。

我们开始了解 Cognos 的皮肤系统。我们看到在报表显示和门户中使用的门户和 UI 元素有皮肤。这不一定是我们想要的。理想情况下,我们希望能够将门户更改为公司品牌并更改列表和交叉表的外观(以及实际报告的其他元素)。

我能够查看为报告生成的页面源代码,并看到它包含以下样式:

cognos\c10_64\webcontent\schemas

在浏览 webcontent 目录时,我还发现了这条路径:

cognos\c10_64\webcontent\reportstyles

这两个路径都包含具有相似名称的 css 文件。报表 HTML 包含的样式指向“schemas”目录,但是我的逻辑思维自己愿意相信“reportstyles”目录在 Cognos 报表显示中的某个地方使用,即使我没有看到它包含在任何页面源中我看过。

我已经开始使用一个系统对“模式”路径中的 css 进行修改,该系统将包含的 css 文件复制出来并将其放入“xxx_system.css”文件中,然后将该文件包含在原始的 css 文件。

这个过程有效,我们能够看到变化,但我们仍然想知道是否有更好或“更正确”的方法来做到这一点。任何人都可以详细说明皮肤/样式实际报告的最佳方式吗?

4

3 回答 3

2

我定制 UI 的方法有很大的不同——想象一下我进入一家公司,他们已经做同样的事情 6 年多了,我想开始改变周围的一切。它遇到了一些阻力,所以我希望我的经验可以帮助您入门。

我来自强大的基于 UI 的背景,并立即想将我的知识贡献给我们正在设计的报告。这需要机智,因为我想展示精心设计的 UI 的价值,而不会让使用它的每个人感到震惊/害怕(改变逆境等)。我通过在报告中而不是在 Cognos 文件本身上工作来处理这个问题。

从您开始使用核心文件的那一刻起,无论它们是 CSS、Javascript 还是 CGI 本身,都存在直接且明显的风险,即它会在升级时完全中断。我通过在我的报告中创建 HTML 项目并从那里调用资源来解决这个问题。例如,这个 HTML 项目几乎在我的报告的每个标题中:

<link type="text/css" href="cognos8/common/css/ui-lightness/jquery-ui-1.8.5.custom.css" rel="Stylesheet" />
<link type="text/css" href="custom.css" rel="Stylesheet" />
<script type="text/javascript"
 src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript"
 src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.5/jquery-ui.min.js"></script>
<script type="text/javascript">
jQuery.noConflict();
jQuery(document).ready(function() {
}); // End Ready
</script>

所以现在我可以访问 jQuery、UI 框架和其他一切。我在我的中指定覆盖custom.css并从那里构建我的外观。这可能看起来很麻烦,但 IBM 有升级主要版本和完全消除命名约定和功能的诀窍,所以如果您的 CSS 选择器关闭,它会“默认”为 IBM 的原始样式。

这就是我不得不绕过它的方法,我不完全确定这是最好的方法。我一直在使用我所拥有的东西,即无法访问服务器文件或类似的东西。只需考虑这是一种超级安全的方法。

于 2011-03-04T16:39:44.307 回答
0

我现在正在使用 Cognos 10.1 并准备发布。我处理安装、配置和任何调整的方式是从修订控制系统中提取数据的自动构建/配置过程。这样即使在升级时我也不会丢失任何自定义并且可以轻松地合并升级中的更改。

于 2011-08-03T10:07:50.170 回答
0

您完全可以使用支持 Cognos 蒙皮系统更改交叉表和列表的外观。我为以前的雇主对 Cognos 进行了全面的外观大修,其中包括更改动态元素的外观。

如果您查看 GlobalReportStyles.css 中的默认样式,所有这些样式都可以在您的皮肤中的自定义 CSS 文件中被覆盖。该方法比直接修改 GlobalReportStyles.css 更安全,因为自定义皮肤目录不会被升级修改,但全局样式表肯定会。

不幸的是,您无法确定您通过皮肤工具创建的任何修改在不同版本之间呈现完全相同的方式。Cognos 可以重新排列 UI 或调整整体外观以破坏您的更改。但是,这是我所知道的对默认 Cognos 对象有效地创建通用的、自动的外观和感觉修改的唯一方法。

于 2014-11-12T23:22:17.823 回答