Чтение и запись общих свойств
В Microsoft Project у каждой задачи есть общие свойства такие как имя, ID, UID и даты начала/окончания, которые определяют её идентичность и планирование. С помощью Aspose.Tasks for .NET, разработчики могут легко читать и записывать эти свойства программно при работе с проектными файлами MPP или XML.
Общие свойства
Статический класс
Tsk предоставляет доступ ко всем общим свойствам
Task. Эти свойства можно получить или изменить с помощью Get
и Set
методов Task класса.
Часто используемые поля:
Tsk.Name Тип: String Назначение: Определяет имя задачи.
Tsk.Id Тип: Integer Назначение: Последовательный ID, присваиваемый внутри проекта.
Tsk.Uid Тип: Integer Назначение: Уникальный идентификатор задачи, который не меняется при перестановке задач.
Tsk.Start Тип: DateTime Назначение: Планируемая дата начала задачи.
Tsk.Finish Тип: DateTime Назначение: Планируемая дата окончания задачи.
Чтобы просмотреть общие свойства задачи в Microsoft Project:
- Откройте проект.
- На Вид меню, выберите Другие виды а затем Ввод задачи чтобы открыть форму ввода задачи.
- В Вставка меню выберите Столбец и добавьте ID и Unique ID.
Пример: Установка общих свойств
Следующий пример на C# демонстрирует, как присвоить значения общим свойствам задачи:
1Project project = new Project();
2
3// Add task and set task properties
4Task task = project.RootTask.Children.Add("Task1");
5task.Set(Tsk.Start, project.RootTask.Get(Tsk.Start).AddDays(1));
6task.Set(Tsk.Name, "new name");
Пример: Чтение общих свойств
Вы можете получить свойства задач, перебирая дочерние элементы RootTask проекта RootTask:
1Project project = new Project("New Project.mpp");
2
3// Create a ChildTasksCollector instance
4ChildTasksCollector collector = new ChildTasksCollector();
5
6// Collect all the tasks from RootTask using TaskUtils
7TaskUtils.Apply(project.RootTask, collector, 0);
8
9// Parse through all the collected tasks
10foreach (Task task in collector.Tasks)
11{
12 Console.WriteLine("Task Id: {0}", task.Get(Tsk.Id));
13 Console.WriteLine("Task Uid: {0}", task.Get(Tsk.Uid));
14 Console.WriteLine("Task Name: {0}", task.Get(Tsk.Name));
15 Console.WriteLine("Task Start: {0}", task.Get(Tsk.Start));
16 Console.WriteLine("Task Finish: {0}", task.Get(Tsk.Finish));
17}
Ключевые моменты
- ID является специфичным для проекта и может измениться при перестановке задач.
- UID является уникальным и остаётся стабильным при операциях, что делает его полезным для интеграции.
- Start и Finish даты определяют ограничения по расписанию и зависимости.
- Aspose.Tasks обеспечивает единообразную обработку этих свойств в форматах MPP и XML .
Часто задаваемые вопросы
В: В чем разница между ID и UID?
- ID это последовательный номер задачи в текущем представлении проекта, UID это постоянный уникальный идентификатор, который не меняется.
В: Можно ли напрямую обновлять как Start, так и Finish?
- Да, но итоговое расписание также может зависеть от ограничений и зависимостей, определённых в проекте.
В: Поддерживает ли Aspose.Tasks чтение этих свойств из файлов MPP и XML?
- Да. Общие свойства доступны одинаково для обоих форматов.