1. Cloud development

仕事の管理

日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

Scripting SDKを使ってジョブ管理(ジョブおよび関連ターゲットの操作の作成、更新、削除)には、以下の手順に従ってください。

  1. ターゲットを持たないジョブエンティティを作成し、その状態を Createdに設定します。
  2. 職務記述書のエンティティを作成します。
  3. すべてのジョブターゲットはJobs APIを使って作成します。ターゲットは自動的にジョブにリンクされます。
  4. ジョブステートを Pendingに更新してください。

これらのステップは、ターゲットが一つある仕事や複数のターゲットがいる仕事に活用してください。

!注これらの手順は、ウェブやSDKやREST APIを使ってジョブを管理する場合にも適用されます。

以下のスニペットは、Scripting SDKを使ってジョブを管理する方法の例を示しています。

!注代わりにウェブSDKを使うには、以下のコードでMClientをclientに置き換えてください。

var jobId = await CreateJobEntityAsync();

var jobDescriptionId = await CreateJobDescriptionEntityAsync(jobId);

var assets = 12345, 67890; foreach (var assetd in asssets) { var targetId = await CreateTargetEntityAsync(asset, jobId); }

await UpdateJobEntityAsync(jobdId);

async Task CreateJobEntityAsync() { var newJobEntity = await MClient.EntityFactory.CreateAsync("M.Job");

newJobEntity.SetPropertyValue("Job.State", "Created"); ... // other properties setup

return await MClient.Entities.SaveAsync(newJobEntity); }

async Task UpdateJobEntityAsync(long jobId) { var job = await MClient.Enties.GetAsync(jobId);

newJobEntity.SetPropertyValue("Job.State", "Pending");

return await MClient.Entities.SaveAsync(job); }

async Task CreateJobDescriptionEntityAsync(long jobId) { var newjobDescriptionEntity = await MClient.EntityFactory.CreateAsync("M.JobDescription");

newjobDescriptionEntity.SetPropertyValue("Job.ConfigurationJob.Configuration", JToken.FromObject(new { some = "configuration" })); ... // other properties setup

return await MClient.Jobs.SaveDescriptionAsync(jobId, newjobDescriptionEntity); }

async Task CreateTargetEntityAsync(long assetId, long jobId) { var newTargetEntity = await MClient.EntityFactory.CreateAsync("M.Target");

newTargetEntity.SetPropertyValue("Target.Location", assetId.ToString()); newTargetEntity.SetPropertyValue("Target.State", "Pending"); newTargetEntity.SetPropertyValue("Target.Condition", "Pending"); ... // other properties setup

return await MClient.Jobs.SaveTargetAsync(jobId, newTargetEntity); }

この記事を改善するための提案がある場合は、 お知らせください!