Class CL_BSP_MODEL_ACCESS_ADDRESS

This class is the abstract superclass for the actual application-specific model access class of the application. Most of the methods are already implemented. However, there are some methods the application must implement, because they need application-specific logic.

Methods

GET_ADDRESS_KEY

IV_OBJECT_KEY

Importing

Type

CRMT_BSP_OBJECTKEY

IV_SCREEN_STRUCTURE_NAME

Importing

Type

CRMT_BSP_SCRSTRUCNAME

ES_ADDR_KEY

Exporting

Type    

CRMT_BSP_ADDR_KEY

EV_CONTEXT  

Exporting     

Type

CRMT_CONTEXT_ID

ER_PARAMETERS

Exporting     

Type Ref To

CL_BSP_ADDRESS_PARAMETERS

ADDRESS_NOT_EXIST

Exception

The address controller gets only the application-specific object key from the main controller. The address controller itself has no way to determine the address ID from the object key. Therefore, this method is called. Depending on the object key and screen structure, the application must return the address ID in structure ES_ADDR_KEY and the context of the address controller in EV_CONTEXT.

The screen structure and the context are only needed when you are using more than one address controller in the same application.

Additional information must be returned with the parameter ER_PARAMETERS. For more information about these additional parameters, refer to The Class CL_BSP_ADDRESS_PARAMETERS.

ADDRESS_IS_CREATED           

IV_OBJECT_KEY

Importing

Type

CRMT_BSP_OBJECTKEY

IV_ADDR_KEY

Importing

Type

CRMT_BSP_ADDR_KEY

This method is called to notify the application that a newly created address has been successfully inserted into the BAS local memory for the first time. This means that the application will have to obtain an address number and/or person number before saving the address. For more information, refer to Creating an Address.

GET_GLOBAL_PARAMETERS

IV_SCREEN_STRUCTURE_NAME

Importing

Type

CRMT_BSP_SCRSTRUCNAME

ER_GLOBAL_PARAM

Exporting

Type Ref To

CL_BSP_ADDRESS_GLOBAL_PARAM

This method asks the application for parameters that are independent of the individual address. The address controller must know these parameter even if there is no address selected for display, for example, at the start of a transaction. For more information about these additional parameters, refer to The Class CL_BSP_ADDRESS_GLOBAL_PARAM.

GET_SYNCHRONIZED_FIELDS and SET_SYNCHRONIZED_FIELDS

These methods must only be implemented, if the application wants to use the feature Synchronizing Fields with the Application.

DUPLICATES_FOUND

This method must only be implemented, if the application wants to use the function Enabling Duplicate Checks with Third-Party Tools.

This class has additional methods the application can use:

GET_ADDRESS_NUMBER

IV_ADDRESS_HANDLE

Importing

Type

AD_HANDLE

IS_ADDRESS_REFERENCE

Importing

Type    

ADDR_REF

IV_PERSONAL_ADDRESS

Importing

Type

AD_PRSADDR

IV_NUMBERRANGE_NUMBER

Importing     

Type    

NRNR

IV_OWNER

Importing     

Type

XFELD

EV_RETURNCODE_NUMBERRANGE

Exporting

Type

NRRETURN

EV_ADDRESS_NUMBER   

Exporting     

Type    

AD_ADDRNUM

This method is similar to function module ADDR_NUMBER_GET and should be used to obtain an address number for a newly created address. This method should be called in method CHECK_BEFORE_SAVE of the process class.

GET_PERSON_NUMBER

IV_PERSON_HANDLE

Importing     

Type

AD_HANDLE

IS_PERSON_REFERENCE

Importing

Type

PERS_REF

IV_OWNER

Importing

Type

XFELD

EV_PERSON_NUMBER

Exporting

Type

AD_PERSNUM

EV_RETURNCODE_NUMBERRANGE

Exporting

Type

NRRETURN

This method is similar to function module ADDR_PERSON_NUMBER_GET and should be used to obtain a person number for a newly created address.

DELETE_ADDRESS

IV_OBJECT_KEY

Importing     

Type

CRMT_BSP_OBJECTKEY

IV_SCREEN_STRUCTURE_NAME

Importing

Type

CRMT_BSP_SCRSTRUCNAME

IS_ADDRESS_KEY

Importing

Type

CRMT_BSP_ADDRESS_KEY_INTERNAL

IS_ADDR_REF

Importing     

Type     

ADDR_REF

IS_PERS_REF

Importing

Type

PERS_REF

IV_RETAIN_PERSON

Importing

Type

XFELD SPACE

EV_DELETE_SUCCESSFUL

Exporting

Type

XFELD

ET_APPLOG

Exporting

 

Type     

CRMT_BSP_APPLOG_TAB

ET_CLASS_NAME

Exporting

Type

CRMT_MODELACCESSCLASS_TAB

ADDRESS_NOT_EXIST

Exception

This method is used to delete an existing address. It should be called within the DELETE method of the applications model access class. To identify the address, either the object key or the address key must be provided. The structures IS_ADDR_REF and IS_PERS_REF have the same meaning as in the DELETE function modules in function group SZA0.

The parameter EV_DELETE_SUCCESSFUL indicates, whether or not the delete encountered any problems. If yes, the table ET_APPLOG will contain all the error messages.

The parameter ET_CLASS_NAME contains the name of the corresponding process class. The calling application must pass it to the interface layer, else the deletion will not be saved.

INITIALIZE_ADDRESS

IV_OBJECT_KEY

Importing

Type

CRMT_BSP_OBJECTKEY

IV_SCREEN_STRUCTURE_NAME

Importing

Type

CRMT_BSP_SCRSTRUCNAME

IS_ADDRESS_KEY

Importing     

Type

CRMT_BSP_ADDRESS_KEY_INTERNAL

ADDRESS_NOT_EXIST

Exception

This method is used to undo all changes to an existing address. It should be called within the initialization class of the application. To identify the address, either the object key or the address key must be provided. If the address was newly created and not yet saved, its creation will be undone.