Welcome to ERPL
ERPL is a DuckDB extension that connects your analytics workflow directly to SAP systems. By the end of this guide, you'll know which extension to use and how to get started.
ERPL (Enterprise Resource Planning Loader) is a DuckDB extension that provides native connectivity to SAP systems. It comes in two flavors: ERPL for on-premise SAP and ERPL-Web for cloud/web-based SAP services.
Which Extension Do I Need?
🏢 ERPL (On-Premise SAP)
Use when: Your SAP system is behind a firewall and requires SSH tunneling or direct network access.
Protocols supported:
- RFC - Read SAP tables and call function modules
- BICS - Execute SAP BW queries
- ODP - Delta replication from SAP systems
Example:
-- Read customer master data via RFC
SELECT * FROM sap_rfc_read_table('KNA1', LIMIT => 100);
☁️ ERPL-Web (Cloud/Web SAP)
Use when: Your SAP system exposes web APIs or you're using SAP cloud services.
Protocols supported:
- OData - Query SAP services via HTTP/HTTPS
- Datasphere - Connect to SAP Datasphere
- ODP Web - ODP via OData protocol
Example:
-- Query OData service
SELECT * FROM odata_query(
'https://api.sap.com/Orders',
filter => 'year eq 2024'
);
Quick Start
For On-Premise SAP (ERPL)
For Cloud/Web SAP (ERPL-Web)
Architecture Overview
Common Use Cases
📊 Data Analysis
- Extract SAP data for analysis in Python/R
- Create dashboards in Power BI/Tableau
- Build machine learning models with SAP data
🔄 Data Integration
- Replicate SAP data to data lakes
- Real-time data streaming from SAP
- ETL pipelines with SAP as source
📈 Reporting
- Automated reports from SAP data
- Cross-system analytics
- Historical data analysis
What's Next?
🚀 Getting Started
- Installation Guide - Install the right extension
- Quick Start Guides - Get up and running in 5 minutes
📚 Learn by Doing
- Simple Guides - For data analysts and beginners
- Advanced Guides - For SAP experts
- Integration Guides - Connect with your favorite tools
💡 Examples
- ERPL Examples - On-premise SAP examples
- ERPL-Web Examples - Cloud SAP examples
- Real-World Use Cases - Complete scenarios
📖 Reference
- Function Reference - Complete API documentation
- Configuration - Advanced configuration options
- Troubleshooting - Common issues and solutions
Need Help?
- Check our troubleshooting guide
- Browse real-world examples
- Join our community discussions
Looking for advanced topics? Check out our advanced guides covering RFC internals, ODP delta replication, and performance optimization.
Ready to get started? Choose your path: