개요 코드 정의 및 값을 업데이트하십시오
Contents
[
Hide
Show
]Aspose.Tasks for C ++ API는 기존 Microsoft Project MPP 파일에 새로운 개요 코드 속성을 추가하고 다시 저장할 수있는 시설을 제공합니다.
개요 코드 정의 및 값 업데이트
다음 코드 샘플은 새로운 개요 코드를 정의하고 다양한 필드를 설정합니다. 그런 다음 윤곽선 코드 및 값이 프로젝트 개요 코드에 추가되고 업데이트 된 데이터는 MPP 파일에 다시 저장됩니다. 이 활동과 관련된 단계는 다음과 같습니다.
- 프로젝트 리더 인스턴스를 만듭니다.
- 소스 MPP 파일을 읽으십시오.
- 새 개요 value 객체를 정의하고 매개 변수를 설정하십시오.
- 프로젝트 코드에 개요 코드를 추가하십시오.
- 업데이트 된 프로젝트 데이터를 MPP 파일로 다시 저장하십시오.
1System::String dataDir = RunExamples::GetDataDir(System::Reflection::MethodBase::GetCurrentMethod(ASPOSE_CURRENT_FUNCTION)->get_DeclaringType().get_FullName());
2System::SharedPtr<Project> project = System::MakeObject<Project>(dataDir + u"project.mpp");
3
4// Define outline code and its outline mask
5System::SharedPtr<OutlineCodeDefinition> code1 = System::MakeObject<OutlineCodeDefinition>();
6code1->set_Alias(u"New task outline code1");
7code1->set_FieldId(System::Convert::ToString(((int32_t)Aspose::Tasks::ExtendedAttributeTask::OutlineCode1)));
8code1->set_FieldName(u"Outline Code1");
9System::SharedPtr<OutlineMask> mask = System::MakeObject<OutlineMask>();
10mask->set_Separator(u"+");
11mask->set_Level(1);
12mask->set_Type(Aspose::Tasks::MaskType::Numbers);
13code1->get_Masks()->Add(mask);
14
15// Add outline value
16System::SharedPtr<OutlineValue> value = System::MakeObject<OutlineValue>();
17value->set_Description(u"Value description");
18value->set_ValueId(1);
19value->set_Value(u"123456");
20value->set_Type(Aspose::Tasks::OutlineValueType::Number);
21code1->get_Values()->Add(value);
22
23// Add outline code to project
24project->get_OutlineCodes()->Add(code1);
25
26// Define outline code and its outline mask
27System::SharedPtr<OutlineCodeDefinition> code2 = System::MakeObject<OutlineCodeDefinition>();
28code2->set_Alias(u"New rsc outline code2");
29code2->set_FieldId(System::Convert::ToString(((int32_t)Aspose::Tasks::ExtendedAttributeResource::OutlineCode2)));
30code2->set_FieldName(u"Outline Code2");
31System::SharedPtr<OutlineMask> mask2 = System::MakeObject<OutlineMask>();
32mask2->set_Separator(u"/");
33mask2->set_Level(1);
34mask2->set_Type(Aspose::Tasks::MaskType::Numbers);
35code2->get_Masks()->Add(mask2);
36
37// Add outline value
38System::SharedPtr<OutlineValue> value2 = System::MakeObject<OutlineValue>();
39value2->set_Description(u"Value2 description");
40value2->set_ValueId(2);
41value2->set_Value(u"987654");
42value2->set_Type(Aspose::Tasks::OutlineValueType::Number);
43code2->get_Values()->Add(value2);
44
45// Add outline code to project
46project->get_OutlineCodes()->Add(code2);
47
48// Save project as MPP
49project->Save(dataDir + u"Updated_project_out.mpp", Aspose::Tasks::Saving::SaveFileFormat::MPP);