Let me provide a comprehensive comparison across your three key concern areas:
Fiori App Availability:
Cloud deployments have exclusive access to newer Fiori apps like “Manage Production Schedules” and “Schedule Production Operations” that provide modern, role-based scheduling interfaces. These apps offer superior visualization with Gantt charts, drag-and-drop rescheduling, and real-time capacity views. On-premise gets these apps too, but typically 6-12 months later through support pack releases. However, on-premise retains full access to classic transactions like CM01, CM25, and CO41 which some power users prefer for complex scenarios. Cloud restricts or deprecates certain classic transactions, forcing adoption of Fiori equivalents.
For your multi-facility coordination, cloud’s “Production Scheduling Board” app provides better cross-plant visibility out of the box. The trade-off is less flexibility in configuring custom views compared to on-premise where you can modify GUI transactions directly.
Cloud Extensibility Limits:
This is where differences become significant for custom scheduling logic. On-premise allows direct enhancement of scheduling programs, custom BADIs implementation, and table modifications for proprietary algorithms. Cloud restricts you to released APIs and ABAP Cloud development model. For S/4HANA 1909 cloud, key released APIs include Production Order Processing API, Capacity Planning API, and Material Requirements Planning API.
Your custom scheduling logic would need architectural redesign. Instead of enhancing standard scheduling programs, you’d build side-by-side extensions on BTP that call released APIs. For example, custom capacity leveling algorithms would run as BTP Cloud Foundry apps consuming production order APIs, then writing results back via released interfaces. This adds latency but maintains clean core principles. Evaluate if your custom logic can be replaced by standard advanced planning features like Production Planning and Detailed Scheduling (PP/DS) which are fully supported in both deployments.
API Support Differences:
Cloud actually excels here with comprehensive OData APIs for external integration. The Production Order API (A_ProductionOrder_2) supports full CRUD operations and is more mature in cloud releases. For external planning tool integration, cloud provides better REST API support with modern authentication (OAuth 2.0) versus on-premise which often relies on RFC connections.
However, API versioning differs - cloud auto-updates APIs with quarterly releases while on-premise lets you control API versions through support pack application. For stability-critical integrations with external systems, on-premise provides more control over when API changes are adopted.
For your 8-facility coordination with external dependencies, cloud’s API-first architecture actually simplifies integration architecture. You’d use standardized OData APIs rather than custom RFCs or IDocs. The constraint is you must work within released API scope - if needed functionality isn’t exposed via API, you’re blocked until SAP releases it.
Practical Recommendation:
Conduct an API gap analysis using SAP API Business Hub. List your current custom scheduling functions and map them to released APIs in 1909 cloud version. If coverage is below 80%, consider staying on-premise or delaying cloud adoption until API coverage improves. Also evaluate if standard PP/DS functionality could replace custom logic entirely.