cognos8.2常见问题宝典
(1).Cube如何自动刷新?
在cognos8中,如何自动更新cube呢?将类似于以下代码保存为.bat文件"D:\Program Files\cognos\cer5\bin\trnsfrmr.exe" -n2 -s "F:\SG186_Project\cubes\生产\工作票合格率.pyi"其中n2表示显示执行过程窗口,n1表示最小化执行窗口,n表示不显示执行窗口.注意:powerplay transformer模型文件.pyi路径与数据立方体文件.mdc的生成路径要为同一目录.如果碰到生成之后数据不变,就要在powerplay transformer中的files-首选项菜单中设cube的临时目录,运行方式,可以直接双击.bat文件立刻生成新的cube,也可以用cognos自带的Scheduler设置定时更新,当然也可以用windows自带的Scheduler(应该可以,没有试.)
(2)oracle数据出错:ORA-12154:TNS:无法处理服务名
是由于oracle没有配制好。
(3)我用transformer manager发布包mypackage后并生成iqd文件,在生成立方体的时候出现错误:Database Signon mypackage wasn't fount on the local machine.这是怎么回事?
需本在配制文件congif.ini中添加数据源。
(4)我用framework manager发布包后,用query studio打开后为什么是这样的呀(点不开的,我是直接从数据库取数据发布包的,不是从cube).
不知其原因!晕倒,重装cognos解决.
(5)怎么调用DTS包,让它执行,ASP、Java(JSP)、ASP.NET都行,怎么调用DTS包?
可以用存储过程调,比较通用,调用DTS的方法
--存储过程方法:
CREATE PROCEDURE my_proc1 AS
EXEC master.dbo.xp_cmdshell 'dtsrun /S /E /N"包名称" /A"ServerName":8= /A"FileName":8="D:\
文件.xls" /A"DataSource":8="数据库名"'
GO
E:.net调用方式:
//说明需要添加 Microsoft.SqlServer.DTSPkg80.Package2Class
///
/// 运行DTS(Data Transformation Services )
///
///
public string runDTS()
{
try
{
string returnValue;
Microsoft.SqlServer.DTSPkg80.Package2Class package = new
Microsoft.SqlServer.DTSPkg80.Package2Class();
string fileName = "C:\\DTStest.dts";
string password = null;
string packageID = null;
string versionID = null;
string name = "DTStest";
object pVerpersistStfOfHost = null;
package.LoadFromStorageFile(fileName,password,packageID,versionID,name,ref
pVerpersistStfOfHost);
package.Execute();
package.UnInitialize();
package=null;
returnValue = "success";
return returnValue;
}
catch(Exception ex)
{
throw ex;
}
}
(6)如何使用模板技术?
参照Report Studio的快速入门教程。
(7)生成cube时出现警告:(TR0210)606 data input conversion or overflow errors occurred.See the log file for details.
原来是指标数据类型搞错啦。一般作为指标的列都是数字型的。
(8)在powerplay transformer中,用事实表中的字段与维表中的字段相同,来建立关联,如果维表和给表之间字段相同,会有什么后果呢?
不用担心,可以用别名。
(9)如何在iqd里面重构表结构,例如,原来只有一个字段,ID(编码结构固定,如1_2_1),在生成cube时,要把它分成三个字段:ID1(值为1),ID2(值为2),ID3(值为3),请问这个sql怎么写呀?
用substr函数。
(10).页面定制问题,如何去除右上角的按钮,以及如何更换头部的图片?
用URL参数,具体参考一文档。
(11).发布cube时客户端与服务器端为什么cube的路径与名称要一致?
便于更新.
(12).如何将表格宽度设为100%?
在Report Studio中选择左下方一箭头,可选择整个页面或整个cross table,再设置宽度属性。
(13).我装c8服务端在配制cognos configuration里配好各变量后,重启服务,最后一步出现错误:42. 17:25:08, 'com.cognos.pogo.services.DefaultHandlerService', 'pogo', 'Failure'.
DPR-DPR-1035 Dispatcher detected an error.
43. 17:25:08, 'com.cognos.pogo.services.DefaultHandlerService', 'pogo', 'Failure'.
DPR-DPR-1035 Dispatcher detected an error.
请问是何故?
Content Store 中所配的Oracle数据库不是utf8或gb2312字符型。或没有连上此数据库。
环境变量没配好,path中加上C:\Program Files\Oracle\jre\1.3.1\bin;D:\oracle\ora92\network\admin;还有可能是oracle数据库的字符集不为utf8或gb2312(content store连接的数据库)。
(14).如何移植package。
在Report Net的Content Administrator中新建输出(New Export),导出zip包至c8/deployment,导入包的过程类似,新建。
(15).用cognos8时,在将报表页面iframe后,分页效果都没了?这是怎么回事呀?
原来是iframe的高度设低了。因为cognos8的report net本身就有iframe,故容易弄乱了。
(16).我要把powerdesigner中建好的表导到oracle中,通过powerdesigner中菜单:数据库-->生成提取脚本,结果出现:
键约束名的最大长度为15个字符,存在索引,存在引用,字段强制不为空,触发器编码最大长度
五种错误或警告。请问如何解决.
(17). 有时重新生成cube时,如果在相同路径下有同名的cube不能覆盖,提示占用。
解决方法:kill ppweb.exe process
(18)请问,在report net上的权限管理与powerplay transformer中的权限管理怎么结合起来呢?transformer中可以设置cube中用户(例如我在access manager中建了一个usera用户)对指标和维度的可见性,但当cube发布包后,在report net找不到usera用户,只有cognos的用户.能不能在report net上设置usera对报表的权限呢?
解决方法:见cognos权限管理 (seedzhang) 文档
(19)一旦powercubes投入使用,用户必须确定一个更新queries和powercubes的时间表,这个如何实现哪?
(20)做报表的时候,在一张报表里面能不能动态选择指标?而不是一个指标就要一张报表。
一个页面可以有多个Cross Tab或List。
(21)什么时候用report studio,什么时候使用query studio比较好。
(22)多种数据源的连接字符串,如XML等如何写。
<1>连接oracle数据库: 就用本机oracle服务名。
<2>连接ODBC数据源: 在ODBC数据源管理器中选择系统DSN选项卡,添加数据源。如Microsoft ODBC for Oracle类型。
<3>连接XML文件: E:\treeData.xml;VALIDATE=ON
(23)cognos8自带jre与java的jre冲突。
解决方法:把\cognos\c8\bin\jre\1.4.2\lib\ext\bcprov-jdk13-125.jar这个文件拷贝到java_home的jdk下的jre目录下的\lib\ext目录下。
(24)cognos8报表中如何自定义样式?
答案:可以修改skin目录下的各种风格样式来修改cognos门户的样式,通过Report Studio来修改报表的样式(文件à属性àUse 1.x Report styles,Page ExploreràClasses),可添加local styles,修改global Styles,也可以在c8\webcontent\schemas\GlobalReportStyles.css文件中来修改,添加。(具体可以可查看帮助,用create style为关键字搜索)
(25)如何解决同期,当期问题?
如果用cognos自带的时间维可以解决这个问题,但如果是自己写的一个日历维表,则就存在问题。