Ansicht
Dokumentation

BAPI_PROJECT_MAINTAIN - Projekt einschließlich Netzplänen bearbeiten

BAPI_PROJECT_MAINTAIN - Projekt einschließlich Netzplänen bearbeiten

Addresses (Business Address Services)   BAL Application Log Documentation  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Funktionalität

Mit dem BAPI Maintain des Business Objects WorkBreakdownStruct ist es möglich, die Objekte einer Projektdefinition zu bearbeiten. Außerdem steht die gesamte Funktionalität des Maintain-BAPIs des Business Objects Network zur Verfügung.

Die Beschreibung dieser Funktionalität finden Sie unter Network.Maintain. Mit WorkBreakdownStruct.Maintain ist es möglich, die Projekdefinition, deren PSP-Elemente und deren hierarchische Beziehungen untereinander zu bearbeiten. Das BAPI kapselt dabei eine geschlossene Transaktion in sich. Es ist dadurch möglich, mehrere Operationen auf die Projektobjekte mit einem einzigen Aufruf abzuarbeiten. Die Reihenfolge, in der die Operationen auf die Objekte ausgeführt werden sollen, bestimmt das Projektsystem. Der Aufrufer kann die Operationen in einer beliebigen Reihenfolge wählen.

Dadurch wird eine performante Abarbeitung gewährleistet. Dieses Transaktionskonzept schließt allerdings die Benutzung und Kombination anderer SAP BAPIs in der gleichen LUW aus.

Vorgehen

Das Business Object WorkBreakdownStruct ist eine Fassade der Projektdefinition zu den PSP-Elementen und deren Hierarchie.

Wollen Sie ein Projektobjekt bearbeiten, müssen Sie ein Kommando auf einen Objekttyp angeben. Zusätzlich ist die Angabe des Objektschlüssels erforderlich und eine Referenz zu seinen Attributen.

Sie geben im Tabellenparameter IMethodProject den Objekttyp, das Kommando, den Objektschlüssel und als Referenz den Index der Objektdatentabelle des jeweiligen Objekttyps an. In der Objektdatentabelle werden die Informationen zum Objekt angegeben. Im Fall eines Updates wird auch noch eine Update-Struktur zum Objekt benötigt. Bei der Angabe von Objecttype und Method in der Tabelle IMethodProject ist auf Groß- und Kleinschreibung zu achten.

Um die Transaktion abzuschließen und die Daten in der Datenbank des Systems zu speichern, müssen Sie das Save-Kommando angeben. Wenn Sie hingegen nur testen möchten, ob die Änderungen durchgeführt werden können, dürfen Sie das Save-Kommando nicht verwenden.

Grundsätzlich ist es nicht möglich, die Schlüssel der einzelnen Objekte zu ändern.

Der Rückgabeparameter Return zeigt an, daß bei der Verarbeitung Fehler aufgetreten sind. In der Tabelle EMessageTable stehen nach dem Aufruf die Meldungen, die während der Verarbeitung erzeugt wurden.

Kommandos der einzelnen Objekttypen

Die Beschreibungen zu den Objekttypen Network, NetworkActivity, NetworkActivityElement, ActivityMilestone und NetworkRelation finden Sie unter Network.Maintain.

Objekttyp: ProjectDefinition

Das BAPI Maintain muß immer einen Bezug auf genau eine Projektdefinition haben. Geben Sie deshalb immer eine Projektdefinition im Strukturparameter IProjectDefinition an. Als Schlüssel wird die Projektdefinition verwendet und die Referenz auf den Datenteil muß immer 1 sein. Die Projektdefinition muß immer in Großbuchstaben angegeben werden.

Kommando: Create

Die Projektdefinition und das Projektprofil müssen angegeben werden. Das Projektprofil muß im Projektsystem bereits vorhanden sein.

Beispiel - Erzeugen einer Projektdefinition im Projektsystem

  • IMethodProject
  • OBJECTTYPE = ProjectDefinition

  • METHOD = Create

  • OBJECTKEY = PD-TRAINING

  • REFNUMBER = 000001

  • OBJECTTYPE =

  • METHOD = Save

  • OBJECTKEY =

  • REFNUMBER =

  • IProjectDefinition
  • PROJECT_DEFINITION = PD-TRAINING

  • DESCRIPTION = Schulungsprojekt

  • PROJECT_PROFILE = PPRO001 ...

Kommando: Update

Ändern einer Projektdefinition, die bereits im Projektsystem vorhanden ist. Durch die Angabe einer Update-Struktur können selektiv einzelne Felder geändert werden, ohne daß die übrigen Felder angegeben werden müssen.

Beispiel - Ändern der Beschreibung einer Projektdefinition (Nur die Beschreibung wird geändert.)

  • IMethodProject
  • OBJECTTYPE = ProjectDefinition

  • METHOD = Update

  • OBJECTKEY = PD-TRAINING

  • REFNUMBER = 000001

  • OBJECTTYPE =

  • METHOD = Save

  • OBJECTKEY =

  • REFNUMBER =

  • IProjectDefinition
  • PROJECT_DEFINITION = PD-TRAINING

  • DESCRIPTION = Schulungsprojekt

  • IProjectDefinitionUpd

  • PROJECT_DEFINITION =

  • DESCRIPTION = X

Kommando: Lock (ab Release 4.6A)

Sperren einer ProjektdefinitionDer Systemstatus "Stammdatensperre" wird auf die Projektdefinition gesetzt.

Beispiel - Sperren der Projektdefinition PD-TRAINING

  • IMethodProject
  • OBJECTTYPE = ProjectDefinition

  • METHOD = Lock

  • OBJECTKEY = PD-TRAINING

  • REFNUMBER = 000001

  • OBJECTTYPE =

  • METHOD = Save

  • OBJECTKEY =

  • REFNUMBER =

  • IProjectDefinition
  • PROJECT_DEFINITION = PD-TRAINING

Kommando: Unlock (ab Release 4.6A)

Entsperren einer Projektdefinition. Der Systemstatus "Stammdatensperre" wird von der Projektdefinition weggenommen.

Beispiel - Entsperren der Projektdefinition PD-TRAINING

  • IMethodProject
  • OBJECTTYPE = ProjectDefinition

  • METHOD = Unlock

  • OBJECTKEY = PD-TRAINING

  • REFNUMBER = 000001

  • OBJECTTYPE =

  • METHOD = Save

  • OBJECTKEY =

  • REFNUMBER =

  • IProjectDefinition
  • PROJECT_DEFINITION = PD-TRAINING

Kommando: Release (ab Release 4.5A)

Freigeben eines Projektes. Der Systemstatus "Freigegeben" wird auf die Projektdefinition und alle PSP-Elemente gesetzt.

Beispiel - Freigeben der Projektdefinition PD-TRAINING

  • IMethodProject
  • OBJECTTYPE = ProjectDefinition

  • METHOD = Release

  • OBJECTKEY = PD-TRAINING

  • REFNUMBER =

  • OBJECTTYPE =

  • METHOD = Save

  • OBJECTKEY =

  • REFNUMBER =

  • IProjectDefinition
  • PROJECT_DEFINITION = PD-TRAINING

Objekttyp: WBS-Element

Es können alle PSP-Elemente einer Projektdefinition bearbeitet werden. Der Name des PSP-Elements ist gleichzeitig sein Schlüssel.

Das PSP-Element muß immer in Großbuchstaben angegeben werden.

Kommando: Create

Beispiel - Anlegen eines PSP-Elements zur Projektdefinition. Anlegen von drei PSP-Elementen TRAINING, TRAINING.1 und TRAINING.2 zur Projektdefinition PD-TRAINING

  • IMethodProject
  • OBJECTTYPE = WBS-Element

  • METHOD = Create

  • OBJECTKEY = TRAINING

  • REFNUMBER = 000001

  • OBJECTTYPE = WBS-Element

  • METHOD = Create

  • OBJECTKEY = TRAINING.1

  • REFNUMBER = 000002

  • OBJECTTYPE = WBS-Element

  • METHOD = Create

  • OBJECTKEY = TRAINING.2

  • REFNUMBER = 000003

  • OBJECTTYPE =

  • METHOD = Save

  • OBJECTKEY =

  • REFNUMBER =

  • IProjectDefinition
  • PROJECT_DEFINITION = PD-TRAINING

  • IWbsElementTable

  • Index = 1

  • WBS_ELEMENT = TRAINING

  • PROJECT_DEFINITION = PD-TRAINING

  • DESCRIPTION = Gesamtprojekt

  • Index = 2

  • WBS_ELEMENT = TRAINING.1

  • PROJECT_DEFINITION = PD-TRAINING

  • DESCRIPTION = Vorbereitung

  • Index = 3

  • WBS_ELEMENT = TRAINING.2

  • PROJECT_DEFINITION = PD-TRAINING

  • DESCRIPTION = Durchführung

Kommando: Update

Ändern eines PSP-Elements, das bereits im Projektsystem vorhanden ist. Durch die Angabe einer Update-Struktur können selektiv einzelne Felder geändert werden, ohne daß die übrigen Felder angegeben werden müssen.

Beispiel - Ändern der Beschreibung des PSP-Elements TRAINING.1 zur Projektdefinition PD-TRAINING

  • IMethodProject
  • OBJECTTYPE = WBS-Element

  • METHOD = Update

  • OBJECTKEY = TRAINING.1

  • REFNUMBER = 000001

  • OBJECTTYPE =

  • METHOD = Save

  • OBJECTKEY =

  • REFNUMBER =

  • IProjectDefinition
  • PROJECT_DEFINITION = PD-TRAINING

  • IWbsElementTable
  • Index = 1

  • WBS_ELEMENT = TRAINING.1

  • PROJECT_DEFINITION = PD-TRAINING

  • DESCRIPTION = Vorbereitung und Doku

  • IWbsElementTableUpdate
  • Index = 1

  • WBS_ELEMENT =

  • PROJECT_DEFINITION =

  • DESCRIPTION = X

Kommando: Delete

Löschen eines PSP-Elements, das bereits im Projektsystem vorhanden ist. Das PSP-Element bekommt den Systemstatus "Löschvormerkung" und wird nicht physisch gelöscht. Es kann kein neues PSP-Element mit demselben Schlüssel angelegt werden.

Beispiel - Löschen des PSP-Elements TRAINING.2 zur Projektdefinition PD-TRAINING

  • IMethodProject
  • OBJECTTYPE = WBS-Element

  • METHOD = Delete

  • OBJECTKEY = TRAINING.2

  • REFNUMBER = 000001

  • OBJECTTYPE =

  • METHOD = Save

  • OBJECTKEY =

  • REFNUMBER =

  • IProjectDefinition
  • PROJECT_DEFINITION = PD-TRAINING

  • IWbsElementTable
  • Index = 1

  • WBS_ELEMENT = TRAINING.2

  • PROJECT_DEFINITION = PD-TRAINING

Kommando: Lock (ab Release 4.6A)

Sperren eines PSP-Elements. Der Systemstatus "Stammdatensperre" wird auf das PSP-Element gesetzt.

Beispiel - Sperren des PSP-Elements TRAINING.1

  • IMethodProject
  • OBJECTTYPE = WBS-Element

  • METHOD = Lock

  • OBJECTKEY = TRAINING.1

  • REFNUMBER = 000001

  • OBJECTTYPE =

  • METHOD = Save

  • OBJECTKEY =

  • REFNUMBER =

  • IProjectDefinition
  • PROJECT_DEFINITION = PD-TRAINING

  • IWbsElementTable
  • Index = 1

  • WBS_ELEMENT = TRAINING.1

Kommando: Unlock (ab Release 4.6A)

Entsperren eines PSP-Elements. Der Systemstatus "Stammdatensperre" wird von dem PSP-Element weggenommen.

Beispiel - Entsperren des PSP-Elements TRAINING.1

  • IMethodProjectIMethodProject
  • OBJECTTYPE = WBS-Element

  • METHOD = Unlock

  • OBJECTKEY = TRAINING.1

  • REFNUMBER = 000001

  • OBJECTTYPE =

  • METHOD = Save

  • OBJECTKEY =

  • REFNUMBER =

  • IProjectDefinition
  • PROJECT_DEFINITION = PD-TRAINING

  • IWbsElementTable
  • Index = 1

  • WBS_ELEMENT = TRAINING.1

Kommando: Release (ab Release 4.5A)

Freigeben eines PSP-Elements. Der Systemstatus "Freigegeben" wird auf das PSP-Element und alle untergeordneten PSP-Elemente gesetzt.

Beispiel - Freigeben des PSP-Elements TRAINING.1

  • IMethodProject
  • OBJECTTYPE = WBS-Element

  • METHOD = Release

  • OBJECTKEY = TRAINING.1

  • REFNUMBER = 000001

  • OBJECTTYPE =

  • METHOD = Save

  • OBJECTKEY =

  • REFNUMBER =

  • IProjectDefinition
  • PROJECT_DEFINITION = PD-TRAINING

  • IWbsElementTable
  • Index = 1

  • WBS_ELEMENT = TRAINING.1

Objekttyp: WBS-Milestone (ab Release 4.6A)

Der Schlüssel des Objekts PSP-Meilenstein ist die Meilensteinnummer.

Kommando: Create

Erzeugen eines neuen PSP-Meilensteins zu einem Netzplan. Die Angabe einer Nummer für den Meilenstein ist nicht erforderlich. Wenn der Meilenstein angelegt wurde, dann wird die neue, vom System vergebene, Nummer des Meilensteins in der Meldungstabelle als Informationsmeldung zurückgegeben.

Wird jedoch beim Anlegen eine externe Nummer in der Methodentabelle angegeben, so wird in der Meldungstabelle die externe Nummer und die neue Meilensteinnummer in einer Informationsmeldung zurückgegeben. Ein PSP-Element muß immer angegeben werden.

Beispiel - Anlegen eines neuen PSP-Meilensteins zum PSP-Element TRAINING.2

  • IMethodProject
  • OBJECTTYPE = WBS-Milestone

  • METHOD = Create

  • OBJECTKEY =

  • REFNUMBER = 000001

  • OBJECTTYPE =

  • METHOD = Save

  • OBJECTKEY =

  • REFNUMBER =

  • IWbsMilestoneTable
  • Index = 1

  • MILESTONE_NUMBER =

  • WBS_ELEMENT = TRAINING.2

Kommando: Update

Ändern eines PSP-Meilensteins, der bereits im Projektsystem vorhanden ist. Die Angabe einer Projektdefinition ist immer dann erforderlich, wenn Sie keine expliziten Änderungen an der Projektdefinition vornehmen. Verwenden Sie die Update Struktur analog zum PSP-Element.

Beispiel - Ändern eines existierenden PSP-Meilensteins mit der Nummer 000000002098 zum PSP-Element TRAINING.2

  • IMethodProject
  • OBJECTTYPE = WBS-Milestone

  • METHOD = Update

  • OBJECTKEY = 000000002098

  • REFNUMBER = 000001

  • OBJECTTYPE =

  • METHOD = Save

  • OBJECTKEY =

  • REFNUMBER =

  • IWbsMilestoneTable
  • Index = 1

  • MILESTONE_NUMBER = 000000002098

  • DESCRIPTION = geänderte Meilensteinbeschreibung

  • WBS_ELEMENT = TRAINING.2

  • IWbsMilestoneTableUpdate
  • MILESTONE_NUMBER =

  • DESCRIPTION = X

  • WBS_ELEMENT =

Kommando: Delete

Löschen eines PSP-Meilensteins, der bereits im Projektsystem vorhanden ist. Der PSP-Meilenstein wird physisch gelöscht. Die Angabe einer Projektdefinition ist immer dann erforderlich, wenn Sie keine expliziten Änderungen an der Projektdefinition vornehmen.

Beispiel - Löschen des existierenden PSP-Meilensteins mit der Nummer 000000002098 zum PSP-Element TRAINING.2

  • IMethodProject
  • OBJECTTYPE = WBS-Milestone

  • METHOD = Delete

  • OBJECTKEY = 000000002098

  • REFNUMBER = 000001

  • OBJECTTYPE =

  • METHOD = Save

  • OBJECTKEY =

  • REFNUMBER =

  • IWbsMilestoneTable
  • MILESTONE_NUMBER = 000000002098

  • WBS_ELEMENT = TRAINING.2

Objekttyp: WBS-Hierarchy

Mit Objekttyp WBS-Hierarchy wird die Hierarchie der PSP-Elemente bestimmt. Eine Projektdefinition hat immer genau eine Hierarchie. Ändert sich die Lage eines PSP-Elements in der Hierarchie, so muß die gesamte Hierarchie wieder neuaufgebaut werden. Deshalb gibt es für das Objekt WBS-Hierarchy nur das Kommando Create. Jedes PSP-Element bekommt genau einen Eintrag im Tabellenparameter IWbsHierarchieTable, um seine Lage zu definieren.

Kommando: Create

Anlegen oder Ändern einer PSP-Hierarchie einer Projektdefinition. Im Tabellenparameter IMethodProject muß der Objekttyp WBS-Hierarchy und das Kommando Create angegeben werden. Das Kommando bezieht sich immer auf alle Einträge des Tabellenparameters IWbsHierarchieTable , der die Daten zur Hierarchie enthält. Jeder Eintrag in der IWbsHierarchieTable bezieht sich auf ein PSP-Element, das seine Lage relativ zu den anderen PSP-Elementen beschreibt.

Beispiel - Anordnen der PSP-Elemente TRAINING , TRAINING.1 und TRAINING.2 (Die PSP-Elemente TRAINING.1 und TRAINING.2 sind dem PSP-Element TRAINING untergeordnet. TRAINING.1 ist links von TRAINING.2 angeordnet)

  • IMethodProject
  • OBJECTTYPE = WBS-Hierarchy

  • METHOD = Create

  • OBJECTKEY =

  • REFNUMBER =

  • OBJECTTYPE =

  • METHOD = Save

  • OBJECTKEY =

  • REFNUMBER = I

  • ProjectDefinition
  • PROJECT_DEFINITION = PD-TRAINING

  • IWbsHierarchieTable
  • WBS_ELEMENT = TRAINING

  • PROJECT_DEFINITION = PD-TRAINING

  • UP =

  • DOWN = TRAINING.1

  • LEFT =

  • RIGHT =

  • WBS_ELEMENT = TRAINING.1

  • PROJECT_DEFINITION = PD-TRAINING

  • UP = TRAINING

  • DOWN =

  • LEFT =

  • RIGHT = TRAINING.2

  • WBS_ELEMENT = TRAINING.2

  • PROJECT_DEFINITION = PD-TRAINING

  • UP = TRAINING

  • DOWN =

  • LEFT = TRAINING.1

  • RIGHT =

Beispiel

Hinweise

Weiterführende Informationen

Weitere Informationen finden Sie in der Dokumentation unter PS-Projektsystem Strukturen EPS Schnittstelle





Parameter

E_MESSAGE_TABLE
I_ACTIVITY
I_ACTIVITY_ELEMENT
I_ACTIVITY_ELEMENT_UPDATE
I_ACTIVITY_MILESTONE
I_ACTIVITY_MILESTONE_UPDATE
I_ACTIVITY_UPDATE
I_METHOD_PROJECT
I_NETWORK
I_NETWORK_UPDATE
I_PROJECT_DEFINITION
I_PROJECT_DEFINITION_UPD
I_RELATION
I_RELATION_UPDATE
I_WBS_ELEMENT_TABLE
I_WBS_ELEMENT_TABLE_UPDATE
I_WBS_HIERARCHIE_TABLE
I_WBS_MILESTONE_TABLE
I_WBS_MILESTONE_TABLE_UPDATE
RETURN

Ausnahmen

Funktionsgruppe

2054

Vendor Master (General Section)   ROGBILLS - Synchronize billing plans  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 32629 Date: 20240523 Time: 174151     sap01-206 ( 256 ms )