MPP إلى XER

يُعد تنسيق MPP أحد التنسيقات الأساسية لبرنامج Microsoft Project والتي تُستخدم غالبًا لتخزين أحمال العمل والجداول الزمنية والتمويل. ومنذ الإصدار المبكر لبرنامج Microsoft Project في عام 1984، أصبح يُستخدم لإدارة المشاريع وتطوير الجداول الزمنية وتعيين الميزانيات وتخصيص الموارد. لذلك، يُعد تنسيق MPP نوع الملف الأصلي المرتبط ببرنامج Microsoft Project ويخزن معلومات المشروع عند حفظ المشروع. وبالمثل، يُعد تنسيق الملف XER تنسيق ملف مشروع خاص يستخدمه تطبيق تخطيط وإدارة المشاريع Primavera P6. لذا، في حالة وجود متطلب لتحويل ملفات MPP إلى تنسيق آخر، نحتاج إما إلى تثبيت وتكوين حل محلي أو اختيار حل قائم على السحابة.

واجهة برمجة تطبيقات معالجة Microsoft Project

Microsoft Project وPrimavera P6 من بين تنسيقات الملفات الشائعة المستخدمة في تعيينات المشروع والمهام والموارد والتقويمات والسمات ومعلومات الجدولة. لتسهيل معالجة هذه المستندات برمجيًا لعملائنا، قمنا بتطوير واجهة برمجة التطبيقات Aspose.Tasks Cloud وهي عبارة عن حل قائم على REST يتيح لك الحصول على عناصر تعيين المشروع وإضافة مهام جديدة إلى المشروعات والحصول على جميع مهام المشروع وتغيير موضع المهمة وإضافة تقويم إلى المشروع والحصول على بيانات محددة زمنيًا وغير ذلك الكثير. قم بإجراء كل هذه العمليات دون تثبيت أي برنامج تابع لجهة خارجية.

علاوة على ذلك، قمنا بتطوير Aspose.Tasks Cloud SDK for .NET وهو عبارة عن غلاف حول Aspose.Tasks Cloud ويمكّنك من تنفيذ جميع المهام المتعلقة بإدارة المشاريع داخل تطبيق .NET.

تثبيت

لاستخدام .NET Cloud SDK، فإن الخطوة الأولى هي تثبيته عبر النظام. وهو متاح للتنزيل عبر NuGet وGitHub. يرجى تنفيذ الأمر التالي في المحطة الطرفية لتثبيت SDK عبر NuGet:

nuget install Aspose.Tasks-Cloud

في حالة احتياجك إلى التثبيت من NuGet Package Manager، يرجى تنفيذ الأمر التالي:

PM> Install-Package Aspose.Tasks-Cloud

نهج Visual Studio

هناك نهج آخر وهو التثبيت مباشرة داخل Visual Studio:

  1. افتح مستكشف الحلول.
  2. قم بتوسيع المشروع ثم انقر بزر الماوس الأيمن فوق مجلد الحزم ضمن الحل الخاص بك.
  3. حدد خيار إدارة حزم NuGet…
  4. انقر فوق علامة التبويب “استعراض” وابحث عن “Aspose.Tasks-Cloud”.
  5. انقر فوق مربع الاختيار بجوار حزمة Aspose.Tasks-Cloud، وحدد الإصدار المناسب في علامة التبويب اليمنى وانقر فوق زر إضافة الحزمة.
التسمية التوضيحية

Image 1:- Aspose.Tasks-Cloud as NuGet package.

اشتراك سحابي مجاني

من أجل الوصول إلى واجهات برمجة تطبيقات السحابة، نحتاج أولاً إلى إنشاء حساب اشتراك سحابي مجاني. نعم، لقد سمعت ذلك بشكل صحيح. حساب اشتراك مجاني يوفر ما يصل إلى 150 طلب معالجة مستندات مجاني. لا يلزم وجود بطاقة ائتمان أو تفاصيل دفع أخرى. لذا لإكمال هذه العملية، يرجى زيارة لوحة تحكم Aspose.Cloud. إذا كان لديك حساب GitHub أو Google، فما عليك سوى التسجيل. بخلاف ذلك، انقر فوق الزر إنشاء حساب جديد وقم بتقديم المعلومات المطلوبة. الآن قم بتسجيل الدخول إلى لوحة التحكم باستخدام بيانات الاعتماد وقم بتوسيع قسم التطبيقات من لوحة التحكم وانتقل لأسفل نحو قسم بيانات اعتماد العميل لرؤية تفاصيل معرف العميل والسر الخاص بالعميل.

بيانات اعتماد العميل

الصورة 2: - بيانات اعتماد العميل في لوحة معلومات Aspose.Cloud.

تحويل MPP إلى XER في C#

يرجى اتباع الخطوات الموضحة أدناه لإجراء تحويل ملف MPP إلى Primavera P6 XER في تطبيق C# .NET.

  • أولاً، قم بإنشاء كائن تكوين مع توفير تفاصيل معرف العميل والسر الخاص بالعميل.
  • ثانيًا، قم بإنشاء كائن TasksApi أثناء تمرير كائن التكوين كحجة.
  • ثالثًا، اقرأ ملف MPP من محرك الأقراص المحلي وقم بتحميله إلى التخزين السحابي باستخدام طريقة UploadFile(..) من TasksApi.
  • الآن قم بإنشاء كائن GetTaskDocumentWithFormatRequest حيث نقوم بتعريف اسم MPP المدخل والتنسيق الناتج من تعداد ProjectFileFormat.
  • ثم نقوم باستدعاء طريقة GetTaskDocumentWithFormat(…) من TasksApi لبدء عملية التحويل.
  • أخيرًا، لحفظ إخراج XER على محرك الأقراص المحلي، نستخدم كائن File.Create داخل طريقة saveToDisk(…).
// احصل على معرف العميل من https://dashboard.aspose.cloud/
string clientSecret = "caac6e3d4a4724b2feb53f4e460eade3";
string clientID = "4ccf1790-accc-41e9-8d18-a78dbb2ed1aa";

// إنشاء كائن تكوين
var config = new Configuration{ AppSid= clientID, AppKey = clientSecret };

// تهيئة كائن Aspose.Tasks
var tasksApi = new TasksApi(config);

String inputFile = "Home move plan.mpp";
String resultant = "Output.xer";

try
{
    // قراءة ملف MPP المدخل من التخزين المحلي
    using (var inputStream = new FileStream("/Users/nshahbaz/Downloads/" + inputFile, FileMode.Open))
    {
        var uploadFileRequest = new PostCreateRequest(inputFile, inputStream);
        
        // رفع الملف إلى التخزين السحابي
        tasksApi.UploadFile(uploadFileRequest);
    }

    // تهيئة عملية تحويل MPP إلى XER
    var response = tasksApi.GetTaskDocumentWithFormat(new GetTaskDocumentWithFormatRequest
    {
        Format = Aspose.Tasks.Cloud.Sdk.Model.ProjectFileFormat.Xer,
        Name = inputFile,
        Folder = null,
    });

    if (response != null )
    {
        Console.WriteLine("Successfully converted MPP to XER !");
    }

    // احفظ الملف الناتج على محرك الأقراص المحلي
    saveToDisk(response, "/Users/nshahbaz/Downloads/" + resultant);
}
catch (Exception ex)
{
    Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}

public static void saveToDisk(Stream responseStream, String resultantFile)
{
    var fileStream = File.Create(resultantFile);
    responseStream.Seek(0, SeekOrigin.Begin);
    responseStream.CopyTo(fileStream);
    fileStream.Close();
}

تحويل MPP إلى Primavera P6 باستخدام cURL

تُعد أوامر cURL طريقة ملائمة أخرى للوصول إلى واجهات برمجة تطبيقات REST من خلال محطة سطر الأوامر. لذا، يمكننا أيضًا الوصول إلى Aspose.Tasks Cloud عبر أوامر cURL وتحقيق متطلباتنا. ومع ذلك، قبل الوصول إلى واجهات برمجة التطبيقات، نحتاج إلى إنشاء رمز ويب JSON (JWT) استنادًا إلى تفاصيل ClientID وClientSecret المستردة من لوحة تحكم Aspose.Cloud. يُرجى تنفيذ الأمر التالي في المحطة لإنشاء رمز JWT.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=4ccf1790-accc-41e9-8d18-a78dbb2ed1aa&client_secret=caac6e3d4a4724b2feb53f4e460eade3" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

بمجرد إنشاء رمز JWT، يرجى تنفيذ الأمر التالي لتحويل ملف MPP المتوفر في التخزين السحابي إلى تنسيق XER.

curl -X GET "https://api.aspose.cloud/v3.0/tasks/Home%20move%20plan.mpp/format?format=xer&returnAsZipArchive=false" \
-H  "accept: multipart/form-data" \
-H  "authorization: Bearer <JWT Token>" \
-o Converted.xer

يمكن تنزيل ملف العينة المستخدم في المثال أعلاه من Home move plan.mpp.

خاتمة

في هذه المقالة، ناقشنا الخطوات الخاصة بكيفية تحويل ملف Microsoft Project (MPP) إلى ملف Oracle Primavera P6 XER باستخدام مقتطف كود C# .NET بالإضافة إلى استخدام الأمر cURL. علاوة على ذلك، تم تصميم آلية الترخيص بمرونة شديدة بحيث تدفع فقط مقابل الفترة الزمنية التي استخدمت فيها خدماتنا. أيضًا، بموجب اشتراك الحساب المجاني، تكون مؤهلاً لما يصل إلى 150 طلب معالجة مستندات مجاني. لذا بمجرد رضاك عن واجهة برمجة التطبيقات، يمكنك التفكير في اختيار شراء ترخيص مرن للغاية. لن يتم تحصيل رسوم منك إلا مقابل الطلبات التي قدمتها إلى الخادم ويمكن أن تصل إلى 0.005 دولار أمريكي / مكالمة واجهة برمجة التطبيقات. يمكنك زيارة صفحة التسعير لمزيد من التفاصيل.

ومع ذلك، تم تطوير حزم SDK السحابية الخاصة بنا بموجب رخصة MIT، لذا يمكن تنزيل مقتطف الكود الكامل الخاص بها من GitHub. في حالة مواجهة أي مشكلة أثناء استخدام واجهة برمجة التطبيقات أو إذا كان لديك أي استفسار ذي صلة، فلا تتردد في الاتصال بنا عبر منتدى الدعم المجاني.

مقالات ذات صلة

ونوصي أيضًا بزيارة الروابط التالية لمعرفة المزيد حول: