Start Conigma CCM from external Tools

Functional Scope

If you want to start Conigma CCM from external tools including navigation to specific objects, you can use the class /GAL/CCM_SHORTCUT_UTILITIES. The class contains only one static method with the name RUN_WITH_SHORTCUT. If Conigma CCM should be started without navigating to a specific target object, you may also use the class /GAL/CCM_APPLICATION, which offers the instance method RUN to start the application.

Alternatively, you can use the remote-enabled function module /GAL/CCM_REP_BROWSER_START if you want to call Conigma CCM from a system in which Conigma itself is not installed.


The table below shows the definition of method /GAL/CCM_SHORTCUT_UTILITIES=>RUN_WITH_SHORTCUT.

Parameter

Parameter type

Data type

Default value

Description

REPOSITORY

Optional import parameter

REF TO /GAL/CCM_CRO_REPOSITORY



Instance of a repository. Either a repository instance or the repository ID must be specified for the call.

REPOSITORY_ID

Optional import parameter

/GAL/CCM_DE_REPOSITORY_ID


Object ID of the repository. Either a repository instance or the repository ID must be specified for the call.

OBJECT_TYPE

Import parameter

/GAL/CCM_DE_OBJET_TYPE


Object type name of the target object, for example, "SWFM_CR" for a change. The object type instances are defined in the class /GAL/CCM_OBJECT_TYPES.

OBJECT_ID

Optional import parameter

/GAL_CCM_DE_OBJECT_ID


Optional specification of the object ID of the target object. To access the target object, either the object ID, the internal ID, or the external ID must be specified. 

INTERNAL_ID

Optional import parameter

/GAL/CCM_DE_INTERNAL_ID


Optional specification of the internal ID of the target object. To access the target object, either the object ID, the internal ID, or the external ID must be specified.

EXTERNAL_ID

Optional import parameter

/GAL/CCM_DE_EXTERNAL_ID


Optional specification of the external ID of the target object. To access the target object, either the object ID, the internal ID, or the external ID must be specified.

OBJECT_PROVIDER_ID

Optional import parameter

/GAL/CCM_DE_INTERNAL_ID

000

This parameter can be used to specify the internal ID of the Repository Object Provider or the view in which the desired target object is to be searched. By default, the view "Change Requests by Status" is accessed using the internal ID "000".

OBJECT_PARENT_PROVIDER_ID

Optional import parameter

/GAL/CCM_DE_INTERNAL_ID

PROJECTS

If the view with the target object is not a subobject of the repository, you can use this parameter to specify the ID of the higher-level view. The value is preset with the internal ID "PROJECTS" of the view "Project and Release Development". If the view with the target object is a direct child object of the repository, this parameter can be set to an initial value or the value of the parameter OBJECT_PROVIDER_ID.

TEMPORARY_VIEW

Optional import parameter

/GAL/CCM_DE_TEMPORARY_VIEW

ABAP_FALSE

Optional specification of an indicator (ABAP_TRUE or ABAP_FALSE) whether the target object is to be displayed in a temporary folder.

TEMPORARY_VIEW_DESCRIPTION

Optional import parameter

/GAL/CCM_DE_DESCRIPTION


Optional specification of the description of the temporary folder if the import parameter TEMPORARY_VIEW is set. The description supports a maximum of 60 characters.

/GALCX_CCM_EXCEPTION

Exception



Exception that is thrown if an error occurs. The following error scenarios are possible:

  • Neither an instance for the parameter REPOSITORY nor a value for REPOSITORY_ID was passed.

  • A repository with the specified REPOSITORY_ID does not exist.

  • The target object specified using the values OBJECT_TYPE, OBJECT_ID, INTERNAL_ID or EXTERNAL_ID does not exist.

  • The view specified using the values OBJECT_PROVIDER_ID and OBJECT_PARENT_PROVIDER_ID does not exist.

  • The target object could not be found in the target view. 

The table below shows the definition of the remote-enabled function module /GAL/CCM_REP_BROWSER_START.

Parameter

Parameter type

Data type

Default value

Description

REPOSITORY_ID

Import parameter

NUMC10


Object ID of the repository.

OBJECT_TYPE

Import parameter

CHAR10


Object type name of the target object, for example, "SWFM_CR" for a change. The object type instances are defined in the class /GAL/CCM_OBJECT_TYPES.

OBJECT_ID

Optional import parameter

NUMC10


Optional specification of the object ID of the target object. To access the target object, either the object ID, the internal ID, or the external ID must be specified.

INTERNAL_ID

Optional import parameter

CHAR30


Optional specification of the internal ID of the target object. To access the target object, either the object ID, the internal ID, or the external ID must be specified.

EXTERNAL_ID

Optional import parameter

CHAR20


Optional specification of the external ID of the target object. To access the target object, either the object ID, the internal ID, or the external ID must be specified.

OBJECT_PROVIDER

Optional import parameter

CHAR30

000

This parameter can be used to specify the internal ID of the Repository Object Provider or the view in which the desired target object is to be searched. By default, the view "Change Requests by Status" is accessed using the internal ID "000".

PARENT_OBJECT_PROVIDER

Optional import parameter

CHAR30

PROJECTS

If the view with the target object is not a subobject of the repository, you can use this parameter to specify the ID of the higher-level view. The value is preset with the internal ID "PROJECTS" of the view "Project and Release Development". If the view with the target object is direct child of the repository, this parameter can be set to an initial value or the value of the parameter OBJECT_PROVIDER_ID.

TEMPORARY_VIEW

Optional import parameter

FLAG


Optional specification of an indicator (ABAP_TRUE or ABAP_FALSE) whether the target object is to be displayed in a temporary folder.

TEMPORARY_VIEW_DESCRIPTION

Optional import parameter

STRING


Optional specification of the description of the temporary folder if the import parameter TEMPORARY_VIEW is set. The description supports a maximum of 60 characters.

RETURN

Export parameter

BAPIRET2_T


The export table RETURN contains any error messages that may have occurred. 

The derivation in which view the navigation target is to be displayed can also be performed case-dependently using expressions at repository level, for example, that completed change requests are displayed in a temporary folder and open change requests in the view "Change Requests by Status". If you want to decide case-dependent in which view the target object should be displayed, please contact your Conigma CCM contact person.

Exemplary implementation

It is assumed that a change request is to be searched for in the view "Change Request by Status" with the external ID "0000000699" in the repository with the ID "0000000002". The following examples can be used for the call. In example 1, the call is made using the class /GAL/CCM_SHORTCUT_UTILITIES and in example 2, the call is made using the function module /GAL/CCM_REP_BROWSER_START.


Example 1:

TYPE-POOLS abap.

DATA l_external_id   TYPE /GAL/CCM_DE_EXTERNAL_ID.

DATA l_repository_id TYPE /GAL/CCM_DE_REPOSITORY_ID.


l_external_id   = `0000000699`.

l_repository_id = `0000000002`.


TRY.


/gal/ccm_shortcut_utilities=>run_with_shortcut( EXPORTING repository_id  = l_repository_id                                                          object_type    = /gal/ccm_object_types=>change                                                          external_id    = l_external_id                                                          temporary_view = abap_true ).
CATCH /gal/cx_ccm_exception.* Exception handling.ENTRY.

Example 2:

TYPE-POOLS abap.

DATA l_external_id   TYPE /gal/ccm_de_external_id.

DATA l_repository_id TYPE /gal/ccm_de_repository_id.

DATA lt_return       TYPE bapiret2_t.


l_external_id   = `0000000699`.

l_repository_id = `0000000002`.


CALL FUNCTION '/GAL/CCM_REP_BROWSER_START'

  EXPORTING

    repository_id  = l_repository_id

    object_type    = /gal/ccm_object_types=>change 

    external_id    = l_external_id

    temporary_view = abap_true

  IMPORTING

    return        = lt_return.


DESCRIBE TABLE lt_return LINES sy-tfill.

IF sy-tfill > 0.

  • Exception handling

ENDIF.