$FLEX$ and $PROFILES$ are Special Variables in oracle Apps environment and are used to hold values at runtime.
Every Oracle Apps technical consultant will be familiar with the term $FLEX$ and $PROFILES$. Whenever we are working with value sets, we will be using both of these for modifying the data fetched, for basing the values of a parameter on the other parameter and also fetching the Profile Option values.
To segregate this based on the functionality $FLEX$:Used for basing the value of a parameter on another parameter. $PROFILES$:used for fetching the data stored in the specified profile option value which is currently active.
Where is it used?
Both these variables are used in theParameter form of a Concurrent Program and are used at theWhere Clausewindow in the value set ofTable type.
Syntax:
:$FLEX$.previous_value_set_name Important:
$FLEX$ must always be in capitals.
A ‘:’ must precede the declaration of $FLEX$.
The previous value set name must have already been assigned and saved on a different parameter.
:$PROFILES$.Profile_option_name
Important:
$PROFILES$ must be always in capitals.
‘:’ must always precede the declaration.
Profile option name is the Profile Name and not to be confused with the User profile Name.
SELECT (SELECT application_short_name
FROM fnd_application fa
WHERE fa.application_id = frt.application_id) application,
frt.responsibility_id, frt.responsibility_name
FROM apps.fnd_responsibility_tl frt;