2

我是 BO 新手,我需要找到 Universe 名称和相应的元数据信息,例如(表名、列名、连接条件等...)。我无法找到正确的开始方式。我查看了数据访问 SDK、语义 SDK。任何人都可以向我提供示例代码或启动过程。我搜索了很多,但我无法找到我查看此链接的任何示例示例,但该代码仅适用于 R2 服务器。

http://www.forumtopics.com/busobj/viewtopic.php?t=67088

高度赞赏帮助......

4

2 回答 2

1

假设您正在谈论基于 IDT 的 Universe,您将需要编写一些 Java 代码。API 的 JavaDoc 可在此处获得

简而言之,您可以执行以下操作:

SlContext context = SlContext.create() ;
LocalResourceService service = context.getService(LocalResourceService.class) ;
String blxFile = service.retrieve("universe.unx","output directory") ;
RelationalBusinessLayer businessLayer = (RelationalBusinessLayer)service.load(blxFile);
RootFolder rootFolder  = businessLayer.getRootFolder() ;

一旦你在 rootFolder 上有了一个钩子,你就可以使用 getChildren() 方法来钻取文件夹结构并访问各种可用的子文件夹/业务对象。

您可能还需要检查 CmsResourceService 类以访问存储在存储库中的 Universe。

于 2014-03-12T17:58:17.253 回答
0

要获得您所追求的信息,需要一个两部分的解决方案。第 1 部分使用 Rebean SDK 查看用于其中使用的 Universe 和对象名称的 WebI 报告。

第 2 部分是打破你最喜欢的 COM 编程工具,因为我尽量避免使用 COM,所以我使用 Excel 宏编辑器,并访问 BusinessObjects Designer 库。我目前拥有的主要代码片段是:

Dim boUniv As Designer.Universe
Dim tbl As Designer.Table
For Each tbl In boUniv.Tables
  Debug.Print tbl.Name
Next tbl

这将打印 Universe 中的所有表。

您需要自行组合这两个部分,以获得 WebI 报告和 Universe 之间的依赖关系列表。

于 2013-03-19T19:18:05.350 回答