算法艺术创作
algorithmic-art
通过代码和可调参数创作生成艺术与交互式视觉效果。
sap-build【设计与创意】SAP Build — low-code/no-code platform covering SAP Build Apps (app development), SAP Build Process Automation (workflows, decisions, approvals, RPA), and SAP Build Work Zone integration. Use when building low-code apps, creating automated workflows, or designing approval processes on SAP BTP.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
SAP Build platform — low-code apps, process automation, and workflow design on SAP BTP.
sap-btp-launchpad skill for comparison)PrincipalPropagationTrigger types:
- API call → POST to /v1/process/instances/{processId}
- Form submission → user fills a form
- Event → S/4HANA business event (e.g., PR created)
- Schedule → time-based (cron)
# Process flow YAML (conceptual — configured in visual editor)
steps:
- name: Manager Approval
type: approval
approvers: [ "${PR.Manager}" ]
deadline: 5d
- name: Create Purchase Order
type: automation
api: create_po # calls S/4HANA via destination
- name: Notify Requester
type: notification
channel: email
template: po_created
{
"name": "Create PO in S/4HANA",
"type": "API",
"endpoint": "{{destination.S4HANA}}/sap/opu/odata/sap/Z_PO_SRV/PurchaseOrder",
"method": "POST",
"authentication": "PrincipalPropagation",
"body": {
"Supplier": "${formData.vendor}",
"Amount": "${formData.amount}"
}
}
| Amount | Department | Action |
|------------|------------|-------------------|
| <= 1000 | Any | Auto-approve |
| 1001-5000 | Sales | Manager approval |
| 1001-5000 | R&D | Director approval |
| > 5000 | Any | VP approval |
Configure in: Process → Decisions → Decision Table → add conditions and actions.
Data tab → Add Data Source → OData Service
URL: {{destination.S4HANA}}/sap/opu/odata/sap/Z_C_PRODUCT_LIST_CDS/
Auth: PrincipalPropagation
Query directly in app logic:
SELECT Material, Description, Plant
FROM Z_C_PRODUCT_LIST
WHERE Plant = :user_plant
sap-btp-launchpad skill)| # | Pitfall | Cause | Solution |
|---|---|---|---|
| 1 | Process instance stuck in "In Progress" | Approval deadline not set or approver inactive | Set deadline (e.g., 5d); configure escalation rule to auto-approve/reject |
| 2 | API automation step fails with 401 | Destination auth not PrincipalPropagation | Edit destination in BTP Cockpit → set Authentication=PrincipalPropagation; add scope matching XSUAA |
| 3 | Decision table not triggering correct action | Row order matters — first match wins | Reorder rows: most specific conditions first (e.g., > 5000 before <= 1000) |
| 4 | Build Apps offline sync not working | SAP Mobile Services not configured | Add Mobile Services entitlement; enable offline in app settings → configure sync interval |
| 5 | Process timeout after 30 days | Single process instance max lifetime is 30 days | Split long-running processes into chained subprocesses; use event-based handoff |
| 6 | Form submission exceeds limits | Max 50 fields per form | Split into multi-step form; or use Fiori app for complex data capture |
| 7 | Transport to production fails | CTMS not configured or version mismatch | Configure CTMS in BTP Cockpit → verify Build project version matches target environment |
| 8 | RPA bot fails on unattended machine | Desktop agent not running or screen locked | Ensure agent runs as service; configure auto-login or headless execution |
# Process Automation — verify process deployed
# BTP Cockpit → SAP Build Process Automation → Monitor → Process Definitions
# Your process should show status "Deployed"
# Trigger process via API and check instance
curl -X POST \
"https://<spa-tenant>.processautomation.cloud.sap/v1/process/instances/{processId}" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"formData": {"vendor": "V001", "amount": "3500"}}'
# Check instance status
# Monitor → Process Instances → filter by creation date → verify "Completed"
# Build Apps — verify deployment
# Build Lobby → My Projects → app status = "Deployed"
# App accessible via URL from HTML5 Application Repository
Confirm: