You can extend the Approve Master Data app according to your business needs for different aspects. For this purpose, the following extensibility options are available:
Add a new icon tab in the Detail view and add fields to this tab
Hide fields in the icon tab
Show new fields of existing entities in the icon tab
Add attributes in the icon tab
Show additional fields in the Detail screen header
Show additional fields in the Sub Detail page
Hide notes icon tab
You can extend the MDG_APPROVE_CR application with new entities from the MDG data model. To add a customer field to the app, the extensibility entities listed below are available on the different software 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 (in DDIC Structure) |
Runtime: Superclass/ Method to Be Redefined |
S2 |
extObjListItem |
ChangeRequest |
CI_MDG_GW_S_CR |
Superclass: CL_MDG_APPROVE_CR_DPC_EXT Method: /IWBEP/IF_MGW_APPL_SRV_RUNTIME~GET_ENTITYSET |
Business Add-Ins (BAdIs)
No BAdIs are available for extensibility purposes.
Extension Includes
In addition to the extension includes described above, the following extension includes are available:
DDIC |
Extension Include |
Use |
---|---|---|
MDG_GW_S_CHANGE_DATA |
CI_MDG_GW_S_CHANGE_DATA |
Allows you to add additional fields for change data of a change request |
MDG_GW_S_CR |
CI_MDG_GW_S_CR |
Allows you to add additional fields to the change request |
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 .
Extension Points
In addition to the extension points described above, the following extension points are available:
View |
Extension Point |
Use |
---|---|---|
CostCenter.fragment.xml |
extcostCenterGenTab |
Extends the General section tab |
CostCenter.fragment.xml |
extcostCenterNotes |
Extends the Note section Tab |
CostCenter.fragment.xml |
extcostCenterAttachments |
Extends the Attachments section tab |
CostCenter.fragment.xml |
extcostCenterTabBar |
Extends the Icon tab |
CostCenterCreate.fragment.xml |
extccCreateGeneralFormSection |
Extends the General section of the form |
CostCenterCreate.fragment.xml |
extccCreateIndFormSection |
Extends the Indicators section of the form |
CostCenterCreate.fragment.xml |
extccCreateAddresslFormSection |
Extends the Address section of the form |
CostCenterCreate.fragment.xml |
extccCreateCommlFormSection |
Extends the Communication section of the form |
CostCenterCreate.fragment.xml |
extccCreateFormCustomSection |
Extends the form with custom groups |
CostCenterCreate.fragment.xml |
extccCreateDescriptionTable |
Extends the column of a description table |
CostCenterDetailsForm.fragment.xml |
extccDetailGeneralFormSection |
Extends the General section of the detail form |
CostCenterDetailsForm.fragment.xml |
extccDetailIndFormSection |
Extends the Indicators section of the detail form |
CostCenterDetailsForm.fragment.xml |
extccDetailAddresslFormSection |
Extends the Address section of the detail form |
CostCenterDetailsForm.fragment.xml |
extccDetailCommlFormSection |
Extends the Communication section of the detail form |
CostCenterDetailsForm.fragment.xml |
extccDetailFormCustomSection |
Extends the form with custom groups |
CostCenterDetailsForm.fragment.xml |
extccDetailDescriptionTable |
Extends the column of a description table |
CRdetails.fragment.xml |
extsimpleFormPopup |
Extension Point for CR Popup |
ProfitCenter.fragment.xml |
extprofitCenterGenTab |
Extends profit center general tab |
ProfitCenter.fragment.xml |
extprofitCenterNotes |
Extends profit center notes tab |
ProfitCenter.fragment.xml |
extprofitCenterAttachments |
Extends profit center attachments tab |
ProfitCenter.fragment.xml |
extprofitCenterTabBar |
Extends profit center tab bar to add additional tabs |
ProfitCenterCreate.fragment.xml |
extpcGeneral |
Extends profit center General section for create scenario |
ProfitCenterCreate.fragment.xml |
extpcAddress |
Extends profit center address section for create scenario |
ProfitCenterCreate.fragment.xml |
extpcComm |
Extends profit center communication section for create scenario |
ProfitCenterCreate.fragment.xml |
extpcInd |
Extends profit center indicator section for create scenario |
ProfitCenterCreate.fragment.xml |
extpcCreateFormCustomSection |
Extends profit center custom section for create scenario |
ProfitCenterCreate.fragment.xml |
extpcCompCodeTable |
Extends profit center company code table for create scenario |
ProfitCenterCreate.fragment.xml |
extpcDescriptionTable |
Extends profit center description table for create scenario |
ProfitCenterDetails.fragment.xml |
extpcDetGenTitle |
Extends profit center General section for details screen |
ProfitCenterDetails.fragment.xml |
extpcAddress |
Extends profit center address section for details screen |
ProfitCenterDetails.fragment.xml |
extpcComm |
Extends profit center communication section for details screen |
ProfitCenterDetails.fragment.xml |
extpcInd |
Extends profit center indicator section for details screen |
ProfitCenterDetails.fragment.xml |
extpcDetailFormCustomSection |
Extends profit center custom section for detail screen |
ProfitCenterDetails.fragment.xml |
extpcDetailSimpleForm |
Extends profit center form for details view |
ProfitCenterDetails.fragment.xml |
extpcCompCodeTable |
Extends profit center company code table for details screen |
ProfitCenterDetails.fragment.xml |
extpcDescriptionTable |
Extends profit center description table for details screen |
S2.view.xml |
CustomerExtensionForObjectListItem |
Extends the list item Comment line |
S3.view.xml |
CustomerExtensionForObjectHeader |
Extends the header section |
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, the following hooks are available in the controller code:
Controller |
Hook |
Use |
---|---|---|
CcDetail.controller.js |
extHookModifyDetailFormData |
To modify the data of the form if it is not done by direct binding. You can modify the data according to your requirements before binding it to a form |
CcDetail.controller.js |
extHookModifyStyleClass |
To modify the style class. You can modify the style class to influence text fields the format of data shown in this description. |
CcDetail.controller.js |
extHookDetDescriptionTable |
To give an access to influence description table. You can modify the description table to modify the new fields |
CcDetail.controller.js |
extHookHideDetailAddressSection |
To delete the address section. You can add their own fields to influence hiding of this address section by adjusting the fields in the IF condition |
CcDetail.controller.js |
extHookHideDetailCommSection |
To delete the address section. You can add your own fields to influencing hiding of this section by adjusting the fields in the IF condition |
PcDetail.controller.js |
extHookPCModifyDetailFormData |
To modify the data of the form if it is not done by direct binding. You can modify the data according to your requirements before binding it to a form |
PcDetail.controller.js |
extHookPCModifyStyleClass |
To modify the style class. You can modify the style class to influence text fields. |
PcDetail.controller.js |
extHookPCHideDetailAddressSection |
To delete the address section. You can add your own fields to influence the hiding of this section by adjusting the fields in the IF condition |
PcDetail.controller.js |
extHookPCHideDetailCommSection |
To delete the address section. You can add your own fields to influence the hiding of this section by adjusting the fields in the IF condition |
S2.controller.js |
extHookGetCustomFilter |
Implement a custom filter. This hook method can be used to replace the standard filter by a custom one based on the filter key. It is called when a filter option is selected on the UI. |
S3.controller.js |
extHookInitAdditionalTabs |
Initialize the custom tabs added by the extension application. This hook method can be used to initialize additional tabs of the tab bar from code. It is called during S3 view initialization. The controller extension should obtain references to the new tabs, which can be used later in the configureAdditionalTabs hook method. |
S3.controller.js |
extHookRouteToCustomDetailView |
To navigate to a new view defined by customer. You can navitate to your custom detail views using the existing router |
S3.controller.js |
extHookGetEntitySetsToExpand |
Add additional entities related to the work item. This hook method can be used to add custom related entities to the expand list of the detail data request It is called when the detail view is displayed and before the detail data fetch starts. |
S3.controller.js |
extHookChangeFooterButtons |
Modify the footer buttons. This hook method can be used to add and change buttons for the detail view footer. It is called when the decision options for the detail item are fetched successfully |
S3.controller.js |
extHookCCCustomService |
To modify the serviceUrl. You can modify the service url to access your own service |
S3.controller.js |
extHookCustCustomService |
To modify the serviceUrl. You can modify the service url to access your own service |
S3.controller.js |
extHookCCChangeQuery |
To modify the query. You can modify the query string to fetch the entity data |
S3.controller.js |
extHookChangeLayout |
To add a new layout. You can add a new layout and can instantiate the table within this layout |
S3.controller.js |
extHookChangeDescTemplate |
To modify the description table. You can modify the description table by adding or deleting columns or by influencing the format of the data. |
S3.controller.js |
extHookCCCreateQuery |
To modify the query. You can modify the query string to fetch the entity data that you need |
S3.controller.js |
extHookCustCreateSalesQuery |
To modify the query. You can modify the query string to fetch the entity data that you need |
S3.controller.js |
extHookCustCreateCompCodeQuery |
To modify the query. You can modify the query string to fetch the entity data that you need |
S3.controller.js |
extHookCustCreateAddressQuery |
To modify the query. You can modify the query string to fetch the entity data that you need |
S3.controller.js |
extHookCustCreateGenQuery |
To modify the query. You can modify the query string to fetch the entity data that you need |
S3.controller.js |
extHookCustChangeSalesQuery |
To modify the query. You can modify the query string to fetch the entity data that you need |
S3.controller.js |
extHookCustChangeCompCodeQuery |
To modify the query. You can modify the query string to fetch the entity data that you need |
S3.controller.js |
extHookCustChangeAddressQuery |
To modify the query. You can modify the query string to fetch the entity data that you need |
S3.controller.js |
extHookCustChangeGenQuery |
To modify the query. You can modify the query string to fetch the entity data that you need |
S3.controller.js |
extHookModityCreateFormData |
To modify the data of the form if it is not done by direct binding. You can modify the data according to your requirements before binding it to a form |
S3.controller.js |
extHookCreateDescTemplate |
To modify the description table. You can modify the description table by adding or deleting columns or by influencing the data format. |
S3.controller.js |
extHookHideCreateAddressSection |
To delete the address section. You can add your own fields to influencing hiding of this section by adjusting the fields in the IF condition |
S3.controller.js |
extHookHideCreateCommSection |
To delete the address section. You can add your own fields to influencing hiding of this section by adjusting the fields in the IF condition |
S3.controller.js |
extHookAddCCData |
To add more data in different tabs or layouts. You can add more data in the new tabs and layouts |
S3.controller.js |
extHookPCCustomService |
To modify the service Url. Youc an modify the service URL to acces your own service |
S3.controller.js |
extHookPCChangeQuery |
To modify the query. You can modify the query string to fetch the entity data |
S3.controller.js |
extHookPCChangeLayout |
To add a new layout. You can add a new layout and instantiate the table within this layout |
S3.controller.js |
extHookPCChangeDescTemplate |
To modify the description table. You can modify the description table by adding or deleting columns or by influencing the data format |
S3.controller.js |
extHookPCCreateQuery |
To modify the query. You can modify the query string to fetch the entity data that you need |
S3.controller.js |
extHookModifyPCCreateFormData |
To modify the data of the form if it is not done by direct binding. You can modify the data as required before binding it to a form. |
S3.controller.js |
extHookPCCreateDescTemplate |
To modify the description table. You can modify the description table by adding or deleting columns or by influencing the data format |
S3.controller.js |
extHookAddPCData |
To add more data in different tabs or layouts. You can add more data in new tabs and layouts |
S3.controller.js |
extHookPCHideCreateAddressSection |
To delete the address section. You can add your own fields to influence hiding of the address section by adjusting the fields in the IF condition |
S3.controller.js |
extHookHidePCCreateCommSection |
To delete the address section. You can add your own fields to influence hiding of this section by adjusting the fields in the IF condition |
S3.controller.js |
extHookPCChangeCompCodeTemplate |
To modify the company code table. You can modify the description table by adding or deleting columns or by influencing the data format |
S3.controller.js |
extHookPCCreateCompCodeTemplate |
To modify the company code table. You can modify the description table by adding or deleting columns or by influencing the data format |
S3.controller.js |
extHookCCModifyChangeData |
To modify the data to be shown in change data. The customer can modify the change data of a cost center by considering custom fields into it |
S3.controller.js |
extHookPCModifyChangeData |
To modify the data to be shown in change data. The customer can modify the change data of a profit center by considering custom fields into it |
S3.controller.js |
extHookCCFillDataForChangeLayout |
To add data for new layout. You can add your own fields to new layout created for cost center change layout |
S3.controller.js |
extHookPCFillDataForChangeLayout |
To add data for new layout. You can add your own fields to new layout created for cost center change |
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 .
For a general description of the extensibility options and procedures of SAP Fiori apps, see http://help.sap.com/fiori_implementation .