Робота з властивостями проекту
Робота з властивостями проекту
Microsoft Project зберігає метадані та конфігурацію з кожним файлом проекту (MPP/XML).
За допомогою Aspose.Tasks for .NET ви можете зчитувати, змінювати та записувати ці властивості програмно.
Це включає:
- Загальні властивості проекту (дата початку, дата статусу, календар тощо)
- Значення за замовчуванням для завдань та призначень
- Версія проекту та підсумкова інформація
- Налаштування фінансового року та днів тижня
- Налаштування валюти
- Атрибути для нових завдань
- Вбудовані та користувацькі властивості
Загальні властивості проекту
Microsoft Project зберігає метадані, такі як дати початку/завершення, дата статусу, тип календаря, і інше.
Ви також можете визначити користувацькі властивості.
Властивості
Властивість | Тип | Опис |
---|---|---|
StartDate | DateTime | дата початку проекту |
FinishDate | DateTime | дата завершення проекту |
CurrentDate | DateTime | поточна робоча дата |
StatusDate | DateTime | дата звітування про прогрес |
IsScheduleFromStart | Boolean | Чи планується від початку чи від завершення |
Calendar | Calendar | призначений базовий календар |
Зчитування інформації про проект
Клас Project має низку властивостей, що стосуються властивостей проекту:
- StartDate: дата початку проекту, тип даних DateTime.
- FinishDate: дата завершення проекту, тип даних DateTime.
- CurrentDate: поточна дата, тип даних DateTime.
- StatusDate: дата, на яку звітується прогрес проекту, тип даних DateTime.
- IsScheduleFromStart: визначає, чи планування виконується від початку чи від завершення і має значення Boolean.
- Calendar: тип календаря, що використовується в проекті, керується через Aspose.Tasks.Calendar class.
Щоб зчитати властивості проекту в Microsoft Project, натисніть Project Information у Project меню.
Наведені нижче приклади програмного коду показують, як зчитувати та виводити дату початку і завершення проекту, чи план проекту від початку чи від завершення, автора, останнього автора, ревізію, ключові слова та коментарі.
1// Create a project reader instance
2Project project = new Project("New Project.mpp");
3
4// Display project information
5if (project.Get(Prj.ScheduleFromStart))
6 Console.WriteLine("Project Finish Date : " + project.Get(Prj.StartDate).ToShortDateString());
7else
8 Console.WriteLine("Project Finish Date : " + project.Get(Prj.FinishDate).ToShortDateString());
9Console.WriteLine(project.Get(Prj.Author));
10Console.WriteLine(project.Get(Prj.LastAuthor));
11Console.WriteLine(project.Get(Prj.Revision));
12Console.WriteLine(project.Get(Prj.Keywords));
13Console.WriteLine(project.Get(Prj.Comments));
14Console.WriteLine("The program has run successfully");
Запис інформації про проект
Aspose.Tasks for .NET може не лише зчитувати, а й записувати інформацію про проект. Наведені приклади коду показують, як встановити автора, останнього автора, ревізію, ключові слова та коментарі.
1// Create project from template file
2Project project = new Project("New Project.mpp");
3// Set project information
4project.Set(Prj.Author, "Author");
5project.Set(Prj.LastAuthor, "Last Author");
6project.Set(Prj.Revision, 15);
7project.Set(Prj.Keywords, "MSP Aspose");
8project.Set(Prj.Comments, "Comments");
9project.Save("WriteProjectInfo_out.mpp", SaveFileFormat.MPP);
Визначення версії проекту
Aspose.Tasks for .NET API надає можливість отримувати інформацію про файл проекту за допомогою простих викликів API. Project класу Get метод дозволяє користувачам отримувати інформацію, пов’язану з Project, використовуючи статичний клас Prj. Клас Prj надає низку властивостей, пов’язаних з Project. У цій темі показано, як отримати інформацію про версію.
Властивості SaveVersion і LastSaved, що надаються класом Prj, використовуються для визначення версії проекту та дати, коли проект було останнього разу збережено. SaveVersion підтримує тип даних Integer, тоді як LastSaved — тип даних DateTime.
Використовуйте Prj.SaveVersion
та Prj.LastSaved
властивості для отримання версії формату файлу проекту і дату останнього збереження.
Властивість | Тип | Опис |
---|---|---|
SaveVersion | int | версія файлу проекту |
LastSaved | DateTime | дата останнього збереження |
1Project project = new Project("New Project.mpp");
2
3// Display project version
4Console.WriteLine("Project Version : " + project.Get(Prj.SaveVersion).ToString());
5Console.WriteLine("Last Saved : " + project.Get(Prj.LastSaved).ToShortDateString());
Властивості проекту за замовчуванням
Microsoft Project дозволяє користувачам встановлювати стандартні властивості проекту, що пришвидшують процес створення проекту. Властивості за замовчуванням визначають, коли нове завдання починається та завершується, встановлюють стандартні ставки оплати та надгодин, і багато іншого. Aspose.Tasks for .NET підтримує ці можливості.
Клас Prj надає низку властивостей для керування властивостями проекту за замовчуванням:
Властивість | Тип | Опис |
---|---|---|
DefaultStartTime | DateTime | Час початку за замовчуванням для завдань |
DefaultFinishTime | DateTime | Час завершення за замовчуванням для завдань |
DefaultFixedCostAccrual | CostAccrualType | Нарахування фіксованої вартості за замовчуванням |
DefaultStandardRate | double | Стандартна ставка оплати за замовчуванням |
DefaultOvertimeRate | double | Ставка оплати за надгодини за замовчуванням |
DefaultTaskEVMethod | EarnedValueMethodType | Розрахунок приросту вартості |
DefaultTaskType | TaskType | Тип нових завдань за замовчуванням |
//
- DefaultStartTime: час початку за замовчуванням для нового завдання, приймає значення типу DateTime.
- DefaultFinishTime: час завершення за замовчуванням для нового завдання, приймає значення типу DateTime.
- DefaultFixedCostAccrual: нарахування фіксованої вартості за замовчуванням для призначення, приймає одне зі значень, визначених у CostAccrualType enumeration.
- DefaultStandardRate: стандартна ставка оплати за замовчуванням, приймає значення типу double.
- DefaultOvertimeRate: ставка оплати за надгодини за замовчуванням, приймає значення типу double.
- DefaultTaskEVMethod: метод розрахунку вартості завдання за замовчуванням, приймає одне зі значень, визначених у EarnedValueMethodType enumeration.
- DefaultTaskType: тип завдання за замовчуванням у проекті, приймає одне зі значень, визначених у TaskType enumeration. //
Щоб переглянути інформацію про проект за замовчуванням у Microsoft Project:
- Відкрийте проект.
- У Tools меню, натисніть Options.
- Перейдіть на вкладку General . Тут ви можете побачити параметри стандартних ставок та ставок за надгодини за замовчуванням.
- Перейдіть на вкладку Schedule . Тут ви можете побачити параметри типу завдання за замовчуванням та часу початку завдання за замовчуванням.
Інформація про проект за замовчуванням у Microsoft Project, записана Aspose.Tasks
Зчитування властивостей за замовчуванням
Наступний приклад зчитує властивості проекту за замовчуванням і виводить їх у вікно консолі.
1// Create project
2Project project = new Project("New Project.mpp");
3
4// Display default properties
5Console.WriteLine("New Task Default Start: " + project.Get(Prj.DefaultStartTime).ToShortDateString());
6Console.WriteLine("New Task Default Type: " + project.Get(Prj.DefaultTaskType));
7Console.WriteLine("Resource Default Standard Rate: " + project.Get(Prj.DefaultStandardRate).ToString());
8Console.WriteLine("Resource Default Overtime Rate: " + project.Get(Prj.DefaultOvertimeRate).ToString());
9Console.WriteLine("Default Task EV Method: " + project.Get(Prj.DefaultTaskEVMethod).ToString());
10Console.WriteLine("Default Cost Accrual: " + project.Get(Prj.DefaultFixedCostAccrual).ToString());
Запис властивостей за замовчуванням
Наступні рядки коду встановлюють властивості проекту за замовчуванням.
1// Create a project instance and Set default properties
2Project project = new Project();
3project.Set(Prj.ScheduleFromStart, true);
4project.Set(Prj.StartDate, DateTime.Now);
5project.Set(Prj.DefaultStartTime, project.Get(Prj.StartDate));
6project.Set(Prj.DefaultTaskType, TaskType.FixedDuration);
7project.Set(Prj.DefaultStandardRate, 15);
8project.Set(Prj.DefaultOvertimeRate, 12);
9project.Set(Prj.DefaultTaskEVMethod, EarnedValueMethodType.PercentComplete);
10project.Set(Prj.DefaultFixedCostAccrual, CostAccrualType.Prorated);
11project.Save("WriteDefaultProperties_out.xml", SaveFileFormat.XML);
Запис підсумкової інформації про проект
Більшість програм зберігають підсумкову інформацію разом із файлами. Microsoft Project не є винятком. Окрім імені автора, дати створення проекту та останнього редагування і збереження, воно зберігає ключові слова, тему, коментарі тощо. Aspose.Tasks for .NET дозволяє як зчитувати, так і записувати такий тип інформації.
Клас Project Set метод можна використовувати для запису, а Get метод можна використовувати для зчитування підсумкової інформації Project за допомогою членів Prj класу. Файл можна зберегти після оновлення підсумкової інформації. Щоб оновити підсумкову інформацію проекту в існуючому MPP-файлі:
- Створіть екземпляр Project class
- Встановіть різні властивості, які надає Prj class для визначення підсумкової інформації.
- Збережіть Project за допомогою методу Save класу Project class
Щоб переглянути підсумкову інформацію файлу:
- Знайдіть файл у файловому провіднику.
- Клацніть правою кнопкою миші по файлу та виберіть Properties.
- Перейдіть на вкладку Details .
Наведений приклад коду записує підсумкову інформацію проекту у MPP-файл.
1// Instantiate Project class
2Project project = new Project("New Project.mpp");
3
4// Set project summary
5project.Set(Prj.Author, "Author");
6project.Set(Prj.LastAuthor, "Last Author");
7project.Set(Prj.Revision, 15);
8project.Set(Prj.Keywords, "MSP Aspose");
9project.Set(Prj.Comments, "Comments");
10project.Save("WriteMPPProjectSummary_out.mpp", SaveFileFormat.MPP);
Властивості фінансового року
Фінансовий рік збігається з бюджетним роком. Це період, протягом якого країна, організація або особа розраховують бюджети та податки. Microsoft Project дозволяє користувачам визначати фінансовий рік для проектів. Aspose.Tasks for .NET підтримує цю функціональність за допомогою властивостей, що дозволяють розробникам як зчитувати властивості фінансового року з існуючих проектів, так і встановлювати властивості фінансового року під час створення або роботи з проектами.
Клас Prj надає FyStartDate і FiscalYearStart для керування фінансовим роком проекту:
- FyStartDate: визначає місяць початку фінансового року і приймає одне зі значень, визначених у перерахуванні Month.
- FiscalYearStart: визначає, чи використовується нумерація фінансових років у проекті. Boolean.
Зчитування властивостей фінансового року
Властивості FyStartDate і FiscalYearStart полегшують визначення дати початку поточного фінансового року та того, чи використовується нумерація фінансового року у Aspose.Tasks.
Наступний код зчитує властивості фінансового року проекту і відображає їх у вікні консолі.
1// Create a project instance
2Project project = new Project("New Project.mpp");
3
4// Display fiscal year properties
5Console.WriteLine("Fiscal Year Start Date : " + project.Get(Prj.FyStartDate).ToString());
6Console.WriteLine("Fiscal Year Numbering : " + project.Get(Prj.FiscalYearStart).ToString());
Запис властивостей фінансового року
Щоб переглянути властивості фінансового року в Microsoft Project:
- Відкрийте файл проекту.
- У Tools меню, натисніть Options.
- Клацніть на вкладку Calendar . Вона виглядатиме як показано нижче.
Перевірка, чи властивості фінансового року встановлено в Microsoft Project.
Наступний приклад записує властивості фінансового року проекту.
1// Create a project instance
2Project project = new Project("New Project.mpp");
3
4// Set fiscal year properties
5project.Set(Prj.FyStartDate, Month.July);
6project.Set(Prj.FiscalYearStart, true);
7project.Save("WriteFiscalYearProperties_out.mpp", SaveFileFormat.MPP);
Властивості днів тижня
Microsoft Project дозволяє користувачам налаштовувати низку властивостей днів тижня. Наприклад, який день вважається початком тижня і скільки робочих днів у місяці. Aspose.Tasks підтримує ці можливості через низку властивостей, які можна як зчитувати властивості днів тижня так і записувати їх у проект.
Aspose.Tasks має ряд властивостей, наданих Project класом, призначених спеціально для керування властивостями днів тижня проекту:
- WeekStartDay: перший день тижня. Це властивість приймає значення, визначені у DayType enumeration.
- DaysPerMonth: кількість робочих днів у місяці, задається як ціле число.
- MinutesPerDay: кількість робочих хвилин у робочому дні, задається як ціле число.
- MinutesPerWeek: кількість робочих хвилин у робочому тижні, задається як ціле число.
Зчитування властивостей днів тижня
Наступний код зчитує властивості днів тижня проекту і виводить їх у вікно консолі.
1Project project = new Project("New Project.mpp");
2
3// Display week days properties
4Console.WriteLine("Week Start Date : " + project.Get(Prj.WeekStartDay).ToString());
5Console.WriteLine("Days Per Month : " + project.Get(Prj.DaysPerMonth).ToString());
6Console.WriteLine("Minutes Per Day : " + project.Get(Prj.MinutesPerDay).ToString());
7Console.WriteLine("Minutes Per Week : " + project.Get(Prj.MinutesPerWeek).ToString());
Запис властивостей днів тижня
Щоб переглянути властивості днів тижня в Microsoft Project:
- Відкрийте файл.
- У Tools меню, натисніть Options.
- Виберіть вкладку Calendar . Вона виглядатиме приблизно як на прикладі нижче.
Перегляд властивостей днів тижня в Microsoft Project
Наведений код записує властивості днів тижня до проекту, як показано на скріншоті вище.
1// Create a project instance
2Project project = new Project("New Project.mpp");
3
4// Set week days properties
5project.Set(Prj.WeekStartDay, DayType.Monday);
6project.Set(Prj.DaysPerMonth, 24);
7project.Set(Prj.MinutesPerDay, 540);
8project.Set(Prj.MinutesPerWeek, 3240);
9project.Save("WriteWeekdayProperties_out.xml", SaveFileFormat.XML);
Властивості валюти
Microsoft Project дозволяє користувачам вибирати, в якій валюті відображаються витрати у проекті. Вони можуть задати код валюти, кількість знаків після десяткової коми та символ валюти, щоб витрати відображалися зрозуміло й інтуїтивно. Aspose.Tasks for .NET підтримує ці функції та надає ряд властивостей, що допомагають розробникам задавати та контролювати налаштування валюти. Ця тема пояснює, як зчитувати властивості валюти, та як їх встановлювати.
Aspose.Tasks for .NET надає властивості класу Prj для керування властивостями валюти:
- CurrencyCode: трьохбуквенний код валюти, наприклад USD, GBP або AUD, задається як рядок.
- CurrencyDigits: кількість знаків після десяткової крапки, наприклад, 2 (100.00) або 3 (100.000), задається як ціле число.
- CurrencySymbol: символ валюти, наприклад $ або £, задається як рядок.
- CurrencySymbolPosition: позиція символу валюти, наприклад перед числом ($100) або після (100$). CurrencySymbolPosition приймає значення з CurrencySymbolPositionType enumeration.
Зчитування властивостей валюти
Наведений фрагмент коду зчитує властивості валюти проекту.
1Project project = new Project("New Project.mpp");
2
3// Display currency properties
4Console.WriteLine("Currency Code : " + project.Get(Prj.CurrencyCode).ToString());
5Console.WriteLine("<br>Currency Digits : " + project.Get(Prj.CurrencyDigits).ToString());
6Console.WriteLine("<br>Currency Symbol : " + project.Get(Prj.CurrencySymbol).ToString());
7Console.WriteLine("Currency Symbol Position" + project.Get(Prj.CurrencySymbolPosition).ToString());
Запис властивостей валюти
Щоб переглянути властивості валюти в Microsoft Project:
- Відкрийте файл проекту.
- У Tools меню, оберіть Options.
- Клацніть вкладку View . Вона виглядатиме як показано нижче.
Зчитування властивостей валюти в Microsoft Project
Наведений приклад записує властивості валюти у проект.
1// Create a project instance
2Project project = new Project("New Project.mpp");
3
4// Set currency properties
5project.Set(Prj.CurrencyCode, "AUD");
6project.Set(Prj.CurrencyDigits, 2);
7project.Set(Prj.CurrencySymbol, "$");
8project.Set(Prj.CurrencySymbolPosition, CurrencySymbolPositionType.After);
9
10project.Save("WriteCurrencyProperties_out.xml", SaveFileFormat.XML);
Встановлення атрибутів для нових завдань
Microsoft Project дозволяє встановлювати властивості за замовчуванням для нових завдань. Ця тема пояснює, як задати дату початку за замовчуванням для нових завдань за допомогою Aspose.Tasks for .NET API.
Клас Prj надає властивість NewTaskStartDate , яка визначає дату початку для нового завдання. Ця властивість підтримує значення, визначені у TaskStartDateType переліку.
Щоб переглянути атрибути завдання:
- Відкрийте файл у Microsoft Project.
- У Tools меню, оберіть Options.
- Виберіть вкладку Schedule . Вкладка виглядає як показано нижче.
Нові завдання починаються з поточної дати
Наступні рядки коду встановлюють дату початку для нового завдання.
1// Create a project instance Set new task property and Save the project as XML project file
2Project project = new Project();
3project.Set(Prj.NewTaskStartDate, TaskStartDateType.CurrentDate);
4project.Save("SetAttributesForNewTasks_out.xml", SaveFileFormat.XML);
5
6// Display Status.
7Console.WriteLine("New Task created with start date successfully.");
Зчитування користувацьких та вбудованих властивостей
В Aspose.Tasks for .NET користувацькі властивості доступні через типізовану колекцію, тоді як вбудовані властивості доступні безпосередньо.
Наступний приклад коду демонструє, як зчитувати користувацькі та вбудовані властивості.
1// Create a project reader instance
2Project project = new Project("New Project.mpp");
3
4// custom properties are available through the typed collection
5foreach (var property in project.CustomProps)
6{
7 Console.WriteLine(property.Type);
8 Console.WriteLine(property.Name);
9 Console.WriteLine(property.Value);
10}
11
12// built-in properties are available directly
13Console.WriteLine(project.BuiltInProps.Author);
14Console.WriteLine(project.BuiltInProps.Title);
15
16
17// or as an item of built-in property collection
18foreach (var property in project.BuiltInProps)
19{
20 Console.WriteLine(property.Name);
21 Console.WriteLine(property.Value);
22}