Conditions préalables pour les exemples de code basés sur ASMX (traduction automatique)

Dernière modification : jeudi 23 juin 2011

S’applique à : Office 2010 | Project 2010 | Project Server 2010 | SharePoint Server 2010

Dans cet article
Configuration de l'environnement de développement
Création de l'Application et l'ajout d'une référence de Service Web
Autres références de paramètre
À l'aide de déclarations Multi-Authentication
Modification des valeurs de constantes génériques
Vérification des résultats
Nettoyage des

Important

Cet article a été traduit automatiquement, voir l’avertissement. Vous pouvez consulter la version en anglais de cet article ici.

De nombreux exemples de code inclus dans la référence des bibliothèques de classes et des services Web sont conformes à un format standard développé pour le Kit de développement (SDK) Microsoft Office Project 2007 qui utilise des services Web ASMX. Les exemples sont conçus pour être copiés dans une application de console et s’exécutent en tant qu’unité complète. Les exceptions sont indiquées dans l’exemple.

Nouveaux exemples dans le SDK Project 2010 conforme dans un format qui utilise les services Windows Communication Foundation (WCF). Les exemples de ASMX peuvent également être adaptés pour utiliser les services WCF. Cet article explique comment utiliser les exemples avec les services Web ASMX. Pour plus d'informations sur l'utilisation des exemples avec les services WCF, consultez Conditions préalables pour les exemples de code basés sur WCF (traduction automatique).

Notes

Nouvelles applications doivent utiliser l'interface WCF, qui est recommandé de technologie pour les communications réseau Microsoft. Les applications existantes qui utilisent l'interface ASMX peuvent utiliser l'URL que par le biais de Project Web App, qui vérifie les autorisations de Project Server.

L'URL via l'application de Services Web de SharePoint back-end est utilisé pour les applications et les composants de middleware qui s'exécutent uniquement sur l'ordinateur de Project Server et pour les applications qui utilisent l'emprunt d'identité. L'interface ASMX n'est pas disponible via l'URL de back-end. Pour plus d'informations sur l'interface ASMX et l'interface WCF, consultez Vue d’ensemble de WCF et de l’interface PSI (traduction automatique).

Avant d'exécuter les exemples de code, vous devez configurer l'environnement de développement, configurez l'application et modifier les valeurs de constante génériques correspondant à votre environnement. Cet article comprend les sections suivantes :

  • Configuration de l'environnement de développement

  • Création de l'Application et l'ajout d'une référence de Service Web

    • Génération d'un Assembly de Proxy PSI

    • Ajout d'un fichier de Proxy PSI

    • Ajout d'une référence de Service Web

  • Autres références de paramètre

  • À l'aide de déclarations Multi-Authentication

  • Modification des valeurs de constantes génériques

  • Vérification des résultats

  • Nettoyage des

Configuration de l'environnement de développement

  1. Configurer un test système de Project Server.

    Utilisez un test système de Project Server chaque fois que vous développez ou test. Même lorsque votre code fonctionne parfaitement, dépendances interprojets, création de rapports ou d'autres facteurs environnementaux peuvent entraîner des conséquences inattendues.

    Notes

    Assurez-vous que vous êtes un utilisateur valide sur le serveur et vérifiez que vous disposez des autorisations suffisantes pour les appels d'Interface de Project Server (PSI) que votre application utilise.

    Dans certains cas, il se pouvez que vous deviez effectuer un débogage distant sur le serveur. Vous devez également définir un gestionnaire d'événements par l'installation d'un assembly du Gestionnaire d'événements sur l'ordinateur de Project Server, puis en configurant le Gestionnaire d'événements à l'aide de la page Paramètres du serveur dans Project Web App.

  2. Configurer un ordinateur de développement.

    Vous accédez généralement la PSI via un réseau. Les exemples de code sont conçus pour être exécuté sur un autre client à partir du serveur, sauf mention contraire.

    1. Installer la version correcte de Microsoft Visual Studio.   Sauf mention contraire, les exemples de code sont écrits en Microsoft Visual c#. Ils peuvent être utilisés avec Microsoft Visual Studio 2008 SP1 ou Microsoft Visual Studio 2010.

      Notes

      Vous pouvez utiliser Visual Studio 2008 pour la plupart des applications développées pour Project Server 2010. Applications de flux de travail de Project Server nécessitent que vous développez sur l'ordinateur de Project Server, à l'aide de Visual Studio 2010. Nous vous recommandons de Visual Studio 2010 pour tous les développements de Project Server.

    2. DLL de serveur de projet copie à l'ordinateur de développement.   Pour les applications sans workflow, copiez les assemblys suivants à partir de [Program Files]\Microsoft Office Servers\14.0\Bin sur l'ordinateur de Project Server à l'ordinateur de développement :

      • Microsoft.Office.Project.Server.Events.Receivers.dll

      • Microsoft.Office.Project.Server.Library.dll

  3. Pour utiliser les descriptions Intellisense pour les classes et les membres dans les assemblages de Project Server, copiez les fichiers de XML Intellisense mis à jour à partir du téléchargement du Kit de développement Project 2010 dans le même répertoire où se trouve l'assembly de Project Server. Par exemple, copiez le fichier Microsoft.Office.Project.Server.Library.xml dans le répertoire dans lequel votre application définit une référence à l'assembly Microsoft.Office.Project.Server.Library.dll.

    Les descriptions IntelliSense pour les services Web de PSI nécessitent que vous créez un assembly de proxy PSI en utilisant le script dans le sous-répertoire Intellisense\WSDL dans le téléchargement du Kit de développement logiciel Project 2010. Le script crée l'assembly de proxy ProjectServerServices.dll basées sur ASMX. Pour plus d'informations, consultez le fichier .mht [ReadMe_Intellisense] dans le téléchargement du Kit de développement.

Création de l'Application et l'ajout d'une référence de Service Web

  1. Créer une application console.

    Lorsque vous créez une application console, dans la liste déroulante de la boîte de dialogue Nouveau projet , sélectionnez .NET Framework 3.5. Vous pouvez copier l'exemple de code PSI dans la nouvelle application.

  2. Sur le .NET onglet de la boîte de dialogue Ajouter une référence , ajoutez une référence à System.Web.Services.

  3. Copiez le code.

    Copiez l'exemple de code complet dans le fichier Program.cs de l'application console.

  4. L'espace de noms pour l'exemple d'application.

    Vous pouvez modifier l'espace de noms répertorié dans la partie supérieure de l'échantillon à l'espace de noms application par défaut ou modifier l'espace de noms par défaut application correspondant à l'échantillon. Vous pouvez trouver les noms d'application par défaut dans les propriétés de l'application.

    Par exemple, l'exemple de code pour CreateNewAssignment a Microsoft.SDK.Project.Samples.CreateNewAssignment de l'espace de noms. Copiez l'espace de noms du fichier Program.cs et ouvrez le volet des Propriétés de projet (dans le menu Projet , cliquez sur Propriétés de CreateNewAssignment). Sous l'onglet Application , copiez l'espace de noms dans la zone de texte nom d'espace par défaut .

  5. Définir les références Web.

    De nombreux exemples requièrent une référence à un ou plusieurs des services Web de la PSI. Ils sont répertoriés dans l'échantillon lui-même ou dans des commentaires qui précèdent l'échantillon. Pour obtenir de l'espace de noms correct des références Web, assurez-vous que vous définissez tout d'abord les noms d'application par défaut.

    Il existe trois façons d'ajouter une référence de service Web ASMX :

    • Générer un assembly de proxy PSI et définir une référence à l'assembly. Consultez Génération d'un Assembly de Proxy PSI.

    • Ajouter un fichier de proxy à partir de la sortie de wsdl.exe pour la solution Visual Studio. Consultez Ajout d'un fichier de Proxy PSI.

    • Ajouter une référence de service Web à l'aide de Visual Studio. Consultez Ajout d'une référence de Service Web.

Génération d'un Assembly de Proxy PSI

Vous pouvez créer et utiliser l'assembly de proxy ProjectServerServices.dll pour tous les services Web basés sur ASMX dans la PSI, en utilisant le script GenASMXProxyAssembly.cmd dans le dossier Documentation\Intellisense\WSDL de la Project 2010 de téléchargement du Kit de développement. Pour un lien vers le téléchargement, consultez Documentation du SDK Project 2010 (traduction automatique).

Notes

Si vous utilisez le script GenWCFProxyAssembly.cmd dans le dossier Documentation\Intellisense\WCF, il ne fonctionne pas pour les applications basées sur ASMX. Le script appelle SvcUtil.exe, qui génère des fichiers de code source pour les services WCF. Les fichiers de proxy WCF comprennent des attributs différents, l'interface du canal et une classe de client pour chaque service PSI. Par exemple, le service WCF de ressources inclut l'interface ResourceChannel et la classe ResourceClient qui implémente Resource, dont le service Web ASMX de ressources n'inclut pas l'interface Resource.

Voici le script GenASMXProxyAssembly.cmd qui génère des fichiers de sortie WSDL pour les services Web de PSI, puis compile l'assembly. Vous pouvez utiliser wsdl.exe à partir de n'importe quel emplacement ; ils sont les mêmes versions.

@echo off
@ECHO ---------------------------------------------------
@ECHO Creating C# files for the ASMX-based proxy assembly
@ECHO ---------------------------------------------------

REM Replace ServerName with the name of the server and 
REM the instance name of Project Web App. Do not use localhost.
(set VDIR=https://ServerName/pwa/_vti_bin/psi)

(set OUTDIR=.\Source)

REM ** Wsdl.exe is the same version in the v6.0A and v7.0A subdirectories. 
 (set WSDL="C:\Program Files\Microsoft SDKs\Windows\v7.0A\Bin\x64\wsdl.exe")

if not exist %OUTDIR% (
md %OUTDIR%
)

REM Use the Project Web App URL for the Web services.

for /F %%i in (Classlist_asmx.txt) do %WSDL% /nologo /l:CS /namespace:Svc%%i /out:%OUTDIR%\wsdl.%%i.cs %VDIR%/%%i.asmx?wsdl 

@ECHO ----------------------------
@ECHO Compiling the proxy assembly
@ECHO ----------------------------

(set SOURCE=%OUTDIR%\wsdl)
(set CSC=%WINDIR%\Microsoft.NET\Framework\v3.5\csc.exe)
(set ASSEMBLY_NAME=ProjectServerServices.dll)

%CSC% /t:library /out:%ASSEMBLY_NAME% %SOURCE%*.cs

Le script utilise le fichier Classlist_asmx.txt qui contient la liste des services Web qui sont disponibles pour les développeurs tiers.

Admin
Archive
Calendar
CubeAdmin
CustomFields
Driver
Events
LoginForms
LoginWindows
LookupTable
Notifications
ObjectLinkProvider
PortfolioAnalyses
Project
QueueSystem
ResourcePlan
Resource
Security
Statusing
TimeSheet
Workflow
WssInterop

Les espaces de noms arbitraires créés par les scripts pour les services Web ASMX et les services WCF sont les mêmes, afin que le fichier Intellisense fonctionne avec l'assembly. Par exemple, l'espace de noms du service des ressources dans l'assembly de proxy basée sur WCF et dans l'assembly de proxy basés sur ASMX est SvcResource. Vous pouvez, bien sûr, modifier les espaces de noms — si vous vous assurer qu'ils correspondent dans l'assembly de proxy et dans le fichier ProjectServerServices.xml Intellisense.

Si un échantillon de code dans le Kit de développement utilise un nom différent pour un namespace de service Web de la PSI, par exemple, ProjectWebSvc, vous devez modifier l'échantillon à utiliser SvcProject pour faire correspondre les noms dans l'assembly de proxy.

Un avantage à l'aide de l'assembly de proxy basés sur ASMX est qu'elle inclut tous les espaces de noms de PSI Web service ; vous n'avez pas besoin créer plusieurs références Web. Un autre avantage est que, si vous ajoutez le fichier ProjectServerServices.xml dans le même répertoire que celui dans lequel vous définissez une référence à l'assembly de proxy ProjectServerServices.dll, vous pouvez également obtenir les descriptions Intellisense pour les classes PSI et membres. Pour plus d'informations, consultez le fichier .mht [ReadMe_Intellisense] dans le dossier Intellisense du téléchargement SDK.

Un inconvénient de l'utilisation de l'assembly de proxy est la solution est volumineux et vous devez distribuer et installer l'assembly de proxy avec la solution. Vous devez également utiliser les mêmes espaces de noms qui sont dans l'assembly de proxy et les fichiers Intellisense, sauf si vous modifiez le script et le fichier ProjectServerServices.xml Intellisense à utiliser des espaces de noms différents.

Ajout d'un fichier de Proxy PSI

Ajout d'un fichier de proxy à partir de la sortie WSDL :   Au lieu de définir une référence à l'assembly de proxy, vous pouvez ajouter un ou plusieurs des fichiers de sortie WSDL pour une solution Visual Studio. Par exemple, après avoir exécuté le script GenASMXProxyAssembly.cmd, ajoutez le fichier wsdl.Fichier de Project.cs à une solution Visual Studio. Au lieu de l'exécution du script, vous pouvez exécuter les commandes suivantes pour générer un seul fichier source, par exemple :

set VDIR=https://ServerName/ProjectServerName/_vti_bin/psi
set WSDL="C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\x64\wsdl.exe"
%WSDL% /nologo /l:cs /namespace:SvcProject /out:wsdl.Project.cs %VDIR%/Project.asmx?wsdl

Pour définir un objet Project comme une variable de classe nommée project, utilisez le code suivant. La méthode AddContextInfo ajoute les informations de contexte à l'objet project pour l'ouverture de session Windows et basée sur les formulaires d'ouverture de session

private static SvcProject.Project project;
private static SvcLoginForms.LoginForms loginForms =
            new SvcLoginForms.LoginForms();
. . .
public void AddContextInfo()
{
    // Add the Url property.
    project.Url = "https://ServerName/ProjectServerName/_vti_bin/psi/project.asmx";

    // Add Windows credentials.
    project.Credentials = CredentialCache.DefaultCredentials;

    // If Forms authentication is used, add the Project Server 
    // cookie for a successful Forms user logon.
    
    project.CookieContainer = loginForms.CookieContainer;
}

Ajout d'une référence de Service Web

Si ne pas utiliser l'assembly de proxy basés sur ASMX ou ajouter un fichier de sortie WSDL, vous devez définir une ou des références Web plus individuel. Les étapes suivantes montrent comment définir une référence Web à l'aide de Visual Studio 2010 :

  1. Dans l' Explorateur de solutions, cliquez droit sur le dossier Références et puis cliquez sur Ajouter une référence de Service.

  2. Dans la boîte de dialogue Ajouter une référence de Service , cliquez sur Avancé.

  3. Dans la boîte de dialogue Paramètres du Service de référence , cliquez sur Ajouter une référence Web.

  4. Dans la zone de texte URL , tapez http://nom_serveur/ProjectServerName//_vti_bin/psi/ServiceName.asmx? wsdl, puis appuyez sur Entrée. Si vous avez la couche SSL (Secure Sockets) installé, vous devez utiliser le protocole HTTPS au lieu du protocole HTTP. Remplacez nom_serveur par le nom du serveur que vous utilisez. Remplacez ProjectServerName par le nom du répertoire virtuel de votre site Project Server, tels que PWA. Remplacez ServiceName portant le nom du service Web, tels que le projet.

    OR

    Ouvrez votre navigateur Web et accédez à https://ServerName/ProjectServerName/_vti_bin/psi/ServiceName.asmx?wsdl (Remplacez par HTTPS pour HTTP, si nécessaire). Enregistrez le fichier dans un répertoire local, tel que C:\Project\WebServices\ServiceName.wsdl. Dans la boîte de dialogue Ajouter une référence Web , URL, tapez le protocole de fichier et le chemin d'accès au fichier. Par exemple, tapez file://C:\Project\WebServices\Project.wsdl.

    L'URL précédente est le standard pour les services Web de Project Server.

  5. Une fois la référence est résolu, tapez le nom de référence dans la zone de texte Nom de la référence Web . Exemples de code dans le Kit de développement Project 2010 utilisent le nom de référence standard arbitraire ServiceNameWebSvc. Par exemple, le service Web de projet est nommé ProjectWebSvc.

Pour les composants d'application doivent s'exécuter sur l'ordinateur de Project Server, utilisez l'emprunt d'identité, ou disposer des autorisations d'élevés, utilisez une référence de service WCF au lieu d'une référence Web ASMX. Pour plus d'informations, consultez Conditions préalables pour les exemples de code basés sur WCF (traduction automatique).

Autres références de paramètre

Les applications de serveur de projet utilisent souvent des autres services, tels que les Services Web Microsoft SharePoint Foundation 2010. Si d'autres services sont requis, ils sont répertoriés dans l'exemple.

Les références locales pour l'exemple de code sont répertoriés dans les instructions de using en haut de l'échantillon :

  1. Dans l' Explorateur de solutions, cliquez droit sur le dossier Références et puis cliquez sur Ajouter une référence.

  2. Cliquez sur Parcouriret accédez à l'emplacement où vous avez stocké les DLL de serveur de projet que vous avez copié précédemment. Les DLL que vous avez besoin et cliquez sur OK.

Notes

Vérifiez que les versions d'assembly sur votre ordinateur de développement correspondent exactement à celles sur l'ordinateur de Project Server cible.

À l'aide de déclarations Multi-Authentication

L'authentification des utilisateurs de Project Server, est effectuée par l'authentification Windows ou l'authentification par formulaires, via Microsoft SharePoint Foundation 2010 de traitement des sinistres. Multi-Authentication signifie que l'application Web sur lequel est approvisionné Project Web App prend en charge l'authentification Windows et authentification par formulaires. Si tel est le cas, un appel à un service WCF ou ASMX qui utilise l'authentification Windows échoue avec l'erreur suivante, car le processus de réclamation ne peut pas déterminer quel type d'authentification utilisateur :

The server was unable to process the request due to an internal error. 
. . .

Pour résoudre le problème de ASMX, tous les appels aux méthodes PSI convient à une classe dérivée qui est définie pour chaque service Web de la PSI. La classe dérivée doit également utiliser la classe SvcLoginWindows.LoginWindows pour obtenir un cookie pour la classe de service dérivée PSI. Dans l'exemple suivant, la classe ProjectDerived dérive de la classe SvcProject.Project. La classe dérivée, ajoute la propriété de EnforceWindowsAuth et remplace l'en-tête de demande Web pour chaque appel à une méthode dans la classe Project. Si la propriété EnforceWindowsAuth est true, la méthode GetWebRequest ajoute un en-tête qui désactive l'authentification par formulaires. Si EnforceWindowsAuth est false, l'authentification par formulaires peut continuer.

Pour utiliser l'exemple suivant de la ASMXLogon_MultiAuth, créez une application console, suivez les étapes de Création de l'Application et l'ajout d'une référence de Service Webet ajoutez ensuite le fichier wsdl.Fichier proxy de LoginWindows.cs et le document wsdl.Project.cs fichier de proxy. La méthode Main crée l'instance de project de la classe ProjectDerived. L'échantillon doit utiliser la classe dérivée de LoginWindowsDerived pour obtenir un objet CookieContainer pour la propriété project.CookieContainer, qui permet de distinguer l'authentification par formulaires à partir de l'authentification Windows. Le project objet peut ensuite être utilisé pour effectuer des appels à toute méthode dans la classe SvcProject.Project.

Notes

Le service de LoginWindows est requis uniquement pour les applications ASMX dans un environnement multi-authentication. Dans l'exemple ASMXLogon_MultiAuth, la méthode GetLogonCookie Obtient un cookie pour l'objet loginWindows. La propriété project.CookieContainer est définie à la valeur loginWindows.CookieContainer.

using System;
using System.Net;
using PSLibrary = Microsoft.Office.Project.Server.Library;

namespace ASMXLogon_MultiAuth
{
    class Program
    {
        private const string PROJECT_SERVER_URL = 
            "https://ServerName/ProjectServerName/_vti_bin/psi/";

        static void Main(string[] args)
        {
            bool isWindowsUser = true;

            // Create an instance of the project object.
            ProjectDerived project = new ProjectDerived();
            project.Url = PROJECT_SERVER_URL + "Project.asmx";
            project.Credentials = CredentialCache.DefaultCredentials;

            try
            {
                // The program works on a Windows-auth-only computer if you comment-out the
                // following line. The line is required on a multi-authentication computer.
                project.CookieContainer = GetLogonCookie();

                project.EnforceWindowsAuth = isWindowsUser;

                // Get a list of all published projects. 
                // Use ReadProjectStatus instead of ReadProjectList,
                // because the permission requirements are lower.
                SvcProject.ProjectDataSet projectDs =
                    project.ReadProjectStatus(Guid.Empty,
                        SvcProject.DataStoreEnum.PublishedStore,
                        string.Empty,
                        (int)PSLibrary.Project.ProjectType.Project);

                Console.WriteLine(string.Format(
                    "There are {0} published projects.", 
                    projectDs.Project.Rows.Count));
            }
            catch (UnauthorizedAccessException ex)
            {
                Console.WriteLine(ex.Message);
            }
            catch (WebException ex)
            {
                Console.WriteLine(ex.Message);
            }
            finally
            {
                Console.Write("Press any key to continue...");
                Console.ReadKey(false);
            }
        }

        private static CookieContainer GetLogonCookie()
        {
            // Create an instance of the loginWindows object.
            LoginWindowsDerived loginWindows = new LoginWindowsDerived();
            loginWindows.EnforceWindowsAuth = true;
            loginWindows.Url = PROJECT_SERVER_URL + "LoginWindows.asmx";
            loginWindows.Credentials = CredentialCache.DefaultCredentials;

            loginWindows.CookieContainer = new CookieContainer();

            if (!loginWindows.Login())
            {
                // Login failed; throw an exception.
                throw new UnauthorizedAccessException("Login failed.");
            }
            return loginWindows.CookieContainer;
        }
    }

    // Derive from LoginWindows class; include additional property and 
    // override the Web request header.
    class LoginWindowsDerived : SvcLoginWindows.LoginWindows
    {
        public bool EnforceWindowsAuth { get; set; }

        protected override WebRequest GetWebRequest(Uri uri)
        {
            WebRequest request = base.GetWebRequest(uri);

            if (this.EnforceWindowsAuth)
            {
                request.Headers.Add("X-FORMS_BASED_AUTH_ACCEPTED", "f");
            }
            return request;
        }
    }

    // Derive from Project class; include additional property and 
    // override the Web request header.
    class ProjectDerived : SvcProject.Project
    {
        public bool EnforceWindowsAuth { get; set; }

        protected override WebRequest GetWebRequest(Uri uri)
        {
            WebRequest request = base.GetWebRequest(uri);

            if (this.EnforceWindowsAuth)
            {
                request.Headers.Add("X-FORMS_BASED_AUTH_ACCEPTED", "f");
            }
            return request;
        }
    }
}

À l'aide de la classe dérivée de LoginWindows et effectuer des appels PSI avec un en-tête de demande Web qui désactive l'authentification par formulaires, est requis pour les applications qui s'exécutent dans un environnement multi-authentication. Si Project Server utilise uniquement l'authentification de revendications, il n'est pas nécessaire de dériver une classe qui ajoute un en-tête de demande Web. Toutefois, l'exemple précédent s'exécute dans les deux environnements.

Le correctif pour une application basée sur WCF est différent. Pour plus d'informations, reportez-vous à la section à l'aide de la Multi-Authentication de revendications dans Conditions préalables pour les exemples de code basés sur WCF (traduction automatique).

Pour obtenir un exemple de code complet qui utilise multi-authentication, reportez-vous au sous-répertoire de Samples\MultiAuthentication\ASMXLogon_MultiAuth dans le téléchargement du Kit de développement logiciel de Project 2010.

Modification des valeurs de constantes génériques

La plupart des exemples ont une ou plusieurs variables que vous devez mettre à jour pour l'exemple fonctionne correctement dans votre environnement. Dans l'exemple suivant, si vous avez installé SSL, utilisez le protocole HTTPS au lieu du protocole HTTP. Remplacez nom_serveur par le nom du serveur que vous utilisez. Remplacez ProjectServerName par le nom du répertoire virtuel de votre site Project Server, tels que PWA.

const string PROJECT_SERVER_URI = "https://ServerName/ProjectServerName/";

Toutes les autres variables que vous devez modifier ou autres conditions préalables sont indiquées en haut de l'exemple de code.

Vérification des résultats

L'obtention et l'interprétation des résultats à partir d'un exemple de code ne sont pas toujours simple. Par exemple, si vous créez un projet, vous devez publier le projet avant d'apparaître sur la page Centre de projets dans Project Web App.

Vous pouvez vérifier les résultats des exemples de code de la manière suivante :

  • Utilisez le client Microsoft Project Professionnel 2010 pour ouvrir le projet à partir de l'ordinateur Project Server et afficher les éléments que vous souhaitez.

  • Affichez le journal de file d'attente dans Project Web App. Dans le menu de lancement rapide, cliquez sur Paramètres personnelset puis cliquez sur Mes travaux en file d'attente (https://ServerName/ProjectServerName/MyJobs.aspx). Dans la liste déroulante Affichage , vous pouvez trier par l'état du travail. Le statut par défaut est en cours et travaux d'échec de la semaine dernière.

  • Afficher les projets publiés sur la page Centre de projets de Project Web App (/projects.aspxProjectServerName/http://NomServeur).

  • Utilisez la page Paramètres du serveur dans Project Web App pour afficher toutes les files d'attente et les objets d'entreprise (https://ServerName/ProjectServerName/_layouts/pwa/admin/admin.aspx). Vous devez disposer des autorisations administratives pour accéder à la page Paramètres du serveur.

  • Utilisez Microsoft sql Server Management Studio pour exécuter une requête sur une table d'une base de données Project Server. Par exemple, utilisez la requête suivante pour sélectionner les 200 premières lignes de la table MSP_WORKFLOW_STAGE_PDPS pour afficher des informations sur les pages de détails du projet (PDP) lors des étapes du workflow.

    SELECT TOP 200 [STAGE_UID]
          ,[PDP_UID]
          ,[PDP_NAME]
          ,[PDP_POSITION]
          ,[PDP_ID]
          ,[PDP_STAGE_DESCRIPTION]
          ,[PDP_REQUIRES_ATTENTION]
      FROM [ProjectServer_Published].[dbo].[MSP_WORKFLOW_STAGE_PDPS]
    

Nettoyage des

Après avoir testé des exemples de code, les objets d'entreprise et sont les paramètres qui doivent être supprimés ou réinitialiser. Vous pouvez utiliser la page Paramètres du serveur dans Project Web App pour gérer les données d'entreprise (https://ServerName/ProjectServerName/_layouts/pwa/admin/admin.aspx). Liens sur la page Paramètres du serveur permettent de supprimer les anciens éléments, forcer l'archivage de projets, gérer la file d'attente de travail pour tous les utilisateurs et effectuer d'autres tâches administratives.

Voici quelques-uns des liens sur la page Paramètres du serveur que vous pouvez utiliser pour les activités de nettoyage par défaut après l'exécution des exemples de code :

  • Forcer l'archiver les objets d'entreprise

  • Gestionnaires d'événements de côté serveur

  • Gérer les travaux de la file d'attente

  • Champs personnalisés d'entreprise et des Tables de choix

  • Supprimer les objets d'entreprise

  • Types de projets d’entreprise

  • Phases du flux de travail

  • Étapes du flux de travail

  • Pages de détails de projet

Notes

Avertissement traduction automatique : cet article a été traduit par un ordinateur, sans intervention humaine. Microsoft propose cette traduction automatique pour offrir aux personnes ne maîtrisant pas l’anglais l’accès au contenu relatif aux produits, services et technologies Microsoft. Comme cet article a été traduit automatiquement, il risque de contenir des erreurs de grammaire, de syntaxe ou de terminologie.

Voir aussi

Tâches

Procédure : Utiliser l’emprunt d’identité avec WCF (traduction automatique)

Concepts

Vue d’ensemble de WCF et de l’interface PSI (traduction automatique)

Conditions préalables pour les exemples de code basés sur WCF (traduction automatique)

Vue d’ensemble de la référence de l’interface PSI (traduction automatique)

Autres ressources

SharePoint Developer Center