Das Konvertieren von Projektplänen aus Microsoft Project in Excel‑Tabellen ist ein häufiges Bedürfnis für Berichte und Datenanalysen. Aspose.CAD Cloud SDK for Node.js ermöglicht Entwicklern, MPP in XLSX in Node.JS mit nur wenigen Codezeilen zu konvertieren. In diesem Tutorial sehen Sie, wie Sie die Bibliothek einrichten, eine MPP‑Datei in den Cloud‑Speicher hochladen, einen XLSX‑Aufgabenblatt‑Report erstellen und das Ergebnis abrufen. Der Leitfaden enthält außerdem äquivalente cURL‑Befehle für REST‑API‑Benutzer. Am Ende sind Sie bereit, die MPP‑zu‑XLSX‑Konvertierung in Ihre Node.JS‑Anwendungen zu integrieren.

Vollständiges funktionierendes Beispiel für die Konvertierung von MPP zu XLSX in Node.JS

Dieses Beispiel zeigt, wie man eine MPP‑Datei hochlädt, einen XLSX‑Aufgabenblatt‑Bericht anfordert und das Ergebnis mit der Aspose.Tasks Cloud API herunterlädt.

const path = require('path');
const fs = require('fs');
const {
    Configuration,
    ApiClient,
    TasksApi,
    StorageApi
} = require('asposetaskscloud');

(async () => {
    // -------------------- Configuration --------------------
    const config = new Configuration({
        clientId: 'YOUR_CLIENT_ID',
        clientSecret: 'YOUR_CLIENT_SECRET'
        // baseUrl can be set here if needed
    });
    const apiClient = new ApiClient(config);
    const tasksApi = new TasksApi(apiClient);
    const storageApi = new StorageApi(apiClient);

// -------------------- File paths --------------------
    const localInputPath = path.resolve(__dirname, 'project.mpp');
    const remoteFolder = 'Temp';
    const remoteFileName = 'project.mpp';
    const localOutputPath = path.resolve(__dirname, 'project.xlsx');

try {
        // -------------------- Upload MPP to cloud storage --------------------
        const fileBuffer = fs.readFileSync(localInputPath);
        await storageApi.uploadFile({
            path: `${remoteFolder}/${remoteFileName}`,
            file: fileBuffer
        });

// -------------------- Convert to XLSX (TaskSheet report) --------------------
        const reportResponse = await tasksApi.getTaskReport({
            name: remoteFileName,
            folder: remoteFolder,
            reportType: 'TaskSheet', // options: GanttChart, ResourceSheet, etc.
            format: 'xlsx'
        });

// -------------------- Save XLSX locally --------------------
        fs.writeFileSync(localOutputPath, reportResponse.body);
        console.log(`Conversion completed. XLSX saved to ${localOutputPath}`);
    } catch (err) {
        if (err.response && err.response.body) {
            console.error('API error:', err.response.body);
        } else {
            console.error('Unexpected error:', err);
        }
    } finally {
        // -------------------- Cleanup remote file --------------------
        try {
            await storageApi.deleteFile({ path: `${remoteFolder}/${remoteFileName}` });
        } catch (cleanupErr) {
            // ignore cleanup errors
        }
    }
})();

Hinweis: Dieses Codebeispiel demonstriert die Kernfunktionalität. Bevor Sie es in Ihrem Projekt verwenden, stellen Sie sicher, dass Sie alle Dateipfade und Konfigurationswerte an Ihre tatsächliche Umgebung anpassen, dass alle erforderlichen Abhängigkeiten ordnungsgemäß installiert sind und testen Sie gründlich in Ihrer Entwicklungsumgebung. Wenn Sie auf Probleme stoßen, lesen Sie bitte die offizielle Dokumentation oder wenden Sie sich an das Support-Team für Unterstützung.

Verwendung der REST-API mit cURL für die MPP-zu-XLSX-Konvertierung

Im Folgenden finden Sie die cURL‑Befehle, die dieselben Schritte wie der Node.js‑Code ausführen und dabei die Aspose.Tasks Cloud REST API verwenden.

  1. Ein Zugriffstoken erhalten - ersetzen Sie YOUR_CLIENT_ID und YOUR_CLIENT_SECRET durch Ihre Zugangsdaten.
curl -X POST "https://api.aspose.cloud/v4.0/oauth2/token?grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET"
  1. Laden Sie die Quell‑MPP‑Datei hoch - speichern Sie das Token aus dem vorherigen Schritt in YOUR_ACCESS_TOKEN.
curl -X PUT "https://api.aspose.cloud/v4.0/storage/file/Temp/project.mpp" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -H "Content-Type: application/octet-stream" \
     --data-binary "@project.mpp"
  1. Anfordern des XLSX‑Aufgabenblattberichts.
curl -X GET "https://api.aspose.cloud/v4.0/tasks/project.mpp/report?reportType=TaskSheet&format=xlsx" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -o project.xlsx
  1. Laden Sie die erzeugte XLSX-Datei herunter (der vorherige Befehl speichert sie bereits lokal, Sie können sie jedoch auch direkt abrufen).
curl -X GET "https://api.aspose.cloud/v4.0/storage/file/Temp/project.xlsx" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -o project.xlsx

Für weitere Details zu jedem Endpunkt siehe die offizielle API-Referenz.

Wie die Konvertierung von MPP zu XLSX in Node.JS funktioniert

Die Implementierung kann in die folgenden Schritte unterteilt werden:

  1. Authentifizierung konfigurieren - Das Configuration-Objekt enthält clientId und clientSecret.
    const config = new Configuration({
        clientId: 'YOUR_CLIENT_ID',
        clientSecret: 'YOUR_CLIENT_SECRET'
    });
    
  2. API-Clients erstellen - ApiClient wird mit der Konfiguration instanziiert und an TasksApi und StorageApi übergeben.
    const apiClient = new ApiClient(config);
    const tasksApi = new TasksApi(apiClient);
    const storageApi = new StorageApi(apiClient);
    
  3. Die MPP-Datei hochladen - Die Datei wird in einen Puffer gelesen und über storageApi.uploadFile gesendet.
    const fileBuffer = fs.readFileSync(localInputPath);
    await storageApi.uploadFile({ path: `${remoteFolder}/${remoteFileName}`, file: fileBuffer });
    
  4. Den XLSX-Bericht anfordern - tasksApi.getTaskReport wird mit reportType: 'TaskSheet' und format: 'xlsx' aufgerufen.
    const reportResponse = await tasksApi.getTaskReport({
        name: remoteFileName,
        folder: remoteFolder,
        reportType: 'TaskSheet',
        format: 'xlsx'
    });
    
  5. Das Ergebnis lokal speichern - Der binäre Antwortkörper wird in project.xlsx geschrieben.
    fs.writeFileSync(localOutputPath, reportResponse.body);
    

Diese Schritte veranschaulichen einen SCHRITT für SCHRITT Konvertieren großer MPP-Dateien zu XLSX in Node.JS Workflow, der für andere Berichtstypen wie GanttChart oder ResourceSheet angepasst werden kann.

Voraussetzungen und Einrichtung für Aspose.CAD Cloud SDK

  1. Node.js-Version – Stellen Sie sicher, dass Sie Node.js 14 oder höher ausführen.
  2. SDK installieren – Verwenden Sie npm, um das Paket zu Ihrem Projekt hinzuzufügen.
    npm install @asposecloud/aspose-cad-cloud
    
    Das Paket ist über die offizielle Download-Seite verfügbar.
  3. Ein Aspose Cloud‑Konto erstellen – Holen Sie sich clientId und clientSecret aus dem Aspose Cloud‑Dashboard.
  4. Umgebungsvariablen einrichten (optional, aber empfohlen), um Anmeldeinformationen aus dem Quellcode herauszuhalten.

Wenn diese Voraussetzungen erfüllt sind, können Sie das zuvor gezeigte vollständige Codebeispiel ausführen.

Konvertierungsoptionen und Einstellungen

Die Tasks API bietet mehrere Parameter, die die Ausgabe beeinflussen:

  • reportType – Bestimmt die Art der exportierten Daten. Optionen umfassen TaskSheet, GanttChart, ResourceSheet usw. Das Beispiel verwendet TaskSheet, um eine flache Aufgabenliste in XLSX zu erzeugen.
  • format – Unterstützt derzeit xlsx, pdf, html. Durch Ändern dieses Werts wird der Ausgabetyp der Datei gewechselt.
  • folder – Gibt den Cloud‑Speicherordner an, in dem die Quell‑MPP liegt. Passen Sie ihn bei Bedarf an die Projektstruktur an.

Für eine vollständige Liste der Optionen siehe die API‑Referenz.

Zusammenfassung

Sie haben jetzt eine vollständige, produktionsbereite Methode, um MPP nach XLSX in Node.JS zu konvertieren, indem Sie das Aspose.CAD Cloud SDK for Node.js verwenden. Das SDK übernimmt Authentifizierung, Dateispeicherung und Berichtserstellung, sodass Sie sich darauf konzentrieren können, die XLSX‑Daten in Ihre Geschäftslogik zu integrieren. Denken Sie daran, für den Produktionseinsatz eine passende Lizenz zu erwerben; Preisdetails finden Sie auf der Produktseite, und Sie können eine temporäre Lizenz von der temporäre Lizenzseite erhalten. Viel Spaß beim Coden!

Häufig gestellte Fragen

Kann ich MPP zu XLSX in Node.JS konvertieren, ohne das Aspose.CAD Cloud SDK zu verwenden?
Während ein benutzerdefinierter Parser möglich ist, bietet das Aspose.CAD Cloud SDK für Node.js eine getestete, zuverlässige Lösung, die Entwicklungszeit spart und Randfälle behandelt.

Welche Berichtstypen sind beim Konvertieren von MPP zu XLSX verfügbar?
Die API unterstützt TaskSheet, GanttChart, ResourceSheet und weitere. Die Auswahl eines anderen reportType ändert die Struktur der erzeugten XLSX-Datei.

Wie gehe ich mit großen MPP-Dateien während der Konvertierung um?
Laden Sie große Dateien in Teilen über die Storage‑API hoch, überwachen Sie den Konvertierungsstatus und streamen Sie das XLSX‑Ergebnis, um einen hohen Speicherverbrauch zu vermeiden.

Weiterlesen