Primavera へのプロジェクトのインポートとエクスポート

Primavera Proprietary Exchange Format (XER)(Oracle Inc. によって開発された)は、 Primavera P6 Project Management ソリューションです。多くの企業環境では、プロジェクトデータは Microsoft ProjectPrimavera、それぞれ異なる内部形式を使用します。

Aspose.Tasks for .NET は、 プロジェクトのインポートおよびエクスポート これらのシステム間で、次の形式をサポートしています: XER、XML (P6XML)、MPX、および Primavera データベース(SQLite スタンドアロン DBs を含む)。これにより、複数のプロジェクト管理プラットフォームが関与する場合でも円滑な共同作業が可能になります。

Primavera ファイルからのデータのインポート

Primavera XML ファイル形式からのデータのインポート

Aspose.Tasks は、Microsoft Project の XML や MPP 形式と同様に Primavera XML をインポートできます。Project クラスは、他の Project ファイルと同じコンストラクタを使用してこの種類のファイルを読み込む機能を提供します。

1Project project = new Project("Project.xml");
2ProjectFileInfo info = Project.GetProjectFileInfo("Project.xml");
3Console.WriteLine(info.ProjectFileFormat);

Primavera MPX ファイル形式からのデータのインポート

この例は、MPX 形式で保存されたプロジェクトを読み込む方法を示しています。

1Project project = new Project("Primavera1.mpx");
2ProjectFileInfo info = Project.GetProjectFileInfo("primavera1.mpx");
3Console.WriteLine(info.ProjectFileFormat);

Primavera XML ファイルからプロジェクト UID を読み取る

Primavera XML ファイルは複数のプロジェクトを含むことがあり、それぞれが固有の UID を持っています。Aspose.Tasks for .NET の API は、プロジェクトからそのようなすべての UID を読み取り、UID の一覧から特定の ID を使ってプロジェクトを読み込む機能を提供します。

1PrimaveraXmlReader reader = new PrimaveraXmlReader("Project.xml");
2List<int> listOpProjectUids = reader.GetProjectUids();

複数プロジェクトを含む Primavera XML ファイルの読み取り

以下の例は、複数のプロジェクトを含む Primavera XML ファイルを扱う方法を示します。

1PrimaveraXmlReadingOptions options = new PrimaveraXmlReadingOptions();
2options.ProjectUid = 4557;
3// Returns project with special Uid
4Project project = new Project("Project.xml", options); 

Primavera データベースからのプロジェクトデータのインポート

Aspose.Tasks for .NET の API は、Primavera データベースからプロジェクトデータを読み取る機能を提供します。以下のサンプルコードは、データベースから読み取るために Project クラスを使用する方法を示しています。

 1SqlConnectionStringBuilder sb = new SqlConnectionStringBuilder();
 2sb.DataSource = "192.168.56.3,1433";
 3sb.Encrypt = true;
 4sb.TrustServerCertificate = true;
 5sb.InitialCatalog = "PrimaveraEDB";
 6sb.NetworkLibrary = "DBMSSOCN";
 7sb.UserID = "privuser";
 8sb.Password = "***";
 9
10// Initialize a new instance of the PrimaveraDbSettings class with connection string and project id
11PrimaveraDbSettings settings = new PrimaveraDbSettings(sb.ConnectionString, 4502);
12
13// Initialize a new instance of the Project class
14Project project = new Project(settings);

Primavera SQLite データベースのサポート

スタンドアロンの Primavera P6 SQLite データベースもサポートしており、オフラインでのプロジェクトデータアクセスを可能にします。

1const int projectId = 4502;
2// Create Primavera DB Settings using connection string and project id
3PrimaveraDbSettings primaveraDbSettings = new PrimaveraDbSettings("Data Source=\\PPMDBSQLite.db", projectId);
4primaveraDbSettings.ProviderInvariantName = "System.Data.SQLite";
5// Create new project using primavera db settings
6Project project = new Project(primaveraDbSettings);

Primavera 形式へのプロジェクトデータのエクスポート

Aspose.Tasks は、プロジェクトデータをエクスポートする際に SaveFileFormat enumerator を使用し、XML、XER、MPX 形式のオプションを提供します。

プロジェクトデータを Primavera XML 形式にエクスポートする

1Project project = new Project("New Project.mpp");
2project.Save("ExportProjectDataToXMLFormat_out.xml", SaveFileFormat.PrimaveraP6XML);

プロジェクトデータを Primavera XER 形式にエクスポートする

1Project project = new Project("New Project.mpp");
2project.Save("ExportProjectDataToXERFormat_out.mpp", SaveFileFormat.PrimaveraXER);

プロジェクトデータを Primavera MPX 形式にエクスポートする

1Project project = new Project("New Project.mpp");
2project.Save("ExportProjectDataToPrimaveraMPXFormat_out.xml", SaveFileFormat.MPX);

Primavera XML の保存オプション

Primavera XML ファイルに WBS が含まれておらず(アクティビティのみの場合)、Aspose.Tasks はこの種類のファイルを正しく読み取ることができません。API はタスクのツリーを作成するためにルートタスクを必要とするためです。この場合、ファイルに存在しない場合であっても、特定のファイルを読み取れるように API は RootTask を作成します。ユーザーが読み取り後に保存したい場合、作成された RootTask と共に保存されます(読み取り前には存在していなかったものです)。このオプションは、作成された RootTask を含めてファイルに保存するかどうかを決定するのに役立ちます。既定では true に設定されています。

1Project project = new Project("project.xml");
2
3// Specify xml save options
4PrimaveraXmlSaveOptions options = new PrimaveraXmlSaveOptions();
5options.SaveRootTask = false;
6project.Save("UsingPrimaveraXMLSaveOptions_out.xml", options);

Aspose.Tasks for .NET を使用すると、次のことが可能になります:

これにより、Aspose.Tasks は、 シームレスな相互運用性 を Microsoft Project と Primavera の環境間で実現し、スムーズなデータ交換を確保して手作業を最小限に抑えます。

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.