Conigma CCM aus externen Tools starten

Funktionsumfang

Wenn der Bedarf besteht aus externen Tools Conigma CCM zu starten und zu einem bestimmten Objekt zu navigieren, kann die Klasse /GAL/CCM_SHORTCUT_UTILITIES verwendet werden. Die Klasse enthält nur eine statische Methode mit dem Namen RUN_WITH_SHORTCUT. Sofern Conigma CCM nur gestartet, aber nicht zu einem bestimmten Zielobjekt navigiert werden soll, kann ebenfalls die Klasse /GAL/CCM_APPLICATION werden, welche die Instanzmethode RUN anbietet, um die Applikation zu starten.

Alternativ kann auch der remotefähige Funktionsbaustein /GAL/CCM_REP_BROWSER_START verwendet werden, wenn Conigma aus einem System aufgerufen werden soll, in dem Conigma selber nicht installiert ist. 

Die nachstehende Tabelle bildet die Definition der Methode /GAL/CCM_SHORTCUT_UTILITIES=>RUN_WITH_SHORTCUT ab.

Parameter

Art

Datentyp

Defaultwert

Beschreibung

REPOSITORY

Optionaler Importparameter

REF TO /GAL/CCM_CRO_REPOSITORY


Instanz eines Repositories. Für den Aufruf muss entweder eine Repository Instanz oder die ID des Repositories angegeben werden. 

REPOSITORY_ID

Optionaler Importparameter

/GAL/CM_DE_REPOSITORY_ID


Objekt ID des Repositories. Für den Aufruf muss entweder eine Repository Instanz oder die ID des Repositories angegeben werden.  

OBJECT_TYPE

Importparameter

/GAL/CCM_DE_OBJECT_TYPE


Objekttyp-Name des Zielobjekts, z. B. "SWFM_CR" für einen Change. Die Objekttyp-Konstanzen sind in der Klasse /GAL/CCM_OBJECT_TYPES definiert.

OBJECT_ID

Optionaler Importparameter

/GAL/CCM_DE_OBJECT_ID


Optionale Angabe der Objekt-ID des Zielobjekts. Für den Aufruf muss entweder die Objekt-ID, die Interne ID oder die Externe ID des Zielobjekts angegeben werden.

INTERNAL_ID

Optionaler Importparameter

/GAL/CCM_DE_INTERNAL_ID


Optionale Angabe der Internen ID des Zielobjekts. Für den Aufruf muss entweder die Objekt-ID, die Interne ID oder die Externe ID des Zielobjekts angegeben werden. 

EXTERNAL_ID

Optionaler Importparameter

/GAL/CCM_DE_EXTERNAL_ID


Optionale Angabe der Externen ID des Zielobjekts. Für den Aufruf muss entweder die Objekt-ID, die Interne ID oder die Externe ID des Zielobjekts angegeben werden. 

OBJECT_PROVIDER_ID

Optionaler Importparameter

/GAL/CCM_DE_INTERNAL_ID

000

Anhand dieses Parameters kann die Interne ID des Repository Object Provider, bzw. der View, angegeben werden, in der das gewünschte Zielobjekt gesucht werden soll. Per Default wird in der View "Change Request nach Status" mit der Internen ID "000" gesucht. 

OBJECT_PARENT_PROVIDER_ID

Optionaler Importparameter

/GAL/CCM_DE_INTERNAL_ID

PROJECTS

Wenn die View mit dem Zielobjekt nicht direkt unter dem Repository hängt, kann mithilfe dieses Parameters die ID der übergeordneten View angegeben werden. Der Wert ist mit der Internen ID "PROJECTS" der View "Projekt- und Releaseentwicklung" vorbelegt. Sofern die View mit dem Zielobjekt direkt unter dem Repository hängt, kann dieser Parameter mit einem initialen Wert oder mit dem Wert des Parameters OBJECT_PROVIDER_ID belegt werden.

TEMPORARY_VIEW

Optionaler Importparameter

/GAL/CCM_DE_TEMPORARY_VIEW

ABAP_FALSE

Optionale Angabe eines Kennzeichens (ABAP_TRUE oder ABAP_FALSE), ob das Zielobjekt in einem temporären Ordner angezeigt werden soll.

TEMPORARY_VIEW_DESRIPTION

Optionaler Importparameter

/GAL/CCM_DE_DESCRIPTION


Optionale Angabe der Beschriftung des temporären Ordners, wenn der Importparameter TEMPORARY_VIEW gesetzt ist. Die Beschriftung unterstützt maximal 60 Zeichen.  

/GAL/CX_CCM_EXCEPTION

Ausnahme



Exception, die im Fehlerfall geworfen wird. Folgende Fehler-Szenarien sind möglich: 

  • Es wurde weder eine Instanz für den Parameter REPOSITORY noch einen Wert für REPOSITORY_ID übergeben.

  • Ein Repository mit der angegebenen REPOSITORY_ID existiert nicht.

  • Das über die Werte OBJECT_TYPE, OBJECT_ID, INTERNAL_ID und EXTERNAL_ID angegebene Zielobjekt existiert nicht.

  • Die  über die Werte OBJECT_PROVIDER_ID und OBJECT_PARENT_PROVIDER_ID angegebene View existiert nicht.

  • Das Zielobjekt konnte nicht in der Zielview gefunden werden. 

Die nachstehende Tabelle bildet die Definition des remotefähigen Funktionsbausteins /GAL/CCM_REP_BROWSER_START ab.

Parameter

Art

Datentyp

Defaultwert

Beschreibung

REPOSITORY_ID

Importparameter

NUMC10


Objekt ID des Repositories.

OBJECT_TYPE

Importparameter

CHAR10


Objekttyp-Name des Zielobjekts, z. B. "SWFM_CR" für einen Change. Die Objekttyp-Konstanzen sind in der Klasse /GAL/CCM_OBJECT_TYPES definiert.

OBJECT_ID

Optionaler Importparameter

NUMC10


Optionale Angabe der Objekt-ID des Zielobjekts. Für den Aufruf muss entweder die Objekt-ID, die Interne ID oder die Externe ID des Zielobjekts angegeben werden.

INTERNAL_ID

Optionaler Importparameter

CHAR30


Optionale Angabe der Internen ID des Zielobjekts. Für den Aufruf muss entweder die Objekt-ID, die Interne ID oder die Externe ID des Zielobjekts angegeben werden.

EXTERNAL_ID

Optionaler Importparameter

CHAR20


Optionale Angabe der Externen ID des Zielobjekts. Für den Aufruf muss entweder die Objekt-ID, die Interne ID oder die Externe ID des Zielobjekts angegeben werden. 

OBJECT_PROVIDER

Optionaler Importparameter

CHAR30

000

Anhand dieses Parameters kann die Interne ID des Repository Object Provider, bzw. der View, angegeben werden, in der das gewünschte Zielobjekt gesucht werden soll. Per Default wird im View "Change Request nach Status" mit der Internen ID "000" gesucht. 

PARENT_OBJECT_PROVIDER

Optionaler Importparameter

CHAR30

PROJECTS

Wenn die View mit dem Zielobjekt nicht direkt unter dem Repository hängt, kann mithilfe dieses Parameters die ID der übergeordneten View angegeben werden. Der Wert ist mit der Internen ID "PROJECTS" der View "Projekt- und Releaseentwicklung" vorbelegt. Sofern die View mit dem Zielobjekt direkt unter dem Repository hängt, kann dieser Parameter mit einem initialen Wert oder mit dem Wert des Parameters OBJECT_PROVIDER_ID belegt werden. 

TEMPORARY_VIEW

Optionaler Importparameter

FLAG


Optionale Angabe eines Kennzeichens (ABAP_TRUE oder ABAP_FALSE), ob das Zielobjekt in einem temporären Ordner angezeigt werden soll.

TEMPORARY_VIEW_DESCRIPTION

Optionaler Importparameter

STRING


Optionale Angabe der Beschriftung des temporären Ordners, wenn der Importparameter TEMPORARY_VIEW gesetzt ist. Die Beschriftung unterstützt maximal 60 Zeichen. 

RETURN

Exportparameter

BAPIRET2_T


Die Exporttabelle RETURN enthält eventuell aufgetretene Fehlermeldungen. 

Die Ableitung in welcher View das Navigationsziel angezeigt werden soll, kann auch mithilfe von Expressions auf Repository-Ebene Fallabhängig durchgeführt werden, z. B. dass abgeschlossene Change Requests in einem temporären Ordner und offene Change Requests in der View "Change Requests nach Status" angezeigt werden. Wenn Sie Fallabhängig entscheiden möchten in welcher View das Zielobjekt angezeigt werden soll, kontaktieren Sie bitte Ihren Conigma CCM Ansprechpartner. 

Beispielhafte Implementierung 

Es wird angenommen, dass ein Change Request in der View "Change Request nach Status" mit der Externen ID "0000000699" im Repository mit der ID "0000000002" gesucht werden soll. Für den Aufruf können nachstehende Beispiele verwendet werden. Bei Beispiel 1 erfolgt der Aufruf mithilfe der Klasse /GAL/CCM_SHORTCUT_UTILITIES und bei Beispiel 2 der Aufruf mithilfe des Funktionsbaustein /GAL/CCM_REP_BROWSER_START. 

Beispiel 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.

Beispiel 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.