All topics
RAP_CDS_ODATAintermediate

Behavior Definitions

Master RAP behavior definitions as the contract for CRUD, field control, actions, determinations, validations, locks, authorization, ETags and feature control. Learn how to make the BO behavior explicit before writing implementation logic.

Overview

Master RAP behavior definitions as the contract for CRUD, field control, actions, determinations, validations, locks, authorization, ETags and feature control. Learn how to make the BO behavior explicit before writing implementation logic.

Lessons in this topic

Interview questions covered

  • You join a project with an unfamiliar RAP BO. How do you understand what it allows in five minutes, just by reading its BDEF?
  • What is a behavior definition, and what goes into its header, entity header and entity body?
  • Explain field characteristics in a BDEF: readonly, readonly : update, mandatory, mandatory : create and features : instance. When would you use each?
  • What do 'precheck', 'internal' and 'authorization : none' mean on BDEF operations, and what risks come with them?
  • Which kinds of actions and functions can you declare in a BDEF? Give a use case for each.
  • Users see outdated totals in a Fiori app after changing item quantities, and someone proposes a 'Recalculate' button. What would you do instead?
  • Why do child entities in a RAP BDEF usually have no create operation of their own, and what must the child declare?
  • After enabling draft, adding an item in the Fiori app fails. The header has 'with draft' and draft tables exist. What do you check?
  • What is the difference between a projection BDEF and an interface BDEF, and when do you need each?
  • A consumed RAP API must change: an optional field becomes mandatory and an action parameter changes. How do you handle it?

Related topics

Interview questions on this topic