首页 > 解决方案 > 如何使用 java 从 sap 获取宇宙、类、对象、报告名称、报告字段

问题描述

我可以通过java(SDK)连接SAP BO服务器,因为我需要存储所有BO元数据从 BO 服务器进入我的本地数据库(mysql)。我是 SAP BO 的新手。我对此感到震惊。请就此提出任何建议。所有线索都是可观的。

public static void main(String[] args) throws Exception {

      IEnterpriseSession enterpriseSession = null;
      try {
         // Establish connection
         System.out.println("Connecting...");
         IEnterpriseSession enterpriseSession = sessionMgr.logon(user, pass, host, auth);
         IInfoStore infoStore =(IInfoStore)enterpriseSession.getService("InfoStore");
}

我的预期输出是如何以表格形式检索所有 BO 元数据(宇宙名称、类、对象、报告名称、报告列)位于 sql 表中

标签: javasqloraclesdksap

解决方案


从 BO 服务器检索元数据的最简单方法是使用 CMS 查询。您可以将 CMS 查询与 REST API 一起使用。

从您的 cms 中的 Universe 检索元数据的简单示例:

  • API URLhttp://host:port/biprws/v1/cmsquery
  • HTTP 方法:GET
  • 数据格式:应用程序/JSON、应用程序/XML
  • 标头:x-sap-logontoken(您也可以通过其余 api 检索登录令牌)

如果您使用 json,请使用以下请求正文:

{ query:"select * FROM CI_APPOBJECTS WHERE SI_KIND='Universe' order by SI_NAME asc" }

这个博客是一个很好的起点: https ://blogs.sap.com/2017/05/10/query-the-businessobjects-repository-using-bi-platform-rest-sdk-rws/


推荐阅读