Freigeben über


Resource.UpdateResources-Methode

Aktualisiert, gelöscht oder eine oder mehrere Ressourcen erstellt.

Namespace:  WebSvcResource
Assembly:  ProjectServerServices (in ProjectServerServices.dll)

Syntax

'Declaration
<SoapDocumentMethodAttribute("https://schemas.microsoft.com/office/project/server/webservices/Resource/UpdateResources", RequestNamespace := "https://schemas.microsoft.com/office/project/server/webservices/Resource/",  _
    ResponseNamespace := "https://schemas.microsoft.com/office/project/server/webservices/Resource/",  _
    Use := SoapBindingUse.Literal, ParameterStyle := SoapParameterStyle.Wrapped)> _
Public Function UpdateResources ( _
    rds As ResourceDataSet, _
    validateOnly As Boolean, _
    autoCheckIn As Boolean _
) As ResourceDataSet
'Usage
Dim instance As Resource
Dim rds As ResourceDataSet
Dim validateOnly As Boolean
Dim autoCheckIn As Boolean
Dim returnValue As ResourceDataSet

returnValue = instance.UpdateResources(rds, _
    validateOnly, autoCheckIn)
[SoapDocumentMethodAttribute("https://schemas.microsoft.com/office/project/server/webservices/Resource/UpdateResources", RequestNamespace = "https://schemas.microsoft.com/office/project/server/webservices/Resource/", 
    ResponseNamespace = "https://schemas.microsoft.com/office/project/server/webservices/Resource/", 
    Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public ResourceDataSet UpdateResources(
    ResourceDataSet rds,
    bool validateOnly,
    bool autoCheckIn
)

Parameter

  • validateOnly
    Typ: System.Boolean

    Wenn true, nur die Daten überprüft und erstellt keine neuen Ressourcen.

  • autoCheckIn
    Typ: System.Boolean

    Wenn true, automatisch in die Ressourcendaten überprüft.

Rückgabewert

Typ: WebSvcResource.ResourceDataSet
Die zurückgegebene ResourceDataSet enthält die vorgenommenen Änderungen.

Hinweise

UpdateResources löscht eine Ressource aus, wenn der Parameter ResourceDataSet enthält keine Informationen für eine vorhandene Ressource, die eine Ressource erstellt, wenn die Ressource in Enterprise-Ressourcenpool nicht vorhanden, oder vorhandene Ressourcen mit neuen Daten aktualisiert.

Jede Ressource geändert oder gelöscht werden muss mit dem aktuellen authentifizierten Benutzer vor dem Aufruf von UpdateResourcesausgecheckt werden.

Project Server-Berechtigungen

Berechtigung

Beschreibung

ManageUsersAndGroups

Ermöglicht einem Benutzer das alle Benutzer im Unternehmen, Ressourcen und Gruppen verwalten. Die globale Berechtigung.

NewResource

Ermöglicht einem Benutzer das Erstellen einer neuen Ressource. Die globale Berechtigung.

ManageActiveDirectorySettings

Ermöglicht einem Benutzer das Verwalten von Benutzerinformationen. Die globale Berechtigung.

EditEnterpriseResourceData

Ermöglicht einem Benutzer das Bearbeiten oder löschen diese Ressource an. Kategorieberechtigung.

Beispiele

Das folgende Beispiel ruft eine Liste aller vorhandenen Enterprise-Ressourcen, checkt die erste Ressource, aktualisiert den Namen der Ressource, und klicken Sie dann speichert die Änderungen an den Server und checkt die Ressource.

Please see Prerequisites for Reference Code Samples for critical information on running this code sample.

using System;
using System.Collections.Generic;
using System.Text;
using System.Net;
using System.Windows.Forms;
using System.Web.Services.Protocols;
using PSLibrary = Microsoft.Office.Project.Server.Library;

namespace Microsoft.Office.Project.Samples.UpdateResources
{
   class Program
   {
       static void Main(string[] args)
      { 
         const string PROJECT_SERVER_URI    = "https://ServerName/ProjectServerName/";
         const string RESOURCE_SERVICE_PATH = "_vti_bin/psi/resource.asmx";
         
         try
         {
            // Set up the resource object and dataset
            SvcResource.Resource resourceSvc = new SvcResource.Resource();
            SvcResource.ResourceDataSet resourceDs = new SvcResource.ResourceDataSet();            
            resourceSvc.Url = PROJECT_SERVER_URI + RESOURCE_SERVICE_PATH;
            resourceSvc.Credentials = CredentialCache.DefaultCredentials;

            // Read read all the resources
            resourceDs = resourceSvc.ReadResources(string.Empty, false);

            // Check out the first resource for updating.
            //  - This assumes the resource is checked in.
            //  - An error occurs if the resource is already checked out.
            resourceSvc.CheckOutResources(new Guid[] { resourceDs.Resources[0].RES_UID });

            // Update the resource name of the first row.
            Console.WriteLine ("Modifying resource " + resourceDs.Resources[0].RES_ID + " (" + resourceDs.Resources[0].RES_NAME + ")");
            resourceDs.Resources[0].RES_NAME += " Modified at: " + DateTime.Now.ToShortTimeString();

            // Send the update to the server and automatically check in the changed row
            resourceSvc.UpdateResources(resourceDs, false, true);
         }
         catch (System.Web.Services.Protocols.SoapException ex)
         {
            string errMess = "";
            PSLibrary.PSClientError error = new PSLibrary.PSClientError(ex);
            PSLibrary.PSErrorInfo[] errors = error.GetAllErrors();

            for (int j = 0; j < errors.Length; j++)
               errMess = errMess + errors[j].ErrId.ToString() + "\n";
            errMess = errMess + "\n" + ex.Message.ToString();

            MessageBox.Show(errMess, "Error", MessageBoxButtons.OK,
               MessageBoxIcon.Error);
         }
         catch (WebException ex)
         {
            string message = ex.Message.ToString() +
               "\n\nLog on, or check the Project Server Queuing Service";
            MessageBox.Show(message, "Project Creation Error",
               MessageBoxButtons.OK, MessageBoxIcon.Error);
         }
         catch (Exception ex)
         {
            MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK,
         MessageBoxIcon.Error);
         }
      }
   }
}

Siehe auch

Referenz

Resource Klasse

Resource-Member

WebSvcResource-Namespace