Aspose.Tasks for C++
ResourceAssignment.h
1 #pragma once
2 //-----------------------------------------------------------------------
3 // <copyright file="ResourceAssignment.cs" company="Aspose Pty Ltd">
4 // Copyright (c) 2002-2024 Aspose Pty Ltd. All Rights Reserved.
5 // </copyright>
6 //-----------------------------------------------------------------------
7 
8 #include <system/nullable.h>
9 #include <system/multicast_delegate.h>
10 #include <system/iequatable.h>
11 #include <system/guid.h>
12 
13 #include "aspose.tasks.cpp/PropertyContainer.h"
14 #include "aspose.tasks.cpp/IEntityWithNotes.h"
15 #include "aspose.tasks.cpp/IEntityWithHyperlink.h"
16 #include "aspose.tasks.cpp/IContainer.h"
17 #include "aspose.tasks.cpp/TimephasedData.h"
18 #include "aspose.tasks.cpp/Task.h"
19 #include "aspose.tasks.cpp/Resource.h"
20 #include "aspose.tasks.cpp/Key.h"
21 #include "aspose.tasks.cpp/IExtendedAttributeParent.h"
22 #include "aspose.tasks.cpp/Enums/AsnKey.h"
23 #include "aspose.tasks.cpp/aspose_tasks_api_defs.h"
24 
25 namespace Aspose
26 {
27 namespace Tasks
28 {
29 class AssignmentBaseline;
30 class AssignmentBaselineCollection;
31 class AutoRecalculationState;
32 enum class BaselineType;
33 enum class BookingType;
34 namespace Calculations
35 {
36 class ActualsByPercentCompleteUpdater;
37 class AssignmentProjection;
38 class ResourceAssignmentCalculator;
39 class ResourceAssignmentCostCalculator;
40 class ResourceAssignmentPeakCalculator;
41 class ResourceAssignmentRateByDateEnumerator;
42 class ResourceAssignmentVarianceCalculator;
43 class ResourceAssignmentWorkCalculator;
44 class ResourceOverAllocationCalculator;
45 class ResourceWorkCalculator;
46 class TaskByAssignmentCalculator;
47 class TaskProgressCalculator;
48 class TimephasedDataCalculator;
49 } // namespace Calculations
50 class Calendar;
51 namespace Connectivity
52 {
53 class MpdAssignmentBaselineMapper;
54 class MpdAssignmentMapper;
55 template <typename> class MpdField;
56 class MspAssignmentBaseLineMapper;
57 class MspAssignmentMapper;
58 class PmResourceAssignmentMapper;
59 } // namespace Connectivity
60 class DatesCalculator;
61 class Duration;
62 class EvaluationModeDatesResetter;
63 class EVCalculator;
64 class ExtendedAttributeCollection;
65 namespace Filters
66 {
67 class ResourceAssignmentValidByTaskFilter;
68 class ResourceAssignmentValidMaterialByTaskFilter;
69 class ResourceAssignmentValidWorkByTaskFilter;
70 } // namespace Filters
71 class FixedDurationEffortDrivenTaskPlanner;
72 class FixedDurationTaskPlanner;
73 class FixedWorkTaskPlanner;
74 namespace IO
75 {
76 namespace Html
77 {
78 class HtmlResourceAssignmentBaseLineTableReader;
79 class HtmlResourceAssignmentTableReader;
80 } // namespace Html
81 namespace MSProject
82 {
83 namespace Metadata
84 {
85 class AssignmentExtendedAttributeFlagOffsets;
86 } // namespace Metadata
87 class MPP12Reader;
88 class MPP12ResourceAssignmentWriter;
89 class MPP14As9AssnWriter;
90 template <typename> class MPP14AsXResourceAssignmentReader;
91 class MPP14Reader;
92 class MPP14ResourceAssignmentWriter;
93 class MPP14TaskWriter;
94 class MPP9Reader;
95 class MPP9ResourceAssignmentReader;
96 class MPP9ResourceAssignmentWriter;
97 class MPPAssignmentExtendedAttributeReader;
98 class MPPReader;
99 class MPPResourceAssignmentWriter;
100 class MPPTimephasedDataReader;
101 class MppTimephasedDataWriter;
102 } // namespace MSProject
103 namespace PrimaveraXml
104 {
105 class PrimaveraAssignmentsNodeReader;
106 } // namespace PrimaveraXml
107 namespace Pwa
108 {
109 namespace InternalApi
110 {
111 namespace Mapping
112 {
113 class AssignmentContourDataMapper;
114 class ProjectAssignmentsMapper;
115 } // namespace Mapping
116 } // namespace InternalApi
117 } // namespace Pwa
118 namespace Xer
119 {
120 class XerAssignmentReader;
121 } // namespace Xer
122 namespace Xml
123 {
124 class ResourceAssignmentFactory;
125 class ResourceAssignmentNodeReader;
126 class ResourceAssignmentNodeWriter;
127 } // namespace Xml
128 } // namespace IO
129 namespace Leveling
130 {
131 class LevelingAlgorithm;
132 } // namespace Leveling
133 class ManualState;
134 class PercentCompleteCalculator;
135 class Project;
136 class ProjectState;
137 class ProjectWorkUpdater;
138 class Rate;
139 enum class RateScaleType;
140 enum class RateType;
141 namespace Recalculation
142 {
143 class TaskSplitCalculator;
144 } // namespace Recalculation
145 class ResourceAssignmentCollection;
146 class ResourceAssignmentTimephasedDataCollection;
147 namespace Saving
148 {
149 class HtmlResourceAssignmentBaseLineTable;
150 class PrimaveraAssignmentNodeWriter;
151 class TemplateWriter;
152 class XerAssignmentTable;
153 } // namespace Saving
154 namespace Scheduling
155 {
156 class FromFinishScheduler;
157 class FromStartScheduler;
158 } // namespace Scheduling
159 class SplitPartCollection;
160 class SplitsCalculator;
161 class Task;
162 class TaskBaselineCollection;
163 class TaskPlanner;
164 class TaskPlannerAssignmentManager;
165 namespace Timephased
166 {
167 class TimephasedDataByScaledEnumerator;
168 class TimeScaledWorkContourBuilder;
169 } // namespace Timephased
170 class TimephasedDataCollection;
171 class TimephasedDataMaker;
172 enum class TimephasedDataType : int8_t;
173 class TimeScaledExceptions;
174 class TimeScaledParentWorkUnit;
175 class TimeScaledWorkUnit;
176 namespace Util
177 {
178 template <typename T> using ConditionDelegate = System::MulticastDelegate<bool(T)>;
179 class DateTimeInterval;
180 } // namespace Util
181 namespace Visualization
182 {
183 class ApsResourceUsageBuilder;
184 class ApsResourceUsagePage;
185 class ApsTaskUsageBuilder;
186 class ApsUsagePage;
187 class AssignmentToColumnText;
188 template <typename> class FieldToColumnText;
189 class TaskToColumnText;
190 } // namespace Visualization
191 enum class WorkContourType;
192 class WorkingTimeCollection;
193 } // namespace Tasks
194 } // namespace Aspose
195 namespace System
196 {
197 namespace Collections
198 {
199 namespace Generic
200 {
201 template <typename> class IEnumerable;
202 template <typename> class IList;
203 template <typename> class List;
204 } // namespace Generic
205 } // namespace Collections
206 class Decimal;
207 class EventArgs;
208 class TimeSpan;
209 } // namespace System
210 
211 namespace Aspose {
212 
213 namespace Tasks {
214 
215 /// <summary>
216 /// Represents a resource assignment in a project.
217 /// </summary>
218 class ASPOSE_TASKS_SHARED_CLASS ResourceAssignment : public Aspose::Tasks::IContainer<Aspose::Tasks::AsnKey>, public System::IEquatable<System::SharedPtr<Aspose::Tasks::ResourceAssignment>>, public Aspose::Tasks::IExtendedAttributeParent, public Aspose::Tasks::IEntityWithNotes, public Aspose::Tasks::IEntityWithHyperlink
219 {
220  typedef ResourceAssignment ThisType;
221  typedef Aspose::Tasks::IContainer<Aspose::Tasks::AsnKey> BaseType;
222  typedef System::IEquatable<System::SharedPtr<Aspose::Tasks::ResourceAssignment>> BaseType1;
223  typedef Aspose::Tasks::IExtendedAttributeParent BaseType2;
224  typedef Aspose::Tasks::IEntityWithNotes BaseType3;
225  typedef Aspose::Tasks::IEntityWithHyperlink BaseType4;
226 
227  typedef ::System::BaseTypesInfo<BaseType, BaseType1, BaseType2, BaseType3, BaseType4> ThisTypeBaseTypesInfo;
228  ASPOSE_TASKS_SHARED_RTTI_INFO_DECL();
229 
231  friend class Aspose::Tasks::Calculations::AssignmentProjection;
232  friend class Aspose::Tasks::Calculations::ResourceOverAllocationCalculator;
233  friend class Aspose::Tasks::Calculations::ResourceAssignmentRateByDateEnumerator;
234  friend class Aspose::Tasks::Calculations::ResourceAssignmentCalculator;
235  friend class Aspose::Tasks::Calculations::ResourceAssignmentCostCalculator;
236  friend class Aspose::Tasks::Calculations::ResourceAssignmentPeakCalculator;
237  friend class Aspose::Tasks::Calculations::ResourceAssignmentWorkCalculator;
238  friend class Aspose::Tasks::Calculations::ResourceWorkCalculator;
239  friend class Aspose::Tasks::Calculations::ActualsByPercentCompleteUpdater;
240  friend class Aspose::Tasks::Calculations::TaskByAssignmentCalculator;
241  friend class Aspose::Tasks::Calculations::TaskProgressCalculator;
242  friend class Aspose::Tasks::Calculations::ResourceAssignmentVarianceCalculator;
243  friend class Aspose::Tasks::Calculations::TimephasedDataCalculator;
244  friend class Aspose::Tasks::IO::PrimaveraXml::PrimaveraAssignmentsNodeReader;
245  friend class Aspose::Tasks::Leveling::LevelingAlgorithm;
246  friend class Aspose::Tasks::Project;
247  friend class Aspose::Tasks::Task;
248  friend class Aspose::Tasks::Timephased::TimeScaledWorkContourBuilder;
249  friend class Aspose::Tasks::Timephased::TimephasedDataByScaledEnumerator;
250  friend class Aspose::Tasks::Filters::ResourceAssignmentValidByTaskFilter;
251  friend class Aspose::Tasks::Filters::ResourceAssignmentValidMaterialByTaskFilter;
252  friend class Aspose::Tasks::Filters::ResourceAssignmentValidWorkByTaskFilter;
253  friend class Aspose::Tasks::IO::Pwa::InternalApi::Mapping::AssignmentContourDataMapper;
254  friend class Aspose::Tasks::IO::Xml::ResourceAssignmentFactory;
255  friend class Aspose::Tasks::EVCalculator;
256  friend class Aspose::Tasks::Connectivity::MpdAssignmentBaselineMapper;
257  friend class Aspose::Tasks::Connectivity::MpdAssignmentMapper;
258  template<typename FT0> friend class Aspose::Tasks::Connectivity::MpdField;
259  friend class Aspose::Tasks::Connectivity::MspAssignmentBaseLineMapper;
260  friend class Aspose::Tasks::Connectivity::MspAssignmentMapper;
261  friend class Aspose::Tasks::Connectivity::PmResourceAssignmentMapper;
262  friend class Aspose::Tasks::IO::Html::HtmlResourceAssignmentBaseLineTableReader;
263  friend class Aspose::Tasks::IO::Html::HtmlResourceAssignmentTableReader;
264  friend class Aspose::Tasks::IO::MSProject::MPPAssignmentExtendedAttributeReader;
265  friend class Aspose::Tasks::IO::MSProject::MPP12Reader;
266  friend class Aspose::Tasks::IO::MSProject::MPPReader;
267  friend class Aspose::Tasks::IO::MSProject::MPP9ResourceAssignmentReader;
268  template<typename FT0> friend class Aspose::Tasks::IO::MSProject::MPP14AsXResourceAssignmentReader;
269  friend class Aspose::Tasks::IO::MSProject::MPP14Reader;
270  friend class Aspose::Tasks::IO::MSProject::MPP14ResourceAssignmentWriter;
271  friend class Aspose::Tasks::IO::MSProject::MPP14TaskWriter;
272  friend class Aspose::Tasks::IO::MSProject::MPP9Reader;
273  friend class Aspose::Tasks::IO::MSProject::Metadata::AssignmentExtendedAttributeFlagOffsets;
274  friend class Aspose::Tasks::IO::MSProject::MPPTimephasedDataReader;
275  friend class Aspose::Tasks::IO::MSProject::MPP12ResourceAssignmentWriter;
276  friend class Aspose::Tasks::IO::MSProject::MPPResourceAssignmentWriter;
277  friend class Aspose::Tasks::IO::MSProject::MPP14As9AssnWriter;
278  friend class Aspose::Tasks::IO::MSProject::MPP9ResourceAssignmentWriter;
279  friend class Aspose::Tasks::IO::MSProject::MppTimephasedDataWriter;
280  friend class Aspose::Tasks::IO::Xer::XerAssignmentReader;
281  friend class Aspose::Tasks::IO::Pwa::InternalApi::Mapping::ProjectAssignmentsMapper;
282  friend class Aspose::Tasks::IO::Xml::ResourceAssignmentNodeReader;
283  friend class Aspose::Tasks::IO::Xml::ResourceAssignmentNodeWriter;
284  friend class Aspose::Tasks::AutoRecalculationState;
285  friend class Aspose::Tasks::ProjectState;
286  friend class Aspose::Tasks::DatesCalculator;
287  friend class Aspose::Tasks::EvaluationModeDatesResetter;
288  friend class Aspose::Tasks::TaskPlannerAssignmentManager;
289  friend class Aspose::Tasks::FixedDurationEffortDrivenTaskPlanner;
290  friend class Aspose::Tasks::TaskPlanner;
291  friend class Aspose::Tasks::FixedDurationTaskPlanner;
292  friend class Aspose::Tasks::FixedWorkTaskPlanner;
293  friend class Aspose::Tasks::ManualState;
294  friend class Aspose::Tasks::PercentCompleteCalculator;
295  friend class Aspose::Tasks::ProjectWorkUpdater;
296  friend class Aspose::Tasks::SplitsCalculator;
297  friend class Aspose::Tasks::Recalculation::TaskSplitCalculator;
299  friend class Aspose::Tasks::ResourceAssignmentTimephasedDataCollection;
300  friend class Aspose::Tasks::Saving::HtmlResourceAssignmentBaseLineTable;
301  friend class Aspose::Tasks::Saving::XerAssignmentTable;
302  friend class Aspose::Tasks::Saving::PrimaveraAssignmentNodeWriter;
303  friend class Aspose::Tasks::Saving::TemplateWriter;
304  friend class Aspose::Tasks::Scheduling::FromFinishScheduler;
305  friend class Aspose::Tasks::Scheduling::FromStartScheduler;
307  friend class Aspose::Tasks::TimephasedDataMaker;
308  friend class Aspose::Tasks::Visualization::ApsResourceUsageBuilder;
309  friend class Aspose::Tasks::Visualization::ApsTaskUsageBuilder;
310  friend class Aspose::Tasks::Visualization::ApsResourceUsagePage;
311  friend class Aspose::Tasks::Visualization::ApsUsagePage;
312  friend class Aspose::Tasks::Visualization::AssignmentToColumnText;
313  template<typename FT0> friend class Aspose::Tasks::Visualization::FieldToColumnText;
314  friend class Aspose::Tasks::Visualization::TaskToColumnText;
315 
316 private:
317 
318  using TimephasedMaker = System::MulticastDelegate<void(System::SharedPtr<TimeScaledParentWorkUnit>, TimephasedDataType, System::SharedPtr<System::Collections::Generic::List<System::SharedPtr<Aspose::Tasks::TimephasedData>>>)>;
319 
320 
321 public:
322 
323  /// <summary>
324  /// The task to which a resource is assigned.
325  /// </summary>
326  ASPOSE_TASKS_SHARED_API const System::SharedPtr<Aspose::Tasks::Task>& get_Task() const;
327  /// <summary>
328  /// The task to which a resource is assigned.
329  /// </summary>
330  ASPOSE_TASKS_SHARED_API void set_Task(const System::SharedPtr<Aspose::Tasks::Task>& value);
331  /// <summary>
332  /// The resource assigned to a task.
333  /// </summary>
334  ASPOSE_TASKS_SHARED_API const System::SharedPtr<Aspose::Tasks::Resource>& get_Resource() const;
335  /// <summary>
336  /// The resource assigned to a task.
337  /// </summary>
338  ASPOSE_TASKS_SHARED_API void set_Resource(const System::SharedPtr<Aspose::Tasks::Resource>& value);
339  /// <summary>
340  /// Gets unique identifier for this assignment.
341  /// </summary>
342  ASPOSE_TASKS_SHARED_API System::Nullable<System::Guid> get_Guid() const;
343  /// <summary>
344  /// Sets unique identifier for this assignment.
345  /// </summary>
346  ASPOSE_TASKS_SHARED_API void set_Guid(System::Nullable<System::Guid> value);
347  /// <summary>
348  /// Gets parent project for this assignment.
349  /// </summary>
350  ASPOSE_TASKS_SHARED_API const System::SharedPtr<Project>& get_ParentProject() const override;
351  /// <summary>
352  /// Gets AssignmentBaselineCollection object.
353  /// The collection of baseline values associated with an assignment.
354  /// </summary>
355  ASPOSE_TASKS_SHARED_API System::SharedPtr<AssignmentBaselineCollection> get_Baselines();
356  /// <summary>
357  /// Gets an instance of the ExtendedAttributeCollection class for this object.
358  /// </summary>
359  /// <remarks>Reading supported for XML format only.</remarks>
360  ASPOSE_TASKS_SHARED_API System::SharedPtr<ExtendedAttributeCollection> get_ExtendedAttributes() override;
361  /// <summary>
362  /// Sets an instance of the ExtendedAttributeCollection class for this object.
363  /// </summary>
364  /// <remarks>Reading supported for XML format only.</remarks>
365  ASPOSE_TASKS_SHARED_API void set_ExtendedAttributes(const System::SharedPtr<ExtendedAttributeCollection>& value);
366  /// <summary>
367  /// Gets the instance of <see cref="TimephasedDataCollection "></see> class containing elements of <see cref="TimephasedData"></see> class.
368  /// </summary>
369  ASPOSE_TASKS_SHARED_API System::SharedPtr<TimephasedDataCollection> get_TimephasedData();
370  /// <summary>
371  /// Sets the instance of <see cref="TimephasedDataCollection "></see> class containing elements of <see cref="TimephasedData"></see> class.
372  /// </summary>
373  ASPOSE_TASKS_SHARED_API void set_TimephasedData(const System::SharedPtr<TimephasedDataCollection>& value);
374  /// <summary>
375  /// Gets a value of Uid.
376  /// </summary>
377  ASPOSE_TASKS_SHARED_API int32_t get_Uid();
378  /// <summary>
379  /// Sets a value of Uid.
380  /// </summary>
381  ASPOSE_TASKS_SHARED_API void set_Uid(int32_t value);
382  /// <summary>
383  /// Gets a value of PercentWorkComplete.
384  /// </summary>
385  ASPOSE_TASKS_SHARED_API int32_t get_PercentWorkComplete();
386  /// <summary>
387  /// Sets a value of PercentWorkComplete.
388  /// </summary>
389  ASPOSE_TASKS_SHARED_API void set_PercentWorkComplete(int32_t value);
390  /// <summary>
391  /// Gets a value of ActualCost.
392  /// </summary>
393  ASPOSE_TASKS_SHARED_API System::Decimal get_ActualCost();
394  /// <summary>
395  /// Sets a value of ActualCost.
396  /// </summary>
397  ASPOSE_TASKS_SHARED_API void set_ActualCost(System::Decimal value);
398  /// <summary>
399  /// Gets a value of ActualFinish.
400  /// </summary>
401  ASPOSE_TASKS_SHARED_API System::DateTime get_ActualFinish();
402  /// <summary>
403  /// Sets a value of ActualFinish.
404  /// </summary>
405  ASPOSE_TASKS_SHARED_API void set_ActualFinish(System::DateTime value);
406  /// <summary>
407  /// Gets a value of ActualOvertimeCost.
408  /// </summary>
409  ASPOSE_TASKS_SHARED_API System::Decimal get_ActualOvertimeCost();
410  /// <summary>
411  /// Sets a value of ActualOvertimeCost.
412  /// </summary>
413  ASPOSE_TASKS_SHARED_API void set_ActualOvertimeCost(System::Decimal value);
414  /// <summary>
415  /// Gets a value of ActualStart.
416  /// </summary>
417  ASPOSE_TASKS_SHARED_API System::DateTime get_ActualStart();
418  /// <summary>
419  /// Sets a value of ActualStart.
420  /// </summary>
421  ASPOSE_TASKS_SHARED_API void set_ActualStart(System::DateTime value);
422  /// <summary>
423  /// Gets a value of ActualWork.
424  /// </summary>
425  ASPOSE_TASKS_SHARED_API Duration get_ActualWork();
426  /// <summary>
427  /// Sets a value of ActualWork.
428  /// </summary>
429  ASPOSE_TASKS_SHARED_API void set_ActualWork(Duration value);
430  /// <summary>
431  /// Gets a value of ACWP.
432  /// </summary>
433  ASPOSE_TASKS_SHARED_API double get_ACWP();
434  /// <summary>
435  /// Sets a value of ACWP.
436  /// </summary>
437  ASPOSE_TASKS_SHARED_API void set_ACWP(double value);
438  /// <summary>
439  /// Gets a value indicating whether Confirmed is set or not.
440  /// </summary>
441  ASPOSE_TASKS_SHARED_API bool get_Confirmed();
442  /// <summary>
443  /// Sets a value indicating whether Confirmed is set or not.
444  /// </summary>
445  ASPOSE_TASKS_SHARED_API void set_Confirmed(bool value);
446  /// <summary>
447  /// Gets a value of Cost.
448  /// </summary>
449  ASPOSE_TASKS_SHARED_API System::Decimal get_Cost();
450  /// <summary>
451  /// Sets a value of Cost.
452  /// </summary>
453  ASPOSE_TASKS_SHARED_API void set_Cost(System::Decimal value);
454  /// <summary>
455  /// Gets a value of CostRateTableType.
456  /// </summary>
457  ASPOSE_TASKS_SHARED_API RateType get_CostRateTableType();
458  /// <summary>
459  /// Sets a value of CostRateTableType.
460  /// </summary>
461  ASPOSE_TASKS_SHARED_API void set_CostRateTableType(RateType value);
462  /// <summary>
463  /// Gets a value of CostVariance.
464  /// </summary>
465  ASPOSE_TASKS_SHARED_API double get_CostVariance();
466  /// <summary>
467  /// Sets a value of CostVariance.
468  /// </summary>
469  ASPOSE_TASKS_SHARED_API void set_CostVariance(double value);
470  /// <summary>
471  /// Gets a value of CV.
472  /// </summary>
473  ASPOSE_TASKS_SHARED_API double get_CV();
474  /// <summary>
475  /// Sets a value of CV.
476  /// </summary>
477  ASPOSE_TASKS_SHARED_API void set_CV(double value);
478  /// <summary>
479  /// Gets a value of Delay.
480  /// </summary>
481  ASPOSE_TASKS_SHARED_API Duration get_Delay();
482  /// <summary>
483  /// Sets a value of Delay.
484  /// </summary>
485  ASPOSE_TASKS_SHARED_API void set_Delay(Duration value);
486  /// <summary>
487  /// Gets a value of Finish.
488  /// </summary>
489  ASPOSE_TASKS_SHARED_API System::DateTime get_Finish();
490  /// <summary>
491  /// Sets a value of Finish.
492  /// </summary>
493  ASPOSE_TASKS_SHARED_API void set_Finish(System::DateTime value);
494  /// <summary>
495  /// Gets a value of FinishVariance.
496  /// </summary>
497  ASPOSE_TASKS_SHARED_API Duration get_FinishVariance();
498  /// <summary>
499  /// Sets a value of FinishVariance.
500  /// </summary>
501  ASPOSE_TASKS_SHARED_API void set_FinishVariance(Duration value);
502  /// <summary>
503  /// Gets a value of Hyperlink.
504  /// </summary>
505  ASPOSE_TASKS_SHARED_API System::String get_Hyperlink() override;
506  /// <summary>
507  /// Sets a value of Hyperlink.
508  /// </summary>
509  ASPOSE_TASKS_SHARED_API void set_Hyperlink(System::String value) override;
510  /// <summary>
511  /// Gets a value of HyperlinkAddress.
512  /// </summary>
513  ASPOSE_TASKS_SHARED_API System::String get_HyperlinkAddress() override;
514  /// <summary>
515  /// Sets a value of HyperlinkAddress.
516  /// </summary>
517  ASPOSE_TASKS_SHARED_API void set_HyperlinkAddress(System::String value) override;
518  /// <summary>
519  /// Gets a value of HyperlinkSubAddress.
520  /// </summary>
521  ASPOSE_TASKS_SHARED_API System::String get_HyperlinkSubAddress() override;
522  /// <summary>
523  /// Sets a value of HyperlinkSubAddress.
524  /// </summary>
525  ASPOSE_TASKS_SHARED_API void set_HyperlinkSubAddress(System::String value) override;
526  /// <summary>
527  /// Gets a value of WorkVariance.
528  /// </summary>
529  ASPOSE_TASKS_SHARED_API Duration get_WorkVariance();
530  /// <summary>
531  /// Sets a value of WorkVariance.
532  /// </summary>
533  ASPOSE_TASKS_SHARED_API void set_WorkVariance(Duration value);
534  /// <summary>
535  /// Gets a value indicating whether HasFixedRateUnits is set or not.
536  /// </summary>
537  ASPOSE_TASKS_SHARED_API bool get_HasFixedRateUnits();
538  /// <summary>
539  /// Sets a value indicating whether HasFixedRateUnits is set or not.
540  /// </summary>
541  ASPOSE_TASKS_SHARED_API void set_HasFixedRateUnits(bool value);
542  /// <summary>
543  /// Gets a value indicating whether FixedMaterial is set or not.
544  /// </summary>
545  ASPOSE_TASKS_SHARED_API bool get_FixedMaterial();
546  /// <summary>
547  /// Sets a value indicating whether FixedMaterial is set or not.
548  /// </summary>
549  ASPOSE_TASKS_SHARED_API void set_FixedMaterial(bool value);
550  /// <summary>
551  /// Gets a value of LevelingDelay.
552  /// </summary>
553  ASPOSE_TASKS_SHARED_API Duration get_LevelingDelay();
554  /// <summary>
555  /// Sets a value of LevelingDelay.
556  /// </summary>
557  ASPOSE_TASKS_SHARED_API void set_LevelingDelay(Duration value);
558  /// <summary>
559  /// Gets a value indicating whether LinkedFields is set or not.
560  /// </summary>
561  ASPOSE_TASKS_SHARED_API bool get_LinkedFields();
562  /// <summary>
563  /// Sets a value indicating whether LinkedFields is set or not.
564  /// </summary>
565  ASPOSE_TASKS_SHARED_API void set_LinkedFields(bool value);
566  /// <summary>
567  /// Gets a value indicating whether Milestone is set or not.
568  /// </summary>
569  ASPOSE_TASKS_SHARED_API bool get_Milestone();
570  /// <summary>
571  /// Sets a value indicating whether Milestone is set or not.
572  /// </summary>
573  ASPOSE_TASKS_SHARED_API void set_Milestone(bool value);
574  /// <summary>
575  /// Gets notes' plain text extracted from RTF data.
576  /// </summary>
577  ASPOSE_TASKS_SHARED_API System::String get_NotesText() override;
578  /// <summary>
579  /// Sets notes' plain text extracted from RTF data.
580  /// </summary>
581  ASPOSE_TASKS_SHARED_API void set_NotesText(System::String value) override;
582  /// <summary>
583  /// Gets the text notes in RTF format.
584  /// <remarks>Supported for MPP formats only.</remarks>
585  /// </summary>
586  ASPOSE_TASKS_SHARED_API System::String get_NotesRTF() override;
587  /// <summary>
588  /// Sets the text notes in RTF format.
589  /// <remarks>Supported for MPP formats only.</remarks>
590  /// </summary>
591  ASPOSE_TASKS_SHARED_API void set_NotesRTF(System::String value) override;
592  /// <summary>
593  /// Gets a value indicating whether Overallocated is set or not.
594  /// </summary>
595  ASPOSE_TASKS_SHARED_API bool get_Overallocated();
596  /// <summary>
597  /// Sets a value indicating whether Overallocated is set or not.
598  /// </summary>
599  ASPOSE_TASKS_SHARED_API void set_Overallocated(bool value);
600  /// <summary>
601  /// Gets a value of OvertimeCost.
602  /// </summary>
603  ASPOSE_TASKS_SHARED_API System::Decimal get_OvertimeCost();
604  /// <summary>
605  /// Sets a value of OvertimeCost.
606  /// </summary>
607  ASPOSE_TASKS_SHARED_API void set_OvertimeCost(System::Decimal value);
608  /// <summary>
609  /// Gets a value of OvertimeWork.
610  /// </summary>
611  ASPOSE_TASKS_SHARED_API Duration get_OvertimeWork();
612  /// <summary>
613  /// Sets a value of OvertimeWork.
614  /// </summary>
615  ASPOSE_TASKS_SHARED_API void set_OvertimeWork(Duration value);
616  /// <summary>
617  /// Gets a value of PeakUnits.
618  /// </summary>
619  ASPOSE_TASKS_SHARED_API double get_PeakUnits();
620  /// <summary>
621  /// Sets a value of PeakUnits.
622  /// </summary>
623  ASPOSE_TASKS_SHARED_API void set_PeakUnits(double value);
624  /// <summary>
625  /// Gets a value of RegularWork.
626  /// </summary>
627  ASPOSE_TASKS_SHARED_API Duration get_RegularWork();
628  /// <summary>
629  /// Sets a value of RegularWork.
630  /// </summary>
631  ASPOSE_TASKS_SHARED_API void set_RegularWork(Duration value);
632  /// <summary>
633  /// Gets a value of RemainingCost.
634  /// </summary>
635  ASPOSE_TASKS_SHARED_API System::Decimal get_RemainingCost();
636  /// <summary>
637  /// Sets a value of RemainingCost.
638  /// </summary>
639  ASPOSE_TASKS_SHARED_API void set_RemainingCost(System::Decimal value);
640  /// <summary>
641  /// Gets a value of RemainingOvertimeCost.
642  /// </summary>
643  ASPOSE_TASKS_SHARED_API System::Decimal get_RemainingOvertimeCost();
644  /// <summary>
645  /// Sets a value of RemainingOvertimeCost.
646  /// </summary>
647  ASPOSE_TASKS_SHARED_API void set_RemainingOvertimeCost(System::Decimal value);
648  /// <summary>
649  /// Gets a value of RemainingOvertimeWork.
650  /// </summary>
651  ASPOSE_TASKS_SHARED_API Duration get_RemainingOvertimeWork();
652  /// <summary>
653  /// Sets a value of RemainingOvertimeWork.
654  /// </summary>
655  ASPOSE_TASKS_SHARED_API void set_RemainingOvertimeWork(Duration value);
656  /// <summary>
657  /// Gets a value of RemainingWork.
658  /// </summary>
659  ASPOSE_TASKS_SHARED_API Duration get_RemainingWork();
660  /// <summary>
661  /// Sets a value of RemainingWork.
662  /// </summary>
663  ASPOSE_TASKS_SHARED_API void set_RemainingWork(Duration value);
664  /// <summary>
665  /// Gets a value indicating whether ResponsePending is set or not.
666  /// </summary>
667  ASPOSE_TASKS_SHARED_API bool get_ResponsePending();
668  /// <summary>
669  /// Sets a value indicating whether ResponsePending is set or not.
670  /// </summary>
671  ASPOSE_TASKS_SHARED_API void set_ResponsePending(bool value);
672  /// <summary>
673  /// Gets a value of Start.
674  /// </summary>
675  ASPOSE_TASKS_SHARED_API System::DateTime get_Start();
676  /// <summary>
677  /// Sets a value of Start.
678  /// </summary>
679  ASPOSE_TASKS_SHARED_API void set_Start(System::DateTime value);
680  /// <summary>
681  /// Gets a value of Stop.
682  /// </summary>
683  ASPOSE_TASKS_SHARED_API System::DateTime get_Stop();
684  /// <summary>
685  /// Sets a value of Stop.
686  /// </summary>
687  ASPOSE_TASKS_SHARED_API void set_Stop(System::DateTime value);
688  /// <summary>
689  /// Gets a value of Resume.
690  /// </summary>
691  ASPOSE_TASKS_SHARED_API System::DateTime get_Resume();
692  /// <summary>
693  /// Sets a value of Resume.
694  /// </summary>
695  ASPOSE_TASKS_SHARED_API void set_Resume(System::DateTime value);
696  /// <summary>
697  /// Gets a value of StartVariance.
698  /// </summary>
699  ASPOSE_TASKS_SHARED_API Duration get_StartVariance();
700  /// <summary>
701  /// Sets a value of StartVariance.
702  /// </summary>
703  ASPOSE_TASKS_SHARED_API void set_StartVariance(Duration value);
704  /// <summary>
705  /// Gets a value indicating whether Summary is set or not.
706  /// </summary>
707  ASPOSE_TASKS_SHARED_API bool get_Summary();
708  /// <summary>
709  /// Sets a value indicating whether Summary is set or not.
710  /// </summary>
711  ASPOSE_TASKS_SHARED_API void set_Summary(bool value);
712  /// <summary>
713  /// Gets a value of SV.
714  /// </summary>
715  ASPOSE_TASKS_SHARED_API double get_SV();
716  /// <summary>
717  /// Sets a value of SV.
718  /// </summary>
719  ASPOSE_TASKS_SHARED_API void set_SV(double value);
720  /// <summary>
721  /// Gets a value of Units.
722  /// </summary>
723  ASPOSE_TASKS_SHARED_API double get_Units();
724  /// <summary>
725  /// Sets a value of Units.
726  /// </summary>
727  ASPOSE_TASKS_SHARED_API void set_Units(double value);
728  /// <summary>
729  /// Gets a value indicating whether UpdateNeeded is set or not.
730  /// </summary>
731  ASPOSE_TASKS_SHARED_API bool get_UpdateNeeded();
732  /// <summary>
733  /// Sets a value indicating whether UpdateNeeded is set or not.
734  /// </summary>
735  ASPOSE_TASKS_SHARED_API void set_UpdateNeeded(bool value);
736  /// <summary>
737  /// Gets a value of VAC.
738  /// </summary>
739  ASPOSE_TASKS_SHARED_API double get_VAC();
740  /// <summary>
741  /// Sets a value of VAC.
742  /// </summary>
743  ASPOSE_TASKS_SHARED_API void set_VAC(double value);
744  /// <summary>
745  /// Gets a value of Work.
746  /// </summary>
747  ASPOSE_TASKS_SHARED_API Duration get_Work();
748  /// <summary>
749  /// Sets a value of Work.
750  /// </summary>
751  ASPOSE_TASKS_SHARED_API void set_Work(Duration value);
752  /// <summary>
753  /// Gets a value of WorkContour.
754  /// </summary>
755  ASPOSE_TASKS_SHARED_API WorkContourType get_WorkContour();
756  /// <summary>
757  /// Sets a value of WorkContour.
758  /// </summary>
759  ASPOSE_TASKS_SHARED_API void set_WorkContour(WorkContourType value);
760  /// <summary>
761  /// Gets a value of BCWS.
762  /// </summary>
763  ASPOSE_TASKS_SHARED_API double get_BCWS();
764  /// <summary>
765  /// Sets a value of BCWS.
766  /// </summary>
767  ASPOSE_TASKS_SHARED_API void set_BCWS(double value);
768  /// <summary>
769  /// Gets a value of BCWP.
770  /// </summary>
771  ASPOSE_TASKS_SHARED_API double get_BCWP();
772  /// <summary>
773  /// Sets a value of BCWP.
774  /// </summary>
775  ASPOSE_TASKS_SHARED_API void set_BCWP(double value);
776  /// <summary>
777  /// Gets a value of BookingType.
778  /// </summary>
779  ASPOSE_TASKS_SHARED_API Aspose::Tasks::BookingType get_BookingType();
780  /// <summary>
781  /// Sets a value of BookingType.
782  /// </summary>
783  ASPOSE_TASKS_SHARED_API void set_BookingType(Aspose::Tasks::BookingType value);
784  /// <summary>
785  /// Gets a value of ActualWorkProtected.
786  /// </summary>
787  ASPOSE_TASKS_SHARED_API Duration get_ActualWorkProtected();
788  /// <summary>
789  /// Sets a value of ActualWorkProtected.
790  /// </summary>
791  ASPOSE_TASKS_SHARED_API void set_ActualWorkProtected(Duration value);
792  /// <summary>
793  /// Gets a value of ActualOvertimeWorkProtected.
794  /// </summary>
795  ASPOSE_TASKS_SHARED_API Duration get_ActualOvertimeWorkProtected();
796  /// <summary>
797  /// Sets a value of ActualOvertimeWorkProtected.
798  /// </summary>
799  ASPOSE_TASKS_SHARED_API void set_ActualOvertimeWorkProtected(Duration value);
800  /// <summary>
801  /// Gets a value of ActualOvertimeWork.
802  /// </summary>
803  ASPOSE_TASKS_SHARED_API Duration get_ActualOvertimeWork();
804  /// <summary>
805  /// Sets a value of ActualOvertimeWork.
806  /// </summary>
807  ASPOSE_TASKS_SHARED_API void set_ActualOvertimeWork(Duration value);
808  /// <summary>
809  /// Gets a value of Created.
810  /// </summary>
811  ASPOSE_TASKS_SHARED_API System::DateTime get_Created();
812  /// <summary>
813  /// Sets a value of Created.
814  /// </summary>
815  ASPOSE_TASKS_SHARED_API void set_Created(System::DateTime value);
816  /// <summary>
817  /// Gets a value of AssignmentOwner.
818  /// </summary>
819  ASPOSE_TASKS_SHARED_API System::String get_AssignmentOwner();
820  /// <summary>
821  /// Sets a value of AssignmentOwner.
822  /// </summary>
823  ASPOSE_TASKS_SHARED_API void set_AssignmentOwner(const System::String& value);
824  /// <summary>
825  /// Gets a value of AssignmentOwnerGuid.
826  /// </summary>
827  ASPOSE_TASKS_SHARED_API System::String get_AssignmentOwnerGuid();
828  /// <summary>
829  /// Sets a value of AssignmentOwnerGuid.
830  /// </summary>
831  ASPOSE_TASKS_SHARED_API void set_AssignmentOwnerGuid(const System::String& value);
832  /// <summary>
833  /// Gets a value of BudgetCost.
834  /// </summary>
835  ASPOSE_TASKS_SHARED_API System::Decimal get_BudgetCost();
836  /// <summary>
837  /// Sets a value of BudgetCost.
838  /// </summary>
839  ASPOSE_TASKS_SHARED_API void set_BudgetCost(System::Decimal value);
840  /// <summary>
841  /// Gets a value of BudgetWork.
842  /// </summary>
843  ASPOSE_TASKS_SHARED_API Duration get_BudgetWork();
844  /// <summary>
845  /// Sets a value of BudgetWork.
846  /// </summary>
847  ASPOSE_TASKS_SHARED_API void set_BudgetWork(Duration value);
848  /// <summary>
849  /// Gets a value of RateScale.
850  /// </summary>
851  ASPOSE_TASKS_SHARED_API RateScaleType get_RateScale();
852  /// <summary>
853  /// Sets a value of RateScale.
854  /// </summary>
855  ASPOSE_TASKS_SHARED_API void set_RateScale(RateScaleType value);
856 
857  /// <summary>
858  /// Returns the value to which the property is mapped in this container.
859  /// </summary>
860  /// <param name="key">the specified property key. <see cref="Asn"></see> for getting the property key.</param>
861  /// <typeparam name="T">the type of the mapped value.</typeparam>
862  /// <returns>the value to which the property is mapped in this container.</returns>
863  template <typename T>
864  T Get(const Key<T, AsnKey>& key) const
865  {
866  if (key.get_KeyType() == Aspose::Tasks::AsnKey::Task)
867  {
868  return System::ExplicitCast<T>(System::ExplicitCast<System::Object>(this->get_Task()));
869  }
870 
871  if (key.get_KeyType() == Aspose::Tasks::AsnKey::Resource)
872  {
873  return System::ExplicitCast<T>(System::ExplicitCast<System::Object>(this->get_Resource()));
874  }
875  System::SharedPtr<System::Object> res;
876  if (this->GetCalculatedValue(key.get_KeyType(), res))
877  {
878  return System::ExplicitCast<T>(res);
879  }
880 
881  return this->container->template CheckPropAndGet<T>(key);
882  }
883 
884  /// <summary>
885  /// Maps the specified property to the specified value in this container.
886  /// </summary>
887  /// <param name="key">the specified property key. <see cref="Asn"></see> for getting the property key.</param>
888  /// <param name="val">the value.</param>
889  /// <typeparam name="T">the type of the mapped value.</typeparam>
890  template <typename T>
891  void Set(const Key<T, AsnKey>& key, const T& val)
892  {
893 
894  if (key.get_KeyType() == Aspose::Tasks::AsnKey::Task)
895  {
896  this->set_Task(System::ExplicitCast<Aspose::Tasks::Task>(System::ExplicitCast<System::Object>(val)));
897  }
898 
899  if (key.get_KeyType() == Aspose::Tasks::AsnKey::Resource)
900  {
901  this->set_Resource(System::ExplicitCast<Aspose::Tasks::Resource>(System::ExplicitCast<System::Object>(val)));
902  }
903 
904  // Please do not remove this assignment due to C++ porting issues
905  auto castVal = System::ExplicitCast<System::Object>(val);
906  if (this->SetCalculatedValue(key.get_KeyType(), castVal))
907  {
908  return;
909  }
910 
911  this->container->template CheckPropAndSet<T>(key, val);
912 
913  if (key.get_KeyType() == Aspose::Tasks::AsnKey::WorkContour)
914  {
915  this->set_IsWorkContourChanged(true);
916  }
917  }
918 
919  /// <summary>
920  /// Deletes resource assignment from project assignments collection.
921  /// </summary>
922  ASPOSE_TASKS_SHARED_API void Delete();
923  /// <summary>
924  /// Returns a value indicating whether this instance is equal to a specified instance of the <see cref="ResourceAssignment"></see> class.
925  /// </summary>
926  /// <param name="other">The specified instance of the <see cref="ResourceAssignment"></see> class to compare with this instance.</param>
927  /// <returns><b>True</b> if the specified instance of the <see cref="ResourceAssignment"></see> class has the same UID value as this instance; otherwise, <b>false</b>.</returns>
928  ASPOSE_TASKS_SHARED_API bool Equals(System::SharedPtr<ResourceAssignment> other) override;
929  /// <summary>
930  /// Returns a value indicating whether this instance is equal to a specified object.
931  /// </summary>
932  /// <param name="obj">The object to compare with this instance.</param>
933  /// <returns><b>True</b> if o is a ResourceAssignment that assign the same resource and task as this instance; otherwise, <b>false</b>.</returns>
934  ASPOSE_TASKS_SHARED_API bool Equals(System::SharedPtr<System::Object> obj) override;
935  /// <summary>
936  /// Returns short string representation of the instance of the <see cref="ResourceAssignment"></see> class.
937  /// The exact details of the representation are unspecified and subject to change.
938  /// </summary>
939  /// <returns>short string which represents assignment object.</returns>
940  ASPOSE_TASKS_SHARED_API System::String ToString() const override;
941  /// <summary>
942  /// Returns a hash code value for the instance of the <see cref="ResourceAssignment"></see> class.
943  /// </summary>
944  /// <returns>returns a hash code value for this object.</returns>
945  ASPOSE_TASKS_SHARED_API int32_t GetHashCode() const override;
946  /// <summary>
947  /// Generates list of time phased data based on the task duration and the scheduled start date.
948  /// </summary>
949  /// <param name="calendar">The calendar to generate time phased data from.</param>
950  ASPOSE_TASKS_SHARED_API void TimephasedDataFromTaskDuration(const System::SharedPtr<Calendar>& calendar);
951  /// <summary>
952  /// Generates a list of time phased data.
953  /// </summary>
954  /// <param name="start">The specified start date.</param>
955  /// <param name="time">The specified working time.</param>
956  /// <param name="calendar">The specified working calendar.</param>
957  /// <param name="list">The list of time phased data.</param>
958  /// <param name="isWorking">The specified flag which specifies whether time-phased data is working or not.</param>
959  /// <param name="type">The specified time-phased data type.</param>
960  /// <returns>A maximum date from list or start date if list is empty.</returns>
961  ASPOSE_TASKS_SHARED_API System::DateTime MakeTPs(System::DateTime start, System::TimeSpan time, const System::SharedPtr<Calendar>& calendar, const System::SharedPtr<System::Collections::Generic::List<System::SharedPtr<Aspose::Tasks::TimephasedData>>>& list, bool isWorking, int32_t type);
962  /// <summary>
963  /// Splits task into two parts.
964  /// </summary>
965  /// <param name="start">The beginning of work interruption to split based on.</param>
966  /// <param name="finish">The end of work interruption to split based on.</param>
967  /// <param name="calendar">The calendar to split based on.</param>
968  /// <exception cref="ArgumentOutOfRangeException">Throws when start date is less than the assignment start date.</exception>
969  /// <exception cref="ArgumentOutOfRangeException">Throws when finish date is greater than the assignment finish date.</exception>
970  ASPOSE_TASKS_SHARED_API void SplitTask(System::DateTime start, System::DateTime finish, const System::SharedPtr<Calendar>& calendar);
971  /// <summary>
972  /// Returns the instance <see cref="TimephasedDataCollection"></see> class containing instances of <see cref="TimephasedData"></see> class within given start and end dates of specified <see cref="TimephasedDataType"></see>.
973  /// </summary>
974  /// <param name="start">The start date for the time phased data.</param>
975  /// <param name="end">The end date for the time phased data.</param>
976  /// <param name="timephasedType">The type of time phased data (<see cref="Aspose::Tasks::TimephasedDataType"></see>).</param>
977  /// <returns>returns a list which contains instances of <see cref="Aspose::Tasks::TimephasedData"></see> class.</returns>
978  ASPOSE_TASKS_SHARED_API System::SharedPtr<TimephasedDataCollection> GetTimephasedData(System::DateTime start, System::DateTime end, TimephasedDataType timephasedType);
979  /// <summary>
980  /// Returns <see cref="TimephasedDataCollection"></see> object with the instances of <see cref="TimephasedData"></see> class within given start and end dates of <see cref="TimephasedDataType::AssignmentWork"></see>.
981  /// </summary>
982  /// <param name="start">The start date for the time phased data.</param>
983  /// <param name="end">The end date for the time phased data.</param>
984  /// <returns>returns a list containing instances of <see cref="Aspose::Tasks::TimephasedData"></see> class.</returns>
985  ASPOSE_TASKS_SHARED_API System::SharedPtr<TimephasedDataCollection> GetTimephasedData(System::DateTime start, System::DateTime end);
986  /// <summary>
987  /// Gets amount of timephased work for the specified date time interval.
988  /// </summary>
989  /// <param name="start">Start of the date time interval.</param>
990  /// <param name="end">End of the date time interval.</param>
991  /// <param name="timephasedDataType">Type of the timephased data to use.</param>
992  /// <returns></returns>
993  ASPOSE_TASKS_SHARED_API System::TimeSpan GetTimephasedWork(System::DateTime start, System::DateTime end, TimephasedDataType timephasedDataType);
994  /// <summary>
995  /// Gets amount of timephased work for the specified date time interval.
996  /// </summary>
997  /// <param name="start">Start of the date time interval.</param>
998  /// <param name="end">End of the date time interval.</param>
999  /// <returns></returns>
1000  ASPOSE_TASKS_SHARED_API System::TimeSpan GetTimephasedWork(System::DateTime start, System::DateTime end);
1001  /// <summary>
1002  /// Sets units for assignment of a material resource with variable material consumption.
1003  /// The variable material consumption means that as the assignment duration changes, the quantity of materials used changes proportionally.
1004  /// </summary>
1005  /// <param name="units">Number of units accrued at the time period.</param>
1006  /// <param name="rateScaleType">Time period at which the unit value is accrued.</param>
1007  /// <remarks>For example, to set '123/month', SetUnitsScaled(123D, RateScaleType.Month) should be called.</remarks>
1008  /// <exception cref="InvalidOperationException">If the method is called for assignment of non-material resource.</exception>
1009  ASPOSE_TASKS_SHARED_API void SetMaterialResourceUnits(double units, RateScaleType rateScaleType);
1010  static bool _anonymous_method_0(System::SharedPtr<Aspose::Tasks::TimephasedData> td);
1011  static bool _anonymous_method_1(System::SharedPtr<Aspose::Tasks::TimephasedData> td);
1012  static bool _anonymous_method_2(System::SharedPtr<Aspose::Tasks::TimephasedData> td);
1013 
1014 protected:
1015 
1016  /// <summary>
1017  /// Gets parent project for this assignment.
1018  /// </summary>
1019  ASPOSE_TASKS_SHARED_API void set_ParentProject(const System::SharedPtr<Project>& value);
1020  /// <summary>
1021  /// Gets AssignmentBaselineCollection object.
1022  /// The collection of baseline values associated with an assignment.
1023  /// </summary>
1024  ASPOSE_TASKS_SHARED_API void set_Baselines(const System::SharedPtr<AssignmentBaselineCollection>& value);
1025  ASPOSE_TASKS_SHARED_API int32_t get_ExtendedAttributesCount();
1026  ASPOSE_TASKS_SHARED_API int32_t get_BaselineCount();
1027  ASPOSE_TASKS_SHARED_API bool get_IsShared() const;
1028  ASPOSE_TASKS_SHARED_API void set_IsShared(bool value);
1029  ASPOSE_TASKS_SHARED_API bool get_IsWork();
1030  ASPOSE_TASKS_SHARED_API bool get_IsFlatContour();
1031  ASPOSE_TASKS_SHARED_API bool get_IsMaterial();
1032  ASPOSE_TASKS_SHARED_API bool get_IsCost();
1033  ASPOSE_TASKS_SHARED_API System::Guid get_TempGuid() const;
1034  ASPOSE_TASKS_SHARED_API void set_TempGuid(System::Guid value);
1035  ASPOSE_TASKS_SHARED_API System::SharedPtr<Calendar> get_AssignmentCalendar();
1036  ASPOSE_TASKS_SHARED_API void set_AssignmentCalendar(const System::SharedPtr<Calendar>& value);
1037  ASPOSE_TASKS_SHARED_API bool get_IsValid();
1038  ASPOSE_TASKS_SHARED_API bool get_IsValidWork();
1039  ASPOSE_TASKS_SHARED_API bool get_IsSharedWork();
1040  /// <summary>
1041  /// Gets the assignment split parts.
1042  /// </summary>
1043  ASPOSE_TASKS_SHARED_API System::SharedPtr<SplitPartCollection> get_SplitParts();
1044  /// <summary>
1045  /// Sets the assignment split parts.
1046  /// </summary>
1047  ASPOSE_TASKS_SHARED_API void set_SplitParts(const System::SharedPtr<SplitPartCollection>& value);
1048  ASPOSE_TASKS_SHARED_API System::SharedPtr<Rate> get_CurrentRate();
1049  ASPOSE_TASKS_SHARED_API void set_CurrentRate(const System::SharedPtr<Rate>& value);
1050  ASPOSE_TASKS_SHARED_API const System::ArrayPtr<uint8_t>& get_WorkCompleteRawTD() const;
1051  ASPOSE_TASKS_SHARED_API const System::ArrayPtr<uint8_t>& get_WorkIncompleteRawTD() const;
1052  ASPOSE_TASKS_SHARED_API const System::ArrayPtr<uint8_t>& get_WorkOverallocatedRawTD() const;
1053  ASPOSE_TASKS_SHARED_API const System::ArrayPtr<uint8_t>& get_WorkingExceptionsRaw() const;
1054  ASPOSE_TASKS_SHARED_API System::SharedPtr<TimeScaledParentWorkUnit> get_ScaledWorkComplete() const;
1055  ASPOSE_TASKS_SHARED_API void set_ScaledWorkComplete(const System::SharedPtr<TimeScaledParentWorkUnit>& value);
1056  ASPOSE_TASKS_SHARED_API System::SharedPtr<TimeScaledParentWorkUnit> get_ScaledWorkIncomplete() const;
1057  ASPOSE_TASKS_SHARED_API void set_ScaledWorkIncomplete(const System::SharedPtr<TimeScaledParentWorkUnit>& value);
1058  ASPOSE_TASKS_SHARED_API System::SharedPtr<TimeScaledParentWorkUnit> get_ScaledWorkOverallocated() const;
1059  ASPOSE_TASKS_SHARED_API const System::SharedPtr<Aspose::Tasks::TimeScaledExceptions>& get_TimeScaledExceptions() const;
1060  ASPOSE_TASKS_SHARED_API void set_TimeScaledExceptions(const System::SharedPtr<Aspose::Tasks::TimeScaledExceptions>& value);
1061  ASPOSE_TASKS_SHARED_API double get_PlannedValueNoCostUse() const;
1062  ASPOSE_TASKS_SHARED_API void set_PlannedValueNoCostUse(double value);
1063  ASPOSE_TASKS_SHARED_API bool get_IsCompleted();
1064  ASPOSE_TASKS_SHARED_API System::SharedPtr<Calendar> get_ResourceCalendar();
1065  ASPOSE_TASKS_SHARED_API bool get_IsTimephasedDataInitialized();
1066  ASPOSE_TASKS_SHARED_API bool get_IsWorkContourChanged() const;
1067  ASPOSE_TASKS_SHARED_API void set_IsWorkContourChanged(bool value);
1068 
1069  /// <summary>
1070  /// Initializes a new instance of the <see cref="ResourceAssignment"></see> class.
1071  /// </summary>
1072  ASPOSE_TASKS_SHARED_API ResourceAssignment(const System::SharedPtr<Project>& project);
1073 
1074  ASPOSE_TASKS_SHARED_API MEMBER_FUNCTION_MAKE_OBJECT_DECLARATION(ResourceAssignment, CODEPORTING_ARGS(const System::SharedPtr<Project>& project));
1075 
1076  /// <summary>
1077  /// Initializes a new instance of the <see cref="ResourceAssignment"></see> class.
1078  /// </summary>
1079  /// <param name="project">project</param>
1080  /// <param name="resource">resource</param>
1081  ASPOSE_TASKS_SHARED_API ResourceAssignment(const System::SharedPtr<Project>& project, const System::SharedPtr<Aspose::Tasks::Resource>& resource);
1082 
1083  ASPOSE_TASKS_SHARED_API MEMBER_FUNCTION_MAKE_OBJECT_DECLARATION(ResourceAssignment, CODEPORTING_ARGS(const System::SharedPtr<Project>& project, const System::SharedPtr<Aspose::Tasks::Resource>& resource));
1084 
1085  /// <summary>
1086  /// Initializes a new instance of the <see cref="ResourceAssignment"></see> class.
1087  /// </summary>
1088  /// <param name="task">task</param>
1089  /// <param name="resource">resource</param>
1090  ASPOSE_TASKS_SHARED_API ResourceAssignment(const System::SharedPtr<Aspose::Tasks::Task>& task, const System::SharedPtr<Aspose::Tasks::Resource>& resource);
1091 
1092  ASPOSE_TASKS_SHARED_API MEMBER_FUNCTION_MAKE_OBJECT_DECLARATION(ResourceAssignment, CODEPORTING_ARGS(const System::SharedPtr<Aspose::Tasks::Task>& task, const System::SharedPtr<Aspose::Tasks::Resource>& resource));
1093 
1094  /// <summary>
1095  /// Initializes a new instance of the <see cref="ResourceAssignment"></see> class.
1096  /// </summary>
1097  ASPOSE_TASKS_SHARED_API ResourceAssignment();
1098 
1099  ASPOSE_TASKS_SHARED_API MEMBER_FUNCTION_MAKE_OBJECT_DECLARATION(ResourceAssignment, CODEPORTING_ARGS());
1100  template <typename T>
1101  void SetDirectly(Key<T, AsnKey> key, T val)
1102  {
1103  this->container->template CheckPropAndSet<T>(key, val);
1104  }
1105 
1106  ASPOSE_TASKS_SHARED_API void SetMppTimephasedRawData(const System::ArrayPtr<uint8_t>& completeWorkRaw, const System::ArrayPtr<uint8_t>& remainingWorkRaw, const System::ArrayPtr<uint8_t>& overallocatedWorkRaw, const System::ArrayPtr<uint8_t>& workingExceptionRaw, const System::SharedPtr<TimeScaledParentWorkUnit>& scaledCompleteWork, const System::SharedPtr<TimeScaledParentWorkUnit>& scaledRemainingWork, const System::SharedPtr<TimeScaledParentWorkUnit>& scaledOverallocatedWork, const System::SharedPtr<Aspose::Tasks::TimeScaledExceptions>& scaledWorkingExceptions);
1107  ASPOSE_TASKS_SHARED_API System::SharedPtr<TimephasedDataCollection> GetTimephasedData(bool addBaselineTDs);
1108  ASPOSE_TASKS_SHARED_API void ResetTimephasedData();
1109  ASPOSE_TASKS_SHARED_API void SetWorkContourType(WorkContourType type);
1110  ASPOSE_TASKS_SHARED_API void SetTimephasedData(const System::SharedPtr<ResourceAssignmentTimephasedDataCollection>& list);
1111  /// <summary>
1112  /// Gets or sets an actual SplitParts without any side effect.
1113  /// </summary>
1114  /// <remarks>
1115  /// Use this method in case you do not want to save calculated SplitParts (as <see cref="SplitParts"></see> property does), so they can be calculated further.
1116  /// </remarks>
1117  ASPOSE_TASKS_SHARED_API System::SharedPtr<SplitPartCollection> GetCalculatedSplitParts();
1118  ASPOSE_TASKS_SHARED_API System::DateTime GetStartAddDelay(System::DateTime startDate);
1119  ASPOSE_TASKS_SHARED_API void SetStart();
1120  ASPOSE_TASKS_SHARED_API void SetFinish();
1121  ASPOSE_TASKS_SHARED_API System::String GetUnitsString();
1122  ASPOSE_TASKS_SHARED_API void SetCalendar(const System::SharedPtr<Project>& project);
1123  ASPOSE_TASKS_SHARED_API void MoveSplits(System::DateTime date);
1124  ASPOSE_TASKS_SHARED_API void CleanActualProperties();
1125  ASPOSE_TASKS_SHARED_API void SetBaseline(BaselineType baselineType);
1126  ASPOSE_TASKS_SHARED_API void RescheduleIncompleteWork(System::DateTime after);
1127  ASPOSE_TASKS_SHARED_API System::SharedPtr<System::Collections::Generic::List<System::SharedPtr<Aspose::Tasks::TimephasedData>>> GetSortedTimephasedData();
1128  ASPOSE_TASKS_SHARED_API Util::DateTimeInterval GetStartFinishOfTimephasedData();
1129  ASPOSE_TASKS_SHARED_API void GetCalendars(System::SharedPtr<Calendar>& taskCal, System::SharedPtr<Calendar>& rscCal);
1130  ASPOSE_TASKS_SHARED_API void AddAssignments();
1131  ASPOSE_TASKS_SHARED_API void CalculateTimephasedData(const System::SharedPtr<TimephasedDataCollection>& list, bool addBaselineTimephased);
1132  ASPOSE_TASKS_SHARED_API void RecalculateTimephasedData();
1133  ASPOSE_TASKS_SHARED_API Duration GetContouredRemainingWork();
1134  ASPOSE_TASKS_SHARED_API bool GetCalculatedValue(AsnKey key, System::SharedPtr<System::Object>& res) const;
1135  ASPOSE_TASKS_SHARED_API System::SharedPtr<TimeScaledParentWorkUnit> InferScaledWorkComplete();
1136  ASPOSE_TASKS_SHARED_API System::SharedPtr<TimeScaledParentWorkUnit> InferScaledWorkActual();
1137  ASPOSE_TASKS_SHARED_API System::SharedPtr<TimeScaledParentWorkUnit> InferScaledWorkRemaining();
1138  ASPOSE_TASKS_SHARED_API System::SharedPtr<TimeScaledParentWorkUnit> InferScaledWork(TimephasedDataType timephasedDataType);
1139  ASPOSE_TASKS_SHARED_API System::SharedPtr<TimeScaledParentWorkUnit> InferScaledWork(Util::ConditionDelegate<System::SharedPtr<Aspose::Tasks::TimephasedData>> timephasedDataCondition);
1140  ASPOSE_TASKS_SHARED_API void SetSplitsFinish(System::DateTime finish);
1141  ASPOSE_TASKS_SHARED_API Duration GetWork();
1142  ASPOSE_TASKS_SHARED_API double GetMeanLoad();
1143  ASPOSE_TASKS_SHARED_API System::SharedPtr<TimeScaledWorkUnit> GetMeanUnit();
1144  ASPOSE_TASKS_SHARED_API void AddImplicitWorkingTimeException(System::DateTime date, const System::SharedPtr<WorkingTimeCollection>& workingTimes);
1145  ASPOSE_TASKS_SHARED_API void RemoveImplicitWorkingTimeException(System::DateTime date);
1146  ASPOSE_TASKS_SHARED_API bool SetCalculatedValue(AsnKey keyType, const System::SharedPtr<System::Object>& v);
1147  /// <summary>
1148  /// Makes work time phased data from TimeScaledWorkUnit.
1149  /// </summary>
1150  /// <param name="unit">TimeScaledWorkUnit to make time phased data from.</param>
1151  /// <param name="type">Type of time phased data.</param>
1152  /// <param name="outputList">List to emit TimephasedData</param>
1153  ASPOSE_TASKS_SHARED_API void MakeWorkTPs(System::SharedPtr<TimeScaledParentWorkUnit> unit, TimephasedDataType type, System::SharedPtr<System::Collections::Generic::List<System::SharedPtr<Aspose::Tasks::TimephasedData>>> outputList);
1154 
1155  virtual ASPOSE_TASKS_SHARED_API ~ResourceAssignment();
1156 
1157  #ifdef ASPOSE_GET_SHARED_MEMBERS
1158  ASPOSE_TASKS_SHARED_API void GetSharedMembers(System::Object::shared_members_type& result) const override;
1159  #endif
1160 
1161 
1162 private:
1163 
1164  System::SharedPtr<PropertyContainer<AsnKey>> container;
1165  System::SharedPtr<TimephasedDataCollection> timephasedData;
1166  System::SharedPtr<Calendar> assignmentCalendar;
1167  System::SharedPtr<SplitPartCollection> splitParts;
1168  System::SharedPtr<Rate> currentRate;
1169  System::SharedPtr<AssignmentBaselineCollection> baselines;
1170  System::SharedPtr<ExtendedAttributeCollection> extendedAttributes;
1171  System::SharedPtr<TimeScaledParentWorkUnit> scaledWorkComplete;
1172  System::SharedPtr<TimeScaledParentWorkUnit> scaledWorkIncomplete;
1173  System::SharedPtr<TimeScaledParentWorkUnit> scaledWorkOverallocated;
1174  System::WeakPtr<Aspose::Tasks::Task> pr_Task;
1175  System::WeakPtr<Aspose::Tasks::Resource> pr_Resource;
1176  System::Nullable<System::Guid> pr_Guid;
1177  System::WeakPtr<Project> pr_ParentProject;
1178 
1179  ASPOSE_TASKS_SHARED_API bool get_HasChildren() override;
1180  ASPOSE_TASKS_SHARED_API System::SharedPtr<System::Collections::Generic::IEnumerable<System::SharedPtr<IExtendedAttributeParent>>> get_Items() override;
1181 
1182  bool pr_IsShared;
1183  System::Guid pr_TempGuid;
1184  System::ArrayPtr<uint8_t> pr_WorkCompleteRawTD;
1185 
1186  ASPOSE_TASKS_SHARED_API void set_WorkCompleteRawTD(const System::ArrayPtr<uint8_t>& value);
1187 
1188  System::ArrayPtr<uint8_t> pr_WorkIncompleteRawTD;
1189 
1190  ASPOSE_TASKS_SHARED_API void set_WorkIncompleteRawTD(const System::ArrayPtr<uint8_t>& value);
1191 
1192  System::ArrayPtr<uint8_t> pr_WorkOverallocatedRawTD;
1193 
1194  ASPOSE_TASKS_SHARED_API void set_WorkOverallocatedRawTD(const System::ArrayPtr<uint8_t>& value);
1195 
1196  System::ArrayPtr<uint8_t> pr_WorkingExceptionsRaw;
1197 
1198  ASPOSE_TASKS_SHARED_API void set_WorkingExceptionsRaw(const System::ArrayPtr<uint8_t>& value);
1199  ASPOSE_TASKS_SHARED_API void set_ScaledWorkOverallocated(const System::SharedPtr<TimeScaledParentWorkUnit>& value);
1200 
1201  System::SharedPtr<Aspose::Tasks::TimeScaledExceptions> pr_TimeScaledExceptions;
1202  double pr_PlannedValueNoCostUse;
1203  bool pr_IsWorkContourChanged;
1204 
1205  System::String get_DebuggerDisplay();
1206 
1207  bool HasMppTimephased();
1208  System::SharedPtr<TimeScaledParentWorkUnit> InferScaledWork(const System::SharedPtr<System::Collections::Generic::IList<System::SharedPtr<Aspose::Tasks::TimephasedData>>>& tds);
1209  System::SharedPtr<Calendar> TryToInheritCalendarFromTask();
1210  System::SharedPtr<Calendar> TryToInheritCalendarFromResource(const System::SharedPtr<Project>& project);
1211  void MakeTimephasedData(const System::SharedPtr<TimeScaledParentWorkUnit>& unit, System::DateTime start, System::DateTime end, ResourceAssignment::TimephasedMaker maker, TimephasedDataType type, const System::SharedPtr<System::Collections::Generic::List<System::SharedPtr<Aspose::Tasks::TimephasedData>>>& outputList);
1212  /// <summary>
1213  /// Makes cost time phased data from TimeScaledCostUnit.
1214  /// </summary>
1215  /// <param name="unit">The unit to make time phased data from.</param>
1216  /// <param name="type">The type of time phased data.</param>
1217  /// <param name="outputList">The output TD items.</param>
1218  void MakeCostTPs(System::SharedPtr<TimeScaledParentWorkUnit> unit, TimephasedDataType type, System::SharedPtr<System::Collections::Generic::List<System::SharedPtr<Aspose::Tasks::TimephasedData>>> outputList);
1219  void MakeTimephasedDataFromMpp(const System::SharedPtr<TimephasedDataCollection>& td);
1220  void MakeTimephasedDataFromXml(const System::SharedPtr<TimephasedDataCollection>& td);
1221  void AddBaselineTimephasedData(const System::SharedPtr<TimephasedDataCollection>& td);
1222  void UpdateWorkTD(const System::SharedPtr<System::Collections::Generic::IEnumerable<System::SharedPtr<Aspose::Tasks::TimephasedData>>>& complete, const System::SharedPtr<System::Collections::Generic::IEnumerable<System::SharedPtr<Aspose::Tasks::TimephasedData>>>& overtimeComplete);
1223  void MakeWorkTPs(System::DateTime start, System::TimeSpan time, System::TimeSpan workTime, System::SharedPtr<Calendar> calendar, TimephasedDataType type, bool isLast, System::SharedPtr<System::Collections::Generic::List<System::SharedPtr<Aspose::Tasks::TimephasedData>>> resultingList, System::Nullable<System::DateTime> nextUnitStart);
1224  void MakeCostTPs(System::DateTime start, System::TimeSpan time, System::TimeSpan workTime, System::SharedPtr<Calendar> calendar, double units, TimephasedDataType type, System::Decimal rate, System::SharedPtr<System::Collections::Generic::List<System::SharedPtr<Aspose::Tasks::TimephasedData>>> outputList);
1225  System::SharedPtr<SplitPartCollection> CalculateSplitParts();
1226  System::SharedPtr<System::Collections::Generic::IList<System::SharedPtr<Aspose::Tasks::TimephasedData>>> GenerateTimephased(System::DateTime start, System::DateTime end, TimephasedDataType timephasedType);
1227  Duration GetRemainingWork();
1228  Duration GetActualWork();
1229  void GenerateTimephasedFromWorkUnit(System::DateTime start, System::DateTime end, TimephasedDataType timephasedType, System::SharedPtr<System::Collections::Generic::List<System::SharedPtr<Aspose::Tasks::TimephasedData>>> outputList);
1230  System::SharedPtr<System::Collections::Generic::List<System::SharedPtr<Aspose::Tasks::TimephasedData>>> FilterTimephasedData(const System::SharedPtr<TimephasedDataCollection>& timephasedData, System::DateTime startDate, System::DateTime endDate, TimephasedDataType type);
1231  void SetBaselineValues(const System::SharedPtr<AssignmentBaseline>& bl);
1232  void SetBaselineTimephased(const System::SharedPtr<AssignmentBaseline>& bl);
1233  void TimephasedDataChanged(const System::SharedPtr<System::Object>& sender, const System::SharedPtr<System::EventArgs>& e);
1234  System::SharedPtr<Calendar> WrapCalendarIfNecessary(const System::SharedPtr<Calendar>& calendar);
1235 
1236 };
1237 
1238 } // namespace Tasks
1239 } // namespace Aspose
1240 
1241 
Represents Baseline of a resource assignment.
Definition: AssignmentBaseline.h:84
Represents duration in a project.
Definition: Duration.h:163
Represents a property key of a class of the specified type. An instance of this class is used when ge...
Definition: Key.h:76
K get_KeyType() const
Gets the key of the property.
Definition: Key.h:119
Represents a project.
Definition: Project.h:551
Represents a collection of ResourceAssignment objects.
Definition: ResourceAssignmentCollection.h:102
Represents a resource assignment in a project.
Definition: ResourceAssignment.h:219
int32_t get_PercentWorkComplete()
Gets a value of PercentWorkComplete.
double get_CostVariance()
Gets a value of CostVariance.
void set_PeakUnits(double value)
Sets a value of PeakUnits.
void set_Overallocated(bool value)
Sets a value indicating whether Overallocated is set or not.
bool get_Confirmed()
Gets a value indicating whether Confirmed is set or not.
double get_ACWP()
Gets a value of ACWP.
void set_FixedMaterial(bool value)
Sets a value indicating whether FixedMaterial is set or not.
void set_RegularWork(Duration value)
Sets a value of RegularWork.
System::Nullable< System::Guid > get_Guid() const
Gets unique identifier for this assignment.
Duration get_LevelingDelay()
Gets a value of LevelingDelay.
void set_FinishVariance(Duration value)
Sets a value of FinishVariance.
bool get_Milestone()
Gets a value indicating whether Milestone is set or not.
System::DateTime get_Start()
Gets a value of Start.
void set_ActualFinish(System::DateTime value)
Sets a value of ActualFinish.
void set_ResponsePending(bool value)
Sets a value indicating whether ResponsePending is set or not.
double get_PeakUnits()
Gets a value of PeakUnits.
void SetMaterialResourceUnits(double units, RateScaleType rateScaleType)
Sets units for assignment of a material resource with variable material consumption....
void set_ActualStart(System::DateTime value)
Sets a value of ActualStart.
void set_ExtendedAttributes(const System::SharedPtr< ExtendedAttributeCollection > &value)
Sets an instance of the ExtendedAttributeCollection class for this object.
bool get_LinkedFields()
Gets a value indicating whether LinkedFields is set or not.
void set_SV(double value)
Sets a value of SV.
System::Decimal get_Cost()
Gets a value of Cost.
Duration get_RemainingOvertimeWork()
Gets a value of RemainingOvertimeWork.
void set_Task(const System::SharedPtr< Aspose::Tasks::Task > &value)
The task to which a resource is assigned.
void set_Start(System::DateTime value)
Sets a value of Start.
bool get_UpdateNeeded()
Gets a value indicating whether UpdateNeeded is set or not.
Duration get_ActualOvertimeWork()
Gets a value of ActualOvertimeWork.
Duration get_Work()
Gets a value of Work.
double get_SV()
Gets a value of SV.
void set_PercentWorkComplete(int32_t value)
Sets a value of PercentWorkComplete.
Duration get_ActualWork()
Gets a value of ActualWork.
void set_BookingType(Aspose::Tasks::BookingType value)
Sets a value of BookingType.
void set_BCWS(double value)
Sets a value of BCWS.
bool get_Overallocated()
Gets a value indicating whether Overallocated is set or not.
void set_RemainingOvertimeWork(Duration value)
Sets a value of RemainingOvertimeWork.
void set_Stop(System::DateTime value)
Sets a value of Stop.
WorkContourType get_WorkContour()
Gets a value of WorkContour.
System::String get_AssignmentOwnerGuid()
Gets a value of AssignmentOwnerGuid.
bool get_HasFixedRateUnits()
Gets a value indicating whether HasFixedRateUnits is set or not.
System::String get_HyperlinkAddress() override
Gets a value of HyperlinkAddress.
Duration get_ActualWorkProtected()
Gets a value of ActualWorkProtected.
void set_AssignmentOwner(const System::String &value)
Sets a value of AssignmentOwner.
bool get_Summary()
Gets a value indicating whether Summary is set or not.
void set_VAC(double value)
Sets a value of VAC.
void set_Resume(System::DateTime value)
Sets a value of Resume.
System::DateTime get_ActualStart()
Gets a value of ActualStart.
System::SharedPtr< TimephasedDataCollection > GetTimephasedData(System::DateTime start, System::DateTime end)
Returns TimephasedDataCollection object with the instances of TimephasedData class within given start...
int32_t GetHashCode() const override
Returns a hash code value for the instance of the ResourceAssignment class.
void set_Units(double value)
Sets a value of Units.
System::SharedPtr< AssignmentBaselineCollection > get_Baselines()
Gets AssignmentBaselineCollection object. The collection of baseline values associated with an assign...
void set_Confirmed(bool value)
Sets a value indicating whether Confirmed is set or not.
bool get_ResponsePending()
Gets a value indicating whether ResponsePending is set or not.
void set_Resource(const System::SharedPtr< Aspose::Tasks::Resource > &value)
The resource assigned to a task.
void set_Milestone(bool value)
Sets a value indicating whether Milestone is set or not.
void set_CostRateTableType(RateType value)
Sets a value of CostRateTableType.
void set_Uid(int32_t value)
Sets a value of Uid.
void set_LinkedFields(bool value)
Sets a value indicating whether LinkedFields is set or not.
void set_RemainingOvertimeCost(System::Decimal value)
Sets a value of RemainingOvertimeCost.
System::Decimal get_RemainingOvertimeCost()
Gets a value of RemainingOvertimeCost.
Duration get_Delay()
Gets a value of Delay.
Duration get_StartVariance()
Gets a value of StartVariance.
double get_CV()
Gets a value of CV.
void SplitTask(System::DateTime start, System::DateTime finish, const System::SharedPtr< Calendar > &calendar)
Splits task into two parts.
void set_ActualOvertimeCost(System::Decimal value)
Sets a value of ActualOvertimeCost.
void set_WorkContour(WorkContourType value)
Sets a value of WorkContour.
void set_Guid(System::Nullable< System::Guid > value)
Sets unique identifier for this assignment.
T Get(const Key< T, AsnKey > &key) const
Returns the value to which the property is mapped in this container.
Definition: ResourceAssignment.h:864
bool Equals(System::SharedPtr< ResourceAssignment > other) override
Returns a value indicating whether this instance is equal to a specified instance of the ResourceAssi...
Duration get_RegularWork()
Gets a value of RegularWork.
System::TimeSpan GetTimephasedWork(System::DateTime start, System::DateTime end, TimephasedDataType timephasedDataType)
Gets amount of timephased work for the specified date time interval.
Duration get_ActualOvertimeWorkProtected()
Gets a value of ActualOvertimeWorkProtected.
int32_t get_Uid()
Gets a value of Uid.
void set_Hyperlink(System::String value) override
Sets a value of Hyperlink.
System::SharedPtr< TimephasedDataCollection > GetTimephasedData(System::DateTime start, System::DateTime end, TimephasedDataType timephasedType)
Returns the instance TimephasedDataCollection class containing instances of TimephasedData class with...
System::TimeSpan GetTimephasedWork(System::DateTime start, System::DateTime end)
Gets amount of timephased work for the specified date time interval.
void set_UpdateNeeded(bool value)
Sets a value indicating whether UpdateNeeded is set or not.
System::Decimal get_RemainingCost()
Gets a value of RemainingCost.
System::String get_NotesText() override
Gets notes' plain text extracted from RTF data.
void set_Finish(System::DateTime value)
Sets a value of Finish.
void set_WorkVariance(Duration value)
Sets a value of WorkVariance.
void set_CV(double value)
Sets a value of CV.
double get_BCWP()
Gets a value of BCWP.
System::Decimal get_BudgetCost()
Gets a value of BudgetCost.
void set_CostVariance(double value)
Sets a value of CostVariance.
System::DateTime get_Created()
Gets a value of Created.
void set_HasFixedRateUnits(bool value)
Sets a value indicating whether HasFixedRateUnits is set or not.
void set_NotesText(System::String value) override
Sets notes' plain text extracted from RTF data.
Duration get_FinishVariance()
Gets a value of FinishVariance.
void set_BudgetCost(System::Decimal value)
Sets a value of BudgetCost.
bool Equals(System::SharedPtr< System::Object > obj) override
Returns a value indicating whether this instance is equal to a specified object.
Aspose::Tasks::BookingType get_BookingType()
Gets a value of BookingType.
bool get_FixedMaterial()
Gets a value indicating whether FixedMaterial is set or not.
System::Decimal get_ActualOvertimeCost()
Gets a value of ActualOvertimeCost.
void set_ActualOvertimeWorkProtected(Duration value)
Sets a value of ActualOvertimeWorkProtected.
double get_BCWS()
Gets a value of BCWS.
System::SharedPtr< ExtendedAttributeCollection > get_ExtendedAttributes() override
Gets an instance of the ExtendedAttributeCollection class for this object.
void set_Cost(System::Decimal value)
Sets a value of Cost.
void set_Work(Duration value)
Sets a value of Work.
void Delete()
Deletes resource assignment from project assignments collection.
System::DateTime get_Resume()
Gets a value of Resume.
void set_Created(System::DateTime value)
Sets a value of Created.
void set_RemainingCost(System::Decimal value)
Sets a value of RemainingCost.
void set_NotesRTF(System::String value) override
Sets the text notes in RTF format.
System::String get_HyperlinkSubAddress() override
Gets a value of HyperlinkSubAddress.
double get_Units()
Gets a value of Units.
System::DateTime get_Finish()
Gets a value of Finish.
System::DateTime MakeTPs(System::DateTime start, System::TimeSpan time, const System::SharedPtr< Calendar > &calendar, const System::SharedPtr< System::Collections::Generic::List< System::SharedPtr< Aspose::Tasks::TimephasedData >>> &list, bool isWorking, int32_t type)
Generates a list of time phased data.
void set_AssignmentOwnerGuid(const System::String &value)
Sets a value of AssignmentOwnerGuid.
System::DateTime get_Stop()
Gets a value of Stop.
System::SharedPtr< TimephasedDataCollection > get_TimephasedData()
Gets the instance of TimephasedDataCollection class containing elements of TimephasedData class.
void set_Summary(bool value)
Sets a value indicating whether Summary is set or not.
void set_HyperlinkAddress(System::String value) override
Sets a value of HyperlinkAddress.
System::Decimal get_ActualCost()
Gets a value of ActualCost.
void set_HyperlinkSubAddress(System::String value) override
Sets a value of HyperlinkSubAddress.
void set_ACWP(double value)
Sets a value of ACWP.
void set_BudgetWork(Duration value)
Sets a value of BudgetWork.
void set_ActualWork(Duration value)
Sets a value of ActualWork.
Duration get_OvertimeWork()
Gets a value of OvertimeWork.
void set_LevelingDelay(Duration value)
Sets a value of LevelingDelay.
const System::SharedPtr< Project > & get_ParentProject() const override
Gets parent project for this assignment.
void set_StartVariance(Duration value)
Sets a value of StartVariance.
void TimephasedDataFromTaskDuration(const System::SharedPtr< Calendar > &calendar)
Generates list of time phased data based on the task duration and the scheduled start date.
Duration get_WorkVariance()
Gets a value of WorkVariance.
System::DateTime get_ActualFinish()
Gets a value of ActualFinish.
System::String ToString() const override
Returns short string representation of the instance of the ResourceAssignment class....
void set_ActualOvertimeWork(Duration value)
Sets a value of ActualOvertimeWork.
void set_BCWP(double value)
Sets a value of BCWP.
void set_ActualWorkProtected(Duration value)
Sets a value of ActualWorkProtected.
void set_OvertimeWork(Duration value)
Sets a value of OvertimeWork.
void set_TimephasedData(const System::SharedPtr< TimephasedDataCollection > &value)
Sets the instance of TimephasedDataCollection class containing elements of TimephasedData class.
Duration get_RemainingWork()
Gets a value of RemainingWork.
const System::SharedPtr< Aspose::Tasks::Resource > & get_Resource() const
The resource assigned to a task.
void set_OvertimeCost(System::Decimal value)
Sets a value of OvertimeCost.
System::String get_Hyperlink() override
Gets a value of Hyperlink.
void Set(const Key< T, AsnKey > &key, const T &val)
Maps the specified property to the specified value in this container.
Definition: ResourceAssignment.h:891
System::String get_NotesRTF() override
Gets the text notes in RTF format.
System::Decimal get_OvertimeCost()
Gets a value of OvertimeCost.
void set_Delay(Duration value)
Sets a value of Delay.
Duration get_BudgetWork()
Gets a value of BudgetWork.
RateScaleType get_RateScale()
Gets a value of RateScale.
const System::SharedPtr< Aspose::Tasks::Task > & get_Task() const
The task to which a resource is assigned.
RateType get_CostRateTableType()
Gets a value of CostRateTableType.
System::String get_AssignmentOwner()
Gets a value of AssignmentOwner.
void set_ActualCost(System::Decimal value)
Sets a value of ActualCost.
double get_VAC()
Gets a value of VAC.
void set_RateScale(RateScaleType value)
Sets a value of RateScale.
void set_RemainingWork(Duration value)
Sets a value of RemainingWork.
Represents a collection of TaskBaseline objects.
Definition: TaskBaselineCollection.h:100
Represents a task in a project.
Definition: Task.h:383
Definition: Asn.h:13