cognos问题汇总
- 格式:docx
- 大小:133.27 KB
- 文档页数:35
Cognos问题总结说明:下述问题对应的Cognos版本是8.11.问题:错误DPR-DPR-1035、DPR-CMI-4007不停的往日志里写错误,导致日志文件过大。
原因:1 Cognos服务正常运行但没有进行注册,无法找到ContentManager2 Cognos服务注册正常,且服务显示关闭,但仍然继续写pogo日志,原因是只有boot进程正常关闭, Cognos用到的其他BI 及java进程还在运行,无法正常找到ContentManager报错.解决方案:有以下两种1 注册Cognos,即会有相应的ContentManager,不会因为查找不到ContentManager而报错。
2 UNIX下通过PS -ef|grep BI, PS -ef|grep java查看仍在运行的进程,将其关闭,就不会再查找ContentManager。
2.问题:错误QE-DEF-0374,RQP_DEF-0354,QE-DEF-0144每点一次报表都会发生。
原因:没有生成过滤参数提示页。
解决方案:有以下两种1在报表设计中加提示页,执行步骤如下1.1 单击下图中间的图标,创建提示页图2.11.2 生成的提示页如图2.2图2.21.3在图2.2中设计所需的提示页面,并保存。
1.4重新运行该报表,就会消除上述错误。
2在Cognos提供的sdk调用时可过滤URL在最后面加上&prompt=false。
(建议采用第二种方法解决问题)3.问题:部分报表运行超时,报内存不足的错误(生产环境)原因: 1 有些报表在reportStudio中SQL语句关联比较复杂,将两个查询结果再进行关联,cognos就会调用本地SQL,在本地对结果及进行排序过滤、关联, 没有索引,执行效率不如数据库.2 cognos server中配置的sort buffer size过小解决方案:1将有可能出现本地SQL的查询尽量在数据库中完成,优化数据库设计。
Cognos汇总cognos学习笔记第⼆部分 Query Studio介绍 (p15)在Query Studio中创建⾃助式报表。
选择“包(Packege)”:使⽤Query Studio 和Report Studio操作报表之前都要先选择⼀个“包”。
“包”事先由技术⼈员在Framework Manager中打好并发布。
进⼊门户后可以看到已经发布的“包”。
“包”中只含有数据结构⽽不含数据本⾝。
Query Studio 界⾯:menu: insert data,edit data,change layout,run report,manage fileedit data:filter过滤,sort排序,summarize,format格式,calculate计算,rename重命名change layout:chart,edit title,set web page size,set page breaks,group,pivotrun report:run with all data,preview with no data,view in PDF/excel 2000/CSV/XML format,advanced query optionsmanage file: new report,save,save as查询主题和查询项:模型是来⾃⼀个或多个数据库的数据结构的业务展现。
模型含有若⼲查询主题(query subject),查询主题包含⼀些能够添加到报表中的查询项(query item)。
模型的数据内容来⾃Framework Manager发布的“包”(Package)。
结构如下:模型-->查询主题-->查询项。
查询主题类似“表”,查询项类似“字段”。
Query Studio ⼯具栏 (p21)删除、撤消、重做、运⾏、过滤、排序、汇集、计算、图表、分组、交叉表、去分组、设段、交换、组收缩、组展开给⾃助式报表添加数据:⽅式有:双击(查询项),拖拽(查询项)、(选中查询项)按Insert data。
cognos报表开发常见异常问题解决1,QE-DEF-0368 Unable to decrypt user name and password credentials from the content store. Review and save the Cognos Configuration settings to configure your reporting environment.再Framework中save出现此错误.解决方案:在.../c8/configuration目录下删除csk和..key..文件,重新进入即可2,RQP-DEF-0103 Cross joins are not permitted.Enable cross joins in the model解决方案:1. Open the model in Framework Manager.2. Click the "Project" menu, and then "Edit Governors..."3. Set "Cross-Product joins" to "Allow."4. Publish the package.5. The report should be able to be run without the cross join error now.3,RQP-DEF-0326不允许身份为“{All Authenticated Users, Everyone, Consumers, QueryUserClass_RCDT}”的用户使用自定义SQL解决方案:administrator登陆Cognos Connection 进入安全-》功能,选择Report Studio,点击《用户定义的SQL》设置属性--》权限将改写从父条目获取访问权限勾选上4,UDA-SQL-0458 PREPARE 失败,因为此查询要求在本地处理数据。
Cognos问题汇总:1、在cognos 的transfer中如何做环比同比(如何增加计算列调用cognos自带的函数)在FrameManage里面又是如何做?答复:在transformer里面对指标表重复引用,将时间维度字段PRD_ID修改成不一样的别名PRD_ID(LAST_MONTH),然后新增一个字段取原时间维度字段进行增减操作add_month('PRD_ID(LAST_MONTH)',1)并命名为PRD_ID,这样,从重复指标表里取的指标值就是上期指标值2、在cognos中使用frameManage创建维度时,时间维度如何设置答复:时间维度不需要单独设立,直接使用PRD_ID即可3、在transfer中产生了cube文件后发布报错,测试连接失败,但是在idq文件能够连接上,所有都能过通过,到发布这里测试失败。
答复:请核查是否使用的UTF-8字符集保存的模型文件以及模型文件是否存在错误,transformer里面有核查按钮4、时间列的数据类型为number类型,如何在上面建立维度,是否是先转化为日期类型然后再设定维度,如何设定?答复:可以先选择日期字段,右键属性里改成日期型,再拖拉到显示区使用,也可以直接选择数字型日期字段拖拉到显示区,然后在显示区进行日期型属性的设置,前者方便些5、安装日期来发布立方体进行增量更新时,没有数据的日期即还没有到的日期也建立了立方体如果设置没有数据的日期不建立立方体?答复:在维度显示区里对月,日维度的点属性选择TIME页签把all categories的勾去掉6、cognos在linux环境下的部署问题:Cognos安装成功以后也安装了apache服务器来作为web服务器,但是配置将cognos 发布到apache上去失败:通过浏览器访问cognos服务时,出现cognos了LOGO,但是一闪而过,地址栏显示调用cognos8/cgi-bin下的cgi程序,或者提示下载文件。
1. Data Source 连接错误,错误图示如下解决方法:在Sybase数据库配置的ODBC与客户端配置的ODBC名字要相同。
2.删除无用的Data Source。
解决方法:在门户网站删除,方法,进入门户,点击tool>>Directory DataSource选项卡,选中不需要的DataSource点击删除3.打开FM时出现的错误。
4.发布数据包后打开 Report Studio 时网页出现错误,无内容显示。
解决方法:允许IE插件里面的拦截弹出广告功能。
5.多表之间对应关系1..n还是1..1的错误。
解决方法:把对应关系改动,维度表为1:1,事实表为1:n 。
6.数据库动态更新后,再次显示报表,数据前后没有变化,增加的内容没有显示。
解决方法:一,关闭IE后,重新打开就能显示。
二,点击当前报表的属性,可以设置报表执行计划,每天还是每月的频率执行。
7.立方体时间维度的显示方式由英文改为中文如下。
8.同一网段安装了第二台Cognos8的服务器,在开发端,重新配置Cognos Configuration(服时,将IP改为新的服务器IP后,保存有错误,我们正常访问两台服务器的门户都能进去。
务器端采用的是Windows Server 2003)解决方法:(答案现在不确定,可能如下)把IE增强的安全配置的组件删除,或者安装IIS的时候不选此组件。
9.门户网站内打开立方体显示的工程名,可以在Framework Manager内修改。
10.Sybase数据库查询后,一定要commit,因为查询具有事务功能。
否则,事务不结束。
11.数据库无数据,则不能生成立方体。
12.立方体内不需要的时间删除,在 Powerplay Transformer编辑下处理。
13.安装Cognos8服务器时,采用Window Server 2003操作系统时,要将IIS的默认禁止的web服务打开。
14.安装Cognos8服务器时,服务器的信息存储在Oracle数据库内。
Cognos错误总结文档文档信息版本记录Cognos问题1、UDA-SQL-0458问题描述:UDA-SQL-0458 PREPARE failed because the query requires local processing of the data. The option to allow local processing has not been enabled. UDA-SQL-0580 The use of call statements as derived tables is not supported by the database and requires local processing of the data. RSV-SRV-0042解决办法:open your FM model, select the data source, check properties, Query Processing should be "Limited Local"2、jre冲突问题描述:解决办法:把\cognos\c8\bin\jre\1.4.2\lib\ext \bcprov-jdk13-125.jar这个文件拷贝到java_home的jdk下的jre目录下的\lib\ext目录3、ANS-MES-0005错误问题描述:解决办法:这个问题最终也没得到更好根据一直以来的总结:主要分析可能原因和相应的解决办法,但是有的人用这种办法好用,但我们的客户还是没好用,现写下来做参考。
1、原因是对报表快速的进行拖拽、点击,移动等操作时,有可能会发生这类错误(我自己猜想,这个可能是因为当前的这张报表比较大,cognos的BS报表程序反应不过来,程序内部出现了异常,这个好像是cognos analysis studio自身的BUG。
)当出现这类错误时,不管后面进行何种操作都会报错,关掉后重新打开就不会报错了。
看到会员区有人问关于交叉表行合并的问题,ANDA老大已经给出了完整的解答,在这里特地将ANDA的回复整理成一个完整的实验,供新手参考。
[实验步骤]
1.打开RS,新建立一张交叉表,将部分字段拖入交插表,形成如下模式
此时我们看到,交叉表左边的有两列,月份,指标名称,上方的三列,都是数据,分别为本
期值,累计值,同期值
2.将现有的报表运行,可以看到如下数据
这是原始交叉表最初的形状。
3.接下来我们开始转变,首先在左边的树形菜单中,选中可插入对象,然后选中交叉表空间
这个组件,先插入一个,在交表的上方,也就是和本期值这几列平行的。
效果如下
4.然后在在刚刚插入的那个框下面,在插入两个交叉表空间,使的行合并的效果出来,插入
后效果如下
5.此时,接下来的步骤是非常关键的,选中那些空白的格子,然后在属性中选中方框类型,
设置为无,大家看,效果立刻就变了。
6.然后,在将上方的那个本期值列,拖到左边,大家看,行合并的效果,初步已经出来了。
7.将月份和指标名称标签,分别写入两个空格,效果如下
8.最后,我们查看报表的最终展现效果,发现OK,行合并完成了。
交叉表的行合并实验就是如此,等下再开个帖子,描述列表的行合并实验。
Cognos8.3错误解决方法总结1、jre 路径导致报错这个时候我遇到一个问题,Cognos Configuration 无法正常启动,提示信息忘记截图了,不过这个问题比较简单。
错误提示中已经详细的描述了解决办法,其实是因为我的开发机上有Tomcat,设置了JA V A_HOME。
并且用的是JDK142的包,所以必须先修改其路径为Cognos的jre。
否则启动Cognos Configuration的时候会报错。
2、Cognos8 运行数据库无法连接遇到这个问题,是因为jdbc的缘故,如果是Oracle作为运行数据库,就会遇到。
将oracle\jdbc\lib\classes12.jar拷贝到Cognos8/webapps/p2pd/WEB-INF/lib下即可.3、错误码:CFG-ERR-0103 Unable to start Cognos 8 service.这个错误出现的原因是你的内容库是oracle,而且oracle数据库没有试用UTF-8编码。
将内容库的oracle更改成UTF-8编码就可以解决问题。
4、CFG-ERR-0106 问题这个问题就比较诡异了,反正就是启动超时,但是又没有具体原因,百度也没有任何解决办法。
外事不决问Google,还是Google强大,E文网站上倒是有不少同学遇到此类问题。
其实,是因为开发机上跑的程序太多,资源占用厉害导致的。
最后确定的解决办法是修改配置文件,增加Cognos的启动时间。
修改c8_location /configuration/ cogconfig.prefs增加以下两个配置ServiceWaitInterval=*默认是500,代表0.5秒ServiceMaxTries=*默认360,代表倍数默认应该是3分钟超时。
我增加到1000*500,8分多钟。
5、CFG-ERR-0103这个问题是在我们的Cognos测试服务器上遇到的,首先想到的就是BAIDU,发现也有不少朋友碰到这个问题。
关于cognos服务无法启动的解决方案1.环境变量中JAVA_HOME路径不是cognos自带的jdk路径可以把JAVA_HOME的路径指向:\cognos\c8\bin64\jre\1.5.02.修改\cognos\c8\bin\目录下Startup.bat 和shutdown.bat文件。
删除 if“%JAVA_HOME%”== “”这段代码3.向 \cognos\c8\configuration 路径下的cogconfig.prefs文件中添加两行代码:ServiceMaxTries=360ServiceWaitInterval=10000当服务一直无法启动时可以尝试把这两行代码中的数值调的大一点4.当在服务配置中配置数据库时,相对应的数据库(oracle,db2)一般需要配置成UTF-8字符集。
注意,需要删除配置中原有的Content Store,然后再新建数据库。
5.有时候需要禁用应用防火墙。
设置Cognos Application Firewall的EnableCAF validation属性为“False”。
6.添加数据库的驱动,例如:(1)把\oracle\product\10.2.0\db_1\jdbc\lib中的classes12.zip 修改为classes12.jar,并放到\cognos\c8\webapps\p2pd\WEB-INF\lib路径下。
(2)把\IBM\SQLLIB\java中的db2java.zip修改为db2java.jar,并放到\cognos\c8\webapps\p2pd\WEB-INF\lib路径下。
7.Db2数据库的配置步骤需要注意,以下的步骤为db2的配置步骤:(1)打开db2数据库控制中心,右击“所有数据库”,创建cm数据库,在创建过程中需要把字符集由默认的GBK调整为UTF-8,而且需要添加“容器”的路径(一般是db2的安装路径下的根目录),其他按默认创建即可。
cognos常见错误解决方案汇总1、CAM-CRP-1085 An error occurred while verifying that the security provider classes were loaded. Reason: ng.ClassNotFoundException:org.bouncycastle134.jce.provider.BouncyCastleProvider描述:此问题是在cognos8.4服务启动时报的错环境:AIX5304 、JDK1.5、Oracle10g解决方法:1. 确保将JAVA_HOME 环境变量设置为JRE 位置。
例如,要将JAVA_HOME 设置为已在使用的JRE,路径为Java 位置/bin/jre/版本。
2. 将bcprov-jdk nn-nnn.jar 文件从c8 位置/bin/jre/版本/lib/ext 目录复制到Java 位置/jre/lib/ext 目录。
********************************************************************CFG-ERR-0106 IBM Cognos Configuration did not receive a response from the IBM Cognos 8 service in the time allotted.Check that IBM Cognos 8 service is available and properly configured.描述:此问题是在cognos8.4服务启动时报的错环境:AIX5304 、JDK1.5、Oracle10g参考方法1:c8_location/configuration/cogconfig.prefs文件中加ServiceWaitInterval=number of millisecondsServiceMaxTries=number of times参考方法2:当cogserver.log与tomcat.log都没有报错信息,可能是由于内容存储库连接不上造成,首先检查p2pd/WEB-INF/lib/classes12.jar是否存在,不存在则需要添加此JAR包,倘若存在则查看localhost_log.yyyy-mm-dd.txt,找出错误根源,如果异常如下:javax.servlet.ServletException: Exception processing JAR at resource path/WEB-INF/lib/classes12.jar有可能是你的JAR包的版本不对,再就是编译过程发生了异常,需要删除c8/tomcat4.1.27/work/Standalone/localhost目录下的所有文件,然后重新启动********************************************************[ ERROR ] CAM-AAA-0146 The namespace ‘cognosldap’ is not available.CAM-AAA-0064 The function ‘CAM_AAA_Initialize’ failed.CAM-AAA-0026 The function call to ‘AS_AccManProcessInitialize’ failed with error code:‘-113′环境:AIX5304 、JDK1.5、Oracle10g参考方法:环境变量LIBPATH设置错误,正确配置如:LIBPATH=$ORACLE_HOME/lib32:$ORACLE_HOME/ctx/lib:/cognos/c8/bin参考地址1:/support/docview.wss?uid=swg21346507参考地址2:/support/docview.wss?rs=3442&context=SS9RTN&context=SSWGNW& q1=CAM-AAA-0146&uid=swg21341192&loc=en_US&cs=utf-8&lang=en**************************************************************************CAM-AAA-0064 The function ‘CAM_AAA_Initialize’L_ASSERT(myGetIf !=0);include/CAM_AAA_JniAuthProvider.h(167): CCLAssertError: CCL_THROW:”ORCAM-AAA-0022 The provider ‘/wasapp/reportnetCM/crn/./bin/libCAM_AAA_Auth3rdParty.so’ could not load.”环境:AIX5304 、JDK1.5、Oracle10g解决方法:给c8/bin/libCAM_AAA_Auth3rdParty.so授权chmod 755 libCAM_AAA_Auth3rdParty.so参考地址:/support/docview.wss?uid=swg21346507。
Cognos常见问题汇总(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)、都行,怎么调用DTS包?可以用存储过程调,比较通用,调用DTS的方法--存储过程方法:CREATE PROCEDURE my_proc1 ASEXEC master.dbo.xp_cmdshell 'dtsrun /S /E /N"包名称" /A"ServerName":8= /A"FileName":8="D:\文件.xls" /A"DataSource":8="数据库名"'GOE:.net调用方式://说明需要添加Microsoft.SqlServer.DTSPkg80.Package2Class/// <summary>/// 运行DTS(Data Transformation Services )/// </summary>/// <returns></returns>public string runDTS(){try{string returnValue;Microsoft.SqlServer.DTSPkg80.Package2Class package = newMicrosoft.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, refpVerpersistStfOfHost);package.Execute();package.UnInitialize();package=null;returnValue = "success";return returnValue;}catch(Exception ex){throw ex;}}(6)如何使用模板技术?参照Report Studio的快速入门教程。
cognos dpr-err-2002Cognos DPR-ERR-2002错误解析在Cognos BI系统中,DPR-ERR-2002是一种常见的错误代码。
当用户在使用Cognos时遇到这个错误代码,意味着系统在处理报表时发生了问题。
本文将对这个错误代码进行解析,帮助用户更好地理解问题所在并提供相应的解决方法。
让我们来了解一下DPR-ERR-2002的具体含义。
DPR代表Dispatching Process Region,是Cognos BI系统中的一个重要组件,负责处理用户请求以及分发报表数据。
而ERR-2002则表示在该过程中出现了一个错误。
出现DPR-ERR-2002错误的原因可能有很多,下面将介绍几种常见的情况及相应的解决方法。
1. 服务器连接问题DPR-ERR-2002错误有时可能是由于与Cognos服务器的连接问题引起的。
这可能是由于网络故障、服务器故障或服务器过载等原因导致的。
解决这个问题的方法是检查网络连接是否正常,确保服务器正常运行,并在需要时联系系统管理员。
2. 数据库连接问题另一个可能导致DPR-ERR-2002错误的原因是与数据库的连接问题。
Cognos系统需要与数据库进行交互以获取报表数据,如果数据库连接出现问题,就会导致报表无法正常生成。
解决这个问题的方法是检查数据库连接是否正常,确保数据库服务器正常运行,并确保数据库凭据正确。
3. 报表设计问题有时,DPR-ERR-2002错误可能是由于报表设计问题引起的。
这包括报表中的错误公式、错误的数据源配置或错误的数据模型等。
解决这个问题的方法是检查报表设计,确保公式正确、数据源配置正确,并确保数据模型与报表需求匹配。
4. 系统配置问题DPR-ERR-2002错误可能是由于Cognos系统的配置问题引起的。
这可能涉及到配置文件的错误设置、系统参数的错误配置或系统组件的错误安装等。
解决这个问题的方法是检查系统配置,确保配置文件正确、系统参数正确配置,并重新安装系统组件(如果有必要)。
Cognos开发技巧总结文档1实现目录树展开功能在列表中实现目录树展开功能1.插入一个列表,拖入5个字段,并且对运营商所在地分组2.添加运营商所在地的页眉3.拆分运营商所在地的单元格4.解锁,将运营商所在地的汇总拖到运营商处5.删除运营商所在地6. 按住CTRL,分别拖动本周新增用户数、今年新增用户总数、期末用户总数到运营商所在地的页眉处7. 在report page中插入HTML控件,然后拷贝如下代码进去下面代码主要是定义了两个函数,一个用于目录树的展开与缩进,另一个用于页面初始化时隐藏一些数据,下面代码只支持到2层目录,更详细的含义可参考的在交叉表中实现目录树功能的注释。
代码如下:<script>function ExpandCollapse( el ){= "/cognos8{var trCurrent = ( i );if(0).firstChild&& ( 0 ).getElementsByTagName( "IMG" ).length ){if ( (0). =="" && (0). =="20px" ){{(0).getElementsByTagName("IMG").item(0).src = "/cognos8/images/";}}else {break;}}else {}}}function StartHidden(el){{var trCurrent = (i);{}}}</script>8.拖入一个HTML项目插入到运营商单元格前面,修改成数据项,并修改表达式运营商中HTML控件代码如下:'<img onclick=''ExpandCollapse(this)'' src=''/cognos8/images/'' style=''cursor:hand; vertical-align:middle; margin-right:2px''/><span onclick=''ExpandCollapse'' style=''cursor:hand''>'+ [orc82].[D_OPERATIONROLES].[运营商所在地] + '</span>'9.删除掉运营商所在地10.设置运营商的填充为左侧2011.增加图片增加树形的图片,空白图片到cognos相应的图片目录12. 增加列表页脚(注意,这里的HTML控件一定要放入表页脚里面,否则不能实现隐藏数据的功能),并拷贝HTML代码,删除掉列表页脚几个字代码如下:<img onload='StartHidden(this)' src='/cognos8/images/'/>13.选择列表,并设置列表每页行数为9999(这样就不用再翻页了)14.这样一个树状报表就做好了,运行报表,查看结果2cognos 报表查询条件导出以EXCEL2007,EXCEL2003,PDF格式导出报表时,一般输入的查询条件没有一起导出,希望将查询条件一起导出来。
献给所有cognos新手关于: 基于维度(cube)建立的报表的过滤条件参数解决OR-ERR-021 问题若您已经建立好过滤条件,只要求解决error,请略过第一部分.第一部分:建立维度的过滤条件首先使用Report Studio 打开要加过滤条件的报表.1点击查询资源管理器,要加过滤条件的查询.2 展开要加过滤条件的维度,这里选择的是区划key3将这树状拖入到右边的数据项中,插入层级选择所有层级.4将数据项拖到明细过滤器中,写表达式定义添加参数过滤,验证一下即可.第二部分与前台交互(url方式)若要和前台交互,需以下几个步骤说明:访问的url包括以下url最基本的地址,加上特定的参数.http://<server-name>/cognos8/cgi-bin/cognos.cgi?b_action=xts.run&m=portal/launch.xts若要查看report运行的html需要加以下参数:1ui.tool=CognosViewerui.tool 打开文件的方式,可选CognosViewer/AnalysisStudio2 ui.object= /content/package[@name='pk_ds_yjzs__6']/report[@name='yjzs_rs_2']ui.object 对象的搜索路径(可以在cognos门户->IBM Cognos内容->报表所在文件夹->报表属性->查看搜索路径ID URL 中找到)具体步骤如下:点击cognos内容找到报表所在文件夹点击报表操作中的第一个图标查看属性点击搜索路径id 和URL复制搜索路径3 ui.action=runUi.action 对文件的操作方式run 运行报表,还有其他属性这里不再继续赘述 .4 p_qh=[ds_yjzs__6].[区划key].[区划key].[区划key1]->:[PC].[@MEMBER].[330100]P_qh 指的是传入的参数,与上面表达式中定义的区划相对应,(*千万记得传入的参数需要以p_开头)可以是一个也可以是多个.记得用&分开.因为是基于维度的过滤条件,所以普通的传值,例如P_qh=330100 cognos不会识别,会报错,意外类型的参数值:它只能识别维度内的member,所以,要加的参数应该是这种格式的:[ds_yjzs__6].[区划key].[区划key].[区划key1]->:[PC].[@MEMBER].[330100]它是怎么来的呢? 打开查询,选择加过滤条件的维度数状结构在这里成员中的每一项都是可以加到过滤条件中的,查看的方法,右键点击[区划key],属性,成员唯一名称复制下来也可以选择[区划key]下级的其他成员,例如衢州,5 run.prompt=falseRun.prompt 是否显示提示页面,默认为true显示,这里选为false不显示 .完整url实例:(*参数名称区分大小写切记)http://192.168.1.103/cognos10/cgi-bin/cognos.cgi?b_action=xts.run&m=portal/launch.xts&ui.tool= CognosViewer&ui.object=/content/package[@name='pk_ds_yjzs__6']/report[@name='yjzs_rs_2']&ui.action=run&p_rylx=[ds_ yjzs__6].[区划key].[区划key].[区划key1]->:[PC].[@MEMBER].[330100]&run.prompt=false这里运行报表有一个常见的问题,就是乱码的问题,如果url中有中文字符串,需要进行转码.(记得只对参数值转码即可,千万别把整个url都进行转码了,转换的编码使用utf-8即可)Java中使用.URLEncode.encode()转码即可,其他的还没有试过,有别的事例希望大家share一下.除了url也可以使用表单实现附:当过滤条件可能为多值的时候只需要在url中多传参数即可&p_qh=[ds_yjzs__6].[区划key].[区划key].[区划key1]->:[PC].[@MEMBER].[330100]&p_qh=[ds_yjzs__6].[区划key].[区划key].[区划key1]->:[PC].[@MEMBER].[330300]上面这个问题困扰了我很长时间,在网上提问,搜索也找不到答案,最后贝克汉姆的一个回答帖子给我了启示.现在将解决办法记录下来,希望这个问题不要再困扰更多像我一样的新手们.。
CognosCube的常遇问题1. 与数据相关的考虑事项对源数据进行分析是确定数据质量、存储方式、源数据类型和所需准备工作的重要一步。
1.1 清洁合并数据对数据进行预处理可以带来性能上的提高:·如果源数据只含有模型所需的信息,将会加快Transformer 的读取时间。
例如,如果在数据源中包含了一些没有用的列,那么即使在模型中没有用到这些列,Transformer 也会花费额外的时间对它们进行处理。
·数据合并可以减少被读取的记录的数量。
Transformer读取的记录数量越少,PowerCube生成的时间也就越短。
1.1.1 提示·当设计将在Transformer中所使用的数据源时,要尽量只包含那些生成模型所需的列,使处理时间最小化。
如果包含了不需要的列,可能就会对数据源的处理时间产生影响。
·在可能的情况下,请保持Transformer模型中的类别结构,这样就可以减少对它们进行重建所需的多余的处理过程。
·如果模型中包含了较长的描述,我们推荐您使用已经含有和描述相关联的类别的模型来生成PowerCubes。
1.2 定时(Timing)定时控制(在数据源属性页上)可以控制Transformer在什么时候对数据源进行处理。
首先应该执行结构型数据源来创建模型中的类别结构。
完成这一步后,如果在PowerCube生成过程中不需要执行它们(数据源中没有添加新的类别,并且含有这些类别的模型已经得到保存) ,那么可以将数据源的定时功能(timing)设置如下:有些结构型数据源代表一种易变动的结构,这种结构需要在每次生成PowerCube时对这些类别进行更新。
可以将这种类型的数据源的定时功能设置为在创建PowerCube的类别生成阶段来运行。
事务型数据源随着每次生成PowreCube时度量值所需的新数据的变化而不断发生变化。
事务型数据源在PowerCube创建过程中执行来提供度量值:1.3 验证类别唯一性,最大化数据访问的速度在数据源属性页上有两个用于唯一性验证的设置。
1。
在cognos中调用存储过程的结果集来生成报表遇到的报错和解决方法1)创建自定义类型包create or replace package cc11.pkg_my_types is-- Author : SONGJIE-- Created : 2008-9-18 14:42:08-- Purpose : 自定义的类型-- Public type declarationstype cursorType is ref cursor; --定义游标结果集end pkg_my_types;2)创建返回结果集的函数create or replace function cc11.f_get_cur_result(intID NUMBER ) return cc11.pkg_my_types.cursorType IS rc cc11.pkg_my_types.cursorType;sqlstr VARCHAR2 (500);BEGINif intID=0then--静态测试,直接用select语句直接返回结果open rc for select prod_id,created_date,state,block_reason from cc11.prod;else--动态sql赋值,用:w_id来申明该变量从外部获得sqlstr := 'select prod_id,created_date,state,block_reason from cc11.prod where prod_id>:aa';--动态测试,用sqlstr字符串返回结果,用using要害词传递参数open rc for sqlstr using intid;end if;return rc;END f_get_cur_result;3)创建返回结果集的存储过程create or replace procedure p_test_get_prod(initID number ,rc out cc11.pkg_my_types.cursorType ) as sqlstr VARCHAR2 (500);beginif initID=0thenopen rc for select prod_id,created_date,state,block_reason from cc11.prod;elsesqlstr:='select prod_id,created_date,state,block_reason from cc11.prod where prod_id>:aa';open rc for sqlstr ;end if;end;4)在sqlplus中用存储过程回显结果集的方法:var iable cc refcursor // var cc refcursorexec cc11.p_test_get_prod(0,:cc)print cc--注意:此存储过程的方法不能在pl/sql Developer 中实现5)用函数回显结果集的方法select pkg_test_get_prod.get(0) from dualselect cc11.f_get_cur_result(100) from dual;6)在cognos中以存储过程作为数据源来生成报表重点:数据源的属性要改设置(设置成下图所示的结果)(说明:cognos创建报表的其他操作步骤这里不作详细的说明,重点是指出需要引起注意的配置问题)说明:Query Processing 和Rollun Processing要改成Local选项,否则发布模型时会报错(如下)注意以下文字包的路径生成的报表:get_prod_from_procedure。
cognos系统管理eldersun2012-6-27 21:43Cognos 10流控功能Cognos的流量控制是基于用户体验的,它不是保护系统资源的直接手段,而是保证用户体验的手段,可以通过设置报表请求可以在队列中的最大等待时间来避免用户的过长时间等待,方法是在Administration中的Dispatcher & Services属性中设置:默认是240s,通常情况下允许在线请求在队列中等待240s显然太长了,如果系统压力太大的情况下,使用默认设置可能出现如下情况:当Cognos系统在超载情况(远远大于系统的处理能力)下运行,经过一段时间后,系统单位时间内能够处理的事务数(TPS)很快下降到零,此时通过后台观察Cognos服务器,发现运行Cognos的服务器负载也随之下降,说明系统出现拥塞,因此虽然系统资源空闲,但是无法继续处理事务,显然,我们一般不希望系统在负载过重的时候出现绝对不能处理事务的情况,比较理想的情况应该是合理的拒绝一部分请求,而保证部分请求能够继续运行,通过缩短”Query time limit of the report service(seconds)“从默认的240s调整为5秒,同等压力情况下观察系统的运行情况如下:当适当缩短队列的最大允许等待时间后,系统系统在高负载的情况下能够持续提供服务,但同时存在大量超时拒绝的情况,未完,继续阅读#cognos系统管理评论(1)转载(1)eldersun2012-3-9 10:53【Cognos 10】Dispatcher 路由使用的问题在Cognos 8版本中,可以使用单独安装的CM上的dispatcher(需要在Configuration中手动开启)作为负载均衡的dispatcher,但在Cognos 10中,这一方式无法应用于Cognos 10中的Business Insight功能,而除此之外的其它功能都可以正常使用,在部署使用时需要注意!#cognos系统管理评论转载eldersun2012-2-16 16:06【Cognos10新特性】使用JXM进行JVM监控在Cognos 10.1.1新版本中,Cogconfiguration中提供了配置JMX的能力,通过开启JMX可以使用jdk自带的jconsole等工具对JVM进程进行更为详细的跟踪,同时还可以执行Cognos 10中没有在portal中开发的一些操作方法,如单用户跟踪等,Configuration的设置方法如下:设置后可以通过JCONSOLE进行监控JVM的内存、线程等信息。
但是该方法仅限于Content Manager服务器上使用,对于Application层的应用,仍然需要手工配置启动脚本实现。
#cognos系统管理评论转载eldersun2012-2-16 15:59【Cognos10新特性】64位应用模式对于Cognos 10来说,新增的64安装包,可以兼容的支持32位应用,该配置项对于Application层应用有效,Cogconfigration设置方式如下:如上图,虽然安装了64位Cognos10应用,但只有在设置了64位运行模式下才能够真正发挥64位的能力,该设置应该是仅对BIBUS进程生效。
#cognos系统管理评论(1)转载eldersun2012-2-10 11:16Cognos10的进程关系Cognos10的进程结构和以往版本略有不同,在windows环境下如下:其中第一个JAVA进程是运行Cognos应用的进程,第二个JAVA进程是DQM用来内存计算与缓存的进程,CAM_LPSvr进程是CM用于实现认证服务的进程,cgsLauncher是新增进程,是Cognos新版的图形引擎(Cognos graph Server)的管理进程,BMT进程作用还不是很清楚。
另外,在不同的操作系统上,进程的名称和存在形式可能有些差异,比如在AIX 上,cgslauncher进程可能为cgsserver.sh,并且在进程的关系中和windows 上不太一样。
#cognos系统管理评论转载eldersun2012-1-16 16:41Cognos对JVM内存使用的研究(一)在报表执行过程中,JVM内存使用不明显,但是当下载后台已经生成的报表(保存在资料库Content Store中)内存使用频繁,使用gcview对gc 日志的跟踪结果:报表在后台执行过程中和报表服务器空闲时的内存使用表现类似;在报表第一次下载后再次下载,下载速度明显加快,说明系统有缓存:重新下载结果时的内存缓存仅仅对当前会话有效,即便是同一用户在不同浏览器登录也不能从这些缓存中获益,另外,在间隔一定时间后,这些缓存将从内存中清空,下载的速度又同第一次下载一样。
在一个PC服务器上,使用本地硬盘的情况下、在局域网内,第一次下载的速度为40k左右,第二次有缓存的情况下下载为200k左右(是数据库的缓存还是Cognos的缓存在起效?),可见,以大对象方式存储在资料库中的结果报表访问的效率不是很高,这个在使用过程中需要关注!未完,继续阅读#cognos系统管理评论转载eldersun2012-1-12 16:14修改Cognos 自带的tomcat启动参数在有些情况下,希望跟踪Cognos在运行过程中的一些细节,需要在JVM的启动命令上增加一些启动变量,如收集GC日志信息,如果是使用命令行方式启动tomcat那么直接将相关参数添加到命令行的参数上就可以了,但Cognos使用的tomcat是cogbootstrap的子进程,即由cogbootstrap负责启动的,那么想要实现这一目的,就需要了解cogbootstrap是如何启动JVM的。
在Cognos安装目录的bin下有一个配置文件bootstrap_linuxi386.xml(linux系统,其它系统类似),使用文本编辑器打开内容大致如下:上述内容的<param condName="${java_vendor}"condValue="Sun">-XX:MaxPermSize=128m</param>段就是具体的启动参数,可以按照上面的样式增加如下一行用来收集gc日志:<param condName="${java_vendor}"condValue="Sun">-Xloggc:/home/cognos/cognos.gc</param>同样还可以增加其它参数到JVM的启动命令行。
未完,继续阅读#cognos系统管理评论转载eldersun2011-12-5 10:34Cognos 10流控功能Cognos的流量控制是基于用户体验的,它不是保护系统资源的直接手段,而是保证用户体验的手段,可以通过设置报表请求可以在队列中的最大等待时间来避免用户的过长时间等待,方法是在Administration中的Dispatcher & Services属性中设置:默认是240s,通常情况下允许在线请求在队列中等待240s 显然太长了,如果系统压力太大的情况下,使用默认设置可能出现如下情况:当Cognos系统在超载情况(远远大于系统的处理能力)下运行,经过一段时间后,系统单位时间内能够处理的事务数(TPS)很快下降到零,此时通过后台观察Cognos服务器,发现运行Cognos的服务器负载也随之下降,说明系统出现拥塞,因此虽然系统资源空闲,但是无法继续处理事务,显然,我们一般不希望系统在负载过重的时候出现绝对不能处理事务的情况,比较理想的情况应该是合理的拒绝一部分请求,而保证部分请求能够继续运行,通过缩短”Query time limit of the report service(seconds)“从默认的240s调整为5秒,同等压力情况下观察系统的运行情况如下:当适当缩短队列的最大允许等待时间后,系统系统在高负载的情况下能够持续提供服务,并保护系统资源未完,继续阅读#cognos系统管理评论转载eldersun2011-11-9 15:35【Cognos10故障分析】QE-DEF-0285Cognos 10 在64位windows 2008、Oracle 32位客户端安装后,配置Oracle数据连接出现如下错误:QE-DEF-0285 The logon failed.QE-DEF-0323 The DSN(ODBC)/ServiceName is invalid. Either the DSN is missing or the host isinaccessible.RQP-DEF-0068 Unable to connect to at least one database during a multi-database attach to 1 database(s)in: ora-db UDA-SQL-0031 Unable to access the "ora-db" database.UDA-SQL-0532 Data Source is not accessible: "testdb".ORA-12154: TNS: 无法解析指定的连接标识符这个原因是因为Cognos安装目录中包含了(),如:C:\Program Files (x86)\ibm\c10另外,逻辑数据源创建时输入的参数不正确也可能产生这样的错误。
难道出厂的时候没有在windows 2008 x64上进行过默认安装的测试?还是在这种场景下没有和Oracle连接一下试试?这条鱼漏的有点大了。
网上相关的内容:/club/thread-13088-1-1.html未完,继续阅读#cognos系统管理评论转载eldersun2011-11-9 14:12【官方资料解读】关于IBM Cognos 10 的64位产品All IBM Cognos BI 10.1 32-bit versions will integrate with 32-bit 3rd party libraries only. IBM Cognos BI 10.1 64-bit installs will integrate with 64-bit Java environments only, other integration points require 3rd party 32-bit libraries.IBM Cognos 10的64位产品仅限JAVA实现的部分,报表引擎及其它第三方链接库都是使用32位。