AssignmentBaseline

AssignmentBaseline class

Represents Baseline of a resource assignment.

public class AssignmentBaseline : Baseline, IComparable<AssignmentBaseline>, 
    IEquatable<AssignmentBaseline>

Constructors

NameDescription
AssignmentBaseline()The default constructor.

Properties

NameDescription
BaselineNumber { get; set; }Gets or sets the unique number of a baseline data record.
Bcwp { get; set; }Gets or sets the budgeted cost of a work performed by a resource for a project to-date.
Bcws { get; set; }Gets or sets the budget cost of a work scheduled for a resource.
Cost { get; set; }Gets or sets the projected cost of a resource when the baseline is saved.
Finish { get; set; }Gets or sets the scheduled finish date of the resource assignment when the baseline was saved. The finish date of the resource assignment when this baseline was saved.
Start { get; set; }Gets or sets the scheduled start date of the resource assignment when the baseline was saved. The start date of the resource assignment when this baseline was saved.
TimephasedData { get; set; }Gets or sets the TimephasedDataCollection instance for this object. The time phased data associated with the resource assignment baseline. returns TimephasedDataCollection instance for this object.The collection of Time phased data associated with this baseline.
Work { get; set; }Gets or sets the work assigned to a resource when the baseline is saved. The amount of assigned work to a resource when the baseline was saved.

Methods

NameDescription
CompareTo(AssignmentBaseline)IComparable interface implementation. Compares this instance to the specified Baseline object.
CompareTo(Baseline)IComparable interface implementation. Compares this instance to the specified Baseline object.
Equals(AssignmentBaseline)Returns a value indicating whether this instance is equal to the specified AssignmentBaseline object.
Equals(Baseline)Returns a value indicating whether this instance is equal to a specified object.
override Equals(object)Returns a value indicating whether this instance is equal to a specified object.
override GetHashCode()

Examples

Shows how to work with baselines of assignments.

var project = new Project(DataDir + "AssignmentBaseline2007.mpp");

// assignment baselines are set when one sets the baseline on whole project
project.SetBaseline(BaselineType.Baseline);

// read assignment baseline information
foreach (var assignment in project.ResourceAssignments)
{
    foreach (var baseline in assignment.Baselines)
    {
        Console.WriteLine("Baseline Start: " + baseline.Start);
        Console.WriteLine("Baseline Finish: " + baseline.Finish);
        Console.WriteLine("Baseline Number: " + baseline.BaselineNumber);
        Console.WriteLine("Bcwp: " + baseline.Bcwp);
        Console.WriteLine("Bcws: " + baseline.Bcws);
        Console.WriteLine("Cost: " + baseline.Cost);
        Console.WriteLine("Work: " + baseline.Work);
        if (baseline.TimephasedData != null)
        {
            foreach (var td in baseline.TimephasedData)
            {
                Console.WriteLine("TD Start: " + td.Start);
                Console.WriteLine("TD Finish: " + td.Finish);
                Console.WriteLine("TD Timephased Data Type: " + td.TimephasedDataType);
                Console.WriteLine();
            }
        }

        Console.WriteLine();
    }

    Console.WriteLine();
}

// check baseline equality
var assn1 = project.ResourceAssignments.GetByUid(5);
var assn2 = project.ResourceAssignments.GetByUid(7);

var assignmentBaseline1 = assn1.Baselines.ToList()[0];
var assignmentBaseline2 = assn2.Baselines.ToList()[0];

// baselines can be compared by using 'Equals' method overloads
Console.WriteLine("Are baselines equal: " + assignmentBaseline1.Equals(assignmentBaseline2));

// or by using overloaded arithmetic operation
Console.WriteLine("Is baseline 1 less than baseline 2: " + (assignmentBaseline1 < assignmentBaseline2));

// the baseline hashcode is based on baseline number
Console.WriteLine("Assignment baseline 1 hashcode: " + assignmentBaseline1.GetHashCode());
Console.WriteLine("Assignment baseline 2 hashcode: " + assignmentBaseline2.GetHashCode());

See Also