Властивості календаря
Властивості фінансового року
Фіскальний рік такий же, як фінансовий рік або бюджетний рік. Саме дати між ними країною, організацією чи особою розраховують бюджети та податки. Microsoft Project дозволяє користувачам визначати фінансовий рік для проектів. Aspose.Tasks для C ++ підтримує цю функціональність з властивостями, які дозволяють розробникам як читати властивості фінансового року від існуючих проектів, так і встановлювати властивості фінансового року під час створення або роботи з проектами.
Клас PRJ розкриває властивості fystartdate та fiscalyearstart, що використовуються для управління фінансовим роком для проекту:
Fystartdate: Визначте місяць початку фінансового року та підтримує одне із значень, визначених за місяцем.
FISCALYEARSTART: Визначає, чи застосовувалася нумерація фінансового року в проекті. Булева.
Reading Fiscal Year Properties
The FyStartDate and FiscalYearStart properties make it easy to find out what the current fiscal year start date is, and whether fiscal year numbering is used, with Aspose.Tasks.
The code example given below demonstrates how to read a project’s fiscal year properties and displays them in a console window.
1// The path to the documents directory.
2System::String dataDir = RunExamples::GetDataDir(System::Reflection::MethodBase::GetCurrentMethod(ASPOSE_CURRENT_FUNCTION)->get_DeclaringType().get_FullName());
3
4// Create a project instance
5System::SharedPtr<Project> project = System::MakeObject<Project>(dataDir + u"ReadFiscalYearProperties.mpp");
6
7// Display fiscal year properties
8System::Console::WriteLine(System::String(u"Fiscal Year Start Date : ") + System::ObjectExt::ToString(project->Get<Month>(Prj::FyStartDate())));
9System::Console::WriteLine(System::String(u"Fiscal Year Numbering : ") + System::ObjectExt::ToString(project->Get<NullableBool>(Prj::FiscalYearStart())));
Writing Fiscal Year Properties
To see fiscal year properties in Microsoft Project:
Open a project file.
On the Tools menu, click Options.
Click the Calendar tab. It will look like the one shown below.
The code example given below demonstrates how to write the fiscal year properties of the project.
1// The path to the documents directory.
2System::String dataDir = RunExamples::GetDataDir(System::Reflection::MethodBase::GetCurrentMethod(ASPOSE_CURRENT_FUNCTION)->get_DeclaringType().get_FullName());
3
4// Create a project instance
5System::SharedPtr<Project> project = System::MakeObject<Project>(dataDir + u"WriteFiscalYearProperties.mpp");
6
7// Set fiscal year properties
8project->Set<Month>(Prj::FyStartDate(), Aspose::Tasks::Month::July);
9project->Set<NullableBool>(Prj::FiscalYearStart(), NullableBool::to_NullableBool(true));
10project->Save(dataDir + u"WriteFiscalYearProperties_out.mpp", Aspose::Tasks::Saving::SaveFileFormat::MPP);
Weekday Properties
Microsoft Project lets users set a number of different weekday properties. For example, what day a week starts on and how many working days are in a month. Aspose.Tasks for C++ support these features through a number of properties that can be used both to read weekday properties and to write them to a project.
Aspose.Tasks for C++ has a series of properties, exposed by the Prj class, specifically for managing a project’s weekday properties:
WeekStartDay: the first day of the week. This property takes values defined by the DayType enumeration.
DaysPerMonth: the number of working days in a month, passed as an integer.
MinutesPerDay: the number of working minutes in a working day, passed as an integer.
MinutesPerWeek: the number of working minutes in a working week, passed as an integer.
Reading Weekday Properties
The code example given below demonstrates how to read a project’s weekday properties and writes them to a console window.
1// The path to the documents directory.
2System::String dataDir = RunExamples::GetDataDir(System::Reflection::MethodBase::GetCurrentMethod(ASPOSE_CURRENT_FUNCTION)->get_DeclaringType().get_FullName());
3
4// Create project instance
5System::SharedPtr<Project> project = System::MakeObject<Project>(dataDir + u"ReadWeekdayProperties.mpp");
6
7// Display week days properties
8System::Console::WriteLine(System::String(u"Week Start Date : ") + System::ObjectExt::ToString(project->Get<DayType>(Prj::WeekStartDay())));
9System::Console::WriteLine(System::String(u"Days Per Month : ") + System::Convert::ToString(project->Get<int32_t>(Prj::DaysPerMonth())));
10System::Console::WriteLine(System::String(u"Minutes Per Day : ") + System::Convert::ToString(project->Get<int32_t>(Prj::MinutesPerDay())));
11System::Console::WriteLine(System::String(u"Minutes Per Week : ") + System::Convert::ToString(project->Get<int32_t>(Prj::MinutesPerWeek())));
Writing Weekday Properties
To see weekday properties in Microsoft Project:
Open a file.
On the Tools menu, click Options.
Select the Calendar tab. It will look something like the example below.
Viewing weekday properties in Microsoft Project
The code example given below demonstrates how to write weekday properties, as shown in the screenshot above, to a project.
1// The path to the documents directory.
2System::String dataDir = RunExamples::GetDataDir(System::Reflection::MethodBase::GetCurrentMethod(ASPOSE_CURRENT_FUNCTION)->get_DeclaringType().get_FullName());
3
4// Create a project instance
5System::SharedPtr<Project> project = System::MakeObject<Project>(dataDir + u"WriteWeekdayProperties.mpp");
6
7// Set week days properties
8project->Set<DayType>(Prj::WeekStartDay(), Aspose::Tasks::DayType::Monday);
9project->Set<int32_t>(Prj::DaysPerMonth(), 24);
10project->Set<int32_t>(Prj::MinutesPerDay(), 540);
11project->Set<int32_t>(Prj::MinutesPerWeek(), 3240);
12project->Save(dataDir + u"WriteWeekdayProperties_out.xml", Aspose::Tasks::Saving::SaveFileFormat::XML);