Zum Hauptinhalt springen

Planung

Die Planungsverwaltung in InLoox umfasst drei Entitäten: Planning (Planungselemente wie Arbeitspakete und Meilensteine), PlanningPublication (projektübergreifende Meilenstein-Verknüpfungen) und PlanningTemplate (Planungsvorlagen). Über die OData-API können Sie die gesamte Projektplanung programmatisch steuern.

Entitätsübersicht
EntitätBeschreibung
PlanningPlanungselemente (Arbeitspakete, Meilensteine, Gruppierungen)
PlanningPublicationProjektübergreifende Meilenstein-Veröffentlichungen
PlanningTemplateWiederverwendbare Planungsvorlagen

Planning

Datenmodell

PropertyTypeDescription
PlanningIdGuid (UUID)Eindeutiger Bezeichner des Planungselements (Primärschlüssel).
ProjectIdGuidZugehöriges Projekt.
DisplayNamestring?Anzeigename des Planungselements.
ParentPlanningIdGuid?Übergeordnetes Planungselement (null = Stammebene).
PlanningTypeIdGuid?Typ des Planungselements.
PositionNumberint32Positionsnummer in der Reihenfolge.
CustomColorint32?Benutzerdefinierte Farbe (als Integer-Wert).
Progressint32?Fortschritt in Prozent (0–100).
StartDateTimeDateTimeOffsetStartdatum und -uhrzeit.
EndDateTimeDateTimeOffsetEnddatum und -uhrzeit.
DurationTicksint64Dauer in Ticks.
IsMilestonebooleanGibt an, ob es sich um einen Meilenstein handelt.
IsGroupingbooleanGibt an, ob es sich um eine Gruppierung handelt.
IsProjectGroupingbooleanGibt an, ob es sich um eine Projektgruppierung handelt.
IsCollapsedbooleanGibt an, ob das Element in der Ansicht eingeklappt ist.
DescriptionHTMLstring?Beschreibung als HTML.
PSPCodestring?Projektstrukturplan-Code (PSP/WBS).
Locationstring?Ort des Planungselements.
CalendarIdGuidZugewiesener Kalender.
ConstraintTypeint32?Einschränkungstyp für die Terminplanung.
ConstraintDateDateTimeOffset?Datum der Einschränkung.
WorkAmountSumdouble?Summe des Arbeitsaufwands.

Endpunkte

CRUD-Operationen

GET/odata/Planning

Alle Planungselemente abrufen. Unterstützt OData-Abfrageparameter.

POST/odata/Planning

Neues Planungselement erstellen.

ParameterTypeRequiredDescription
BodyDelta<ApiPlanning>JSON-Objekt mit den Planungseigenschaften.
GET/odata/Planning({key})

Ein einzelnes Planungselement abrufen.

ParameterTypeRequiredDescription
keyGuidDie PlanningId.
PATCH/odata/Planning({key})

Planungselement teilweise aktualisieren.

ParameterTypeRequiredDescription
keyGuidDie PlanningId.
BodyDelta<ApiPlanning>JSON-Objekt mit den zu aktualisierenden Feldern.
DELETE/odata/Planning({key})

Planungselement löschen.

ParameterTypeRequiredDescription
keyGuidDie PlanningId.
GET/odata/Planning/$count

Gesamtanzahl aller Planungselemente abrufen.

Abhängigkeiten (Relationen)

POST/odata/Planning({key})/AddRelation

Eine Abhängigkeit zum Planungselement hinzufügen (z. B. Ende-Start-Verknüpfung).

ParameterTypeRequiredDescription
keyGuidDie PlanningId.
BodyobjectJSON-Objekt mit den Abhängigkeitsdetails (Vorgänger/Nachfolger, Verknüpfungstyp).
POST/odata/Planning({key})/RemoveRelation

Eine Abhängigkeit vom Planungselement entfernen.

ParameterTypeRequiredDescription
keyGuidDie PlanningId.
BodyobjectJSON-Objekt mit der Verknüpfungs-ID.
Abhängigkeitstypen

Planungsabhängigkeiten unterstützen typische Gantt-Verknüpfungen: Ende-Start (FS), Start-Start (SS), Ende-Ende (FF) und Start-Ende (SF).

Dokumente

POST/odata/Planning({key})/AddDocumentToPlanning

Ein Dokument mit dem Planungselement verknüpfen.

ParameterTypeRequiredDescription
keyGuidDie PlanningId.
BodyobjectJSON-Objekt mit der Dokument-ID.
POST/odata/Planning({key})/RemoveDocumentFromPlanning

Ein Dokument vom Planungselement entfernen.

ParameterTypeRequiredDescription
keyGuidDie PlanningId.
BodyobjectJSON-Objekt mit der Dokument-ID.

Rückwärtsterminierung

POST/odata/Planning({key})/ConvertBackwardScheduling

Das Planungselement auf Rückwärtsterminierung umstellen.

ParameterTypeRequiredDescription
keyGuidDie PlanningId.
BodyobjectJSON-Objekt mit den Terminierungsparametern.
Rückwärtsterminierung

Bei der Rückwärtsterminierung wird vom Endtermin rückwärts geplant. Dies ist nützlich für Projekte mit fixem Endtermin, bei denen die Starttermine berechnet werden sollen.

Benachrichtigungen

POST/odata/Planning({key})/AddNotificationFollowers

Benachrichtigungsabonnenten zum Planungselement hinzufügen.

ParameterTypeRequiredDescription
keyGuidDie PlanningId.
BodyobjectJSON-Objekt mit den Kontakt-IDs der Abonnenten.
POST/odata/Planning({key})/RemoveNotificationFollower

Einen Benachrichtigungsabonnenten entfernen.

ParameterTypeRequiredDescription
keyGuidDie PlanningId.
BodyobjectJSON-Objekt mit der Kontakt-ID.
GET/odata/Planning({key})/GetNotificationFollowerContacts()

Alle Benachrichtigungsabonnenten des Planungselements abrufen.

ParameterTypeRequiredDescription
keyGuidDie PlanningId.

PlanningPublication

Planungsveröffentlichungen ermöglichen die projektübergreifende Verknüpfung von Meilensteinen. So können Sie Abhängigkeiten zwischen verschiedenen Projekten abbilden.

Datenmodell

PropertyTypeDescription
PlanningPublicationIdGuid (UUID)Eindeutiger Bezeichner der Veröffentlichung.
SourcePlanningIdGuidQuell-Planungselement.
SourceProjectIdGuidQuell-Projekt.
SourceProjectNamestring?Name des Quell-Projekts (schreibgeschützt).
SourceProjectNumberstring?Nummer des Quell-Projekts (schreibgeschützt).
SourceProjectImageIdGuid?Bild-ID des Quell-Projekts (schreibgeschützt).
DisplayNamestring?Anzeigename der Veröffentlichung.
TargetProjectIdGuidZiel-Projekt.
TargetProjectNumberstring?Nummer des Ziel-Projekts (schreibgeschützt).
TargetProjectNamestring?Name des Ziel-Projekts (schreibgeschützt).
TargetProjectImageIdGuid?Bild-ID des Ziel-Projekts (schreibgeschützt).

Endpunkte

GET/odata/PlanningPublication

Alle Planungsveröffentlichungen abrufen.

POST/odata/PlanningPublication

Neue Planungsveröffentlichung erstellen.

ParameterTypeRequiredDescription
BodyDelta<ApiPlanningPublication>JSON-Objekt mit den Veröffentlichungseigenschaften.
GET/odata/PlanningPublication({key})

Eine einzelne Veröffentlichung abrufen.

ParameterTypeRequiredDescription
keyGuidDie PlanningPublicationId.
DELETE/odata/PlanningPublication({key})

Veröffentlichung löschen.

ParameterTypeRequiredDescription
keyGuidDie PlanningPublicationId.
GET/odata/PlanningPublication/$count

Gesamtanzahl der Veröffentlichungen abrufen.

Kein PATCH

Planungsveröffentlichungen können nicht aktualisiert werden. Löschen Sie die bestehende und erstellen Sie eine neue, um Änderungen vorzunehmen.


PlanningTemplate

Planungsvorlagen ermöglichen die Wiederverwendung von Planungsstrukturen über verschiedene Projekte hinweg. Sie können Vorlagen exportieren, importieren und in Projekte laden.

Datenmodell

PropertyTypeDescription
PlanningTemplateIdGuid (UUID)Eindeutiger Bezeichner der Vorlage.
Namestring?Name der Vorlage.

Endpunkte

CRUD-Operationen

GET/odata/PlanningTemplate

Alle Planungsvorlagen abrufen.

POST/odata/PlanningTemplate

Neue Planungsvorlage erstellen.

ParameterTypeRequiredDescription
BodyDelta<ApiPlanningTemplate>JSON-Objekt mit dem Vorlagennamen.
GET/odata/PlanningTemplate({key})

Eine einzelne Vorlage abrufen.

ParameterTypeRequiredDescription
keyGuidDie PlanningTemplateId.
PATCH/odata/PlanningTemplate({key})

Vorlage aktualisieren.

ParameterTypeRequiredDescription
keyGuidDie PlanningTemplateId.
BodyDelta<ApiPlanningTemplate>JSON-Objekt mit den zu aktualisierenden Feldern.
DELETE/odata/PlanningTemplate({key})

Vorlage löschen.

ParameterTypeRequiredDescription
keyGuidDie PlanningTemplateId.
GET/odata/PlanningTemplate/$count

Gesamtanzahl der Vorlagen abrufen.

Export & Download

GET/odata/PlanningTemplate({key})/DownloadPlanningTemplate()

Planungsvorlage als Datei herunterladen.

ParameterTypeRequiredDescription
keyGuidDie PlanningTemplateId.
GET/odata/PlanningTemplate({key})/DownloadMSProjectXML()

Vorlage im MS-Project-XML-Format herunterladen.

ParameterTypeRequiredDescription
keyGuidDie PlanningTemplateId.
GET/odata/PlanningTemplate({key})/DownloadTemplate()

Vorlage herunterladen (alternativer Endpunkt).

ParameterTypeRequiredDescription
keyGuidDie PlanningTemplateId.
MS-Project-Kompatibilität

Mit DownloadMSProjectXML können Sie Planungsvorlagen im XML-Format für Microsoft Project exportieren. Dies ermöglicht den Datenaustausch zwischen InLoox und MS Project.

Import & Anwendung

POST/odata/PlanningTemplate({key})/LoadTemplateForProject

Eine Vorlage in ein Projekt laden.

ParameterTypeRequiredDescription
keyGuidDie PlanningTemplateId.
projectIdGuidDie Ziel-Projekt-ID (als Query-Parameter).
settingsstringImport-Einstellungen als JSON-String (ApiPlanningTemplateImportSettings).

Die Import-Einstellungen (ApiPlanningTemplateImportSettings) umfassen:

PropertyTypeDescription
CalculationModestring?Berechnungsmodus für die Terminplanung.
StartDateForManualCalculationDateTimeOffset?Startdatum für manuelle Berechnung.
LoadResourceDatabooleanRessourcendaten übernehmen.
LoadCompletionDatabooleanFortschrittsdaten übernehmen.
POST/odata/PlanningTemplate/SaveTemplateForProject

Die Planung eines Projekts als Vorlage speichern.

ParameterTypeRequiredDescription
BodyobjectJSON-Objekt mit der Projekt-ID und dem Vorlagennamen.

OData-Abfragebeispiele

Alle Planungselemente eines Projekts

GET /odata/Planning?$filter=ProjectId eq 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'&$orderby=PositionNumber

Nur Meilensteine abrufen

GET /odata/Planning?$filter=ProjectId eq 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx' and IsMilestone eq true

Planungselemente mit Fortschritt unter 50 %

GET /odata/Planning?$filter=Progress lt 50 and IsGrouping eq false

Projektübergreifende Meilensteine eines Projekts

GET /odata/PlanningPublication?$filter=SourceProjectId eq 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'

Neues Arbeitspaket erstellen

POST /odata/Planning
Content-Type: application/json

{
"ProjectId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"DisplayName": "Konzeptphase",
"StartDateTime": "2025-02-01T08:00:00Z",
"EndDateTime": "2025-02-28T17:00:00Z",
"Progress": 0,
"IsMilestone": false,
"IsGrouping": false
}

Meilenstein erstellen

POST /odata/Planning
Content-Type: application/json

{
"ProjectId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"DisplayName": "Go-Live",
"StartDateTime": "2025-06-30T00:00:00Z",
"EndDateTime": "2025-06-30T00:00:00Z",
"IsMilestone": true
}

Vorlage in ein Projekt laden

POST /odata/PlanningTemplate('xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx')/LoadTemplateForProject?projectId='yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy'
Content-Type: application/json

{
"CalculationMode": "Manual",
"StartDateForManualCalculation": "2025-03-01T00:00:00Z",
"LoadResourceData": true,
"LoadCompletionData": false
}
PSP-Codes

Der PSPCode (Projektstrukturplan-Code) entspricht dem internationalen WBS-Code (Work Breakdown Structure). Er wird automatisch basierend auf der Hierarchie berechnet, kann aber auch manuell gesetzt werden.