Hello SAP Community,
I would like to get guidance and best practices from the community and SAP experts.
Project Context
- Technology: RAP (ABAP Cloud)
- UI: Fiori Elements (Object Page + List Report)
- Backend: S/4HANA
- Business Object with:
- Draft enabled
- Multiple child entities
- Complex business validations
Real Problem Statement
In our project, we have complex validations such as:
- Cross‑entity checks (header + items)
- Checks against existing records
- Conditional validations based on status, user role, or business rules
We implemented validations using:
- RAP validation methods
FAILED, REPORTED, and %msg handling
Technically, this works — but the user experience is not always optimal.
Issues We Are Facing
- Errors sometimes appear late (only on Save)
- Messages are valid but not contextual enough for business users
- Handling multiple error messages becomes confusing
- Some validations would ideally run earlier, not just on Save
- We want to avoid:
- Custom UI logic
- Non‑standard hacks
- Breaking RAP principles
Questions to the Community
How do you design validations in RAP for complex business objects without flooding the user with errors?
- What is the recommended balance between:
- RAP validations
- Determinations
- Frontend behavior (without custom UI code)?
- Do you follow any patterns for:
- Grouping related validation messages
- Showing errors closer to the field instead of generic messages?
- Are there real‑project best practices SAP recommends but are not well documented?
What We Want to Achieve
- Clean RAP implementation
- Predictable and user‑friendly Fiori behavior
- Clear error messages that business users understand
- Scalable design (future rules will be added)
kind regards,
Mohammad Afrad Husain.