The SAP Landscape Transformation Replication Server (SLT) is a data replication tool that uses database triggers to perform change data capture (CDC), thus enabling efficient data replication from source SAP systems to a target system.
The SLT and the Palantir Foundry Connector 2.0 for SAP Applications ("Connector") can be configured to work together to enable CDC replication from SAP to Foundry.
In this setup, an SLT configuration will be created with a dedicated context (queue alias).
To replicate an SAP table to Foundry, a Foundry dataset sync will be configured per object. Once a dataset sync is configured, SLT will configure triggers on the relevant SAP object and changes to the object in SAP will then be captured and stored in the queue in the SLT server for an ODP (Operational Data Provisioning) scenario. Foundry will poll this queue on a preconfigured schedule to synchronize these changes to the Foundry dataset.
When a Foundry dataset sync is first configured for an SAP object, SLT will perform a full load. Consecutive triggers will fetch only the changes for the object. The purging of SLT queues is managed by SLT.
You can also configure a Foundry dataset sync to have SLT perform a full load (snapshot) of specific SAP objects rather than operate in CDC mode (incremental).
This guide assumes the Connector has already been installed on the instance. You can review installation instructions for the Connector.
Ensure that the following SAP notes are implemented on the SLT system:
1660374
– Fetch does not wait long enough; timeout2215583
– Error due to moved data content during extraction from ODQEnsure that the following SAP notes have been read and the relevant steps followed where applicable:
2697016
– Unable to replicate table in CNV_IUUC_DB_CONN131 - Other configuration have different trigger settings - SAP Landscape Transformation Replication Server.2787584
- Authorization issues in LTRC despite user having SAP_ALL - SLT3032108
- Is 1:N replication supported? - SLTIn SAP SLT scenarios, there can be 1:4 registrations (max 4 consumers) for a table in older DMIS versions. Starting with DMIS 2018 SP4, SAP's new CDC functionality was enabled and there is no longer a limit on the number of consumers allowed.
Using the Connector with SLT can be resource-intensive for the SAP system. Therefore, official SAP sizing documents should be reviewed for SLT before starting replication. Prior to beginning data extraction from the SAP environment, ensure there are free background and dialog processes on the SLT server (and also the SAP Application Server where the Connector is installed if SLT and the Connector are in different servers).
SM50
to see if there are free background and dialog processes. If there are no free processes, transferring data to Foundry will fail.Only one of steps 2a and 2b is required. We recommend following step 2a and using the Post-Installation Wizard. Steps 3 and 4 are only required for a remote SLT scenario.
To create a Remote Function Call (RFC) connection that SLT will use to replicate data from the SAP source system, refer to Create an RFC connection.
To create an SLT configuration using the Connector Post-Installation Wizard, use the /n/PALANTIR/POST_INST
transaction code and only enable step 7 Create SLT configuration. The parameters of an SLT configuration are as follows:
Parameter | Description |
---|---|
Context Name | Unique configuration name |
Context Description | Context description that will be shown to the user in SAP transaction LTRC and in Foundry |
Data Transfer Jobs | Number of data transfer jobs |
Initial Load Jobs | Number of jobs for initial loads |
Calculation Jobs | Number of calculation jobs for initial load range calculations |
Authorization Group | No Authorization Group by default |
Source RFC Destination | Logical Destination - RFC Destination name of source system |
Read from Single Client | Check this option if data will be read from a single client |
Allow Multiple Usage | Check this option if multiple usage is allowed |
Only one of steps 2a and 2b is required. We recommend using the Post-Installation Wizard detailed in step 2a.
To create an SLT configuration, use the LTRC
transaction code.
Create a new configuration.
In the General Data section, fill in the Configuration Name and Description.
In the Source System section:
Do not be confused by the name “RFC Destination” when you are configuring a source – you should select the connection for the source system in this setting.
This setting enables multiple subscribers to retrieve replicated data from the source system and cannot be changed after configuration creation. As Allow Multiple Usage does not have an impact if a single subscriber is used, we recommend enabling it during the first configuration. To enable multiple usage at a later time requires you to delete the configuration and create a new one.
2372636 - Cannot replicate data when different trigger options exist - SLT
.In the Target System section:
NONE
.In the Data Transfer Settings section, set the number of data transfer jobs, initial load jobs and data calculation jobs to be run on the SAP SLT server. Refer to the SLT Sizing Guide ↗ for the number of jobs needed for complex scenarios.
Review and create the connection.
Back on the main SLT screen, for transaction code LTRC
, ensure that BAdI implementation is active on the SLT system for ODP scenarios. To check the setting, open the configuration by selecting the configuration name, and then click the Expert Functions tab. Ensure BAdI implementation is active or ODP will not function correctly.
Go to SA38
transaction from the main menu. As described on the SAP OSS note 1660374 - Fetch does not wait long enough; timeout
, run the program SAP_RSADMIN_MAINTAIN
to set the parameter RODPS_FETCH_TIMEOUT
. Specify the value in seconds.
The Connector can be deployed on a separate SAP instance which fulfills the requirements. In this case, the Connector communicates with the SLT server via an RFC connection. Therefore, an RFC connection is required to enable the communication channel.
Refer to RFC connection guide for setup instruction.
If SLT and the Connector are on separate instances, follow these additional configuration steps:
/n/PALANTIR/PARAM
SLT
RFC_CONFIGURATION
RFC configuration name created in the beginning of this section (eg, SLT_SERVER_RFC)
If these parameters are not set in the configuration table, they will default to the following values:
The Connector uses SAP's ODP Framework to replicate data to Foundry. ODP replicates the data from the source system to the ODP Queue (table name ODQDATA_F
). The data is staged in ODQ
, and once the data is transferred to the ODP queue, the Connector starts to page the requested data to the /PALANTIR/PAG_01
and /PALANTIR/PAG_02
tables. After a successful transfer of all pages to Foundry, Foundry sends a close request to housekeep the tables, and this close request deletes entries in /PALANTIR/PAG*
tables.
When running initial (for instance, historical or bulk) syncs, review database sizing and consider space requirements carefully. Insufficient space may lead to failed SLT replication jobs and transfers to Foundry so first carry out database sizing preparations based on the tables to be replicated.
There are two other parameters which are used as a solution to known issues in SAP.
Problem: The SAP SLT server does not provide the exact field length of date/time fields. This has been fixed with an SAP note. However, if you do encounter any issues regarding data type lengths, the following parameter can be set until the note is implemented:
SLT
SLT_DATA_XXX
(XXX
refers to technical name of the field)Length of the data type
In an earlier support package of SAP NetWeaver (SP 14), DATS
fields were set as 16 characters by SAP. However, DATS
fields should have 8 characters (YYYYMMDD
). TIMS
fields were also set as 16 characters by SAP; TIMS
data has 6 characters (HHMMSS
).
To address this problem, set the following parameters:
Param Id | Param Name | Param Value |
---|---|---|
SLT | SLT_DATA_DATS | 8 |
SLT | SLT_DATA_TIMS | 6 |
Problem: SAP has specific data types to be used for quantity and amount. Quantity data type QUAN contains 3 decimal places by default. When the Connector tries to fetch data which contain QUAN data types, it automatically creates 3 decimal places for these QUAN data types. However, some of the SAP tables which contain QUAN data types have a different number of decimal places but are sent to Foundry as if they have 3 decimal places.
To address this problem, use the following parameter:
SLT
SLT_DTYPE_XXX
(XXX
refers to data type of the field)Data Type Name which will be taken Into account
Set the parameter as follows to change QUAN data types to decimal data types:
Param Id | Param Name | Param Value |
---|---|---|
SLT | SLT_DTYPE_QUAN | DEC |