btp-master-data-integration
Skill1 starsChanged 4 months agoMITView on GitHub
SAP Master Data Integration (MDI) — BP/Material replication, distribution models, CPI iFlow integration
- Sends data out
In this repository413 other files it gives its agents.
- .agents/AGENTS.mdAGENTS.md
- AGENTS.mdAGENTS.md
- .codex/AGENTS.mdAGENTS.md
- .cursor/AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- sap-router-skillCopilot instructions
- .cursor/rules/sap-router.mdcCursor rule
- abap-cloud-migrationSkill
- abap-cloudSkill
- abap-code-patternsSkill
- abap-code-reviewSkill
- abap-docs-referenceSkill
- abapgitSkill
- abapSkill
- abap-snippetSkill
- abap-sql-amdpSkill
- abap-system-infoSkill
- abap-unit-testingSkill
- arc-1-skillsSkill
- atc-cloudificationSkill
- authorization-iamSkill
- automation-pilot-catalog-explorerSkill
- automation-pilot-command-generationSkill
- automation-pilot-command-reviewSkill
- automation-pilot-content-management-via-apiSkill
- automation-pilot-debuggerSkill
- automation-pilot-executions-apiSkill
- automation-pilot-executor-executescriptSkill
- automation-pilot-executor-httprequestSkill
- automation-pilot-mcp-server-generationSkill
- automation-pilot-scheduled-executions-apiSkill
- badi-enhancementSkill
- btp-abap-environmentSkill
- btp-best-practicesSkill
- btp-build-work-zoneSkill
- btp-business-application-studioSkill
- btp-ciasSkill
- btp-cloud-foundrySkill
- btp-cloud-identitySkill
- btp-cloud-loggingSkill
- btp-cloud-platformSkill
- btp-cloud-transport-managementSkill
- btp-connectivitySkill
- btp-developer-guideSkill
- btp-diagram-generatorSkill
- btp-integration-suiteSkill
- btp-job-schedulingSkill
- btp-service-managerSkill
- cap-add-remote-serviceSkill
- cap-developerSkill
- cap-triviaSkill
- capture-answerSkill
- cap-upgradeSkill
- cds-view-entitiesSkill
- claude-abap-skillsSkill
- claude-memSkill
- clean-abapSkill
- context-modeSkill
- cpi-iflow-developmentSkill
- engine-cap-developmentSkill
- The first 60 shown.
The file
Files
SAP Master Data Integration (MDI)
Central hub for master data harmonization — Business Partner, Material, Cost Center, etc.
1. Enable MDI
# Create service instance
cf create-service master-data-integration standard mdi-instance
cf create-service-key mdi-instance mdi-key
cf service-key mdi-instance mdi-key
# → Save the `url` and `clientid`/`clientsecret`2. Define Distribution Model
{
"sourceSystem": "S4H_100",
"entityType": "BusinessPartner",
"targetSystems": ["SFSF_worker", "COM_Cloud_customer"]
}Entities: BusinessPartner, Material, CostCenter, ProfitCenter, CompanyCode.
3. Push Master Data via API
# Get OAuth token
TOKEN=$(curl -s -X POST "$AUTH_URL/oauth/token" \
-d "grant_type=client_credentials&client_id=$CLIENT_ID&client_secret=$CLIENT_SECRET" \
| jq -r '.access_token')
# Send Business Partner
curl -X POST "$MDI_URL/api/v1/BusinessPartner" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"BusinessPartner":"1000001","BusinessPartnerName":"ACME Corp"}'4. CPI iFlow Integration
S/4HANA → CPI iFlow (BAPI_MATERIAL_GETLIST → MDI API map) → MDI Service → TargetsKey CPI patterns: idempotency check (avoid duplicate BP), field mapping (S/4 field → MDI field), error logging to Cloud Logging.
5. Monitoring
MDI dashboard → Distribution run status, record-level errors, queue depth, processing time per entity.
Pitfalls
- 7-day message retention → Cause: default retention is 7 days. Solution: configure retention on Enterprise Messaging if longer replay needed.
- One source of truth per entity → Cause: multiple systems pushing BP/Material. Solution: designate one source system per entity type on the distribution model.
- Field name mismatch → Cause: source field doesn't match MDI entity attribute. Solution: check MDI entity schema via
GET $MDI_URL/api/v1/$metadata, map fields in CPI iFlow. - Duplicate Business Partner → Cause: MDI receives same BP from multiple sources. Solution: set up dedup rules in distribution model (priority order by source).
- MDI instance not provisioning → Cause: missing Enterprise Messaging prerequisite. Solution: first create Enterprise Messaging instance, then MDI.
Verification
# Check MDI service health
curl -s -o /dev/null -w "%{http_code}" "$MDI_URL/health/v1"
# Expect: 200
# List distribution models
curl -s -H "Authorization: Bearer $TOKEN" "$MDI_URL/api/v1/DistributionModel" | jq
# Check replication log
curl -s -H "Authorization: Bearer $TOKEN" "$MDI_URL/api/v1/DistributionLog?$top=5" | jqDoes it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

