...
Info |
---|
Two possibilities to connect There are two ways how the Metadata API can connect to your system.
You can decide how you want to connect. For the RFC approach you need to install a Function Module in your development system and transport it through your landscape (more is described here).
|
The Data Lineage Metadata API can be started from any machine (Windows or Unix) which has with access to your SAP System or the underlying SAP HANA database.
Depending on the approach you have chosen, you will need a HANA or , a BW, or an ERP user. Which rights are needed is described in the system-specific pages:
Rights and Authorizations - Embedded AnalyticsSAP S/4HANA
...
Code Block | ||||
---|---|---|---|---|
| ||||
sudo mkdir DataLineage; sudo tar -xzfxvf <DataLineageFileName>.tar.gz -C DataLineage; sudo chmod +x DataLineage/DataLineage.sh; sudo chmod +x DataLineage/Core/DataLineage |
...
Two possible ways to insert a license for Data Lineage API exist.
We sent you a license file or a license hash. What to do with them is described in the subchapters below.
Using license file
Add the file license.lic into the Core folder.
Insert hash
Windows
Code Block | ||
---|---|---|
| ||
DataLineage.cmd insert-license -l <license hash> |
...
Code Block | ||
---|---|---|
| ||
./DataLineage.sh insert-license -l <license hash> |
Using license file
...
Maintain Connection Data
Normal Connection properties
To maintain the connection data you have to change the appsettings.json file.
Per default the appsettings.json file is empty, but the two connection possibilities are shown (see below).
Code Block | ||
---|---|---|
| ||
{
"BwErpSystemConfigurations": [
{
"BwErpSid": "",
"Languages": [ "", "" ],
"Server": "",
"SystemNumber": "",
"Client": "",
"User": "",
"Prefix": ""
}
],
"HanaSystemConfigurations": [
{
"BwErpSid": "",
"HanaSchema": "",
"SchemaBlacklist": [ "", "" ],
"Languages": [ "", "" ],
"Server": "",
"Database": "",
"SqlPort": "0",
"UseSsl": "false",
"User": "",
"ConnectionString": ""
}
]
} |
If you decided on the RFC connection you use the properties below BwSystemConfiguations
. If you decided on the HANA SQL connection you use the properties below HanaSystemConfiguations
.
...
Explaining the properties:
...
Property
...
Meaning
...
Connection
...
Example
...
BwSid
...
The System ID of your BW system
...
RFC & HANA
...
BI2, A4H, …
...
Server
...
The host or IP address of your HANA database
...
RFC & HANA
...
hdb.mycompany.de
...
SystemNumber
...
The system number of the BW system
...
RFC
...
00, 03, …
...
Client
...
The client of the BW system
...
RFC
...
001, 800, …
...
Prefix
...
The prefix of the function module for the RFC connection
...
RFC
...
Z_, /MYCOMP/Z_, …
...
Database
...
The database on your HANA tenant where the BW application is located
...
HANA
...
HN2, HDB, SYSTEMDB, …
...
HanaSchema
...
The schema where the BW application is located
...
HANA
...
SAPBI, SAPA4H, SAPHANADB, …
...
SqlPort
...
The SQL Port of your HANA DB.
Normally the SQL Port is 3<instance number>13.
To figure out the SQL Port use this guide or visit the SAP help for more information.
...
HANA
...
30213
...
UseSsl
...
If you have set up and want to use an SSL connection to your HANA database.
...
HANA
...
true, false
...
Languages
...
List of Languages you want to export
...
RFC & HANA
...
[ "E", "D" ], [ "E" ], ["D", "C", "F"]
...
User
...
User for the BW Data Lineage API. The user needs full select rights on the HANA schema of the BW system.
...
RFC & HANA
...
EncryptedPassword
...
Note |
---|
No manual input. The password must be set via command line (see here). In that case a property EncryptedPassword is stored in the appsettings.json file. If you need to use a clear password, please use the connection string. |
...
RFC & HANA
...
SplitFilesChunckSize
...
Chunck size to split the Details, Buildups, and BuildupDescriptions file to multiple files by a number of entities.
0 - default. Output 1 file
...
RFC & HANA
...
0, 10000, 1000000
Complex connection properties (HANA connection only)
Instead of using the delivered content of the appsettings.json file, you can use a connection string if you need to set more properties for your HANA database. That is important if you use e.g. proxy servers and users.
For more detailed information you can visit the SAP guide.
Example of ConnectionString:
...
In the appsetting.json file you have to configure the connection an other data for running the app.
More information about that can be found here.
Set Password
The following command in the command line sets an encrypted password into the appsettings.json file.
In the following examples, the set password is done for BW-/ERP-systems with an RFC connection. Here the parameter -s <SID> is used. If you have a HANA connection you have to set the password with the parameter -b <HANA HDB>
.
Windows
The following command will open a prompt to insert the password.
Code Block | ||
---|---|---|
| ||
DataLineage.cmd set-password -s <SID> -p <password> |
Command for versions < 1.2.5
DataLineage.cmd set-password -s <SID> -h <HANA Schema> -p <password>
Unix
The following command will open a prompt to insert the password.
Code Block | ||
---|---|---|
| ||
./DataLineage.sh set-password -s <SID> -p <password> |
Command for versions < 1.2.5
./DataLineage.cmd set-password -s <SID> -h <HANA Schema> -p <password>
...
The BW Data Lineage API can be started for one system.
To find all parameters you can use, try --help to get more information.
The following command is for examples only. The complete command list can be found here.
Windows
Run the application with the following command
...
Open the Task Scheduler in Windows
Right Click > Create a task
In the general tab, you can give the task a name and should choose the second option “Execute independently of the user login”. You can also change the user here
In the tab Trigger, you have to set the interval in which the task should be scheduled
In the tab Actions, you have to insert the command which should be run.
...
Unix
Make sure DataLineage.sh has execution rights (chmod +x)
Edit the crontab file (crontab -e), adding the line for job
Example for a job every 5 minutes:
*/5 * * * * /<path>/DataLineage.sh extract-all -s <SID>
Make sure the job is in the jobs list after saving the file (crontab -l)
If the job doesn't run as expected, check the logs (grep "DataLineage" /var/log/syslog)