All skills
secondsky avatar

/sap-btp-connectivity

@620a19a
by Eddiesecondsky/sap-skills456 stars
120

SAP BTP Connectivity skill covering Destination Service, Connectivity Service, Cloud Connector, Connectivity Proxy, and Transparent Proxy for Kubernetes. Use when configuring destinations (HTTP, RFC, LDAP, MAIL, TCP), setting up cloud-to-on-premise connectivity, implementing OAuth and principal propagation, deploying connectivity proxies in Kubernetes/Kyma, troubleshooting connectivity errors (405, 407, 503), or configuring multitenancy.

Use this Skill: https://skilld.dev/gh/secondsky/sap-skills/sap-btp-connectivity

This session only. Nothing lands on disk.

referencesrfc-destinations.md

≈1.7k tokens on demand. Your agent reads this file only when SKILL.md points to it.

RFC Destinations - Complete Reference

Source: https://github.com/SAP-docs/btp-connectivity/blob/main/docs/1-connectivity-documentation/rfc-destinations-238d027.md


Overview

RFC destinations enable Remote Function Call communication with SAP ABAP systems. They support both on-premise systems via Cloud Connector and cloud ABAP systems.


Minimal Configuration

Name=SalesSystem
Type=RFC
jco.client.client=000
jco.client.lang=EN
jco.client.user=consultant
jco.client.passwd=<password>
jco.client.ashost=sales-system.cloud
jco.client.sysnr=42
jco.destination.proxy_type=OnPremise

Required Properties

User Logon Properties

Property Description
jco.client.user SAP user name
jco.client.passwd User password
jco.client.client SAP client number (000-999)
jco.client.lang Logon language (EN, DE, etc.)

Target System Properties

Property Description
jco.client.ashost Application server hostname
jco.client.sysnr System number (00-99)
jco.destination.proxy_type OnPremise or Internet

Pooling Configuration

Connection pooling improves performance by reusing connections.

Property Description Default
jco.destination.pool_capacity Max idle connections kept open 1
jco.destination.peak_limit Max concurrent active connections pool_capacity
jco.destination.max_get_client_time Wait time for free connection (seconds) 30
jco.destination.expiration_time Idle connection lifetime (seconds) 60
jco.destination.expiration_check_period Check interval for expired connections (seconds) 60
jco.destination.pool_check_connection Validate connections before reuse false

Example:

jco.destination.pool_capacity=5
jco.destination.peak_limit=10
jco.destination.max_get_client_time=30
jco.destination.expiration_time=60

Pool Behavior

  • Pool starts empty (no pre-allocated connections)
  • Connections created on demand during function module calls
  • Requests wait up to max_get_client_time if peak_limit reached
  • pool_check_connection validates pooled connections (performance overhead)

Communication Behavior Parameters

Property Description
jco.client.codepage SAP code page
jco.client.delta Delta manager (0/1)
jco.client.serialization_format Serialization format
jco.client.trace JCo trace level (0-10)

Repository Configuration

Property Description
jco.destination.repository_destination Destination for repository queries
jco.destination.repository_snc_mode Repository SNC mode
jco.destination.repository_user Repository user
jco.destination.repository_passwd Repository password

SNC (Secure Network Communications)

For encrypted RFC connections:

Property Description
jco.client.snc_mode Enable SNC (0/1)
jco.client.snc_partnername SNC partner name
jco.client.snc_qop Quality of protection (1-9)
jco.client.snc_lib Path to SNC library
jco.client.snc_myname Own SNC name

Load Balancing (Message Server)

For connection via message server:

Property Description
jco.client.mshost Message server host
jco.client.msserv Message server port
jco.client.r3name System ID (SID)
jco.client.group Logon group

SAP Router

For connections through SAP Router:

Property Description
jco.client.saprouter SAP Router string

Format: /H/<router-host>/S/<router-port>/H/<target-host>


Principal Propagation

For user propagation to on-premise systems:

Type=RFC
jco.destination.proxy_type=OnPremise
jco.destination.auth_type=PrincipalPropagation

Requires Cloud Connector configuration for X.509 certificate generation.


Complete Example

# Basic Configuration
Name=ERP_System
Type=RFC
Description=Production ERP System

# User Logon
jco.client.user=RFC_USER
jco.client.passwd=<password>
jco.client.client=100
jco.client.lang=EN

# Target System
jco.client.ashost=virtual-erp-host
jco.client.sysnr=00

# Connectivity
jco.destination.proxy_type=OnPremise
CloudConnectorLocationId=loc1

# Connection Pooling
jco.destination.pool_capacity=10
jco.destination.peak_limit=50
jco.destination.max_get_client_time=30
jco.destination.expiration_time=60
jco.destination.pool_check_connection=1

Cloud Connector Access Control

For RFC destinations with ProxyType=OnPremise:

  1. Add system mapping in Cloud Connector:

    • Virtual Host: Name used in destination
    • Internal Host: Actual SAP hostname
    • Protocol: RFC or RFCS (with SNC)
    • Port: System number × 100 + 3300
  2. Optionally restrict function modules:

    • Add allowed function module patterns
    • Use wildcards for module groups

Invoking ABAP Function Modules

Java (JCo)

JCoDestination destination = JCoDestinationManager.getDestination("ERP_System");
JCoFunction function = destination.getRepository().getFunction("BAPI_COMPANYCODE_GETLIST");

function.execute(destination);

JCoTable codes = function.getTableParameterList().getTable("COMPANYCODE_LIST");
while (codes.nextRow()) {
    System.out.println(codes.getString("COMP_CODE"));
}

Node.js (node-rfc)

const { Client } = require('node-rfc');

const client = new Client({ dest: 'ERP_System' });
await client.open();

const result = await client.call('BAPI_COMPANYCODE_GETLIST', {});
console.log(result.COMPANYCODE_LIST);

await client.close();

Documentation Links


Last Updated: 2025-11-22

Source: SKILL.md on GitHub

1 alert16d5 checks · Risk SAFE
  • Gen Agent Trust Hub16d

    This skill provides comprehensive documentation and configuration templates for SAP BTP Connectivity, covering Destination Service, Cloud Connector, and Kubernetes proxy components. It follows security best practices, utilizes official SAP resources, and provides safe templates for connectivity setup.

  • Socket16d

    No alerts

  • Snyk16d

    Risk: LOW · No issues

  • Runlayer6mo

    11/21 files flagged

  • ZeroLeaks5mo

    Score: 93/100 · 2 sections analyzed

Signed by skilld at 620a19a. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 2 weeks ago.

Activeupdated 2 months ago
Other metadata
metadata
{
  "maintainer": "Eduard Jiglau",
  "maintainer_email": "hello@sap-ai-skills.com",
  "website": "https://sap-ai-skills.com",
  "version": "2.4.1",
  "last_verified": "2025-11-27",
  "keywords": [
    "SAP BTP",
    "Connectivity",
    "Destination Service",
    "Cloud Connector",
    "Connectivity Proxy",
    "Transparent Proxy",
    "Kyma",
    "Kubernetes",
    "OAuth",
    "Principal Propagation",
    "RFC",
    "LDAP",
    "on-premise",
    "hybrid connectivity",
    "service channels",
    "SOCKS5",
    "reverse proxy",
    "tunnel"
  ]
}

README badge

README badge for secondsky/sap-skills/sap-btp-connectivity