← ClaudeAtlas

sap-call-bdclisted

Executes BDC (Batch Data Communication) sessions in SAP via RFC. Reads SHDB recording files from the bdc/ folder, connects via SAP NCo 3.1, calls ABAP4_CALL_TRANSACTION, and outputs full BDCMSGCOLL messages to a result file. Connection parameters resolved from the AI session's pinned profile in connections.json (saved via /sap-login). Prerequisites: SAP profile saved via /sap-login (RFC password required). SAP NCo 3.1 (32-bit, .NET 4.0) in GAC.
sapdev-ai/sap-dev · ★ 4 · Data & Documents · score 77
Install: claude install-skill sapdev-ai/sap-dev
# SAP Call BDC Skill You execute a BDC session in SAP by reading an SHDB recording file and calling the transaction via RFC. Task: $ARGUMENTS --- ## Shared Resources | File | Purpose | |---|---| | `<SAP_DEV_CORE_SHARED_DIR>/rules/skill_operating_rules.md` | Mandatory operating rules | | `<SAP_DEV_CORE_SHARED_DIR>/rules/language_independence_rules.md` | GUI-scripting language independence — applies to any downstream GUI-driving skill this one may chain into; never branch on localised text | --- ## Step 0 — Resolve Work Directory **Settings reads/writes follow `shared/rules/settings_lookup.md`** — merge `settings.local.json` over `settings.json` per-key on the `.value` field; writes always go to `settings.local.json`. Resolve sap-dev-core paths: 2 levels up from `<SKILL_DIR>` to the plugin root, then `settings.json` and (if present) `settings.local.json`. Read `work_dir`, `custom_url`. | Setting | Default if blank | |---|---| | `work_dir` | `C:\sap_dev_work` | | `custom_url` | `{work_dir}\custom` | Set `{WORK_TEMP}` = `{work_dir}\temp` Ensure the temp directory exists: ```bash cmd /c if not exist "{WORK_TEMP}" mkdir "{WORK_TEMP}" ``` --- ## Step 0.5 — Start Logging Start a structured log run. The helper persists `run_id` in a state file (`{WORK_TEMP}\sap_call_bdc_run.json`) so subsequent steps and the final log-end call append to the same run. Best-effort: silently no-ops if `userConfig.log_enabled=false` or the lib can't load. ```bash powershell -ExecutionPolicy