System::String dataDir = RunExamples::GetDataDir(System::Reflection::MethodBase::GetCurrentMethod(ASPOSE_CURRENT_FUNCTION)->get_DeclaringType().get_FullName()); System::SharedPtr project = System::MakeObject(dataDir + u"project.mpp"); // Define outline code and its outline mask System::SharedPtr code1 = System::MakeObject(); code1->set_Alias(u"New task outline code1"); code1->set_FieldId(System::Convert::ToString(((int32_t)Aspose::Tasks::ExtendedAttributeTask::OutlineCode1))); code1->set_FieldName(u"Outline Code1"); System::SharedPtr mask = System::MakeObject(); mask->set_Separator(u"+"); mask->set_Level(1); mask->set_Type(Aspose::Tasks::MaskType::Numbers); code1->get_Masks()->Add(mask); // Add outline value System::SharedPtr value = System::MakeObject(); value->set_Description(u"Value description"); value->set_ValueId(1); value->set_Value(u"123456"); value->set_Type(Aspose::Tasks::OutlineValueType::Number); code1->get_Values()->Add(value); // Add outline code to project project->get_OutlineCodes()->Add(code1); // Define outline code and its outline mask System::SharedPtr code2 = System::MakeObject(); code2->set_Alias(u"New rsc outline code2"); code2->set_FieldId(System::Convert::ToString(((int32_t)Aspose::Tasks::ExtendedAttributeResource::OutlineCode2))); code2->set_FieldName(u"Outline Code2"); System::SharedPtr mask2 = System::MakeObject(); mask2->set_Separator(u"/"); mask2->set_Level(1); mask2->set_Type(Aspose::Tasks::MaskType::Numbers); code2->get_Masks()->Add(mask2); // Add outline value System::SharedPtr value2 = System::MakeObject(); value2->set_Description(u"Value2 description"); value2->set_ValueId(2); value2->set_Value(u"987654"); value2->set_Type(Aspose::Tasks::OutlineValueType::Number); code2->get_Values()->Add(value2); // Add outline code to project project->get_OutlineCodes()->Add(code2); // Save project as MPP project->Save(dataDir + u"Updated_project_out.mpp", Aspose::Tasks::Saving::SaveFileFormat::MPP);