在BO SDK R4中查找Universe元数据信息

时间:2013-02-27 10:26:06

标签: java business-objects business-objects-sdk

我是BO的新手,我需要找到Universe名称和相应的元数据信息,如(表名,列名,连接条件等)。我无法找到合适的方式开始。我查看了Data Access SDK,Semantic SDk。 任何人都可以提供示例代码或程序来启动.. 我google了很多,但我找不到任何示例 我查看了这个链接,但该代码仅适用于R2 Server。

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

帮助得到高度评价.....

2 个答案:

答案 0 :(得分:1)

假设您正在谈论基于IDT的Universe,您需要编写一些Java代码。 The JavaDoc for the API is available here

简而言之,您可以这样做:

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。

答案 1 :(得分: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之间建立依赖关系列表。