Browse our Products

Aspose.Tasks for C++ 20.11 Release Notes

Windows x86 architecture support

Since version 20.11, the release also includes a library built using MSVS for the x86 platform. From now, it is possible to build projects based on x86 architecture using Aspose.Tasks for C++.

All Changes

KeySummaryIssue Type
TASKSNET-4520Add support for “Clear” operation for project’s OleObjects collectionEnhancement
TASKSNET-4497Refactor API for CalendarExceptionsEnhancement
TASKSNET-4444Add an API for getting a count of consumed bytes \ credits when Metered license is usedEnhancement
TASKSNET-3896Add API for saving more than 1 page to MemoryStreamEnhancement
TASKSNET-3895Implement writing of displayed time units for assignment’s Duration* extended attributesEnhancement
TASKSNET-3854Enhance reading of dates in evaluation modeEnhancement
TASKSNET-4506Fix missing embedded OLE image in resaved projectBug
TASKSNET-4499Fix incorrect TimephasedData.Uid in TimephasedData items returned by task.GetTimephasedData() methodBug
TASKSNET-4485Fix adding of CalendarException broke .mpp fileBug
TASKSNET-4439Fix invalid order of null tasks after project’s recalculationBug
TASKSNET-3723Fix absent TDs for cost resourcesBug

Public API and Backwards Incompatible Changes

The following behavior was changed:

Days on which calendar exceptions are effective are no longer added to calendar.WeekDays collection.

Consider a project with a calendar in which at least one calendar exception is defined:

auto project = System::MakeObject<Project>(System::String(u"CalendarWithExceptions.mpp"));
auto calendar = project->get_Calendars->GetByUid(1);

Before ver. 20.11: days on which the exceptions were effective were added to calendar.WeekDays collection (with DayType ‘Exception’) along with the “regular” WeekDays.

After ver. 20.11 (including ver. 20.11): calendar.WeekDays contain only “regular” WeekDays. You can use CalendarException.GetExceptionDates() method in order to determine on which days the given calendar exception is effective.

auto project = System::MakeObject<Project>(System::String(u"CalendarWithExceptions.mpp"));
auto calendar = project->get_Calendars()->GetByUid(1);
auto calendarException= calendar->get_Exceptions()->idx_get(0);

for (auto date : System::IterateOver(calendarException->GetExceptionDates()))
  std::cout << date << std::endl;
The following public types were added:Description
Aspose.Tasks.Saving.IPageSavingCallbackRepresents a callback that is called when each page in multi page document is saved to a separate stream.
Aspose.Tasks.Saving.PageSavingArgsThis class represents set of data that related to saving of a document’s page to a stream.
Aspose.Tasks.Util.TreeAlgorithmBase<T>A base class for implementations of <see cref=“T:Aspose.Tasks.Util.ITreeAlgorithm<T>
The following public types were deleted:Description
The following public methods and properties were added:Description
Aspose.Tasks.AssignmentBaseline.#ctorInitializes a new instance of the class.
Aspose.Tasks.Baseline.#ctorInitializes a new instance of the class.
Aspose.Tasks.CalendarException.GetExceptionDatesReturns dates on which the calendar exception is applicable.
Aspose.Tasks.Metered.GetConsumptionCreditGets consumption credit.
Aspose.Tasks.Metered.GetConsumptionQuantityGets consumption file size.
Aspose.Tasks.OleObjectCollection.ClearClears the collection. In order to persist these changes project.Save should be called with ’new MPPSaveOptions { WriteViewData = true }’ argument.
Aspose.Tasks.Project.GetDuration(System.TimeSpan,Aspose.Tasks.TimeUnitType)Gets object with the specified value and specified value.
Aspose.Tasks.Saving.HtmlSaveOptions.PageSavingCallbackGets or sets a user-defined callback which is used to get an output stream for each rendered page.
Aspose.Tasks.Saving.IPageSavingCallback.PageSaving(Aspose.Tasks.Saving.PageSavingArgs)The method to be called when a page is saved to a stream.
Aspose.Tasks.Saving.IPageSavingCallback.OnFinishMethod which will be called when all pages are written.
Aspose.Tasks.Saving.ImageSaveOptions.PageSavingCallbackGets or sets a user-defined callback which is used to get an output stream for each rendered page.
Aspose.Tasks.Saving.PageSavingArgs.PageNumberGets a number of page to be written.
Aspose.Tasks.Saving.PageSavingArgs.KeepStreamOpenGets or sets a value indicating whether rendering routine should keep opened after a page is written.
Aspose.Tasks.Saving.PageSavingArgs.StreamGets or sets a stream for writing a page.
Aspose.Tasks.Saving.PdfSaveOptions.PageSavingCallbackGets or sets a user-defined callback which is used to get an output stream for each rendered page.
Aspose.Tasks.Saving.SvgOptions.PageSavingCallbackGets or sets a user-defined implementation callback which is used to get an output stream for each rendered page.
Aspose.Tasks.TaskBaseline.#ctor(Aspose.Tasks.Task)Initializes a new instance of the class.
The following public methods and properties were deleted:Description