Extensibility information for SAP Fiori app.
To extend the list view, the following extensibility entities are available on the different layers. You have to extend each of these entities according to your specific business needs:
UI |
Back End/ABAP |
|||
---|---|---|---|---|
View |
Extension Point |
Design Time: Gateway Entity |
Design Time: Extension Include |
Run Time: Superclass and Method to Be Redefined |
S2.view.xml |
leadItemAttributeExtension |
Lead |
CRMT_ODATA_LEAD_HEADER_INCL |
CL_CRM_LEAD_DPC_EXT |
S2.view.xml |
leadItemStatusExtension |
Lead |
CRMT_ODATA_LEAD_HEADER_INCL |
CL_CRM_LEAD_DPC_EXT |
S2.view.xml |
leadItemExtension |
Lead |
CRMT_ODATA_LEAD_HEADER_INCL |
CL_CRM_LEAD_DPC_EXT |
To extend the detailed view, the following extensibility entities are available on the different layers. You have to extend each of these entities according to your specific business needs:
UI |
Back End/ABAP |
|||
---|---|---|---|---|
View |
Extension Point |
Design Time: Gateway Entity |
Design Time: Extension Include |
Run Time: Superclass and Method to Be Redefined |
S3.view.xml |
leadHeaderExtension |
Lead |
CRMT_ODATA_LEAD_HEADER_INCL |
CL_CRM_LEAD_DPC_EXT |
S3.view.xml |
leadHeaderAttributeTopExtension |
Lead |
CRMT_ODATA_LEAD_HEADER_INCL |
CL_CRM_LEAD_DPC_EXT |
S3.view.xml |
leadHeaderTopExtension |
Lead |
CRMT_ODATA_LEAD_HEADER_INCL |
CL_CRM_LEAD_DPC_EXT |
S3.view.xml |
leadHeaderAttributeBottomExtension |
Lead |
CRMT_ODATA_LEAD_HEADER_INCL |
CL_CRM_LEAD_DPC_EXT |
S3.view.xml |
leadTabBarItemFirstExtension |
Customer-specific entity |
CL_CRM_LEAD_DPC_EXT |
CL_CRM_LEAD_DPC_EXT |
S3.view.xml |
leadTabBarItemLastExtension |
Customer-specific entity |
Customer-specific structure |
CL_CRM_LEAD_DPC_EXT |
S3.view.xml |
leadInfoTabContentTopExtension |
Lead |
CRMT_ODATA_LEAD_HEADER_INCL |
CL_CRM_LEAD_DPC_EXT |
S3.view.xml |
leadProductTabContentExtension |
LeadProduct |
CRMT_ODATA_LEAD_PRODUCT_INCL |
CL_CRM_LEAD_DPC_EXT |
S3.view.xml |
leadProductTabColoumExtension |
LeadProduct |
CRMT_ODATA_LEAD_PRODUCT_INCL |
CL_CRM_LEAD_DPC_EXT |
S3.view.xml |
leadTabBarItemLastExtension |
LeadProduct |
CRMT_ODATA_LEAD_PRODUCT_INCL |
CL_CRM_LEAD_DPC_EXT |
S3.view.xml |
leadSalesTabCellsExtension |
LeadSalesItem |
CRMT_ODATA_LEAD_SALESTEAM_INCL |
CL_CRM_LEAD_DPC_EXT |
To extend the edit view, the following extensibility entities are available on the different layers. You have to extend each of these entities according to your specific business needs:
UI |
Back End/ABAP |
|||
---|---|---|---|---|
View |
Extension Point |
Design Time: Gateway Entity |
Design Time: Extension Include |
Run Time: Superclass and Method to Be Redefined |
S4.view.xml |
leadEditContentTopExtension |
Lead |
CRMT_ODATA_LEAD_HEADER_INCL |
CL_CRM_LEAD_DPC_EXT |
S4.view.xml |
leadEditContentBottomExtension |
Lead |
CRMT_ODATA_LEAD_HEADER_INCL |
CL_CRM_LEAD_DPC_EXT |
S4.view.xml |
leadProductTabColumnExtension |
LeadProduct |
CRMT_ODATA_LEAD_PRODUCT_INCL |
CL_CRM_LEAD_DPC_EXT |
S4.view.xml |
leadProductTabColumnEndExtension |
LeadProduct |
CRMT_ODATA_LEAD_PRODUCT_INCL |
CL_CRM_LEAD_DPC_EXT |
S4.view.xml |
leadProductTabCellsExtension |
LeadProduct |
CRMT_ODATA_LEAD_PRODUCT_INCL |
CL_CRM_LEAD_DPC_EXT |
S4.view.xml |
leadProductTabCellsEndExtension |
LeadProduct |
CRMT_ODATA_LEAD_PRODUCT_INCL |
CL_CRM_LEAD_DPC_EXT |
UI |
Back End/ABAP |
|||
---|---|---|---|---|
View |
Extension Point |
Design Time: Gateway Entity |
Design Time: Extension Include |
Run Time: Superclass and Method to Be Redefined |
S2.view.xml |
Extensibility of hooks delivered with the standard system — see section UI Controller Hooks |
|||
S3.view.xml |
Extensibility of hooks delivered with the standard system — see section UI Controller Hooks | |||
S4.view.xml |
Extensibility of hooks delivered with the standard system — see section UI Controller Hooks |
Business Add-Ins (BAdIs)
The following Business Add-Ins are available for extensibility purposes:
<BAdI Name 1> (<Technical name>)
You can use this BAdI to...
Extension Includes
In addition to the extension includes described above, the following extension includes are available:
DDIC |
Extension Include |
Use |
---|---|---|
CRMT_ODATA_LEAD_ATTACHMENT |
CRMT_ODATA_LEAD_ATT_INCL |
Allows you to extend the Attachment entity for leads |
CRMT_ODATA_LEAD_CHANGE_DOC |
CRMT_ODATA_LEAD_CHANGEDOC_INCL |
Allows you to extend the Change Document entity for leads |
CRMT_ODATA_LEAD_NOTES |
CRMT_ODATA_LEAD_NOTES_INCL |
Allows you to extend the Note entity for leads |
CRMT_ODATA_LEAD_STATUS |
CRMT_ODATA_LEAD_STATUS |
Allows you to extend the Status entity for leads |
CRMT_ODATA_LEAD_ORIGIN |
CRMT_ODATA_LEAD_ORIGIN_INCL |
Allows you to extend the Origin entity for leads |
CRMT_ODATA_LEAD_PRIORITY |
CRMT_ODATA_LEAD_PRIORITY_INCL |
Allows you to extend the Priority entity for leads |
CRMT_ODATA_LEAD_QUAL_LEVEL |
CRMT_ODATA_LEAD_QUALLEVEL_INCL |
Allows you to extend the Qualification entity for leads |
For more information about extension includes, see the extensibility documentation for the respective SAP NetWeaver release on your front-end server at http://help.sap.com/fiori_implementation .
Scenario |
Class |
Method |
---|---|---|
Update |
CL_CRM_LEAD_DPC_EXT |
/IWBEP/IF_MGW_APPL_SRV_RUNTIME~PATCH_ENTITY |
Extension Points
For <business case>, for example, the following extension points are available:
View |
Extension Point |
Use |
---|---|---|
<DDIC> |
<Extension point> |
|
If there are additional fields available in the OData service, you can display these fields on the UI. For more information, see the extensibility documentation for the respective SAP NetWeaver release on your front-end server at http://help.sap.com/fiori_implementation .
UI Controller Hooks
To plug in and execute custom code to <business case>, for example, the following hooks are available in the controller code:
Controller |
Hook |
Use |
---|---|---|
S2.controller.js |
extHookGetHeaderFooterOptions |
Allows you to extend the footer toolbar functions in the list view. Example Allows you to extend the sorting or filtering
of the list using the attributes
oSortOptions
and
oFilterOptions
respectively.
|
S3.controller.js |
extHookCustomTabSelectHandler |
Allows you to implement custom logic for newly added icon tabs. |
S3.controller.js |
extHookGetAdditionalCustomizing |
Allows you to fetch any additional customizing values from the backend. This happens only during application launch. The response can be handled in the controller hook extHookHandleBatchResponses. |
S3.controller.js |
extHookGetAdditionalData |
Allows you to implement fetching of additional data and bind it in the detail screen. |
S3.controller.js |
extHookHandleBatchResponses |
Allows you to handle additional batch responses when the detail page loads for the first time. |
S4.controller.js |
extHookBindAdditionalFields |
Allows you to set values for additional fields that can be modified in the edit screen, from the detail screen. You can access the data of the detail page by calling the getDetailController function. |
S4.controller.js |
extHookCheckDeltaAndFrameRequests |
Allows you to send additional update requests to the backend with the delivered updates which are on the header, status, employee responsible, and the product basket. |
S4.controller.js |
extHookAddCustomHeaderFields |
Allows you to add additional fields that are part of the opportunity header. |
S4.controller.js |
extHookAddCustomColumnsForProductDelete |
Allows you to add new columns during deletion of products from the product basket. |
S4.controller.js |
extHookAddCustomColumnsForProductModify |
Allows you to add new columns while modifying products in the product basket. |
S4.controller.js |
extHookAddCustomColumnsForProductCreate |
Allows you to add new columns during creation of products in the product basket. |
S4.controller.js |
extHookCheckDeltaOnProductEntry |
Allows you to check fields in the product entry that have changed, before they are edited. |
S4.controller.js |
extHookValidateAdditionalFields |
Allows you to implement custom validations to validate additional fields. |
S4.controller.js |
extHookHandleResponsesForCustomUpdates |
Allows you to custom handle responses to custom updates. The oResponses argument contains the responses for all the requests that are framed. The specific response can be identified by using the changeSetMapping number as an index in the oResponses array. |
If there are additional UI controller hooks available in the controller code, you can add own code. For more information, see the extensibility documentation for the respective SAP NetWeaver release on your front-end server at http://help.sap.com/fiori_implementation .
Display of UI Controls
As an example, the following UI controls can be hidden from the app UI:
View |
Control ID |
Use |
---|---|---|
AddProducts.fragment.xml | productList |
Allows you to maintain the product list. |
AddProducts.fragment.xml |
productListItem |
Allows you to maintain the Product list item. |
ChangeLog.fragment.xml |
logchange |
Allows you to maintain the change log dialog. |
ChangeLog.fragment.xml |
ChangeLog |
Allows you to maintain the change log list items. |
ChangeLog.fragment.xml |
dproduct1 |
Allows you to display the change log. |
ContactF4.fragment.xml |
dialogContactF4 |
Allows you to maintain dialog for contact dropdown list. |
ContactF4.fragment.xml |
contactList |
Allows you to maintain the list of contacts in the dropdown list. |
ParticipantsF4.fragment.xml |
dialogParticipantsF4 |
Allows you to maintain dialog for participants dropdown list. |
ProdBasket.fragment.xml |
productBasketEdit |
Allows you to maintain the product basket table. |
S2.view.xml |
objAttribute2 |
Allows you to maintain attribute of an object. |
S2.view.xml |
objstatus |
Allows you to maintain the status of an object. |
S3.view.xml |
S3_Header |
Allows you to maintain the detail view header details. |
S3.view.xml |
leadProspectName |
Allows you to display the name of the lead prospect in the header. |
S3.view.xml |
leadMainContact |
Allows you to display the main contact for the lead in the header. |
S3.view.xml |
icntab |
Allows you to maintain the icon tab bar in the S3 view. |
S3.view.xml |
leadType_label |
Allows you to maintain the label for lead transaction type. |
S3.view.xml |
lead_priority_label |
Allows you to maintain the label to indicate the priority of the lead. |
S3.view.xml |
lead_qualification_label |
Allows you to maintain the label for lead qualification. |
S3.view.xml |
leadChangeLog |
Allows you to maintain the view for change log. |
S3.view.xml |
icnTabProduct |
Allows you to maintain icon tab for the product. |
S3.view.xml |
lead_product_quantity |
Allows you to maintain the product quantity. |
S3.view.xml |
tab_notes |
Allows you to make changes to the notes tab with FeedInput control. |
S3.view.xml |
icnTabAttachment |
Allows you to make changes to the attachment tab with FeedInput control. |
S3.view.xml |
salesTeam |
Allows you to make changes to sales team tab. |
S3.view.xml |
salesteam |
Allows you to maintain the sales team table. |
S3.view.xml |
salesTeamHeader |
Allows you to maintain the sales team header. |
S3.view.xml |
salesTeamVLayout |
Allows you to maintain the vertical layout for sales team. |
S3.view.xml |
callIcon |
Allows you to hide the phone to person icon. |
S3.view.xml |
participantDeleteButton |
Allows you to maintain the status of the participant delete pushbutton. |
S3.view.xml |
accept |
Allows you to maintain the accept button in the S3 View. |
S3.view.xml |
reject |
Allows you to maintain the reject button in the S3 View. |
S4.view.xml |
inputEmpResponsible |
Allows you to maintain the employee responsible input field. |
S4.view.xml |
datePickerStartDate |
Allows you to maintain the date picker control for start date. |
S4.view.xml |
datePickerEndDate |
Allows you to maintain the date picker control for end date. |
S4.view.xml |
productBasketEdit |
Allows you to maintain the product basket table in the edit page. |
S4.view.xml |
basketColumn1_S4 |
Allows you to maintain the column for product basket. |
S4.view.xml |
productDeleteButton_S4 |
Allows you to maintain the Product delete pushutton in the S4 view. |
For more information about hiding UI controls, see the extensibility documentation for the respective SAP NetWeaver release on your front-end server at http://help.sap.com/fiori_implementation .
For a general description of the extensibility options and procedures of SAP Fiori apps, see http://help.sap.com/fiori_implementation .