Well there is no official explaination from Oracle for usage of a workflow to drive the flow of the screens. However prior to using OA Framework in Self Service HRMS, SSHR was built using PL/SQL Web Cartridges and latter AK Developer was included. Those days OA Framework did not exist in the current form. When the very first version of SSHR was built by Oracle, back then the methodology of transaction state management of web based applications was not standardised across eBusiness Suite modules. Use this link to understand how OA Framework evolved. Therefore Oracle HRMS Product Development team decided to use a "Workflow process" to keep all the loose bits of screens tied together into one single transaction. If you open the HR [HRSSA] workflow, you will notice that there are many Workflow Activities that are mapped to PL/SQL Function named HR_WORKFLOW_SERVICE.BLOCK. These activity/steps in workflow correspond to a screen. This is how user navigation from one screen to other is controller in Self Service HRMS.
How does WF Activity know which OA Framework page to open
The Workflow activity is mapped to the OA Framework page via an AK Region. In earlier days of SSHR, AK Regions were used for developing the screens in SSHR [Self Service HR]. Latter these AK Regions were migrated to OA Framework pages. A file named regionMap.xml exists in the $PER_TOP/mds where this mapping exists. regionMap.xml is also loaded into the Database into MDS. Therefore, when a user logs into SSHR page, a Workflow Process fires. Within that WF Process there is an activity with Function "HR_WORKFLOW_SERVICE.BLOCK". To this activity the AK Region name is passed as parameter. The AK region is mapped to an OA Framework page. All these steps are explained in the image below
How does Oracle know which workflow process to initiate when a user enters "Person Information" screen in SSHR
When user clicks on SSHR Menu Item, the name of the workflow process is passed as a parameter to the form function. Therefore, the sequence of events are
- User clicks on a menu in SSHR responsibility
- Form Function attached to Menu is invoked.
- This Form Function invokes AK Region HR_CREATE_PROCESS_TOP_SS [See Web HTML of Form Function HR_PERINFO_SS]
In some cases SSHR Function directly invokes an OA Framework page, specifically holds true for pages developed post-AK-Developer era
- Parameter pProcessName is read and the Workflow Process named "Personal Information" is initiated
- All these steps are illustrated in image below
How does Oracle know which AME Transaction Type to use for that screen
As shown in image above, two parameters named pAMETranType and pAMEAppId are passed as parameter to the Form Function. This tells which AME Transaction Type will be used by the SSHR screen. However the decesion of whether AME is switched ON or OFF is decided by a Wokflow Activity named "Review Page". Every SSHR Workflow Process as a step named "Review Page". As shown in image below, when you double click on activity Review Page you will notice that this Workflow Function is passed a parameter named HR_APPROVAL_REQ_FLAG. If this WF Activity parameter is Yes or "Yes - Dynamic Approval" then the AME is called for Approval processing. To change the standard Approval processing in Oracle Self Service HRMS, you can customize this property to enable or disable the Approval Processing for specific screen in HRMS.
Further details of how you can implement differing AME logic for different SSHR screens will be covered in a future article.
Note- It is in Self Service HR [HRMS] that the AME Trx Type is passed as passed as parameter to the screen function. Every calling module can have its own specific way using which the AME Trx Type to be used is configured.
For example, in iRecruitment we have the following profile options that dictate the AME Transaction Type being used
IRC: Vacancy Approval Transaction Type -Identifies the vacancy approvals transaction type to be is used.
IRC: Offer Details Approval Transaction Type -Offer Details Approval Transaction Type
IRC: Extend Offer Duration Transaction Type -Extend Offer Duration Transaction Type
Do we directly customize the Workflow Process to change the AME behaviour for a screen?
Not really. You will copy the existing workflow process and create a new workflow process. For example a new workflow process named XX will be created. The review page property within this workflow process will be modified to use/remove AME. Thereafter you will create a new custom Form Function and attach that Custom Form Function to the Menu. This Custom Form function will be passed in the parameter pProcessName with Custom Workflow Process Name. This function must also be included within the menu named "HR_GLOBAL_SS_FUNCTIONS_CUSTOM". This will facilitate usage of the custom Form Function in SSHR.
Some further info
When a user makes changes to the data via SSHR, the following tables are populated.
The table HR_API_TRANSACTION_VALUES contains the old and the new values of the each possible column/attribute that was changed by the user.
written by Srikanth Parupally , July 18, 2009
written by Anil Passi- , July 18, 2009
written by Shwetatiwari , December 02, 2009
written by Hema Iyer , April 02, 2010
written by Padmaja , April 19, 2011