Was die PSI durchführen kann und was nicht
Die Project Server-Schnittstelle (PSI) kann dazu beitragen, viele serverseitige Prozesse in lokalen Installationen von Project Server 2013 zu automatisieren. Mehrere Funktionen erfordern jedoch die Verwendung von Microsoft Project Professional 2013.
Die PSI ist darauf ausgelegt, die Funktionen von Project Professional 2013 zu ergänzen, anstatt eine serverbasierte Alternative für alle Project Professional Funktionen bereitzustellen. Drittanbieterentwickler können die PSI verwenden, um Webparts für lokale Installationen von Project Web App und Projektarbeitsbereichen zu erstellen, benutzerdefinierte Windows-Anwendungen und Webanwendungen zu erstellen, die mit lokalen Project Server-Daten interagieren, Workflowlogik für die Projektportfolioverwaltung zu entwickeln, lokale voll vertrauenswürdige Ereignishandler zu entwickeln und Project Server in andere Anwendungen zu integrieren. Die PSI kann nicht für die Entwicklung von Apps für den Office Store, mobile Geräte oder Tablets verwendet werden. Dazu können Sie das clientseitige Objektmodell (CSOM) verwenden.
Hinweis
Die PSI bietet eine umfassendere programmgesteuerte Schnittstelle für Project Server 2013 als das CSOM bietet. Es wird jedoch empfohlen, das CSOM zum Entwickeln neuer Anwendungen zu verwenden, sofern das CSOM nicht die von Ihnen benötigten Funktionen bereitstellt. Weitere Informationen finden Sie unter Was das CSOM tut und was nicht.
Verwendungsszenarien für die PSI
Es folgen Beispiele für einige Anwendungen, die das PSI für serverseitige Projekte und Berechnungen unterstützt:
Automatisieren der Erstellung oder Verwaltung von Entitäten in Project Server Obwohl Project Professional 2013 und Project Web App zusammen für die Verwaltung und Erstellung von Entitäten wie Projekten, Unternehmensressourcen und benutzerdefinierten Feldern konzipiert sind, gibt es häufig Fälle, in denen eine benutzerdefinierte Anwendung Zeit mit Massen- oder sich wiederholenden Aufträgen sparen kann. Die PSI kann verschiedene Arten von Aufträgen automatisieren, die das CSOM nicht ausführt, z. B. mit OLAP-Cubes, Projektportfolioanalysen, Geschäftstreibern, Benachrichtigungen, Objektlinkanbietern, Sicherheit und SharePoint-Interoperabilität.
Abrufen von Daten in den veröffentlichten oder Archivtabellen der Project-Datenbank Da der direkte Datenbankzugriff auf die Entwurfs-, Veröffentlicht- und Archivtabellen nicht unterstützt wird, können Sie die PSI verwenden, um Daten zu lesen, die in den Berichtstabellen oder -sichten nicht verfügbar sind. Rufen Sie beispielsweise Informationen zu Projektversionen, Datumsangaben und Änderungen ab, die in den Archivtabellen gespeichert sind, und füllen Sie dann ein JS Grid-Steuerelement in einem Webpart mit den Informationen auf.
Überprüfen von Status- und Arbeitszeittabellendaten Verwenden Sie die PSI in lokalen Ereignishandlern, um die Zuweisung status oder Arbeitszeittabellendaten zu überprüfen, die Benutzer eingeben, bevor die Daten in Project Web App gespeichert werden.
Wartungsprojekte: Erstellen Sie Platzhalterprojekte für die Verwendung mit Ressourcenplänen. Reservieren oder buchen Sie Zeit gegen Ressourcen für Wartungsarbeiten oder grundlegende Geschäftsvorgänge. Wartungsprojekte weisen normalerweise keine Aufgaben auf.
Erstellen von Finanzprojekten: Erstellen Sie Projekte für Zeiterfassung über die Arbeitszeittabelle für die Integration in ein Finanzsystem. Erstellen Sie eine Hierarchie von Finanzsystemcodes, die die Struktur der Kostenaufschlüsselung des Finanzsystems wiedergeben. Für Finanzprojekte sind keine Zeitplanungs- oder Statusaktualisierungen erforderlich.
Integration in Nachverfolgungssysteme: Erfassen Sie die Ressourcenkosten und Ausgaben, die mit Projekten verknüpft sind, um Finanz- und Abrechnungssystemen Informationen zur Verfügung zu stellen und um Budgetvergleiche auszuführen. Synchronisieren Sie Vorgänge, Ressourcen und Zuweisungen zwischen den Systemen. Erfassen Sie Arbeitszeittabellendaten in einem System, um die Daten dem anderen System zur Verfügung zu stellen (welche Arbeitszeittabelle verwendet wird, hängt von den Anforderungen der Organisation oder der einzelnen Projekte ab).
Automatisieren von Aktualisierungen von Teammitgliedern: Für Projekte, die nicht aktiv verwaltet werden, aktualisieren Sie automatisch Projekte auf dem Server mithilfe von Informationen von Teammitgliedern zu Fortschritt und anderen Änderungen. Projekte können aktualisiert und neu veröffentlicht werden, ohne dass ein Projektmanager die Ergebnisse überprüft oder Anpassungen am Plan vornimmt.
Auswerten von Project Server-Daten in lokalen voll vertrauenswürdigen Ereignishandlern Ein lokaler Ereignishandler für das ProjectCreating-Präereignis kann Project Server-Daten aus der PSI verwenden, um zu bestimmen, ob ein Ereignis abgebrochen werden soll. Vergleichen Sie zum Beispiel vor dem Erstellen eines Projekts den Projektvorschlag mit vorhandenen Projekten.
Erstellen benutzerdefinierter Workflowaktivitäten für die Bedarfsverwaltung Verwenden Sie die PSI in lokalen, voll vertrauenswürdigen Workflowaktivitäten, um Projektvorschläge basierend auf Enterprise-Projektvorlagen zu ändern und zu aktualisieren. Verwenden Sie benutzerdefinierte Projektfelder, um das Projekt mit Informationen zu markieren, die für den Initiierungs- und Genehmigungsprozess erforderlich sind. Fügen Sie Aufgaben zum Identifizieren von Projektphasen für wichtige Meilensteine oder Projektergebnisse hinzu. Wenn Projektvorschläge genehmigt werden, kann ein Workflow die Vorschläge in umfassende Projekte ändern, die mit Project Professional verwaltet werden.
Erstellen von PSI-Erweiterungen (veraltet. Erweiterungen sind in Project Server 2013 veraltet und werden in zukünftigen Versionen nicht mehr unterstützt.) Die PSI kann mithilfe der WCF-Schnittstelle (Windows Communication Foundation) um benutzerdefinierte Dienste erweitert werden. PSI-Erweiterungen werden auf dem Project Server-Computer ausgeführt und können dieselbe Sicherheitsinfrastruktur wie die integrierten PSI-Dienste verwenden. Erweiterungen können die Berichtstabellen abfragen, separate Datenbanktabellen verwenden, PSI-Aufrufe konsolidieren, um Bandbreite zu sparen, und die Integration in Drittanbieteranwendungen und andere serverseitige Komponenten ermöglichen. Weitere Informationen finden Sie unter Entwickeln von PSI-Erweiterungen.
Verwenden des Identitätswechsels in lokalen, voll vertrauenswürdigen Anwendungen Aufrufe der WCF-Schnittstelle der PSI können imitiert werden, sodass eine Anwendung die Sicherheitsberechtigungen des angenommenen Benutzers übernimmt. Der Identitätswechsel sollte sparsam und sorgfältig verwendet werden. Das Lesen und Aktualisieren status Informationen für andere Benutzer erfordert keinen Identitätswechsel. Neue Anwendungen, die einen Identitätswechsel erfordern, sollten anstelle der PSI das CSOM und das OAuth-Protokoll verwenden. Weitere Informationen zum Identitätswechsel mit der PSI finden Sie unter Verwenden des Identitätswechsels mit WCF.
Hinweis
In einigen Fällen kann die PSI in Clientanwendungen mit dem CSOM und Project Online verwendet werden. Wenn Sie einen ASMX-basierten PSI-Webdienst verwenden, muss die Anwendung eine Methode zum Authentifizieren des Microsoft.ProjectServer.Client.ProjectContext-Objekts im CSOM und eine Methode zum Authentifizieren des System.Web.Services.Protocols.SoapHttpClientProtocol-Clientobjekts enthalten. Ein Beispiel, in dem ein Webdienst mit dem SharePoint-CSOM verwendet wird, finden Sie unter Remoteauthentifizierung in SharePoint Online mithilfe der anspruchsbasierten Authentifizierung. > Aufgrund eingeschränkter Berechtigungen auf App-Ebene kann die PSI nicht in Apps verwendet werden, die für die Verteilung im öffentlichen Office Store konzipiert sind. In diesem Fall können Sie nur das CSOM verwenden.
Was die PSI nicht tut
Obwohl es viele Dinge gibt, die psi kann, gibt es einige Dinge, die psi nicht tut. Im Folgenden finden Sie zwei Dinge, die die PSI nicht tun kann, aber das CSOM kann.
Project Online- und Remoteereignisempfänger
Die primäre Einschränkung der PSI liegt bei Project Online. Anwendungen, die psi verwenden, erfordern voll vertrauenswürdigen Zugriff auf eine lokale Installation von Project Server. Beispielsweise kann die PSI nicht in Remoteereignisempfängern verwendet werden, bei denen der Ereignisempfänger als Dienst in Microsoft Azure installiert ist.
Workflows und Anspruchsauthentifizierung
Eine Workflowdefinition, die Windows Workflow Foundation Version 4 (WF4) verwendet, erfordert die Anspruchsauthentifizierung, die von psi nicht direkt unterstützt wird. Dies bedeutet, dass Sie die PSI nicht verwenden können, um ein Projekt in Project Server 2013 zu erstellen, das über einen Enterprise-Projekttyp (EPT) mit einer WF4-Workflowdefinition verfügt.
Sie können die PSI verwenden, um Projekte mit EPTs zu erstellen, die entweder keinen Workflow haben oder eine legacy WF3.5-Definition (die Workflowversion in Project Server 2010) verwenden. Verwenden Sie das CSOM, um ein Projekt mit einem EPT zu erstellen, das über eine WF4-Definition verfügt.
Aktionen, die Project Professional erfordern:
In der folgenden Liste sind Dinge aufgeführt, die weder die PSI noch das CSOM ausführen können.
Lokale Daten
Bearbeiten von Daten in lokalen Projekten (.mpp Dateien). Beispielsweise das Definieren von Kostensatztabellen oder Verfügbarkeitskonturen für lokale Ressourcen.
Definieren oder Bearbeiten lokaler Basiskalender oder Ressourcenkalender, einschließlich Kalenderausnahmen.
Definieren lokaler benutzerdefinierter Felder. (Die PSI unterstützt die Bearbeitung lokaler benutzerdefinierter Feldwerte für Vorgänge, Ressourcen und Zuordnungen.)
Enterprise-Daten
Überprüfen oder Bearbeiten der Enterprise-Global-Vorlage. Die enterprise globalen Daten in Project Server 2013 sind ein Satz binärer Datentabellen in der Project-Datenbank, keine Projektvorlage wie in Office Project Server 2007 und früheren Versionen.
Definieren oder Bearbeiten von Unternehmenskalendern. Die Calendar-Methoden verwalten nur Kalenderausnahmen.
Masterprojekte und projektübergreifende Links
Erstellen von master Projekten und Einfügen von Teilprojekten.
Planen eines kritischen Pfads in einem master Projekt.
Erstellen projektübergreifender Verknüpfungen.
Ressourcen
Anfordern oder Durchführen des Ressourcenausgleichs.
Ändern der Ressource für eine Zuweisung. (Sie können die PSI verwenden, um die Zuweisung zu löschen und eine neue zu erstellen.)
Löschen oder Ersetzen einer Ressource, für die die tatsächliche Arbeit akzeptiert wurde (ist).
Ändern eines Ressourcentyps zwischen Arbeit, Material und Kosten.
Erstellen oder Bearbeiten von Ressourcenkalendern.
Beim Hinzufügen einer Ressource zu einem Vorgang verteilt die PSI nicht automatisch die Arbeit so, wie es Project Professional tut. Es ist Aufgabe des Entwicklers, die Arbeitsverteilung für die Zuweisungen auszuwählen und explizit festzulegen.
Kostenressourcen
- Bearbeiten, Erstellen oder Löschen von Kostenressourcen und Zuordnungen mithilfe der Project-Methoden . Die Ressourcenmethoden können Kostenressourcen erstellen, aber nicht bearbeiten.
Arbeitskonturen
Bearbeiten von Zeitphasendaten.
Hinweis
Die UpdateStatus-Methode im Statusing-Webdienst kann Zeitphasen-Istwerte für Zuordnungen bearbeiten, nachdem der Projektmanager die Zuordnungsdaten aktualisiert und veröffentlicht hat.
Festlegen oder Ändern des Zuweisungskonturtyps (z. B. flach, rückseitig oder frontbeladen).
Baselines und Ertragswert
Speichern einer Baseline oder Bearbeiten von Baselinedaten.
Festlegen eines Statusdatums.
Berechnen von Varianz und Ertragswert.
Interaktive Planung
Unterstützung der interaktiven Planung. (Da Project Server Interaktionen asynchron verarbeitet, sollte die interaktive Planung mit Project Professional erfolgen.)
Hinweis
Um eine Änderung des programmgesteuerten Verhaltens zu vermeiden, verhalten sich die psi-Methoden, die aus Project Server 2010 eingeführt werden, in Project Server 2013 auf die gleiche Weise. QueueUpdateProject weist beispielsweise weiterhin die gleichen Einschränkungen auf und verwendet die ältere serverseitige Planungs-Engine. Die neue QueueUpdateProject2-Methode beseitigt viele dieser Einschränkungen und verwendet das neue serverseitige Planungsmodul von Project Server 2013, bei dem es sich um dieselbe Planungs-Engine handelt, die sich in Project Professional 2013 befindet.
WBS
- Definieren einer Codemaske für die Arbeitsstruktur (Work Breakdown Structure, WBS).
Aufgaben
Ändern des Vorgangstyps (feste Arbeit, Dauer oder Einheiten).
Ändern, ob eine Aufgabe aufwandsgesteuert ist.
Ändern der Fixkostenabgrenzung für Den Vorgang.
Ändern des Inhalts des felds TASK_NOTES . Die PSI kann nur den Textteil der Aufgabennotizen lesen, bei denen es sich um .rtf Binärdaten handelt. Sie können jedoch Zuordnungsnotizen ( ASSN_NOTES ) bearbeiten, bei denen es sich um Textdaten handelt. Die Berichtsdatenbank enthält keine Aufgaben- oder Zuordnungsnotizen.
Erstellen oder Bearbeiten von wiederkehrenden Aufgaben.
Zuweisen oder Ändern des Aufgabenkalenders für vorhandene Vorgänge.
Erstellen einer neuen Aufgabe mit einem Aufgabenkalender.
Ändern des Werts des felds TASK_IGNORES_RES_CAL (Vorgang ignoriert Ressourcenkalender).
Ändern der aktiven status einer Aufgabe mithilfe von QueueUpdateProject, wenn im selben Aufruf zusätzliche Änderungen vorgenommen werden. Weitere Informationen finden Sie im Abschnitt Projektplanung auf dem Server unter Project Server-Programmierbarkeit.
Sammelvorgänge
Erstellen oder Ändern von Zuweisungen für Sammelvorgänge.
Hinweis
Es wird empfohlen, keine Zuordnungen für Sammelvorgänge mit Project Professional oder auf andere Weise vorzunehmen. Weitere Informationen finden Sie im Abschnitt Projektplanung auf dem Server unter Project Server-Programmierbarkeit.
Bearbeiten von Sammelvorgangsfeldern, die normalerweise aus dem Teilvorgang hochgerollt werden. Serverseitige Projekte führen immer ein Rollup von Zusammenfassungsinformationen durch, anstatt Informationen zum Sammelvorgang festzulegen und an die Teilvorgänge zu pushen. Sie können nur die folgenden Felder für Sammelvorgänge bearbeiten:
Anordnungsbeziehungen
Benutzerdefinierte Felder ohne Formel
TASK_FIXED_COST_ACCRUAL (legen Sie den Wert nur beim Erstellen der Aufgabe fest)
Für den Projektsammelvorgang gelten die gleichen PSI-Einschränkungen wie für Project Professional. Die PSI kann Budgetzuweisungen bearbeiten, einschließlich Kostenbudgets.
Berechnungsoptionen auf Projektebene
Ändern eines Projekttyps zwischen Schedule From Start (SFS) und Schedule From Finish (SFF). (Die PSI kann ein Projekt entweder als SFS oder SFF erstellen, aber nach der Erstellung kann es nur in Project Professional geändert werden.)
Ändern des Projektbasiskalenders (CAL_UID ) nach der Projekterstellung.
Ändern von Optionen für Berechnungen. Sie können die PSI verwenden, um die folgenden Berechnungsoptionen festzulegen, wenn das Projekt erstellt wird, aber das Ändern der Optionen erfordert Project Professional. (Wählen Sie in der Backstage-Ansicht Optionen und dann im Dialogfeld Projektoptionen die Registerkarte Zeitplan aus.)