Microsoft Project’ten Excel elektronik tablolarına proje takvimlerini dönüştürmek, raporlama ve veri analizi için sıkça ihtiyaç duyulan bir durumdur. Aspose.CAD Cloud SDK for Node.js geliştiricilerin MPP’yi Node.JS’te sadece birkaç satır kodla XLSX formatına dönüştürmesini sağlar. Bu öğreticide kütüphaneyi nasıl kuracağınızı, bir MPP dosyasını bulut depolamaya nasıl yükleyeceğinizi, bir XLSX görev sayfası raporu oluşturacağınızı ve sonucu nasıl alacağınızı göreceksiniz. Kılavuz ayrıca REST API kullanıcıları için eşdeğer cURL komutlarını da sunar. Sonunda MPP’den XLSX’e dönüşümü Node.JS uygulamalarınıza entegre etmeye hazır olacaksınız.

Node.JS’te MPP’yi XLSX’e Dönüştürmek için Tam Çalışan Örnek

Bu örnek, bir MPP dosyasını yüklemeyi, bir XLSX görev‑sayfası raporu talep etmeyi ve sonucu Aspose.Tasks Cloud API kullanarak indirmeyi göstermektedir.

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
        }
    }
})();

Not: Bu kod örneği temel işlevselliği gösterir. Projenizde kullanmadan önce, dosya yollarını ve yapılandırma değerlerini gerçek ortamınıza uygun şekilde güncellediğinizden, tüm gerekli bağımlılıkların doğru şekilde yüklendiğinden emin olun ve geliştirme ortamınızda kapsamlı bir şekilde test edin. Herhangi bir sorunla karşılaşırsanız, lütfen resmi belgeler adresine bakın veya destek ekibi ile iletişime geçin.

cURL ile MPP’den XLSX’e Dönüştürme için REST API Kullanımı

Aşağıda, Aspose.Tasks Cloud REST API’sini kullanarak Node.js koduyla aynı adımları gerçekleştiren cURL komutları bulunmaktadır.

  1. Erişim belirteci alın - YOUR_CLIENT_ID ve YOUR_CLIENT_SECRET değerlerini kimlik bilgilerinizle değiştirin.
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. Kaynak MPP dosyasını yükle - önceki adımdan alınan token’ı YOUR_ACCESS_TOKEN içinde saklayın.
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. XLSX görev‑sayfası raporunu isteyin.
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. Oluşturulan XLSX dosyasını indirin (önceki komut zaten yerel olarak kaydeder, ancak doğrudan da alabilirsiniz.)
curl -X GET "https://api.aspose.cloud/v4.0/storage/file/Temp/project.xlsx" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -o project.xlsx

Her uç nokta hakkında daha fazla ayrıntı için, resmi API referansına bakın.

MPP’yi XLSX’e Node.JS’de Dönüştürme Nasıl Çalışır

Uygulama aşağıdaki adımlara bölünebilir:

  1. Kimlik doğrulamayı yapılandırma - Configuration nesnesi clientId ve clientSecret değerlerini tutar.
const config = new Configuration({
    clientId: 'YOUR_CLIENT_ID',
    clientSecret: 'YOUR_CLIENT_SECRET'
});
  1. API istemcilerini oluşturma - ApiClient, yapılandırma ile örneklenir ve TasksApi ve StorageApi‘ye aktarılır.
const apiClient = new ApiClient(config);
const tasksApi = new TasksApi(apiClient);
const storageApi = new StorageApi(apiClient);
  1. MPP dosyasını yükleme - Dosya bir tampon içine okunur ve storageApi.uploadFile aracılığıyla gönderilir.
const fileBuffer = fs.readFileSync(localInputPath);
await storageApi.uploadFile({ path: `${remoteFolder}/${remoteFileName}`, file: fileBuffer });
  1. XLSX raporunu talep etme - tasksApi.getTaskReport, reportType: 'TaskSheet' ve format: 'xlsx' parametreleriyle çağrılır.
const reportResponse = await tasksApi.getTaskReport({
    name: remoteFileName,
    folder: remoteFolder,
    reportType: 'TaskSheet',
    format: 'xlsx'
});
  1. Sonucu yerel olarak kaydetme - İkili yanıt gövdesi project.xlsx dosyasına yazılır.
fs.writeFileSync(localOutputPath, reportResponse.body);

Bu adımlar, ADIM ADIM Büyük MPP Dosyalarını Node.JS’te XLSX’e Dönüştür iş akışını gösterir ve GanttChart veya ResourceSheet gibi diğer rapor türleri için uyarlanabilir.

Aspose.CAD Cloud SDK için Gereksinimler ve Kurulum

  1. Node.js sürümü - Node.js 14 veya daha yeni bir sürüm çalıştırdığınızdan emin olun.
  2. SDK’yı kurun - npm kullanarak paketi projenize ekleyin.
    npm install @asposecloud/aspose-cad-cloud
    
    Paket resmi indirme sayfasından mevcuttur.
  3. Aspose Cloud hesabı oluşturun - Aspose Cloud panosundan clientId ve clientSecret alın.
  4. Ortam değişkenlerini ayarlayın (isteğe bağlı ancak önerilir) kimlik bilgilerini kaynak koddan uzak tutmak için.

Bu önkoşullar sağlandığında, daha önce gösterilen tam kod örneğini çalıştırabilirsiniz.

Dönüştürme Seçenekleri ve Ayarlar

Tasks API’si çıktıyı etkileyen çeşitli parametreler sunar:

  • reportType - Dışa aktarılan veri türünü belirler. Seçenekler arasında TaskSheet, GanttChart, ResourceSheet vb. bulunur. Örnekte, TaskSheet kullanılarak XLSX formatında düz bir görev listesi üretilir.
  • format - Şu anda xlsx, pdf, html formatlarını destekler. Bu değeri değiştirerek çıktı dosya türünü değiştirebilirsiniz.
  • folder - Kaynak MPP dosyasının bulunduğu bulut depolama klasörünü belirtir. Proje yapınıza göre gerektiği gibi ayarlayın.

Seçeneklerin tam listesi için, API referansına bakın.

Sonuç

Artık Node.JS’te MPP’yi XLSX’e dönüştürmek için eksiksiz, üretim‑hazır bir yönteme sahipsiniz ve bunu Aspose.CAD Cloud SDK for Node.js kullanarak yapabilirsiniz. SDK kimlik doğrulama, dosya depolama ve rapor oluşturmayı yönetir, böylece XLSX verilerini iş mantığınıza entegre etmeye odaklanabilirsiniz. Üretim kullanımı için uygun bir lisans almayı unutmayın; fiyatlandırma detayları ürün sayfasında mevcuttur ve geçici bir lisansı geçici lisans sayfası üzerinden edinebilirsiniz. İyi kodlamalar!

Sıkça Sorulan Sorular

Node.JS’de Aspose.CAD Cloud SDK kullanmadan MPP’yi XLSX’e dönüştürebilir miyim?
Özel bir ayrıştırıcı mümkün olsa da, Node.js için Aspose.CAD Cloud SDK, geliştirme süresini tasarruf ettiren ve kenar durumlarını yöneten test edilmiş, güvenilir bir çözüm sunar.

MPP’yi XLSX’e dönüştürürken hangi rapor türleri mevcuttur?
API TaskSheet, GanttChart, ResourceSheet ve daha fazlasını destekler. Farklı bir reportType seçmek, oluşturulan XLSX dosyasının yapısını değiştirir.

Dönüştürme sırasında büyük MPP dosyalarını nasıl yönetebilirim?
Depolama API’sini kullanarak büyük dosyaları parçalara bölerek yükleyin, dönüşüm durumunu izleyin ve yüksek bellek tüketimini önlemek için XLSX sonucunu akış olarak alın.

Read More