Business Need
Oracle Fusion SaaS provides a powerful option of creating custom objects to to satisfy various customer business requirement.
Requirement example:
In the lifecycle of an Installed Base Asset there are situations when the record update are completely prohibited, including child object or custom fields defined in the Application Composer.
The requirement is to allow certain attributes to be always updatable.
The custom attributes that needed to be added are:
1. Asset (link to asset for which attributes are managed)
2. Distributor (should display name but store party number)
3. Distributor Address (should present address details but store address number)
The standard Custom Object generated screen is not suitable, there is no option of adding LOV and display of Distributor and Addresses.
Solution Overview
- Create a new custom object in Application Composer in ERP and SCM Cloud Application, for example “Installed Base Asset Additional Information”.
- Add relevant custom fields to store the required information:
- Asset (choice list to standard Asset object) – represents the asset for which attributes are managed
- Distributor Party Number – key to Organization Party (The decision to use Party Number rather than Party Id was forced by the fact that Address REST API must receive Party Number in the URL).
- Distributor Address Number – key to Organization Address
- Add Groovy formula fields to fetch party name/address based on their relative keys (numbers).
(This will allow receiving current custom object record together with name fields in a single REST API call from VBCS to Fusion). - Create a VBCS extension screen that will receive a custom object record id and will allow efficient record update.
(Use single REST API call to fetch custom record with party and address information). - Create an Action Link in standard Installed Base Asset object to navigate to the VBCS screen above for current asset.
Implementation Details
- Create custom object in Application Composer, select ERP and SCM Cloud Application
- Add custom fields to store the required information and link to the asset:
- Asset field:
- Distributor Party Number Field:
- Distributor Address Number:
- Asset field:
- Add formula fields to calculate Distributor and Distributor address
- Create object/global functions to calculate name given party number:
- Create object/global function to calculate address details for given address number:
- Create Distributor formula using the function above:
- Create Address formula using the function above:
- Create object/global functions to calculate name given party number:
- Create a VBCS extension screen
- Create service connection to fscmRest, import the endpoint for custom object created.
- Create service connection to crmRest, import the endpoint for account, including child Address object.
- When creating an SDP variable for Address search, use selected Party Number as URL template parameter to get addresses associated with selected party:
- Develop the update screen as regular VBCS screen
- Create a link action in Application Composer for Installed Base Asset standard object:
- The link destination should be calculated by a Groovy code taking current Asset Id and opening target VBCS page, make sure to use the first line to calculate the URL properly:
- Expose the link in Details Page
- The link destination should be calculated by a Groovy code taking current Asset Id and opening target VBCS page, make sure to use the first line to calculate the URL properly: