SAP BusinessObjects Information Design Tool (IDT) (File) - Import - Cloud

Talend Cloud Data Catalog Bridges

author
Talend Documentation Team
EnrichVersion
Cloud
EnrichProdName
Talend Cloud
EnrichPlatform
Talend Data Catalog

Note: This bridge is not available in Talend Cloud Data Catalog by default. You need to set up a remote harvesting agent to import metadata from this source. For more information, see Deploying a remote harvesting agent in Talend Cloud Data Catalog Administration guide.

Bridge Requirements

This bridge:
  • requires the tool to be installed to access its SDK.

  • is only supported on Microsoft Windows.

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
Remote Repository Browsing for Model Selection
Multi-Model Harvesting
Incremental Harvesting

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: BoInformationDesignToolUnx version 11.0.0

OVERVIEW
This 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, oledb, ...) 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 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 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 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 bridge runtime be sure that you have:
- valid login access to a BO repository server (the 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 http://metaintegration.com/Products/MIMB/MIMBKnownLimitations.html 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, oledb, ...) are only supported if using a 32bit JVM.
2. Metadata coverage of the BusinessLayer is limited to Folders and Business Objects. 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 trouble shooting 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 option -backup)
Provide a trouble shooting 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
File Select the UNX Universe file to import. FILE
*.unx
*.blx
  Mandatory
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      
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
LDAP
Windows AD
Enterprise  
User name 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  
Password A repository installation of BusinessObjects (BO) requires the user to identify himself/herself using a login name and password. PASSWORD      
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
False
True
True  
Import hierarchies Specify whether hierarchies should be imported.

'True'
The hierarchies are imported.

'False'
The hierarchies are not imported.
BOOLEAN
False
True
True  
Miscellaneous INTRODUCTION
Specify miscellaneous options starting with a dash and optionally followed by parameters, e.g.
-connection.cast MyDatabase1="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
-m <Java Memory's maximum size>
1G by default on 64bits JRE or as set in conf/conf.properties, e.g.
-m 8G
-m 8000M

-j <Java Runtime Environment command line options>
This option must be the last one in the Miscellaneous parameter as all the text after -j is passed "as is" to the JRE, e.g.
-j -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.
-j -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=3128 -Dhttps.proxyHost=127.0.0.1 -Dhttps.proxyPort=3128 -Dhttp.proxyUser=user -Dhttp.proxyPassword=pass -Dhttps.proxyUser=user -Dhttps.proxyPassword=pass

-jre <Java Runtime Environment full path name>
It can be an absolute path to javaw.exe on Windows or a link/script path on Linux, e.g.
-jre "c:\Program Files\Java\jre1.8.0_211\bin\javaw.exe"

-v <Environment variable value>
None by default, e.g.
-v var1=value1 -v var2="value2 with spaces"

MODEL IMPORT OPTIONS
-model.name <model name>
Override the model name, e.g.
-model.name "My Model Name"

-prescript <script name>
The script must be located in the bin directory, 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"

-cache.clear
Clears the cache before the import, and therefore will run a full import without incremental harvesting.
Warning: this is a system option managed by the application calling the bridge and should not be set by users.

-backup <directory>
Full path of an empty directory to save the metadata input files for further troubleshooting.

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 options 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"="SQL SERVER".
The list of supported data store connection types includes:
ACCESS
CASSANDRA
DB2
DENODO
HIVE
MYSQL
NETEZZA
ORACLE
POSTGRESQL
PRESTO
REDSHIFT
SALESFORCE
SAP HANA
SNOWFLAKE
SQL SERVER
SYBASE
TERADATA
VECTORWISE
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 DestinationPath=SourcePath
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 hdfs://host:8020/users/user1/folder/file.csv=/user1/folder
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 /users/John=/data -connection.map /users/paul=/data
On Windows, a given directory like C:\data can be referred to by multiple network drives like M: and N:, e.g.
-connection.map M:\=C:\data -connection.map N:\=C:\data

-pppd
Create the connections and connection data sets in DI/ETL design models. This feature should only be used when intending to export to another DI/ETL tool.

BUSINESS OBJECTS OPTIONS
Note that the bridge's default JRE may not compatible with SAP BusinessObjects depending:
- on the JRE version: e.g. OpenJDK 11 instead of Oracle JVM 8
- or the JRE edition: For XI versions 4.2 and older, a 32 bit JRE is needed for BusinessObjects Universes that use ODBC/OLEDB connections,
Therefore, the bridge should use the JRE delivered with BusinessObjects, e.g.
-jre "C:\Program Files (x86)\SAP BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\win32_x86\jre8\bin\javaw.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 bridge.
- the newer BusinessObjects Information Design Tool (IDT)'s universe.UNX for which a specific JRE can specified as defined below:

-idtJre32 <Java Runtime Environment full path name>
Absolute path to javaw.exe on Windows to be used for IDT, for example
-idtJre32 "C:\Program Files (x86)\SAP BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\win32_x86\jre8\bin\javaw.exe"

-idtJre32m <Java Memory's maximum size>
Maximum size of the memory used by the JRE for IDT, e.g.
-idtJre32m 1G
-idtJre32m 1024M
STRING      

 

Bridge Mapping

Meta Integration Repository (MIR)
Metamodel
(based on the OMG CWM standard)
"SAP BusinessObjects Information Design Tool (IDT) (File)"
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