次の方法で共有


QueueSystem.ReadJobStatusSimple メソッド

Project Server キューに指定したジョブに関する状態の情報を取得します。

名前空間:  WebSvcQueueSystem
アセンブリ:  ProjectServerServices (ProjectServerServices.dll 内)

構文

'宣言
<SoapDocumentMethodAttribute("https://schemas.microsoft.com/office/project/server/webservices/QueueSystem/ReadJobStatusSimple", RequestNamespace := "https://schemas.microsoft.com/office/project/server/webservices/QueueSystem/",  _
    ResponseNamespace := "https://schemas.microsoft.com/office/project/server/webservices/QueueSystem/",  _
    Use := SoapBindingUse.Literal, ParameterStyle := SoapParameterStyle.Wrapped)> _
Public Function ReadJobStatusSimple ( _
    jobUIDs As Guid(), _
    includeWaitTime As Boolean _
) As QueueStatusDataSet
'使用
Dim instance As QueueSystem
Dim jobUIDs As Guid()
Dim includeWaitTime As Boolean
Dim returnValue As QueueStatusDataSet

returnValue = instance.ReadJobStatusSimple(jobUIDs, _
    includeWaitTime)
[SoapDocumentMethodAttribute("https://schemas.microsoft.com/office/project/server/webservices/QueueSystem/ReadJobStatusSimple", RequestNamespace = "https://schemas.microsoft.com/office/project/server/webservices/QueueSystem/", 
    ResponseNamespace = "https://schemas.microsoft.com/office/project/server/webservices/QueueSystem/", 
    Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public QueueStatusDataSet ReadJobStatusSimple(
    Guid[] jobUIDs,
    bool includeWaitTime
)

パラメーター

  • jobUIDs
    型: []

    キュー ジョブの Guid の配列。

  • includeWaitTime
    型: System.Boolean

    場合trueジョブの予定待機時間が含まれます。

戻り値

型: WebSvcQueueSystem.QueueStatusDataSet
各ジョブのQueueStatusDataSet.StatusRowデータを要求されたジョブの状態です。

注釈

ReadJobStatusSimpleは、ジョブのグループの追跡 ID を使用しません。同じ追跡 ID を持つすべてのジョブのステータスを取得の例は、 ReadJobStatusを参照してください。

プロジェクト サーバーのアクセス許可

次のアクセス許可のいずれかが必要です。

権限

説明

標準的でないです。

現在のユーザーは、ジョブの所有者です。

ManageQueue

Project Server のキューを管理することができます。グローバル アクセス権。

次の例では、 GetStatusOfQueueJobsメソッドは、 QueueSystemUtilitiesという名前のクラスで。GetStatusOfQueueJobsは、 ReadJobStatusの例では、同じメソッド名のオーバー ロードです。QueueSystemWSは、任意のQueueSystemの Web 参照の名前です。

public WebSvcQueueSystem.QueueStatusDataSet GetStatusOfQueueJobs(
    WebSvcQueueSystem.QueueSystem q,
    Guid[] jobGuids,
    bool includeWaitTime)
{
    WebSvcQueueSystem.QueueStatusDataSet dsQStatus = 
        q.ReadJobStatusSimple(jobGuids, includeWaitTime);
    return dsQStatus;
}

次のコードは方法については、 QueueCreateProjectとQueuePublishジョブの Guid の配列を作成し、しGetStatusOfQueueJobs、 ReadJobStatusSimpleを呼び出してを呼び出します。

using System.Threading;
using PSLibrary = Microsoft.Office.Project.Server.Library;
. . .
private static ProjectWS.Project project = 
            new ProjectWS.Project();
private static QueueSystemWS.QueueSystem queueSystem =
    new QueueSystemWS.QueueSystem(); 
private static QueueSystemUtils queueSystemUtils = new QueueSystemUtils();
. . .
ProjectWS.ProjectDataSet dsProject =
    new ProjectWS.ProjectDataSet();
ProjectWS.ProjectDataSet.ProjectRow projectRow =
    dsProject.Project.NewProjectRow();

Guid projectGuid = Guid.NewGuid();
projectRow.PROJ_UID = projectGuid;
projectRow.PROJ_NAME = this.txtProjectName.Text;
projectRow.PROJ_TYPE =
    Convert.ToInt32(PSLibrary.Project.ProjectType.Project);

dsProject.Project.AddProjectRow(projectRow);

// Create GUIDs for the queue job and for tracking multiple jobs.
Guid jobGuidCreateProject = Guid.NewGuid();
Guid trackingGuid = Guid.NewGuid();

bool validateOnly = false;
string queueStatus = "";
// Create and save project to the Draft database.

project.QueueCreateProject(jobGuidCreateProject, dsProject, validateOnly);
// Wait a few seconds, or create a WaitForQueue method.
Thread.Sleep(3000);

ProjectWS.ProjectRelationsDataSet dsProjectRelations =
    new ProjectWS.ProjectRelationsDataSet();
Guid jobGuidPublish = Guid.NewGuid();

string wssUrl = "" // Default SharePoint project workspace. 
bool fullPublish = true;

// Publish the project to the Published database.
dsProjectRelations = project.QueuePublish(jobGuidPublish, projectGuid, fullPublish, wssUrl);

Thread.Sleep(500);

Guid[] jobGuids = { jobGuidCreateProject, jobGuidPublish };

WebSvcQueueSystem.QueueStatusDataSet dsQStatus =
    queueSystemUtils.GetStatusOfQueueJobs(queueSystem, jobGuids, includeWaitTime);
. . .

QueueStatusDataSet.Statusの表は、 jobGuids配列内のすべてのジョブの状態を示します。次の表は、いくつかのフィールドのテーブルに表示、 Status前のコードの実行後に。

キュー

id

メッセージ

プロパティ

ジョブ

完了

State

キュー

位置

Percent/パーセント

終了

キュー

エントリ時刻

キュー

処理

時刻型 (Time)

キュー

完了

時刻型 (Time)

wait

時刻型 (Time)

1

22

4

-1

100

6/28/2011

2時 42分 PM

6/28/2011

2時 42分 PM

6/28/2011

2時 42分 PM

0

1

24

1

4

0

6/28/2011

2時 42分 PM

1

QueueMessageType 22 は、 ProjectCreateです。ジョブがキューになったJobState 4 は、 Successです。

QueueMessageType 24 は、 ProjectPublishです。ジョブがキュー上で 4 番目JobState 1 は、 ReadyForProcessingです。予定待機時間は 1 秒です。

関連項目

参照先

QueueSystem クラス

QueueSystem メンバー

WebSvcQueueSystem 名前空間

ReadJobStatus

その他の技術情報

How to: Use the QueueSystem Service