Statusing.GetNewTaskCount Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets the number of new assignments for the current user.
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
Returns
- Attributes
Examples
The following example reads the new task count for the current user and displays it. To get a few new tasks, run the sample in the CreateNewAssignment(String, Guid, Guid, Guid, Guid, DateTime, DateTime, Boolean, Boolean, String) method topic to generate them.
For critical information about running this code example, see Prerequisites for ASMX-Based Code Samples.
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();
}
}
}
Remarks
Project Server Permissions
No special permissions applied. This method reads data for only the current logged-on resource.