MPP til XER

MPP er et af de primære formater af Microsoft Project, der ofte bruges til at gemme arbejdsbelastninger, tidsplaner og økonomi. Siden den tidlige udgivelse af Microsoft Project i 1984 er det blevet brugt til at styre projekter, udvikle tidsplaner, sætte budgetter og allokere ressourcer. Derfor er MPP-formatet den oprindelige filtype, der er knyttet til Microsoft Project og gemmer projektoplysninger, når et projekt gemmes. På samme måde er filformatet XER et proprietært projektfilformat, der bruges af Primavera P6 projektplanlægnings- og administrationsapplikationen. Så i tilfælde af, at der er et krav om at konvertere MPP-filerne til et andet format, skal vi enten installere og konfigurere en lokal løsning eller vælge en cloud-baseret løsning.

Microsoft Project Processing API

Microsoft Project og Primavera P6 er blandt de populære filformater, der bruges til projektopgaver, opgaver, ressourcer, kalendere, attributter og planlægningsoplysninger. For at gøre det lettere for vores kunder at programmere disse dokumenter, har vi udviklet Aspose.Tasks Cloud API, som er en REST-baseret løsning, der gør det muligt for dig at få projektopgaveelementer, tilføje nye opgaver til projekter, få alle opgaver i et projekt, ændre opgaveposition, tilføje en kalender til projektet, få tidsskaleret data og meget mere. Udfør alle disse handlinger uden at installere tredjepartssoftware.

Ydermere har vi udviklet Aspose.Tasks Cloud SDK til .NET som er en indpakning omkring Aspose.Tasks Cloud og gør dig i stand til at implementere alle projektledelsesrelaterede opgaver inden for .NET-applikationen.

Installation

For at bruge .NET Cloud SDK er det første skridt at installere det over systemet. Den er tilgængelig til download via NuGet og GitHub. Udfør venligst følgende kommando i terminalen for at installere SDK’et via NuGet:

nuget install Aspose.Tasks-Cloud

Hvis du skal installere fra NuGet Package Manager, skal du udføre følgende kommando:

PM> Install-Package Aspose.Tasks-Cloud

Visual Studio tilgang

En anden tilgang er installationen direkte i Visual Studio:

  1. Åbn Solution Explorer.
  2. Udvid projektet og højreklik på mappen Pakker i din løsning.
  3. Vælg Administrer NuGet-pakker… mulighed.
  4. Klik på fanen Gennemse og søg efter “Aspose.Tasks-Cloud”.
  5. Klik på afkrydsningsfeltet ud for Aspose.Tasks-Cloud-pakken, vælg den relevante version i højre fane, og klik på knappen Tilføj pakke.
billedtekst

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

Gratis Cloud-abonnement

For at få adgang til Cloud API’erne skal vi først oprette en gratis cloud-abonnementskonto. Ja, du har hørt rigtigt. En gratis abonnementskonto, der giver op til 150 gratis anmodninger om dokumentbehandling. Der kræves ingen kreditkort eller andre betalingsoplysninger. Så for at fuldføre denne proces, besøg venligst Aspose.Cloud dashboard. Hvis du har GitHub eller Google-konto, skal du blot tilmelde dig. Ellers skal du klikke på knappen Opret en ny konto og angive de nødvendige oplysninger. Log nu ind på dashboardet ved hjælp af legitimationsoplysninger og udvid applikationssektionen fra dashboardet, og rul ned mod sektionen Klientlegitimationsoplysninger for at se klient-id og klienthemmelighedsoplysninger.

Kundeoplysninger

Billede 2:- Klientoplysninger på Aspose.Cloud dashboard.

MPP til XER i C#

Følg venligst trinene nedenfor for at udføre MPP-filkonverteringen til Primavera P6 XER i C# .NET-applikationen.

  • Først og fremmest skal du oprette et konfigurationsobjekt, mens du angiver Client ID og Client Secret detaljer.
  • For det andet skal du oprette et objekt af TasksApi, mens du sender Configuration object som et argument.
  • For det tredje skal du læse MPP-filen fra det lokale drev og uploade til skylageret ved hjælp af UploadFile(..)-metoden i TasksApi.
  • Opret nu et objekt af GetTaskDocumentWithFormatRequest, hvor vi definerer input MPP navn og resulterende format fra ProjectFileFormat optælling.
  • Derefter kalder vi GetTaskDocumentWithFormat(…)-metoden for TasksApi for at starte konverteringsprocessen.
  • Endelig i orden. for at gemme output XER på lokalt drev, bruger vi File.Create objektet inde i saveToDisk(…) metoden.
// Få ClientID fra https://dashboard.aspose.cloud/
string clientSecret = "caac6e3d4a4724b2feb53f4e460eade3";
string clientID = "4ccf1790-accc-41e9-8d18-a78dbb2ed1aa";

// oprette et konfigurationsobjekt
var config = new Configuration{ AppSid= clientID, AppKey = clientSecret };

// initialisere Aspose.Tasks-objektet
var tasksApi = new TasksApi(config);

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

try
{
    // læs input MPP-filen fra lokalt lager
    using (var inputStream = new FileStream("/Users/nshahbaz/Downloads/" + inputFile, FileMode.Open))
    {
        var uploadFileRequest = new PostCreateRequest(inputFile, inputStream);
        
        // upload filen til skylageret
        tasksApi.UploadFile(uploadFileRequest);
    }

    // initialisere MPP til XER konverteringsprocessen
    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 !");
    }

    // gem den resulterende fil på lokalt drev
    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();
}

Konverter MPP til Primavera P6 ved hjælp af cURL

cURL-kommandoerne er en anden bekvem måde at få adgang til REST API’er via kommandolinjeterminalen. Så vi kan også få adgang til Aspose.Tasks Cloud via cURL-kommandoer og opfylde vores krav. Men før vi får adgang til API’erne, skal vi generere et JSON Web Token (JWT) baseret på ClientID og ClientSecret detaljer hentet fra Aspose.Cloud dashboard. Udfør venligst følgende kommando i terminalen for at generere JWT-tokenet.

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"

Når JWT-tokenet er blevet genereret, skal du udføre følgende kommando for at konvertere MPP-fil, der er tilgængelig i Cloud-lagring, til XER-format.

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

Den anvendte prøvefil. ovenstående eksempel kan downloades fra Home move plan.mpp.

Konklusion

I denne artikel har vi diskuteret trinene til, hvordan man konverterer Microsoft Project (MPP)-fil til Oracle Primavera P6 XER-fil ved hjælp af C# .NET-kodestykke samt brug af cURL-kommandoen. Desuden er licensmekanismen blevet så fleksibelt designet, at du kun betaler for det interval, du har brugt vores tjenester. Under et gratis kontoabonnement er du også berettiget til op til 150 anmodninger om gratis dokumentbehandling. Så når du er tilfreds med API’en, kan du overveje at vælge et licenskøb, som er ret fleksibelt. Du debiteres kun for de anmodninger, du har lavet til serveren, og det kan være så lavt som $0,005 / API-kald. Du kan besøge pricing-siden for yderligere detaljer.

Ikke desto mindre er vores Cloud SDKS udviklet under MIT License, så deres komplette kodestykke kan downloades fra GitHub. I tilfælde af at du støder på problemer, mens du bruger API’en, eller hvis du har en relaterede forespørgsel, er du velkommen til at kontakte via Free Support-forum.

Relaterede artikler

Vi anbefaler også, at du besøger følgende links for at lære mere om: