Изчерпването на общоразпределени ресурси в PDF файлове е чудесен начин да се изчистят рисковете от планиране в данните на Microsoft Project. Когато работите с Aspose.Task for .NET, пропуснатите подчертания обикновено идват от избора на неправилен изглед на изхода, не преизчисляване на проекта или експортиране без отчет, създаден за целта.
Ключови Takeaways
- Използвайте Доклад за общо разпределени ресурси за да генерирате PDF, който ясно маркира ресурсите на проблема.
- сет
CalculationMode = Automatic(или да се обадитеRecalculate()Преди износ, така че знамената за общо разпределение са пресни. - За подробен контекст на работната маса също така експортирайте Използване на ресурсите PDF с ежедневен график.
- Големи файлове: предварително филтриране на данни и настройки за настройка на страници за намаляване на броя на страниците и времето за експортиране.
Защо се проваля (и как да се оправим)
- Постоянни изчисления - Общопоставяне знамена са изчислени стойности. Уверете се, че проектът се преизчислява преди износ.
- Неправилен изход - общи изгледи (например, обикновена Gantt) няма да показват показатели за общ размер. Доклад за преразпределени ресурси или Използване на ресурса / Resource Sheet от гледна точка.
- Изрязано съдържание - Размерът на страницата по подразбиране/часовата скала може да направи PDF файловете огромни.
Пълно, компилируемо пример (C#)
using System;
using Aspose.Tasks;
using Aspose.Tasks.Saving;
using Aspose.Tasks.Visualization;
namespace TasksPdfHighlight
{
internal static class Program
{
// How to run:
// 1) dotnet new console -n TasksPdfHighlight
// 2) cd TasksPdfHighlight
// 3) dotnet add package Aspose.Tasks
// 4) Replace Program.cs with this file's contents
// 5) dotnet run -- "path-to-input.mpp"
private static void Main(string[] args)
{
if (args.Length == 0)
{
Console.WriteLine("Usage: dotnet run -- <path-to-input.mpp>");
return;
}
string input = args[0];
// 1) Load the project
var project = new Project(input)
{
// Keep calculations up to date so overallocation flags are reliable
CalculationMode = CalculationMode.Automatic
};
// Optional explicit refresh (useful if CalculationMode was Manual/None earlier)
project.Recalculate();
// 2) Export the built-in Overallocated Resources report (purpose-built for this task)
string reportPdf = "OverallocatedResources.pdf";
project.SaveReport(reportPdf, ReportType.OverallocatedResources);
Console.WriteLine($"Saved: {reportPdf}");
// 3) (Optional) Also render Resource Usage view for day-by-day context
var usageOptions = new PdfSaveOptions
{
PresentationFormat = PresentationFormat.ResourceUsage,
Timescale = Timescale.Days,
FitContent = true,
ReduceFooterGap = true
};
string usagePdf = "ResourceUsage.pdf";
project.Save(usagePdf, usageOptions);
Console.WriteLine($"Saved: {usagePdf}");
// 4) Quick console summary: list resources with any overallocated assignments
foreach (var ra in project.ResourceAssignments)
{
if (ra.Overallocated)
{
string resName = ra.Resource?.Get(Rsc.Name) ?? "(Unnamed Resource)";
string taskName = ra.Task?.Get(Tsk.Name) ?? "(Unnamed Task)";
Console.WriteLine($"OVERALLOCATED: Resource='{resName}' on Task='{taskName}'");
}
}
}
}
}
Как да бягаме
dotnet new console -n TasksPdfHighlightcd TasksPdfHighlightdotnet add package Aspose.Tasks- Замества
Program.csс кода по-горе. dotnet run -- "path-to-input.mpp"
Какво прави Кодексът
- натоварване Твоята
.mppФайлове и позволява Автоматично изчисляване За да са точни знамената. - Износът Еднозначен, един-страница-на-доклад Прекомерно разпределени ресурси PDF, предназначен да извика проблемни ресурси.
- Опционално се връща на Използване на ресурсите Преглед като втори PDF, за да проверите ежедневното разпределение на работната маса.
- принцът Бързо обобщение на всички общоразпределени задачи за конзолата.
Решаване на проблеми и съвети за изпълнение
- PDF е много голям:• Използване
Timescale = Timescale.Monthsза широки резюмета или съкращаване на диапазона от дати на проекта. - Липсващите акценти:Проверка на стойността на проекта (
AutomaticМода илиRecalculate()(и предпочитатSaveReport(…, ReportType.OverallocatedResources)За генетичните възгледи. - Източници / Местни:Ако липсват знаци, разгърнете необходимите шрифтове на сървъра или се справете с събитията за разрешаване на шрифтове.
FAQ
Q1.Открива ли Aspose.Tasks автоматично общото местоположение на ресурсите? Да. Преразпределението се отразява върху задачите и задачите. Можете да проверите полета като Tsk.IsOverallocated (по задачите) и ResourceAssignment.Overallocated (по подразбиране) в съответствие с чл.
В2 Каква е разликата между отчета за преразпределени ресурси и изгледа за използване на ресурсите? Докладът е обобщено резюме, което подчертава ресурсите на проблема; в изглед за използване се показват подробности за работното натоварване във времевата фаза.
Q3.Мога ли да “цветя” само общоразпределени редове в изглед на лист? Директното условно оформление на ред в изгледите на листа е ограничено. Практическият вариант е да се експортира Доклад за преразпределени ресурси за акценти, и отделно износ Използване на ресурса / Resource Sheet Изгледи (опционално филтрирани) за контекст.
Q4.Как мога да ускоря експорта на много големи MPP файлове? Филтрирайте неактивни/пълни части, изберете по-груби времеви скали (седмици/месеци) и избягвайте да показвате всеки изглед.
Q5.Имам ли нужда от инсталиран Microsoft Project? Задачите работят независимо. Просто се уверете, че шрифтовете, използвани от проекта, са достъпни за средата за рендериране.
Заключението
Когато имате нужда от надежден PDF изход, който Изграждане на общоразпределени ресурси,Предпочитат да Прекомерно разпределени ресурси Добавете PDF за използване на ресурси с подходяща времева скала и запазете настройките на страницата консервативни за големи файлове.