Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Gets the number of new assignments for the current user.
Namespace: WebSvcStatusing
Assembly: ProjectServerWebServices (in ProjectServerWebServices.dll)
Syntax
'Declaration
<SoapDocumentMethodAttribute("http://schemas.microsoft.com/office/project/server/webservices/Statusing/GetNewTaskCount", RequestNamespace := "http://schemas.microsoft.com/office/project/server/webservices/Statusing/", _
ResponseNamespace := "http://schemas.microsoft.com/office/project/server/webservices/Statusing/", _
Use := SoapBindingUse.Literal, ParameterStyle := SoapParameterStyle.Wrapped)> _
Public Function GetNewTaskCount As Integer
'Usage
Dim instance As Statusing
Dim returnValue As Integer
returnValue = instance.GetNewTaskCount()
[SoapDocumentMethodAttribute("http://schemas.microsoft.com/office/project/server/webservices/Statusing/GetNewTaskCount", RequestNamespace = "http://schemas.microsoft.com/office/project/server/webservices/Statusing/",
ResponseNamespace = "http://schemas.microsoft.com/office/project/server/webservices/Statusing/",
Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public int GetNewTaskCount()
Return Value
Type: System.Int32
Remarks
Project Server Permissions
No special permissions applied. This method reads data for only the current logged-on resource.
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 method topic to generate them.
For critical information about running this code example, see Prerequisites for Reference 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.
StatusingWebSvc.Statusing statusingSvc = new StatusingWebSvc.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();
}
}
}