Statusing.GetNewTaskCount Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene el número de asignaciones nuevas para el usuario actual.
public:
int GetNewTaskCount();
[System.Web.Services.Protocols.SoapDocumentMethod("http://schemas.microsoft.com/office/project/server/webservices/Statusing/GetNewTaskCount", ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped, RequestNamespace="http://schemas.microsoft.com/office/project/server/webservices/Statusing/", ResponseNamespace="http://schemas.microsoft.com/office/project/server/webservices/Statusing/", Use=System.Web.Services.Description.SoapBindingUse.Literal)]
public int GetNewTaskCount();
member this.GetNewTaskCount : unit -> int
Public Function GetNewTaskCount () As Integer
Devoluciones
- Atributos
Ejemplos
En el ejemplo siguiente se lee el nuevo recuento de tareas del usuario actual y se muestra. Para obtener algunas tareas nuevas, ejecute el ejemplo en el tema del CreateNewAssignment(String, Guid, Guid, Guid, Guid, DateTime, DateTime, Boolean, Boolean, String) método para generarlas.
Para obtener información crítica sobre cómo ejecutar este ejemplo de código, vea Requisitos previos para ejemplos de código de ASMX-Based.
using System;
using System.Collections.Generic;
using System.Text;
using System.Net;
using System.Data;
using System.Web.Services.Protocols;
using System.Threading;
using PSLibrary = Microsoft.Office.Project.Server.Library;
namespace Microsoft.SDK.Project.Samples.GetNewTaskCount
{
class Program
{
[STAThread]
static void Main()
{
try
{
#region Setup
const string PROJECT_SERVER_URI = "http://ServerName/ProjectServerName/"; // <<--Change to match your project server and directory
const string STATUSING_SERVICE_PATH = "_vti_bin/psi/statusing.asmx";
// Set up the services.
SvcStatusing.Statusing statusingSvc = new SvcStatusing.Statusing();
statusingSvc.UseDefaultCredentials = true;
statusingSvc.Url = PROJECT_SERVER_URI + STATUSING_SERVICE_PATH;
#endregion
int newTaskCount = statusingSvc.GetNewTaskCount();
Console.WriteLine("You have {0} new tasks.", newTaskCount);
}
catch (SoapException ex)
{
ExceptionHandlers.HandleSoapException(ex);
}
catch (WebException ex)
{
ExceptionHandlers.HandleWebException(ex);
}
catch (Exception ex)
{
ExceptionHandlers.HandleException(ex);
}
finally
{
ExceptionHandlers.ResetConsole();
}
}
}
class ExceptionHandlers
{
public static void HandleSoapException(SoapException ex)
{
PSLibrary.PSClientError error = new PSLibrary.PSClientError(ex);
PSLibrary.PSErrorInfo[] errors = error.GetAllErrors();
string errMess = "==============================\r\nError: \r\n";
for (int i = 0; i < errors.Length; i++)
{
errMess += "\n" + ex.Message.ToString() + "\r\n";
errMess += "".PadRight(30, '=') + "\r\nPSCLientError Output:\r\n \r\n";
errMess += errors[i].ErrId.ToString() + "\n";
for (int j = 0; j < errors[i].ErrorAttributes.Length; j++)
{
errMess += "\r\n\t" + errors[i].ErrorAttributeNames()[j] + ": "
+ errors[i].ErrorAttributes[j];
}
errMess += "\r\n".PadRight(30, '=');
}
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine(errMess);
}
public static void HandleWebException(WebException ex)
{
string errMess = ex.Message.ToString() +
"\n\nLog on, or check the Project Server Queuing Service";
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine("Error: " + errMess);
}
public static void HandleException(Exception ex)
{
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine("Error: " + ex.Message);
}
public static void ResetConsole()
{
Console.ResetColor();
Console.WriteLine("\r\n\r\nPress any key...");
Console.ReadKey();
}
}
}
Comentarios
Permisos de Project Server
No se aplican permisos especiales. Este método lee los datos solo para el recurso actual que ha iniciado sesión.