译制作品 怎样移植你的POWERPLAY应用程序 中青旅尚洋电子技术有限公司数据仓库事业部 王晓刚版权所有©二00四年八月 一、 移植前的准备工作… 21. 需要进行COGNOS POWERPLAY 应用移植的若干情况… 22. 进行移植需做的工作… 33. 移植前的准备工作… 6二、 将应用程序打包… 61. 导出安全认证信息源… 62. 将Upfront数据打包… 72.1 将Upfront Data Store打包… 72.2 拷贝Upfront显示主题… 93. 拷贝PowerPlay对象… 94. 将文件移到目标环境中… 10三、 将应用程序解包… 101. 导入安全认证信息源… 112. 建立到数据源的联接… 113. 将Upfront数据解包… 123.1 解包Upfront Data Store. 163.2 修改Upfront显示主题… 183.3 修改NewsItem的URL. 183.4 修改网关的URL. 194. 更新PowerPlay. 194.1 拷贝PPSRoot目录、CUBE和报表… 205. 测试目标环境… 21 一、 移植前的准备工作1. 需要进行COGNOS POWERPLAY 应用移植的若干情况¨ 从开发环境向生产环境迁移。¨ 从开发环境向测试环境迁移。¨ 重新部署到不同的机器。在生产环境中,由于性能的原因,可能需要将COGNOS POWERPLAY 应用的部分组件分布到不同的计算机上。你的COGNOS POWERPLAY 应用可能已经安装在一台计算机上,但随着访问用户的激增等原因,可能需要将COGNOS POWERPLAY 应用的一个或几个组件分布到另一台或多台计算机上。¨ 改变存储在Upfront Data Store中的名字空间(Namespace)COGNOS POWERPLAY 应用的安全认证源被引用为名字空间(Namespace),因为Upfront在Upfront data store存贮了指向namespace的一个引用,当你改变了名字空间(Namespace),你也必须随之改变Upfront data store中对namespace的引用。¨ 发布定制的客户化的解决方案为了适应客户的需要,你可能对Upfront中的NewsBoxes 、NewsItems等进行了定制,需要将这些定制的内容移植到目标环境中。2. 进行移植需做的工作当把COGNOS POWERPLAY 应用程序从源环境移植到目标环境时,需做的工作如下:¨ 安全认证信息源把被引用为名字空间的安全认证信息源导出到一个.lae文件中,再将这个.lae文件导入到目标环境中。¨ PowerPlay PPSRoot 目录将PPSRoot 目录从源环境拷贝到目标环境。¨ Mdc文件和PPX报表将多维立方体文件和PPX报表从源环境拷贝到目标环境。¨ Upfront data store中的内容包括Upfront系统信息和NewsIndex。NewsIndex包括NewsBoxes、NewsBox快捷方式、 NewsItems、 NewsItem快捷方式。利用Upfront提供的随机安装的命令行工具将Upfront data store打包和解包。将利用打包工具产生的文件拷贝到目标环境并解包。¨ 定制的Upfront界面文件将定制的Upfront界面文件(即theme)从源环境拷贝到目标环境。当进行移植时,源环境没有软件的迁移,也没有数据的修改。目标环境中,在unpack应用程序之前,相应的Cognos产品必须已经安装和配置好。图1列出了从源环境中迁移的PowerPlay应用程序中的对象。图1图2显示了移植到目标环境的文件和目录以及它们怎样重新集成为目标PowerPlay应用程序。图23. 移植前的准备工作怎样移植PowerPlay应用程序将在下面的两章“打包应用程序”和“解包应用程序”中叙述。为了确保能够成功移植,请严格遵守这两章列出的操作步骤。按照下面的说明可以简化移植过程。¨ 移植前目标环境中必须已安装、配置好Cognos产品。目标环境中的Cognos版本必须和源环境保持一致,版本不一致会出问题。¨ 在源环境中创建一个缓存区缓存区是一个临时文件夹,在这个文件夹中保存当进行pack操作时产生的文件。如果目标环境联接不到源环境从而无法访问缓存区,你应当在目标环境中创建一个相似的文件夹以便保存从源环境中拷贝的文件。必须确保为缓存区设置了适当的安全性,因为进行pack操作时产生的文件是文本格式的,能访问该文件夹的任何人都可以看到这些文件。¨ 确保目标环境可以访问在源环境中使用的数据源移植PowerPlay应用程序时不移植数据源,目标环境中的数据源的逻辑联接名应和源环境完全一样。¨ 在DOS窗口中运行随机安装的pack和unpack命令行实用工具不要选择在开始菜单中运行pack和unpack命令,这两个命令会在运行时提示你输入用户名和口令以进行安全认证。能成功登录到计算机的用户不会被授权执行这两个命令,只有属于根用户类的用户才能运行这两个命令。尽管你可以将口令写进一个批处理文件中以便可自动进行pack和unpack操作,但推荐你使用运行时将口令掩码的命令行方式。二、 将应用程序打包按照下面的操作步骤将PowerPlay应用程序打包:¨ 导出安全认证信息源¨ 导出Upfront data store¨ 拷贝Upfront显示主题,如果定制了的话¨ 拷贝PPSRoot目录¨ 拷贝多维立方体¨ 拷贝用PowerPlay客户端应用程序创建并且不在PPSRoot目录下的PPX报表。¨ 收集执行pack操作过程中产生的文件并拷贝到目标环境中。本章将详细介绍这些操作步骤。1. 导出安全认证信息源Access Manager使用一个唯一的ID来识别每个用户类,这些用户类存贮在被引用为名字空间的安全认证信息源中,如果一个cube使用了名字空间被加以安全性,这些ID也就被存贮在cube中。当你移植PowerPlay应用程序时,存贮在cube中的用户类ID必须和目标环境中的名字空间的用户类ID相匹配。如果不匹配,cube将不可访问,必须重新生成。为了保证这些ID一致,目标环境中的名字空间必须是源环境名字空间的一个完全复制,为了做到这一点,将源环境中的名字空间导出到一个lae文件中,并且覆盖目标环境中的.lae文件。步骤:1) 打开Access Manager管理程序。注意:Access Manager管理程序仅运行在Windows平台上。2) 在认证信息控制面板中,展开目录服务器文件夹并且双击目录服务器3) 单击名字空间,如果需要,请登录。注意:仅当你拥有一个基本的或操作系统级的signon,并且属于一个可编辑名字空间内容的用户类时,才能登录名字空间。4) 单击鼠标右键,从弹出菜单中选择“Export to .LAE File”菜单项打开“Export to .LAE File”对话框5) 从列表中选择一个本地安全认证文件,如果列表中没有列出任何文件,添加一个新文件。关于怎样添加一个新的本地安全认证信息文件,请查看Access Manager管理程序的联机帮助。6) 单击以选择“Empty the Target Namespace”单选按钮。7) 单击“Export” 按钮。当导出操作完成后,产生了一个名为“LDAPtoLAE.log”的日志文件,该日志文件位于和导出的本地安全认证信息文件相同的目录。8) 如果你在源环境中准备了一个缓存区,请将本地安全认证信息文件移到该目录下。2. 将Upfront数据打包用一个名为UpfPack的命令行工具将Upfront data store中的信息打包,如果你定制了Upfront的界面文件,即主题,请拷贝这些文件,因为UpfPack不会将这些文件打包。建议你不要改变Upfront界面文件中用来识别NewsBoxes、 NewsItems和快捷方式的图标的URL。当你在目标环境中解包Upfront时,URL中指定的机器名会被自动更新为你正在其上解包的机器名。然而,如果源环境中的URL被修改了,目标环境中的URL不会自动再生,你必须手工的修改每个图标文件的URL。2.1 将Upfront Data Store打包用命令行工具UpfPack将Upfront data store打包,该命令位于安装Upfront服务器程序的机器的bin目录下。在Windows操作系统下,UpfPack工具利用connect.ini文件中的信息去定位Upfront data store,而在UNIX操作系统下,UpfPack工具利用环境变量得到此信息。执行命令行工具UpfPack将产生下列文件:¨ 一个Upfront包,其中包含Upfront data store的信息,缺省的文件名为UpfPackage.pkg。¨ 一个打包列表,当你移植PowerPlay应用程序时该文件没有被使用,缺省的文件名为PackingList.txt。¨ 一个网关映射指导文件,该文件记录在目标环境中解包Upfront前需要被映射的网关,缺省的文件名为UpfPGInstructions.htm。¨ 一个错误日志文件,记录所发生的错误信息,缺省的文件名为UpfPackError.log。当你执行UpfPack命令前必须确保Upfront data store、ticket server、Netscape Directory Server服务已启动,Ticket server、Netscape Directory Server服务保证只有被成功授权的用户才能打包data store。在执行UpfPack的过程中你可以阻止用户登录Upfront,这不是运行该命令所必须的,但在执行UpfPack的过程中用户所作的修改不会被打包。检查服务已启动的步骤:必须保证Cognos Upfront Data Store, Cognos Ticket Server和Netscape Directory Server服务已经启动。¨ 在Windows平台上,打开控制面板à管理工具à服务,然后检查上面的服务是否已启动。¨ 在UNIX平台上,用ps (process status)命令检查有哪些命令正在运行。禁止用户登录Upfront的步骤:1) 启动Upfront Server管理程序u 在Windows平台上,打开开始菜单à程序à Cognos BIà Administrationà Upfront – Server Administration。u 在UNIX平台上,进入bin目录下,在命令行模式下输入UpfrontAdmin.sh,然后回车。连接对话框打开。2) 输入Upfront服务器的计算机名,然后点击联接。3) 如果需要,请登录。4) 选择是停止单个Upfront服务器还是所有的Upfront服务器:u 停止单个Upfront服务器,单击以选中要停止的Upfront服务器的图标。u 停止所有的Upfront服务器,单击以选中Upfront服务器组的图标。注意:如果Upfront服务器没有被列示,请将其添加在Upfront服务器组下。关于如何添加一个Upfront服务器,请参考Upfront服务器管理程序的联机帮助。5) 从Action菜单中,选择Stop。Cognos Upfront Dispatcher服务被停止。运行Upfront打包工具(UpfPack)当运行UpfPack工具时,你可以接受默认的参数也可以指定所需的参数。
选项 | 描述 | 缺省值 |
-un | 用户名 | 提示输入用户名,该用户必须是Upfront的管理员。 |
-pw | 口令 | 提示输入用户口令 |
-d | 源环境中保存产生文件的目录。 语法格式:-d 盘符:/路径名。 在路径名的最后不要包含一个斜杠;必须保证这个目录被正确设置了安全性,输出文件是文本格式的,这意味着能访问该目录的任何人均可以访问这些文件。 | bin |
-pn | Upfront包文件名和路径。 | bin/UpfPackage.pkg |
-pln | 打包列表文件名和路径。 当移植PowerPlay应用程序时该文件没有被使用。 | bin/PackingList.txt |
-i | 网关映射指导文件名和路径。 | bin/UpfPGInstructions.htm |
-h | 帮助信息。 | 无 |
该工具的语法格式为:UpfPack [-un 用户名] [-pw 口令] [-d 路径] [-pn Upfront包文件] [-pln 打包列表文件] [-i 网关映射指导文件]如果在路径名或文件名中包含有空格,请使用双引号来包含该参数。操作步骤:1) 打开Windows的命令行窗口或进入UNIX的shell。2) 进入Cognos的bin目录。3) 运行UpfPack命令行工具。u 在Windows平台上,输入UpfPack和参数,然后回车。u 在UNIX平台上,输入run-upfpack和参数,然后回车。4) 当提示输入用户名时,输入一个属于Upfront安全管理员的用户然后回车。注意:Upfront安全管理员必须属于一个特殊的用户类,该用户类的成员拥有查看所有用户类的权限,这个权限是通过Access Manager来设置的。5) 当提示输入口令时,输入口令,然后回车。UpfPack开始运行并产生输出文件。6) 如果你在源环境中准备了缓存区,将Upfront包文件和网关映射文件移到缓存区。查看错误日志文件 如果在打包过程中发生错误,在bin目录下会产生一个错误日志文件,查看该文件以发现错误并制定可能的解决方案。操作步骤:1) 在文本编辑器中,打开UpfpackError.log文件。重启Upfront服务器如果你关闭了Upfront服务器以阻止用户登录,请重启Upfront服务器。步骤:1) 启动Upfront服务器管理程序。u 在Windows平台上,点击开始菜单à程序à Cognos BIà Administrationà Upfront – Server Administration。u 在UNIX平台上,进入bin目录下,在命令行模式下输入UpfrontAdmin.sh,然后回车。2) 在联接对话框中,输入Upfront服务器的机器名然后点击联接。3) 如果需要,请输入登录信息。4) 在左侧的面板中,点击Upfront服务器或Upfront服务器组的图标。5) 从Actions菜单中,点击Enable这样Cognos Upfront Dispatcher服务就被启动了。2.2 拷贝Upfront显示主题 如果你定制了Upfront显示主题(theme),请拷贝这些文件:Upfront模板文件 (.utml),Upfront包含文件 (.uinc), HTML文件 (.html)和图片文件 (.gif). UpfPack 实用工具不会将这些文件打包。 步骤:1) 进入Upfront显示主题(theme)所在的目录缺省的位于/Cognos/cer1/webcontent/upfront目录。注意:如果Upfront的组件分布在多个计算机上,HTML文件 (.html)和图片文件 (.gif)位于Web服务器上,而Upfront模板文件 (.utml)和Upfront包含文件 (.uinc)则位于Upfront dispatcher服务器上。2) 如果你在源环境上准备了缓存区,请维持目录结构将Upfront显示主题目录和其子目录拷贝到缓存区。3. 拷贝PowerPlay对象拷贝并移动PowerPlay PPSRoot目录、多维立方体文件(.mdc)和任何不在PPSRoot目录下的PPX报表。 PPSRoot目录包含配置信息(.cfx文件),也可能包含PPX报表,PPX报表是用PowerPlay for Windows、PowerPlay for Excel或PowerPlay Web创建的。当你迁移PPX报表时,相应的多维立方体文件也必须被迁移。步骤:1) 进入PPSRoot目录该目录位于/Cognos/cer1/ppserver目录下。2) 如果你在源环境上准备了缓存区,请拷贝PPSRoot目录到缓存区。3) 进入多维立方体文件所在的目录。4) 将多维立方体文件拷贝到缓存区。5) 找到不在PPSRoot目录下的所有PPX报表。6) 拷贝PPX报表到缓存区。4. 将文件移到目标环境中必须将打包操作过程中收集到的文件移到目标环境中。Upfront打包列表文件,默认的文件名为PackingList.txt,当移植PowerPlay应用程序时该文件没有被使用, 因此不需要移到目标环境中。经过上面的操作,你应该有下面的一些或所有文件:¨ 本地安全认证文件(.lae)。¨ Upfront包文件,默认的文件名为UpfPackage.pkg。¨ Upfront网关映射指导文件,默认的文件名为UpfPGInstructions.htm。¨ Upfront显示主题文件(.utml, .uinc, .html, .gif)。¨ PowerPlay PPSRoot目录。¨ PowerPlay多维立方体文件(.mdc)。¨ PowerPlay PPX报表文件(.ppx)。操作步骤:1) 如果在源环境中准备了缓存区,请先进入该目录。2) 利用任何适当的方法将源环境中的这些文件移到目标环境中。例如,可以将这些文件拷贝到一个CD上,或者将其放到一个目标环境可利用的网络驱动器上,或者利用FTP将其传到目标环境中。三、 将应用程序解包在目标环境中,Cognos的组件,包括PowerPlay、 Access Manager、Upfront必须已经安装和配置好,并且可以访问应用程序打包过程中所产生的文件。请按照下面的操作步骤将PowerPlay应用程序解包:¨ 导入安全认证信息源。¨ 如果需要,建立到数据源的联接。¨ 解包Upfront data store。¨ 如果进行了定制,请将Upfront显示主题(theme)拷贝到目标环境。¨ 如果需要,修改指向Web页或文档的NewsItems的URL。¨ 如果需要,修改网关的URL。¨ 将PPSRoot目录、多维立方体文件和PPX报表拷贝到目标环境。¨ 测试目标环境。本章将详细介绍上面的每一个操作步骤。1. 导入安全认证信息源. Access Manager使用一个唯一的ID来识别每一个用户类,如果一个PowerPlay的多维立方体文件被使用了安全认证信息源即名字空间而加了安全性,这些ID也被存贮在多维立方体文件中。当你移植PowerPlay应用程序时,存贮在cube中的用户类ID必须和目标环境中的名字空间的用户类ID相匹配,如果不匹配,cube将不可访问,必须重新生成。为了保证这些ID一致,目标环境中的名字空间必须是源环境名字空间的一个完全复制,为了做到这一点,将从源环境中得到的lae文件导入、并且覆盖目标环境中的名字空间。步骤:1) 打开Access Manager管理程序。注意:Access Manager管理程序仅运行在Windows平台上。2) 在认证信息控制面板中,展开目录服务器文件夹并且双击目录服务器。3) 单击名字空间,如果需要,请登录。注意:仅当你拥有一个基本的或操作系统级的signon,并且属于一个可编辑名字空间内容的用户类时,才能登录名字空间。4) 单击鼠标右键,从弹出菜单中选择“Import from .LAE File”菜单项。打开“Import from .LAE File”对话框。5) 在列表中选择从源环境迁移过来的本地安全认证信息文件。注意:如果本地安全认证信息文件没有被列出,请确认该文件在目标环境中可用。6) 选择你要导入的本地安全认证信息文件中的名字空间。7) 单击以选中“Empty the Target Namespace”单选按钮。8) 单击“Import”按钮。当导入操作完成后,在和本地安全认证信息文件相同的目录下会产生一个名为“LAEtoLDAP.log”的日志文件。9) 确认导入的名字空间被设为默认的名字空间并且你的用户有访问权限。关于默认的名字空间的更多信息,请参考Access Manager管理程序的联机帮助。2. 建立到数据源的联接当迁移应用程序时,数据源不会随之迁移,在目标环境中你必须利用Access Manager重新建立到数据源的联接。目标环境中的到数据源的联接名必须和源环境中的完全一样。关于如何建立到数据源的联接,请参考Access Manager管理程序的联机帮助。仅仅在Windows NT上,PowerPlay需访问存贮在cognos.ini文件中的数据库联接信息,如果收到一个不能从cognos.ini文件中读联接信息的提示,你必须从Access Manager中将数据源的联接字符串拷贝到cognos.ini文件中。更新cognos.ini文件中的联接信息的步骤:1) 在Access Manager的安全认证信息面板中,展开数据源的文件夹并且点击PowerPlay提示出错的那个数据源。2) 从“Edit”菜单中,选择“Properties”菜单项。数据库的属性对话框打开。3) 在“联接”标签页中,选择并拷贝联接字符串文本框中的信息。4) 在文本编辑器中打开cognos.ini文件。cognos.ini文件位于你的系统盘的WinNT目录下。5) 在cognos.ini文件的“数据库”节中,选择要修改的数据源。6) 用从Access Manager中拷贝的信息替换当前的联接字符串。[DATABASES]GOS=;LOCAL;OD;DSN=GOScer1@ASYNC=0@0/0GOV=;LOCAL;OD;DSN=GOVcer1@ASYNC=0@0/0GODW=;LOCAL;OD;DSN=GODWcer1@ASYNC=0@0/0GOMR=;LOCAL;OD;DSN=GOMRcer1@ASYNC=0@0/0[INFORMATION]The file "C:/WINNT40/cognos.ini" is only used for database connectioninformation.=The file "e:/Program Files/Cognos/cer1/bin/cer1.ini" includes all otherentries used for the cer1 generation of applications.=[Cognos Locations]TRANSFORMER=e:/Program Files/Cognos/cer1/bin7) 保存并关闭该文件。3. 将Upfront数据解包 当解包Upfront时,你可以合并源Upfront data store到目标data store,合并操作仅更新目标Upfront data store的信息,Upfront用户在目标环境中创建的对象,如个人消息箱和已保存的报表,依然保留。你也可以在解包源Upfront data store前删除目标data store中的内容,例如,在一个测试环境中,你可能会想在目标环境中创建一个干净的Upfront data store,当你删除目标Upfront data store并替代以源Upfront data store后,你需要确保Upfront被正确的设置了安全性,关于建立安全性的更多信息请参考Upfront 服务器管理程序的联机帮助。在解包Upfront之前,以预防不测请先备份目标环境的Upfront data store,然后修改规则文件,规则文件名称为UpfUnpackRules.txt,其决定用以解包Upfront data store的命令行实用工具UpfUnpack的行为。在解包之后,如果需要,请修改Upfront显示主题、Upfront的NewsItem的URL和Upfront网关的URL。备份Upfront Data Store为预防不测,在你利用命令行实用工具UpfUnpack解包源环境的Upfront data store前,请先使用命令行实用工具UpfDbAdm备份目标环境的data store,备份文件以一个二进制文件形式产生,以便以后用同样的命令恢复。UpfDbAdm命令位于安装Upfront服务器程序的计算机的bin目录下,该备份命令的语法格式如下:UpfDbAdm -b <文件名>[-q]恢复命令的语法格式如下:UpfDbAdm -r <文件名>[-q] [-p <旧口令> <新口令>]各参数含义见下表:
参数 | 描述 |
-b | 备份Upfront data store。 |
-r | 恢复Upfront data store。 |
-q | 以安静模式运行。 该命令运行时在屏幕上不显示提示和状态信息。 |
-p | 改变Upfront data store的口令。 该口令是Upfront访问Upfront data store时的内部口令。 |
-h | 显示帮助信息。 |
备份Upfront Data Store的步骤:1) 确认已启动Cognos Upfront Data Store服务。u 在Windows平台上,打开控制面板à管理工具à服务,找到该服务。u 在UNIX平台上,利用ps(进程状态)命令查看哪些命令在运行。2) 打开Windows的命令行提示窗口或UNIX shell。3) 进入bin目录。4) 运行UpfDbAdm实用工具:u 在Windows平台上,在命令行下,键入upfdbadm -b <文件名>,然后回车。u 在UNIX平台上,在命令行下,键入run-upfdbadmin -b<文件名>,然后回车。文件名是备份文件的名字。UpfDbAdm实用工具开始运行并且产生备份文件。恢复Upfront Data Store的步骤:1) 打开Windows的命令行提示窗口或UNIX shell。2) 进入bin目录。注意:含有Upfront data store备份的二进制文件必须位于bin目录下。3) 运行UpfDbAdm实用工具:u 在Windows平台上,在命令行下,键入upfdbadm -r <文件名>,然后回车。u 在UNIX平台上,在命令行下,键入run-upfdbadmin –r <文件名>,然后回车。文件名是备份文件的名字。UpfDbAdm实用工具开始运行并且Upfront data store被恢复。修改规则文件规则文件,名为UpfUnpackRules.txt,决定UpfUnpack实用工具的行为,该文件是一个可修改的XML格式的文本文件。 规则文件也被用于映射从源环境中的NewsIndex移植到目标环境的NewsItem的网关。所有在源Upfront data store中使用的网关都记录在一个缺省名为UpfPGInstructions.htm的指导文件中,该文件在执行UpfPack实用工具时产生,使用该文件中的信息去修改列示在规则文件中的网关的映射。 在修改规则文件之前,你应该明白UpfUnpack实用工具的下列行为。创建日期 当NewsIndex中的对象的ID被重新创建时,该对象的日期被设为源Upfront data store被解包时的日期和时间;当ID不变时,对象的日期保留源日期;解包前在目标Upfront data store中不存在的对象,创建日期保留其在源Upfront data store中的日期。在Upfront上点击属性链接可查看对象的创建日期。根NewsBox只能有一个根NewsBox,缺省的名称为NewsIndex。当你将源Upfront data store和目标Upfront data store合并时,源Upfront data store中的NewsBox将替换目标环境中的NewsBox,如果NewsBox的ID不匹配,目标Upfront data store中的NewsBox的ID将保留。父NewsBox的ID当一个NewsBox被打包时,打包信息包含其父NewsBox的ID,这个父ID和目标Upfront data store中的一个NewsBox的父ID相匹配,如果不匹配,该NewsBox不会被解包并且将在日志中记录一条错误信息。用户类当NewsIndex被解包时,指派给NewsIndex中的对象的用户类和目标环境中的名字空间中特定的用户类相匹配,如果一个用户类在目标名字空间中不存在,NewsIndex对象依然会被解包,当一条显示此用户类没有找到的错误信息将被记录入解包日志中。Upfront快捷方式如果一个NewsBox或NewsItem的快捷方式指向的对象在目标Upfront data store中不存在,此快捷方式不会被解包且在日志中会记录一条错误信息。复制管理NewsBox和欢迎使用Upfront NewsItem当你解包Upfront data store时,可能会有管理NewsBox和欢迎使用Upfront NewsItem的两份拷贝,为了避免在随后的合并中出现两份拷贝,利用创建日期判断每一个本属于目标环境的条目并删除之。在你确认从源Upfront data store解包过来的管理NewsBox能成功运行之前请不要删除本属于目标环境的管理NewsBox,你必须拥有一个管理NewsBox以便能从Upfront上添加、修改、删除用户类和维护NewsItem的网关。在规则文件中你可设置下列属性
属性 | 取值(斜体的为缺省值) | 描述 |
一般解包策略规则 | ||
NewsIndex GUID策略 | Preserve/Generate | Upfront利用一个全局唯一ID (GUID)来识别NewsIndex中的每一个对象。 确保"Preserve"为缺省的选项。指向PowerPlay对象的NewsItem的ID也存在于PowerPlay对象中,如果NewsItem的ID重新产生,将和PowerPlay对象中的ID不再同步。 |
用户信息导入策略 | IgnoreSource/MergeInTarget | "IgnoreSource"选项将使所有的个人NewsBox在目标环境中不被解包。 使用"MergeInTarget"选项,如果用户名在目标环境中存在,则解包个人NewsBox,如果用户名在目标环境中不存在,个人NewsBox将不被解包并且一条错误信息被记入日志文件UpfUnpackError.log中。 |
转换规则 | ||
网关 | 无 | 使用这个属性去映射源环境中使用的网关到目标环境中的网关。 所有源环境中使用的网关都被记入一个名为UpfPGInstructions.htm的指导文件中,该文件在运行实用工具UpfPack时产生。 |
属性修改规则 NewsBox | ||
名字修改规则 | Preserve/Replace | 赋给NewsBox的名字。 |
描述信息修改规则 | Preserve/Replace | 赋给NewsBox的描述信息。 |
NewsBox图标的URL修改规则 | Preserve/Replace | NewsBox图标的URL。 |
是否显示给用户的标志 | Preserve/Replace | NewsBox的隐藏属性。 |
VCL修改规则 | Preserve/Replace | 读权限。 |
ECL修改规则 | Preserve/Replace | 写权限。 |
OCL修改规则 | Preserve/Replace | 所有者权限。 |
NewsItem | ||
名字修改规则 | Preserve/Replace | 赋给NewsItem的名字。 |
描述信息修改规则 | Preserve/Replace | 赋给NewsItem的描述信息。 |
NewsItem图标的URL修改规则 | Preserve/Replace | NewsItem图标的URL。 |
是否显示给用户的标志 | Preserve/Replace | NewsItem的隐藏属性。 |
VCL修改规则 | Preserve/Replace | 读权限。 |
ECL修改规则 | Preserve/Replace | 写权限。 |
OCL修改规则 | Preserve/Replace | 所有者权限。 |
动作修改规则 | Preserve/Replace | 与NewsItem代表的查询的相关的动作。 |
NewsItem快捷方式 | ||
名字修改规则 | Preserve/Replace | 赋给NewsItem的快捷方式的名字。 |
描述信息修改规则 | Preserve/Replace | 赋给NewsItem的快捷方式的描述信息。 |
NewsItem的快捷方式的图标的URL | Preserve/Replace | NewsItem的快捷方式的图标的URL。 |
NewsBox快捷方式 | ||
名字修改规则 | Preserve/Replace | 赋给NewsBox的快捷方式的名字。 |
描述信息修改规则 | Preserve/Replace | 赋给NewsBox的快捷方式的描述信息。 |
NewsBox的快捷方式的图标的URL | Preserve/Replace | NewsBox的快捷方式的图标的URL。 |
修改规则文件的步骤1) 在一个文本编辑器中,打开规则文件UpfUnpackRules.txt。规则文件位于安装Upfront服务器程序的机器的bin目录下。2) 如果需要,修改每一个属性的取值。3) 保存并关闭该文件。映射网关的步骤1) 在一个文本编辑器中,打开规则文件UpfUnpackRules.txt。规则文件位于安装Upfront服务器程序的机器的bin目录下。2) 修改BIGateway属性以映射源环境中的网关到目标环境中的网关,你可以使用下面的格式同时映射多个网关:http://host1/cgi-bin/ppdscgi.exehttp://host3/cgi-bin/ppdscgi.exehttp://host2/cgi-bin/ppdscgi.exehttp://host4/cgi-bin/ppdscgi.exe使用缺省名为UpfPGInstructions.htm的Upfront指导文件来识别需要映射的网关。3) 保存并关闭该文件。3.1 解包Upfront Data Store利用位于安装Upfront服务器程序的机器的bin目录下的命令行实用工具UpfUnpack来解包Upfront data store。在Windows平台上,实用工具UpfUnpack利用Cognos的connect.ini文件中的信息来定位Upfront data store,而在UNIX平台上,是利用环境变量来得到此信息。运行实用工具UpfUnpack时,需要下列文件可用:¨ Upfront包,其中包含源环境中的Upfront data store信息,缺省的文件名为UpfPackage.pkg。¨ Upfront规则文件,缺省的文件名为UpfUnpackRules.txt。要得到这两个文件,两种方案可供选择:将这两个文件拷贝到bin目录下,或者当运行UpfUnpack时使用适当的参数来指定它们的位置。运行实用工具UpfUnpack后产生下面的文件:¨ 一个日志文件,其中记录解包的操作信息,缺省的文件名为UpfUnpack.log。¨ 一个错误日志文件,记录当有错误发生时的错误信息,缺省的文件名为UpfUnpackError.log。可能会需要改变被引用为名字空间的安全认证信息源,当你改变了名字空间,你也必须相应的改变Upfront data store中对名字空间的引用。 在Upfront data store中存贮了对名字空间的引用,如果这个名字空间在目标环境中无效,你必须改变被引用的名字空间。例如,目标环境中的名字空间可能会和源环境中的名字空间有差别。当运行UpfUnpack时通过指定-del和-ns参数项来改变Upfront data store中的名字空间,关于这两个参数项的更多信息,请参考“运行UpfUnpack实用工具”一节。在运行实用工具UpfUnpack前必须确保Upfront data store、ticket server和Netscape Directory Server三个服务已启动,ticket server和Netscape Directory Server服务保证只有成功通过安全认证的用户才能解包Upfront data store。如果在解包之前你正在删除目标data store的内容,你必须禁止用户登录到Upfront,如果不是在删除目标data store的内容,不必强制用户不能登录到Upfront,但是,在解包期间,登录到Upfront的用户可能会遇到奇怪的动作并且性能下降。检查服务正在运行的步骤必须保证Cognos Upfront Data Store、 Cognos Ticket Server、Netscape Directory Server三个服务正在运行。¨ 在Windows平台上,打开控制面板à管理工具à服务,然后检查上面的服务是否已启动。¨ 在UNIX平台上,用ps (process status)命令检查有哪些命令正在运行。禁止用户登录Upfront的步骤:1) 启动Upfront Server管理程序u 在Windows平台上,打开开始菜单à程序à Cognos BIà Administrationà Upfront – Server Administration。u 在UNIX平台上,进入bin目录下,在命令行模式下输入UpfrontAdmin.sh,然后回车。连接对话框打开。2) 输入Upfront服务器的计算机名,然后点击联接。3) 如果需要,请登录。4) 选择是停止单个Upfront服务器还是所有的Upfront服务器:u 停止单个Upfront服务器,单击以选中要停止的Upfront服务器的图标。u 停止所有的Upfront服务器,单击以选中Upfront服务器组的图标。注意:如果Upfront服务器没有被列示,请将其添加在Upfront服务器组下。关于如何添加一个Upfront服务器,请参考Upfront服务器管理程序的联机帮助。5) 从Action菜单中,选择Stop。Cognos Upfront Dispatcher服务被停止。运行Upfront解包实用工具(UpfUnpack)当你运行实用工具UpfUnpack时,你既可接受缺省的参数也可指定下面的参数。
选项 | 描述 | 缺省值 |
-p | Upfront包的文件名和路径。 | bin/UpfPackage.pkg。 |
-r | 规则文件名和路径。 | bin/UpfUnpackRules.txt |
-un | 用户名。 | 提示输入用户名,该用户必须是Upfront的管理员。 |
-pw | 用户的口令。 | 用户的口令。 |
-l | 日志文件名和路径。 | bin/UpfUnpack.log |
-ns | Upfront使用的名字空间。 该选项必须和-del选项一起使用,并且仅当从命令行方式运行UpfUnpack实用工具时才能指定该选项,不能在批处理模式下使用该选项。 如果改变了名字空间,必须同时修改CUBE中的名字空间属性,关于这方面的更多信息,请参考“修改CUBE的名字空间属性”。 | 无缺省值。必须指定一个在目标环境中有效的名字空间。 |
-del | 在解包源data store之前删除目标data store中的所有对象。 要使用该选项必须禁止用户登录到Upfront,关于这方面的更多信息请参考“禁止用户登录Upfront的步骤”一节。 解包data store之后,你必须重新修改Upfront的URL,关于这方面的更多信息请参考“修改NewsItem的URL” 和“修改网关的URL”。 | 无 |
-sa | 跳过安全认证。 这个选项在Upfront内部使用,在解包Upfront时不使用。 | 无 |
-w | 在Upfront实用解包工具运行前的等待时间(以秒计),可输入一个0至20区间范围的值。 例如,如果你写了一个程序脚本去启动一个服务器然后运行Upfront实用解包工具,你可以指定一个延迟时间以保证在执行解包操作前服务器已启动并运行。 | 0秒 |
-h | 显示帮助信息。 | 无 |
该工具的语法格式为:UpfUnpack [-p ][-r <规则文件>][-un <用户名>] [-pw <口令>] [-l <日志文件>] [-ns <名字空间>] [-del] [-w <延迟时间>]如果路径名或文件名中包含空格,请用引号包围。步骤:1) 打开一个Windows命令行窗口或UNIX shell。2) 进入Cognos的bin目录。3) 运行UpfUnpack实用工具:u 在Windows平台上,键入UpfUnpack和选项,然后敲回车键。u 在UNIX平台上,键入run-upfunpack和选项,然后敲回车键。4) 当提示时,输入属于目标环境名字空间的Upfront安全管理员的用户名,然后回车。注意:Upfront安全管理员必须属于一个其成员有权限查看所有的用户类的一个用户类,该权限使用Access Manager来设置。5) 当提示时,输入用户口令,然后回车。6) 如果你使用了-ns选项去改变Upfront data store中的名字空间,当且仅当安全管理员的用户名和口令与第四步和第五步输入的不一样时,会提示你输入用户名和口令。实用工具UpfUnpack开始运行并且产生输出文件。查看错误日志文件在解包操作过程中如果发生错误,在bin目录下会产生一个错误日志文件,请查看该文件以发现问题并制定相应的解决方案。操作步骤:u 在一个文本编辑器中,打开UpfUnpackError.log文件。重启Upfront服务器 如果你停止了Upfront服务器以阻止用户登录,现在请重启Upfront服务器。操作步骤:1) 启动Upfront Server管理程序连接对话框打开。2) 输入Upfront服务器的计算机名,然后点击联接。3) 如果需要请登录。4) 在左侧的面板中,单击Upfront服务器图标或者Upfront服务器组图标,只要任何一个可用即可。5) 从“动作”菜单中,点击“Enable”菜单项。这样Cognos Upfront Dispatcher服务已启动。3.2 修改Upfront显示主题如果你定制了Upfront显示主题,请将这些文件从源环境中拷贝到目标环境中。操作步骤:1) 进入目标环境中Upfront显示主题位于的目录。缺省的,该目录为:/Cognos/cer1/webcontent/upfront。注意:如果Upfront组件分布于多个计算机上,.html文件和.gif文件位于安装Web服务器的机器上,.utml 文件和.uinc文件则位于安装Upfront dispatcher的机器上。2) 将Upfront显示主题文件拷贝到该目录,注意保持目录结构。3.3 修改NewsItem的URL如果有指向非Cognos的Web页面或文档的NewsItem,你需要修改这些NewsItem的URL。操作步骤:1) 启动并登录Upfront。2) 点击NewsItem的属性链接。3) 修改指向Web页面或文档的NewsItem的URL。注意:当且仅当指向非Cognos的Web页面或文档的NewsItem的URL属性才可用。3.4 修改网关的URL如果你在运行实用工具UpfUnpack时使用了-del选项,在解包源Upfront data store前删除了目标Upfront data store中的内容,指向每一个Cognos组件和Upfront显示主题的网关的URL将会被源环境中的URL所代替。如果这些URL对目标环境不合适,你必须修改它们。在修改这些URL之前,停止并重新启动Cognos Upfront Administration服务以刷新缓存信息。在修改这些URL之后,停止并重新启动Upfront服务器以刷新Upfront data store。停止并重新启动Cognos Upfront Administration服务的步骤:停止并重新启动Cognos Upfront Administration服务:¨ 在Windows平台上,打开控制面板à服务,找到该服务,点击“停止”菜单项,停止后再点击“启动”菜单项。¨ 在UNIX平台上,进入bin目录,在命令行上键入stop-upfadmin,然后回车,执行完后再键入start-upfadmin,然后回车。修改URL的步骤:1) 启动Upfront Server管理程序。u 在Windows平台上,打开开始菜单à程序à Cognos BIà Administrationà Upfront – Server Administration。u 在UNIX平台上,进入bin目录下,在命令行模式下输入UpfrontAdmin.sh,然后回车。连接对话框打开。2) 输入目标环境中的Upfront服务器的计算机名,然后点击联接。注意:如果该计算机名没有列出,请添加之,关于添加Upfront服务器的更多信息,请查看Upfront Server管理程序的联机帮助。3) 如果需要,请登录。4) 双击Upfront服务器组。Upfront服务器组的属性对话框打开。5) 在General标签页上,修改Web Content根目录的URL。6) 在网关标签页上,修改Cognos组件的URL,然后点击OK按钮。7) 保留Upfront Server管理程序以便进行下面的操作。停止并启动Upfront服务器的步骤:1) 在Upfront Server管理程序的左侧面板中,单击Upfront服务器图标或者Upfront服务器组图标,只要其中一个可用即可。2) 从“动作”菜单中,点击“停止”菜单项。这样Cognos Upfront Dispatcher服务被停止。3) 再次单击Upfront服务器图标或者Upfront服务器组图标,只要其中一个可用即可。4) 从“动作”菜单中,点击“Enable”菜单项。这样Cognos Upfront Dispatcher服务被启动。4. 更新PowerPlay将PowerPlay PPSRoot目录、多维立方体文件(.mdc)和.ppx报表拷贝并移到目标环境中。可能在某些情况下你也需要将PowerPlay模型文件移植到目标环境中,例如:¨ 从开发环境迁移到生产环境。¨ CUBE文件的数据源被修改了。¨ 由于PowerPlay的迁移导致钻取路径的改变。¨ 名字空间改变了。在这些情况下,必须使用PowerPlay Transformer重建PowerPlay模型文件。关于重建PowerPlay模型文件的更多信息请参考PowerPlay文档。4.1 拷贝PPSRoot目录、CUBE和报表将PowerPlay PPSRoot目录、多维立方体文件(.mdc)和.ppx报表拷贝到目标环境中。操作步骤:1) 将PPSRoot目录下的内容从源环境拷贝到目标环境中已存在的PPSRoot目录。该目录位于/Cognos/cer1/ppserver目录下。如果在拷贝过程中有冲突发生,你必须决定是覆盖还是保留原文件。2) 将不在PPSRoot目录下的多维立方体文件(.mdc)和.ppx报表拷贝到目标环境中适当的目录下。配置Cube和.ppx报表当你运行PowerPlay Enterprise Server管理程序联接到一个服务器时,服务器使用PPSRoot目录下的配置文件(.cfx)来设置PowerPlay环境的属性并列示拷贝到目标环境下的CUBE和.ppx报表。对每一个列出的CUBE和.ppx报表你必须修改它的数据源属性以指向目标环境中新的数据源。如果CUBE文件或路径发生了改变,请修改相关的.ppx报表中的引用。修改数据源属性的步骤1) 启动PowerPlay Enterprise Server管理程序。u 在Windows平台上,打开开始菜单à程序à Cognos BIà Administrationà PowerPlay Enterprise – Server Administration。u 在UNIX平台上,进入bin目录下,在命令行模式下输入ppsrvadm.sh,然后回车。连接对话框打开。2) 输入PowerPlay服务器的计算机名,然后点击联接。3) 如果需要,请登录。4) 在右侧的面板中,选择一个CUBE或报表。5) 从“编辑”菜单中选择“属性”菜单项。属性对话框打开。6) 在“General”标签页上,修改位于Cube源或报表源框中的数据源的位置,然后点击“确定”按钮。7) 对每一个拷贝到目标环境中的CUBE或.ppx报表重复步骤4-6。修改CUBE的名字和路径属性1) 在一个文本编辑器中,打开一个.ppx报表并找到类似于下面的一行:。2) 如果需要请修改计算机名和CUBE名称。3) 保存并关闭.ppx报表文件。4) 对拷贝到目标环境中的每一个.ppx报表重复步骤1-3。修改CUBE的名字空间属性 如果你在运行UpfUnpack实用工具时使用了-ns选项以改变Upfront使用的名字空间,你也必须修改被PowerPlay cube引用的名字空间。 操作步骤:1) 在PowerPlay Enterprise Server管理程序右侧的面板中,选择一个CUBE。2) 从“编辑”菜单中选择“属性”菜单项。属性对话框打开。3) 在“Settings”标签页上,找到“Authentication (Web)”节,然后选择名字空间。4) 在文本框中输入新的名字空间,点击“确定”按钮。注意:可供选择的,你也可以修改PowerPlay Server属性对话框中的“CUBE Settings”标签页上名字空间,然后使用“Reset Descendants”命令将新的名字空间应用到相同类型的后裔对象中。测试PowerPlay数据源联接 解包PowerPlay后,请确保CUBE和.ppx报表被正确的配置并可被访问。 测试步骤:1) 在PowerPlay Enterprise Server管理程序右侧的面板中,选择一个CUBE。2) 从“工具”菜单中选择“Open with Browser”菜单项。3) 如果需要请登录。注意:如果无法联接,你可以从登录审计信息中查找原因,关于PowerPlay审计信息,请查阅PowerPlay Enterprise Server管理程序的联机帮助。5. 测试目标环境在移植PowerPlay应用程序后,请测试目标环境中的应用程序。请确保Upfront被正确地设置了安全性并且你的用户可以访问Upfront上的NewsItem,当用户访问一个NewsItem或NewsItem的快捷方式,打开NewsItem或NewsItem的快捷方式代表的CUBE或报表。步骤:1) 打开Web浏览器并输入http://计算机名 /cognos,其中“计算机名”为安装Upfront网关的计算机名。2) 如果需要请登录。3) 在Upfront上,测试安全性并点击NewsItem或NewsItem的快捷方式注:本文译自COGNOS的技术文档《How to Move Your Application》