Show TOC

 App Extensibility: My Contacts

 

You can extend My Contacts according to your business needs for different aspects.

Example Example

To add the preferred communication method to the contact details, 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 (in DDIC Structure)

Run Time: Superclass and Method to be Redefined

ContactDetails.view.xml

extContactDetailsInfo

CRM_BUPA_ODATA

CRMT_BP_ODATA_ADDRESS_INCL

Superclass: CL_CRM_BP_ODATA_RT_ADDRESS

Method: READ_ADDRESSES_FOR_PARTNER

End of the example.

Back-End Extensibility

Extension Includes

The following extension includes are available:

DDIC Structure

Extension Include

Use

CRMT_BP_ODATA_ACCOUNT

CRMT_BP_ODATA_ACCOUNT_INCL

Accounts

CRMT_BP_ODATA_ADDRESS

CRMT_BP_ODATA_ADDRESS_INCL

Address data

CRMT_BP_ODATA_CONTACT

CRMT_BP_ODATA_CONTACT_INCL

Contacts

CRMT_BP_ODATA_ATTACHMENT

CRMT_BP_ODATA_ATTACHMENT_INCL

Attachments

CRMT_BP_ODATA_NOTE

CRMT_BP_ODATA_NOTE_INCL

Notes

For more information about extension includes, see Extension Includes.

Front-End Extensibility

Extension Points

There are two types of extension point:

  • Extension points that contain specific objects

    These extension points allow you to remove or replace an object, e.g. if you want to change the sequence of the object’s default attributes, or add a custom attribute in any place except the very end of the object’s default attributes.

  • Empty extension points

    These extension points allow you to add custom attributes at the end of the object’s default attributes.

The following extension points are available:

View

Extension Point

Description

S2.view.xml (overview screen showing list of contacts)

extListItem

Allows you to remove or replace the list items in total.

extListItemInfo

Allows you to add custom attributes to the list items.

S3.view.xml (contact details screen)

extContact

Allows you to remove or replace the header data in total, with the exception of the contact’s name and photo.

extContactInfo

Allows you to add custom attributes to the header data.

extContactDetailsTab

Allows you to remove or replace the information tab in total.

extContactInfoTab

Allows you to add custom tabs to the contact details.

ContactDetails.view.xml (information tab that is part of the contact details screen)

extContactDetailsInfo

Allows you to add custom attributes to the information tab.

S4.view.xml (edit/create contact screen)

extContactPicture

Allows you to remove or replace the photo area in total.

extContactDataInfo

Allows you to add custom attributes to the contact’s data.

For more information about extension points, see Extension Points.

UI Controller Hooks

To plug in and execute custom code, the following hooks are available in the controller code:

Controller

Hook

Use

S4.controller.js

getCustomProperties in method handleSave

Allows you to enhance the creationModel model with custom attributes.

modificationsCheckCustomFields in method modificationsCheck

setCustomProperties in method updateModel

cleanCustomProperties in method cleanModel

For more information about UI controller hooks, see UI Controller Hooks.

Display of UI Controls

The following UI controls can be hidden from the app UI:

View

Control ID

Use

S3.view.xml (contact details screen)

function

Allows you to hide the function.

department

Allows you to hide the department.

Attachments

Allows you to hide the attachments tab.

Notes

Allows you to hide the notes tab.

ContactDetails.view.xml (information tab that is part of the contact details screen)

mobilePhoneLabel, mobilePhoneInput

Allows you to hide the mobile phone number.

phoneLabel, phoneInput

Allows you to hide the phone number.

emailLabel, emailInput

Allows you to hide the email address.

addressLabel, addressInput

Allows you to hide the address.

emptyLabel, emptyInput

Allows you to hide the empty line preceding the date of birth.

birthDateLabel, birthDateInput

Allows you to hide the date of birth.

S4.view.xml (edit/create contact screen)

titleLabel, titleSelect

Allows you to hide the title.

functionLabel, functionInput

Allows you to hide the function.

departmentLabel, departmentInput

Allows you to hide the department.

mobileLabel, mobileInput

Allows you to hide the mobile phone number.

phoneLabel, phoneInput

Allows you to hide the phone number.

emailLabel, emailInput

Allows you to hide the email address.

birthdayLabel, birthdayInput

Allows you to hide the date of birth.

For more information about hiding UI controls, see Concealable UI Controls.

More Information

For a general description of the extensibility options and procedures of Fiori apps, see Extensibility.