Skip to main content

Which Extension Should I Use?

This guide helps you choose between ERPL and ERPL-OData based on your SAP environment and use case.

Quick Decision
  • On-premise SAP behind firewall → Use ERPL
  • Cloud/web SAP with HTTP APIs → Use ERPL-OData

Extension Comparison​

FeatureERPL (On-Premise)ERPL-OData (Cloud/Web)
Target EnvironmentOn-premise SAP systemsCloud/web SAP services
Network AccessSSH tunnel or direct networkHTTP/HTTPS APIs
Primary ProtocolsRFC, BICS, ODP, APEOData, Datasphere, ODP Web
InstallationINSTALL 'erpl'INSTALL 'erpl_odata'
Use CaseEnterprise SAP ERP/BWSAP cloud services, web APIs

Architecture Comparison​

Protocol Deep Dive​

🏢 ERPL Protocols​

RFC (Remote Function Call)​

  • What: Direct access to SAP tables and function modules
  • Use case: Read master data, call BAPIs
  • Example: sap_read_table('KNA1')

BICS (BI Consumer Services)​

  • What: Execute SAP BW queries
  • Use case: Analytics, reporting from SAP BW
  • Example: sap_bics_show(obj_type => 'QUERY')

ODP (Operational Data Provisioning)​

  • What: Delta replication from SAP systems
  • Use case: Real-time data streaming, ETL
  • Example: sap_odp_read_delta('BW', 'VBAK$F', 'NIGHTLY_ETL')

APE (ABAP Pipeline Engine)​

  • What: CDS entity extraction, with delta including deletes
  • Use case: Replicating a CDS entity whose deletes matter, or where the ODP RFC API is unavailable
  • Example: sap_ape_read_delta('I_SALESORDER', 'NIGHTLY_ETL')

☁️ ERPL-OData Protocols​

OData​

  • What: RESTful web services for SAP data
  • Use case: Cloud integration, web applications
  • Example: odata_read('https://api.sap.com/Orders')

Datasphere​

  • What: Native connection to SAP Datasphere
  • Use case: Cloud analytics, data modeling
  • Example: datasphere_read_relational('SALES_ANALYTICS')

ODP Web​

  • What: ODP via OData protocol
  • Use case: Cloud delta replication
  • Example: odp_web_extract('VBAP', delta => true)

Decision Matrix​

Your SituationRecommended ExtensionWhy
SAP ERP behind corporate firewallERPLRFC provides direct table access
SAP BW on-premiseERPLBICS enables query execution
SAP Datasphere cloudERPL-ODataNative Datasphere integration
SAP OData servicesERPL-ODataHTTP-based OData protocol
Hybrid environmentBothUse ERPL for on-premise, ERPL-OData for cloud
Real-time replicationERPLODP provides efficient delta replication
CDS delta where deletes matterERPLAPE reports deletes; ODP's CDS delta cannot
Web application integrationERPL-ODataHTTP APIs work better in web contexts

Interactive Decision Quiz​

Not Sure Which to Choose?

Answer these questions to find the right extension:

  1. Where is your SAP system located?

    • a) On-premise behind firewall → ERPL
    • b) Cloud/web-based → ERPL-OData
  2. How do you access SAP data?

    • a) Direct network connection → ERPL
    • b) HTTP/HTTPS APIs → ERPL-OData
  3. What's your primary use case?

    • a) Read SAP tables directly → ERPL
    • b) Query web services → ERPL-OData
  4. Do you need real-time replication?

    • a) Yes, from on-premise SAP → ERPL
    • b) Yes, from cloud SAP → ERPL-OData

Installation Commands​

ERPL (On-Premise)​

INSTALL 'erpl' FROM 'http://get.erpl.io';
LOAD 'erpl';

ERPL-OData (Cloud/Web)​

INSTALL 'erpl_odata' FROM 'http://get.erpl.io';
LOAD 'erpl_odata';

Next Steps​

If You Chose ERPL (On-Premise)​

  1. Install ERPL
  2. Quick Start Guide
  3. Read SAP Tables
  4. RFC Deep Dive

If You Chose ERPL-OData (Cloud/Web)​

  1. Install ERPL-OData
  2. Quick Start Guide
  3. Query OData Services
  4. OData Deep Dive

If You Need Both​

  1. Install both extensions
  2. Use ERPL for on-premise systems
  3. Use ERPL-OData for cloud services
  4. Integration Examples

Still Not Sure?​

Need More Help?
Pro Tip

You can install both extensions and use them together. Many enterprises use ERPL for on-premise SAP systems and ERPL-OData for cloud services in the same DuckDB instance.