SAP BusinessObjects Information Design Tool (IDT) (Repository) - Import
Bridge Requirements
This bridge:is only supported on Microsoft Windows.
requires the tool to be installed to access its SDK.
Bridge Specifications
Vendor | SAP |
Tool Name | BusinessObjects (BO) Information Design Tool |
Tool Version | 14.1 to 14.x |
Tool Web Site | http://www.sap.com/solutions/sapbusinessobjects/large/intelligenceplatform/ |
Supported Methodology | [Business Intelligence] BI Design (RDBMS Source, Dimensional Target, Transformation Lineage, Expression Parsing), Graphical Layout via Eclipse Java API on Universe (.UNX) File |
Data Profiling | ![]() |
Incremental Harvesting | ![]() |
Multi-Model Harvesting | ![]() |
Remote Repository Browsing for Model Selection | ![]() |
SPECIFICATIONS
Tool: SAP / BusinessObjects (BO) Information Design Tool version 14.1 to 14.x via Eclipse Java API on Universe (.UNX) File
See http://www.sap.com/solutions/sapbusinessobjects/large/intelligenceplatform/
Metadata: [Business Intelligence] BI Design (RDBMS Source, Dimensional Target, Transformation Lineage, Expression Parsing), Graphical Layout
Component: BoInformationDesignToolRepo version 11.2.0
OVERVIEW
This import bridge requires SAP BusinessObjects SDKs and a specific Java JRE as explained below.
REQUIREMENTS
JAVA REQUIREMENTS
BusinessObjects supports Java 8 only and is not compatible with any version of OpenJDK which may be the default JRE.
Use the Miscellaneous parameter to point to a Java Environment supported by BusinessObjects.
UNX Universes based on JDBC connections are supported with a 64 bit JVM.
For XI versions 4.2 and older, UNX Universes based on other types of connections (ODBC, OLE DB, ...) are only supported if using a 32bit JVM.
You may specify the path to a 32 bit JVM in this option, in order to support UNX universes based on an ODBC connection.
BUSINESS OBJECTS SDK REQUIREMENTS
This import bridge relies on the SAP BusinessObjects Semantic Layer Java SDK in order to import metadata from a UNX Universe. Therefore, the Semantic Layer Java SDK must be properly installed on the computer executing this import bridge.
For XI versions 4.1 and newer, the Semantic Layer Java SDK is supported.
For XI versions 4.0 and older, the Semantic Layer Java SDK is not supported.
If unsure whether the Semantic Layer Java SDK is installed properly, be sure to check the following:
- SAP BusinessObjects Information Design Tool can be started on the machine which the import bridge runs on. It generally is installed as part of the SAP BusinessObjects client tools.
- In Windows Control Panel > Programs > Programs and Features, you see 'SAP BusinessObjects BI platform 4.1 Client Tools'.
- In the BusinessObjects client tools installation directory, you see a folder 'SL SDK'. For example: C:\Program Files (x86)\SAP BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\SL SDK
The required SL SDK is not installed by default. You need to install the SL SDK as an additional component to the Client Tools.
If the 'SL SDK' folder is not present in the client installation directory:
- click the button 'Uninstall/Change' on the 'SAP BusinessObjects BI platform 4.1 Client Tools' to run the installation wizard again,
- Select the Modify option and click Next twice.
- In the 'Select Features' screen, scroll down to Developer Components and check 'SAP BusinessObjects Semantic Layer Java SDK',
- Follow the remaining steps to install the Semantic Layer SDK resources on your machine. The 'SL SDK' folder should now be available.
Also, at import bridge runtime be sure that you have:
- valid login access to a BO repository server (the import bridge must login to the BO platform)
The BusinessObjects BI Platform SDK is based on CORBA technology.
When connecting to a remote server, the CORBA networking layer performs a bi-directional resolution of the server name/address.
Therefore, it is necessary to ensure that the specified server name/address can be resolved in the client environment.
The name resolution is usually successful when the client and server are part of the same enterprise network.
However when connecting from a client network to a server in a different network (for example Amazon AWS),
it may be necessary to configure an entry in the local host file (C:\Windows\System32\drivers\etc\hosts) like so:
1.2.3.4 servername
FREQUENTLY ASKED QUESTIONS
Q: What username and password should I supply as login?
A: Please provide a BO username and password, the same way you would open the universe with Information Design Tool. E.g.
Administrator
If you are not sure about which username and password to use, you should contact your company BO system administrator.
The user should be a member of BusinessObjects groups:
- 'Universe Designer Users' to be able to open universes.
LIMITATIONS
Refer to the current general known limitations at MIMB Known Limitations or bundled in Documentation/ReadMe/MIMBKnownLimitations.html
1. UNX Universes based on JDBC connections are supported. For XI versions 4.2 and older, UNX Universes based on other types of connections (ODBC, OLE DB, ...) are only supported if using a 32bit JVM.
2. Metadata coverage of the BusinessLayer is limited to Folders and BusinessObjects. Other objects (Filters, Hierarchies...) are not supported in 4.1.
3. Some UNX universes may not import correctly, due to additional limitations (OLAP universes, Business Filters).
SUPPORT
Provide a troubleshooting package with:
- the debug log (can be set in the UI or in conf/conf.properties with MIR_LOG_LEVEL=6)
- the metadata backup if available (can be set in the Miscellaneous parameter with -backup option, although this common option is not implemented on all bridges for technical reasons).
Provide a troubleshooting package with debug log. Debug log can be set in the UI or in conf/conf.properties with MIR_LOG_LEVEL=6
Q: How do I provide information to help the support team reproduce an issue?
A: Provide the following files:
- BusinessObjects 14.x (XI R4): using Lifecycle Management Console, create a promotion job that has the required InfoObjects in it. Export the job as BIAR file. Below is the outline (for more details please see "Lifecycle management console for SAP BusinessObjects Business Intelligence platform 4.0 User Guide"):
1. Log into the lifecycle management console application. By default, you will be taken to the "Promotion Jobs" page.
2. Select New Job.
3. Enter the name, description, and keywords for the job in the appropriate fields.
4. In the "Save Job in" field, browse and select the repository folder where you want to save the job.
5. From the Source drop-down list, select the current system.
If the name of the current system is not listed, select the Login to a new CMS option. A new window is launched. Enter the name of the current system along with the username and password.
6. In the Destination drop-down list, select "Output to LCMBIAR File".
7. Click Create. A new job is created and stored in the CMS repository of the current system.
8. Add InfoObjects to the Job (including universes and connections of interest). You can also use the Manage Dependencies option to include the dependents of the selected InfoObjects.
9. Once done adding InfoObjects to the job, click Promote. The "Promote" window appears.
10. Click Export. You can choose to save the resulting BIAR file to a file System or an FTP location.
Send the BIAR file to the support team.
Bridge Parameters
Parameter Name | Description | Type | Values | Default | Scope | |||
System | Enter here the name of the BusinessObjects repository to login to. This is the name of the Central Management Server. This server will be used to login, by default on port 6400. For example: localhost. If the CMS server is configured in a Cluster environment, the cluster name may be specified with the following syntax: cms:port@cluster. E.g. localhost:6400@MYCLUSTER |
STRING | Mandatory | |||||
Authentication mode | Select the login authentication mode to be performed. 'Enterprise' BusinessObjects Enterprise login. 'LDAP' Login using an LDAP server. 'Windows AD' Login using a Windows Active Directory server. Note: Windows AD authentication can be configured using Kerberos configuration files. Update the file $MetaIntegration/conf/conf.properties to specify the Java virtual machine parameters: M_JAVA_OPTIONS=-Djava.security.auth.login.config=C:\Windows\bscLogin.conf -Djava.security.krb5.conf=C:\Windows\krb5.ini For details, see SAP Note 1621106: http://service.sap.com/sap/support/notes/1621106 |
ENUMERATED |
|
Enterprise | ||||
Username | A repository installation of BusinessObjects (BO) requires the user to identify himself/herself using a login. A standalone installation of BO does not require such identification. E.g. Administrator The user should be a member of the BusinessObjects group: - 'Universe Designer Users' to be able to open universes. |
STRING | Administrator | Mandatory | ||||
Password | A repository installation of BusinessObjects (BO) requires the user to identify himself/herself using a login name and password. | PASSWORD | ||||||
Universe ID | Specify the ID number of the UNX universe to retrieve. | REPOSITORY_MODEL | Mandatory | |||||
Import joins | Specify whether joins and contexts should be imported. 'True' The joins and contexts are imported. 'False' The joins and contexts are not imported. |
BOOLEAN |
|
True | ||||
Import hierarchies | Specify whether hierarchies should be imported. 'True' The hierarchies are imported. 'False' The hierarchies are not imported. |
BOOLEAN |
|
True | ||||
Miscellaneous | INTRODUCTION Specify miscellaneous options starting with a dash and optionally followed by parameters, e.g. -connection.cast MyDatabase1="MICROSOFT SQL SERVER" Some options can be used multiple times if applicable, e.g. -connection.rename NewConnection1=OldConnection1 -connection.rename NewConnection2=OldConnection2; As the list of options can become a long string, it is possible to load it from a file which must be located in ${MODEL_BRIDGE_HOME}\data\MIMB\parameters and have the extension .txt. In such case, all options must be defined within that file as the only value of this parameter, e.g. ETL/Miscellaneous.txt JAVA ENVIRONMENT OPTIONS -java.memory <Java Memory's maximum size> (previously -m) 1G by default on 64bits JRE or as set in conf/conf.properties, e.g. -java.memory 8G -java.memory 8000M -java.parameters <Java Runtime Environment command line options> (previously -j) This option must be the last one in the Miscellaneous parameter as all the text after -java.parameters is passed "as is" to the JRE, e.g. -java.parameters -Dname=value -Xms1G The following option must be set when a proxy is used to access internet (this is critical to access https://repo.maven.apache.org/maven2/ and exceptionally a few other tool sites) in order to download the necessary third-party software libraries. Note: The majority of proxies are concerned with encrypting (HTTPS) the outside (of the company) traffic and trust the inside traffic that can access proxy over HTTP. In this case, an HTTPS request reaches the proxy over HTTP where the proxy HTTPS-encrypts it. -java.parameters -java.parameters -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=3128 -Dhttp.proxyUser=user -Dhttp.proxyPassword=pass MODEL IMPORT OPTIONS -model.name <model name> Override the model name, e.g. -model.name "My Model Name" -prescript <script name> This option allows running a script before the bridge execution. The script must be located in the bin directory (or as specified with M_SCRIPT_PATH in conf/conf.properties), and have .bat or .sh extension. The script path must not include any parent directory symbol (..). The script should return exit code 0 to indicate success, or another value to indicate failure. For example: -prescript "script.bat arg1 arg2" -postscript <script name> This option allows running a script after successful execution of the bridge. The script must be located in the bin directory (or as specified with M_SCRIPT_PATH in conf/conf.properties), and have .bat or .sh extension. The script path must not include any parent directory symbol (..). The script should return exit code 0 to indicate success, or another value to indicate failure. For example: -postscript "script.bat arg1 arg2" -cache.clear Clears the cache before the import, and therefore will run a full import without incremental harvesting. If the model was not changed and the -cache.clear parameter is not used (incremental harvesting), then a new version will not be created. If the model was not changed and the -cache.clear parameter is set (full source import instead of incremental), then a new version will be created. -backup <directory> This option allows to save the bridge input metadata for further troubleshooting. The provided <directory> must be empty. The primary use of this option is for data store import bridges, in particular JDBC based database import bridges. Note that this option is not operational on some bridges including: - File based import bridges (as such input files can be used instead) - DI/BI repository import bridges (as the tool's repository native backup can be used instead) - Some API based import bridges (e.g. COM based) for technical reasons. DATA CONNECTION OPTIONS Data Connections are produced by the import bridges typically from ETL/DI and BI tools to refer to the source and target data stores they use. These data connections are then used by metadata management tools to connect them (metadata stitching) to their actual data stores (e.g. databases, file system, etc.) in order to produce the full end to end data flow lineage and impact analysis. The name of each data connection is unique by import model. The data connection names used within DI/BI design tools are used when possible, otherwise connection names are generated to be short but meaningful such as the database / schema name, the file system path, or Uniform Resource Identifier (URI). The following option allows to manipulate connections. These options replaces the legacy options -c, -cd, and -cs. -connection.cast ConnectionName=ConnectionType Casts a generic database connection (e.g. ODBC/JDBC) to a precise database type (e.g. ORACLE) for SQL Parsing, e.g. -connection.cast "My Database"="MICROSOFT SQL SERVER". The list of supported data store connection types includes: ACCESS APACHE CASSANDRA DB2/UDB DENODO GOOGLE BIGQUERY HIVE MYSQL NETEZZA ORACLE POSTGRESQL PRESTO REDSHIFT SALESFORCE SAP HANA SNOWFLAKE MICROSOFT SQL AZURE MICROSOFT SQL SERVER SYBASE SQL SERVER SYBASE AS ENTERPRISE TERADATA VECTORWISE HP VERTICA -connection.rename OldConnection=NewConnection Renames an existing connection to a new name, e.g. -connection.rename OldConnectionName=NewConnectionName Multiple existing database connections can be renamed and merged into one new database connection, e.g. -connection.rename MySchema1=MyDatabase -connection.rename MySchema2=MyDatabase -connection.split oldConnection.Schema1=newConnection Splits a database connection into one or multiple database connections. A single database connection can be split into one connection per schema, e.g. -connection.split MyDatabase All database connections can be split into one connection per schema, e.g. -connection.split * A database connection can be explicitly split creating a new database connection by appending a schema name to a database, e.g. -connection.split MyDatabase.schema1=MySchema1 -connection.map SourcePath=DestinationPath Maps a source path to destination path. This is useful for file system connections when different paths points to the same object (directory or file). On Hadoop, a process can write into a CSV file specified with the HDFS full path, but another process reads from a Hive table implemented (external) by the same file specified using a relative path with default file name and extension, e.g. -connection.map /user1/folder=hdfs://host:8020/users/user1/folder/file.csv On Linux, a given directory (or file) like /data can be referred to by multiple symbolic links like /users/john and /users/paul, e.g. -connection.map /data=/users/John -connection.map /data=/users/paul On Windows, a given directory like C:\data can be referred to by multiple network drives like M: and N:, e.g. -connection.map C:\data=M:\ -connection.map C:\data=N:\ -connection.casesensitive ConnectionName Overrides the default case insensitive matching rules for the object identifiers inside the specified connection, provided the detected type of the data store by itself supports this configuration (e.g. Microsoft SQL Server, MySql etc.), e.g. -connection.casesensitive "My Database" -connection.caseinsensitive ConnectionName Overrides the default case sensitive matching rules for the object identifiers inside the specified connection, provided the detected type of the data store by itself supports this configuration (e.g. Microsoft SQL Server, MySql etc.), e.g. -connection.caseinsensitive "My Database" -connection.level AggregationLevel Specifies the aggregation level for the external connections, e.g.-connection.level catalog The list of the supported values: server catalog schema (default) BUSINESS OBJECTS OPTIONS Note that the import bridge's default JRE may not be compatible with SAP BusinessObjects depending on: - the JRE version: e.g. OpenJDK 11 instead of Oracle or SAP JVM 8 - the JRE architecture: For XI versions 4.2 and older, a 32 bit JRE is needed for BusinessObjects Universes that use ODBC/OLE DB connections, Therefore, the import bridge should use the JRE delivered with BusinessObjects, e.g. "C:\Program Files (x86)\SAP BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\win32_x86\jre8\bin\java.exe" For XI versions 4.3 and newer, a 64 bit SAP JRE is needed for BusinessObjects Universes that use ODBC/OLE DB connections, Therefore, the import bridge should use the JRE delivered with BusinessObjects, e.g. "C:\Program Files (x86)\SAP BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\win64_x64\sapjvm\jre\bin\java.exe" In addition, a BusinessObjects repository may contain two types of Universes that may have different JRE requirements: - a classic BusinessObjects Designer's universe.UNV for which is read by a C++ COM based import bridge. - the newer BusinessObjects Information Design Tool (IDT)'s universe.UNX for which a specific JRE can specified as defined below: -businessobjects.idt.java32.memory <path> (previously -idtJre32m) Sets the maximum size of the memory used by the JRE for IDT, e.g. -businessobjects.idt.java32.memory 1G -businessobjects.idt.java32.memory 1024M |
STRING |
Bridge Mapping
Meta Integration Repository (MIR) Metamodel (based on the OMG CWM standard) |
"SAP BusinessObjects Information Design Tool (IDT) (Repository)" Metamodel BoDesigner |
Mapping Comments |
AliasClassifier | AliasTable | |
Name | Name | |
AliasFeature | AliasColumn | |
Name | Name | |
Association | Join | The "Retrofit Joins" bridge option allows to reverse engineer the simple joins into foreign key relationships, such as simple equi-joins and outer-joins. Complex joins such as theta-joins cannot be retrofited. |
AssociationRole | Join | Represent both ends (Table1 and Table2) of the join |
Multiplicity | Cardinality and Outer | |
Source | Based on the cardinalities | |
AssociationRoleNameMap | Join | Associates the columns of table1 to the column of table2. |
Attribute | Column | |
DesignLevel | as defined by the "Table Logical information" bridge option | |
Name | Name | |
Position | In the order returned by the Designer API. | |
BaseType | Column, Object | BaseTypes are created to represent the columns and objects datatype |
DataType | See datatype conversion array | |
Name | Derived from the datatype | |
PhysicalName | Derived from the datatype | |
CandidateKey | Column | A primary key is created for columns part of tables primary key |
UniqueKey | Set to True | |
Class | Table | |
CppClassType | Set to ENTITY | |
CppPersistent | Set to True | |
DesignLevel | as defined by the "Table Logical information" bridge option | |
Name | Name | |
ClassDiagram | Structure Pane | One default Diagram is created to display the tables and joins used in the universe |
Name | set to <Main Subject Area> | |
ClassifierMap | Join, Filter, Class | Used to hold the traceability of Joins, Filters and Classes, via FeatureMap objects. |
Name | Name | |
Condition | Filter, Join | Used to hold the WhereClause statement of Filters and Joins via a FeatureMap object. |
DatabaseSchema | Owner | If the Universe uses owner names |
Name | Name | |
DerivedType | Object List of Values | |
DataType | See datatype conversion array | |
Name | List Name | |
UserDefined | Set to True | |
DesignPackage | Class | One default Package is created to store the tables and joins used in the universe. The classes are also imported as a tree of logical packages, or flattened into the default package, as set by the "Import Classes" bridge option. |
Description | Class description | |
DesignLevel | Set to LOGICAL_ONLY for Classes | |
Name | Name | |
Dimension | Class, SQL Derived Tables | A dimension is created for each Class containing Objects |
Description | Description | |
Hide | Hide | |
Name | Name | |
Type | Set to Regular by default, set to Fact if the Class holds measure objects Set to View for SQL Derived Tables | |
UserDefined | Set to True | |
DimensionAttribute | Object | Object of dimension or detail qualification |
Description | Description | |
Hide | Hide | |
Name | Name | |
Sort | Sort | |
DrillPath | CustomHierarchy | Custom Hierarchies are imported as MIRDrillPath because they can span multiple MIRDimensions (Classes) |
Name | Name | |
DrillPathLevelAssociation | CustomHierarchy Element | |
Name | Name | |
FeatureMap | Join, Filter, Object | Used to hold the traceability of Joins Condition, Filters Condition and Objects |
Name | Name | |
Operation | Select and Where Clause | parsed SQL expression, empty if simple enough (direct mapping) |
Filter | Filter | |
Description | Description | |
Hide | Hide | |
Name | Name | |
ForeignKey | Join | A foreign key is created to represent the columns involved in the join |
Join | Join | |
Type | Outer | |
UserDefined | Set to True | |
JoinGroup | Join Context | |
Name | name | |
JoinRole | Join | 2 JoinRoles are created for each join |
Multiplicity | Cardinality and OuterJoin | |
Level | Default Hierarchy and CustomHierarchy Element | |
Name | Name | |
LevelAttribute | Default Hierarchy and CustomHierarchy Element | |
Name | Name | |
Name | Name | |
Measure | Object | Object of measure qualification |
DefaultAggregation | Function | |
Description | Description | |
Hide | Hide | |
Name | Name | |
Sort | Sort | |
OlapSchema | Universe | Represents the universe as a container of business objects available for use in reports |
Name | Name | |
Projection | Table Display | Graphical Information |
X | x | |
Y | y | |
SQLViewAssociation | Views are managed as regular Tables in the tool | |
SQLViewAttribute | Views are managed as regular Tables in the tool | |
SQLViewEntity | Views are managed as regular Tables in the tool | |
StoreConnection | Qualifier, Database connection | If the Universe uses qualifier names |
Name | Name | |
StoreModel | Universe | The model is built using the tables, columns, joins, classes and objects defined in the universe |
Comment | Comments | |
Description | Description | |
Name | LongName | |
PhysicalName | Name | name of the .UNV file (8 characters) |
SystemType | Inferred via the connection to the database | |
SystemTypeOld | Inferred via the connection to the database | |
TypeValue | Object List of Values | |
Position | In the order returned by the Designer API. | |
Value | Value |