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.
- Erişim belirteci alın -
YOUR_CLIENT_IDveYOUR_CLIENT_SECRETdeğ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"
- Kaynak MPP dosyasını yükle - önceki adımdan alınan token’ı
YOUR_ACCESS_TOKENiç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"
- 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
- 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:
- Kimlik doğrulamayı yapılandırma -
ConfigurationnesnesiclientIdveclientSecretdeğerlerini tutar.
const config = new Configuration({
clientId: 'YOUR_CLIENT_ID',
clientSecret: 'YOUR_CLIENT_SECRET'
});
- API istemcilerini oluşturma -
ApiClient, yapılandırma ile örneklenir veTasksApiveStorageApi‘ye aktarılır.
const apiClient = new ApiClient(config);
const tasksApi = new TasksApi(apiClient);
const storageApi = new StorageApi(apiClient);
- MPP dosyasını yükleme - Dosya bir tampon içine okunur ve
storageApi.uploadFilearacılığıyla gönderilir.
const fileBuffer = fs.readFileSync(localInputPath);
await storageApi.uploadFile({ path: `${remoteFolder}/${remoteFileName}`, file: fileBuffer });
- XLSX raporunu talep etme -
tasksApi.getTaskReport,reportType: 'TaskSheet'veformat: 'xlsx'parametreleriyle çağrılır.
const reportResponse = await tasksApi.getTaskReport({
name: remoteFileName,
folder: remoteFolder,
reportType: 'TaskSheet',
format: 'xlsx'
});
- Sonucu yerel olarak kaydetme - İkili yanıt gövdesi
project.xlsxdosyası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
- Node.js sürümü - Node.js 14 veya daha yeni bir sürüm çalıştırdığınızdan emin olun.
- SDK’yı kurun - npm kullanarak paketi projenize ekleyin.
Paket resmi indirme sayfasından mevcuttur.
npm install @asposecloud/aspose-cad-cloud - Aspose Cloud hesabı oluşturun - Aspose Cloud panosundan
clientIdveclientSecretalın. - 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ındaTaskSheet,GanttChart,ResourceSheetvb. bulunur. Örnekte,TaskSheetkullanılarak XLSX formatında düz bir görev listesi üretilir.format- Şu andaxlsx,pdf,htmlformatları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.