Hello,
You want to validate the CR header without regards to any entity; correct? There are a few ways to do this. Here is a couple:
- Using BRF+ validation: Use the CHECK_<main entity>. The main entity is the one attached to the CR type definition in MDGIMG. You need to add the CR reason to the signature of the function. How to find the name of CR header fields? Look under the BRF+ application list of data objects (open the BRF+ application directly using transaction BRFPLUS). The link Shankar provided above gives shows you two of those fields.
- Using the CR GenIL model: Enhance the CR header GenIL model (transaction GENIL_MODEL_BROWSER). Over-ride the header handler class name (the new class should be a child of the original handler class). There is a check method in which you can write any additional validations (make sure the super->check method is called first before any custom validation rules).
- Using the FPM feeder class: This is the least recommended approach (as it adds business logic in the UI layer). Enhance the feeder class of the CR Reason UIBB. You can either create a sub-class that you can use or just create a post-exit enhancement to method GET_DATA.