1

MPXJ - Java を使用して、MS Project 2010 .mpp ファイルから基本的なタスクとリソースの情報を抽出しようとしています。ファイルを開いてすべてのタスクをダンプするのに問題はありませんが、タスクに割り当てられたリソースにアクセスしようとすると問題が発生します。Task.GetResourceNames() を呼び出していますが、毎回 null が返されます。Task.GetResourceAssignments() の呼び出しも試みましたが、これも毎回 null を返します。

1 つのサマリー タスクと 3 つのサブタスクがリンクされた非常に単純なプロジェクトを作成し、これらのそれぞれに異なるリソースを割り当てました。

プログラムを実行すると、すべてのタスクが表示されますが、GetResourceNames() の呼び出しは依然として null を返します。

間違ったインターフェイスを介してこれを行っていますか?

4

1 に答える 1

0

mpp ファイルの場合、GetResourceNames() は常に null を返すことが javadoc で確認できます。特定のタスクからリソース名を取得するには、次のようにしました。

            List<ResourceAssignment> Resources = task.getResourceAssignments();
// getResourceAssignments() return a list of ResourceAssignment of a specific task.
            Iterator i = Resources.iterator();

            while (i.hasNext()) {
                ResourceAssignment ra = (ResourceAssignment) i.next();
                Resource r = ra.getResource();
// we get the resource from the resource assignment
                System.out.println("\t Assigned Resources : " + r.getName());
// print the name of the Resource. If you want to do the same than GetResourceNames, just add each name in a String and you will have the same results at the end.
            } 

お役に立てれば。

于 2013-01-22T22:32:14.543 に答える