MpxjEx.Resource (MpxjEx v0.1.0)

Copy Markdown View Source

A resource (person, material or cost) in a schedule.

As with MpxjEx.Task, the common attributes are struct fields and every attribute read from the file is in :fields.

:availability_table lists the periods the resource is available, as maps with :start, :end and :units. :cost_rate_tables maps a table index (0 to 4, MS Project's tables A to E) to its entries, each a map with :start_date, :end_date, :cost_per_use and :rates, which maps the rate index (0 standard, 1 overtime, more for Primavera) to an MpxjEx.Rate.

Summary

Types

t()

@type t() :: %MpxjEx.Resource{
  active: boolean(),
  availability_table: [map()],
  calendar_unique_id: integer() | nil,
  cost: float() | nil,
  cost_per_use: float() | nil,
  cost_rate_tables: %{optional(non_neg_integer()) => [map()]},
  email_address: String.t() | nil,
  fields: map(),
  group: String.t() | nil,
  guid: String.t() | nil,
  id: integer() | nil,
  initials: String.t() | nil,
  max_units: float() | nil,
  name: String.t() | nil,
  notes: String.t() | nil,
  overtime_rate: MpxjEx.Rate.t() | nil,
  standard_rate: MpxjEx.Rate.t() | nil,
  type: atom() | nil,
  unique_id: integer(),
  work: number() | nil
}