CL_GOS_SERVICE - Publikation für generische Objektdienste
Vendor Master (General Section) BAL Application Log DocumentationDiese Dokumentation steht unter dem Copyright der SAP AG.
Funktionalität
CL_GOS_SERVICE ist eine abstrakte Klasse, von der alle Dienste abgeleitet werden, die Teil der generischen Objektdienste sind.
Um den generischen Objektdiensten einen eigenen Dienst hinzuzufügen, müssen Sie diesen als Methode EXECUTE in einer Unterklasse der Klasse CL_GOS_SERVICE kapseln.
Redefinition der Methode EXECUTE
Für Ihren Dienst müssen Sie die Instanzmethode EXECUTE redefinieren. In der Methode könnenSie auf das Attribut GS_OBJECT zugreifen, das die BOR-Referenz des publizierten Objekts enthält.Die Methode EXECUTE und alle von ihr gerufenen Methoden oder Funktionsbausteine dürfen kein COMMITWORK setzen. Stattdessen muß das Ereignis COMMIT_REQUIRED ausgelöst werden. Ist dies nichtmöglich, muß in der Methode ein Funktionsbaustein per RFC aufgerufen werden, damit ein neuer Rollbereich geöffnet wird.
Statusabfrage
Bei der Instanzierung des Dienstes wird die Methode CHECK_STATUS aufgerufen. Die Methode prüft,ob der Dienst für das publizierte BOR-Objekt ausgeführt werden kann. Der Parameter EP_STATUSerhält dabei den Wert MP_STATUS_ACTIVE, MP_STATUS_INACTIVE oder MP_STATUS_INVISIBLE. Eine Statusänderungzu einem späteren Zeitpunkt kann dem Framework der generischen Objektdienste durch das Ereignis SERVICE_CHANGED mitgeteilt werden.
Ereignisbehandlermethoden
Wenn auf den erfolgreichen Abschluß eines anderen Dienstes reagiert werden soll, muß die Ereignisbehandlermethode ON_SERVICE_SUCCEEDED
redefiniert werden und der Ereignisbehandler für das Ereignis SERVICE_SUCCEDED des anderen Dienstes registriert werden.
Beim Abbruch eines Dienstes wird die Ereignisbehandlermethode ON_SERVICE_CANCELED aufgerufen. In dieser Methode können Referenzen gelöscht und Controls freigegeben werden.
Beziehungen
Klasse den generischen Objektdiensten hinzufügen
Anschließend müssen Sie ihre Klasse in die Tabelle SGOSATTR eintragen. Verwenden Sie dazudie Tabellensicht-Pflege (SM30). Tragen Sie dort den Klassennamen in das Feld Name des Dienstes ein, und geben Sie die Attribute zu dem Dienst an (z.B. Beschreibung und Ikone).
Weitere Anforderungen unterstützen
Die Dienste können eines oder mehrere der folgenden Interfaces implementieren:
- IF_GOS_SERVICE_MULTIPLE
- IF_GOS_SERVICE_TOOLS
- IF_GOS_SERVICE_ON_CREATE
Beispiel
Hinweise
Weiterführende Informationen
Einen Überblick über die generischen Objektdienste finden Sie in der SAP-Bibliothek unterBasis -→ Basis-Services -→ Business Workplace und Services -→ Generic Business Tools für Anwendungsentwickler -→ Generische Objektdienste (BC-SRV-GBT).
General Material Data Vendor Master (General Section)
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 3097 Date: 20120527 Time: 154509 triton ( 142 ms )






