Při práci s Aspose.Task pro .NET, chybějící zvýraznění obvykle pocházejí z výběru nesprávného výstupního zobrazení, ne přepočítání projektu, nebo exportování bez účelově vytvořené zprávy.

Klíčové Takeaways

  • Použijte si Zpráva o přidělených zdrojích vytvořit PDF, který jasně označuje problémové zdroje.
  • Set CalculationMode = Automatic (nebo volání Recalculate()Před exportem jsou vlajky tak čerstvé.
  • Pro podrobný kontext pracovní zátěže také exportovat Použití zdrojů PDF s každodenním časovým rozvrhem.
  • Velké soubory: předfiltrujte data a nastavte nastavení stránek, abyste snížili počet stránek a čas exportu.

Proč se to nepodaří (a jak to napravit)

  1. Stálé výpočty — vlajky celkového umístění jsou vypočtené hodnoty. Ujistěte se, že projekt je před exportem přepočten.
  2. Nesprávný výstup — obecné zobrazení (např. jednoduchý Gantt) nezobrazí ukazatele celkového umístění. Zpráva o přidělených zdrojích nebo Použití zdrojů / Resource Sheet Názory na .
  3. Zkrácený obsah — Výchozí velikost stránky/časová škála může PDF vytvořit obrovskou škálu.

Kompletní, kompilovatelný příklad (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}'");
                }
            }
        }
    }
}

Jak běhat

  1. dotnet new console -n TasksPdfHighlight
  2. cd TasksPdfHighlight
  3. dotnet add package Aspose.Tasks
  4. nahradit Program.cs s kódem nahoře.
  5. dotnet run -- "path-to-input.mpp"

Co tento kód dělá

  • Loadů Vaše .mpp Soubor a umožňují Automatické výpočty Aby byly vlajky přesné.
  • Exporty Čistá, jedna stránka-na-zpráva Přerozdělené zdroje PDF, který je určen k vyvolání problémových zdrojů.
  • Volitelně se přizpůsobí O Použití zdrojů prohlížení jako druhý PDF k prohlížení denního rozložení pracovní zátěže.
  • Princů Rychlé shrnutí všech celkově přidělených úkolů pro konzoli.

Řešení problémů & výkonové tipy

  • PDF je velký: Používejte Timescale = Timescale.Months pro široké shrnutí nebo zkrácení rozsahu dat projektu.
  • Chybějící highlights: zkontrolujte projekt recalculates (Automatic módy nebo Recalculate()a preferuje SaveReport(…, ReportType.OverallocatedResources) O generických názorech.
  • Zdroje / Lokální: pokud chybí znaky, nasadit požadované písma na serveru nebo zvládnout události řešení písma.

FAQ

Q1.Zjistí Aspose.Tasks automaticky celkové umístění zdrojů? Ano. Převoditelnost se odráží na úkolech a úkolech. Můžete zkontrolovat pole, jako jsou Tsk.IsOverallocated (na základě úkolu) a ResourceAssignment.Overallocated (v rámci předmětu v kódu).

Q2.Jaký je rozdíl mezi přehledem Přerozdělené zdroje a zobrazením Použití zdrojů? Zpráva je účelově vytvořené shrnutí, které zdůrazňuje zdroje problému; zobrazení Použití zobrazuje podrobnosti o časově přepracovaných pracovních zatíženích.

Q3.Mohu „barvit“ pouze celkové řádky v zobrazení listu? Přímé podmíněné stylingové nastavení v zobrazení listu je omezené. Praktickým řešením je exportovat Zpráva o přidělených zdrojích pro zvýraznění a samostatně pro export Použití zdrojů / Resource Sheet zobrazení (volitelně filtrované) podle kontextu.

Q4.Jak mohu urychlit exportování velmi velkých souborů MPP? Filtrovat neaktivní/úplné části, vybrat hrubší časové rozmezí (týdny/měsíce) a vyhnout se zobrazování každého zobrazení.

Q5.Potřebuji nainstalovat Microsoft Project? Úkoly fungují nezávisle. Stačí zajistit, aby byly pro renderovací prostředí dostupné písma používané projektem.

Závěr

Pokud potřebujete spolehlivý PDF výstup, který Zvýraznění celkově přidělených zdrojů,Dále preferují Přerozdělené zdroje Zpráva a zajištění, aby byl projekt před exportem přepočten.Pro hlubší analýzu přidejte PDF s použitím zdrojů s vhodnou časovou stupnicí a zachovejte konzervativní nastavení stránek pro velké soubory.

More in this category