As discussed, in part 1 of this blog, there are several areas where performance issues can occur in SAP commissions. I focused on Stage Hooks, Pipeline, and Report Preparation and Generation in Part 1. Now, in part 2 of the blog, I’ll focus on the following:
- Data Extracts
- Data Imports
- Inbound data preparation
1. Data Extracts:
Data extracts are a critical aspect of commission systems as they allow you to retrieve and transfer commission-related data to downstream systems. Sales compensation data is often needed for analytics, management dashboards, HR, and legal purposes. Extracting large quantities of data can often lead to performance issues. Key areas that I focus on are as below:
- Data Volume: Extracting large amounts of data can strain system resources. Segment data for extraction and use incremental extraction strategies.
- Complex SQL Joins: Complex SQL queries are often required in data extraction. Follow SQL optimization guidelines to improve performance.
- Data Compression: Compress the data for transfer, which can reduce the volume of data transmitted over the network and alleviate the load on network resources.
- Scheduled Extracts: Schedule data extraction during off-peak hours to minimize the impact on system resources.
- Batch Processing: Consider batch processing for extracts, where data is divided into smaller batches, each processed separately and possibly in parallel. This can help with manageability and performance.
- Optimize Network Infrastructure: Ensure that your network infrastructure, including bandwidth and latency, is optimized for data extraction. Collaboration with IT and network specialists may be necessary.
- Monitoring and Logging: Implement monitoring and logging to track the performance of data extracts and identify potential bottlenecks or issues.
2. Data Import:
Data imports are an integral part of SAP Commissions, as they allow you to bring essential information into the system. The First Law of Importing Data: “Import Only What You Need”.
Here are some other best practices for data import into the SAP system:
- Transaction Data Import: Excluding unnecessary attributes can speed up the imports. For example, if importing a transaction file, it may not be necessary to import customer address, customer industry, and similar extended attributes. Of course, one needs to analyze the reporting needs to ensure that none of the required attributes get eliminated.
- Reference Data Import: Import only incremental changes. When importing reference data (e.g., Org data, classification data, etc.,), it’s best to receive only the data that has changed. This will reduce import time as well as minimize the accumulation of soft-deleted records.
- Manage Soft Deleted Records: Soft deleted records can build up over time and may need to be cleaned up periodically. Be proactive in managing these records to maintain database efficiency.
- Data Validation: Implement robust data validation checks before importing data. Ensuring the quality and accuracy of the data before importing is crucial to prevent data inconsistencies and often pipeline failures.
- Automation: Leverage automation for data import processes, especially for recurring imports – Transactional data or HR-related data. Automating the import of routine data can save time and reduce the risk of human error.
3. Inbound Data Preparation
Often data needs to be prepared before it can be uploaded to the commission tables. This usually involves reading data from the previous pipeline runs and can involve stored procedures and complex SQL. In my opinion, it’s best to do what data prep you can in the EXT area. The reason is your SQL and procedures can have direct access to the results from previous pipeline runs. Accessing the pipeline results outside of the cloud is difficult as you will likely need to replicate cloud data.
For the stored procedures and SQL, it’s best to follow the steps outlined in the Stage Hook section.
Stored procedures and complex SQLs are often the root cause behind performance issues, but in most cases, it is essential to use them. The key to a successful high-performance SAP commissions system is having a good architecture and solution design. By proactively addressing the concerns discussed in this blog and regularly monitoring and optimizing the system, you can ensure that your commission calculations are efficient and meet business requirements without any disruptions.
If you need any further consultation regarding performance issues or anything related to SAP Commissions, please feel free to reach us at firstname.lastname@example.org.
David Ritson works as Sr. SPM Architect at SpectrumTek. He has 20+ years of experience in designing and implementing SAP Success Factor Incentive Management (earlier known as Callidus, CallidusCloud, and SAP Commissions). Over his career he has been instrumental in successful implementation at more than 125 worldwide organizations, often implementing systems handling millions of transactions per pipeline run and leading the product evolution. While at SAP/Callidus he worked in the Chief Services Architect role and liaised with engineering and support. He has also designed and developed several of the pipeline stages and imports.