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