3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Maximo REST API(MXAPIWO)で作業指示書データを取得する方法

Posted at

はじめに

IBM Maximoは、資産管理や保全業務を効率化するための強力なプラットフォームです。
その中で、REST APIを利用することで、他システムとの連携や自動化が可能になります。

本記事では、Maximoの「作業指示書API(MXAPIWO)」を使って情報を取得する手順をご紹介します。

前提条件

以下の環境・設定を前提とします。

  • Maximo Manage 8 以降のバージョンを使用していること
  • 管理者ユーザー(maxadmin)で操作を行うこと

ゴール

この記事のゴールは、作業指示書の情報をAPI経由で取得することです。
具体的には、MaximoのREST APIでオブジェクト構造 MXAPIWO にアクセスし、作業指示書情報を取得します。

あわせて、必要な設定とコードスニペットもご紹介します。

手順概要

まずは、APIを使うまでの全体像を把握しましょう。
具体的な操作方法は後ほど詳しく解説します。

  1. APIキーの発行
  2. セキュリティグループにオブジェクト構造(MXAPIWO)のアクセス権を付与
    • ※設定変更後はログアウトしないと反映されないため注意
  3. 発行したAPIキーを使ってAPIにリクエストを送信

詳細な手順

1. APIキーの発行

サイドメニューの「統合」→「APIキー」から、「APIキーの追加」を選択します。
ここで新しいAPIキーを発行できます。

APIキーの追加

2. セキュリティ設定

APIから MXAPIWO のデータにアクセスするには、対象ユーザーが属するセキュリティグループにアクセス権限を付与する必要があります。

2-1. セキュリティグループの検索

サイドメニューの「セキュリティー」→「セキュリティー・グループ」へ移動します。

ここでは、APIを呼び出すユーザー(今回は maxadmin)が所属するセキュリティグループ(今回は MAXADMIN)を選択します。

セキュリティグループの検索

2-2. オブジェクト構造の権限設定

「オブジェクト構造」タブを開きます。
フィルターアイコンから MXAPIWO を検索し、対象の行を選択します。

MXAPIWOの選択

2-3. アクション権限と属性権限を設定

下にスクロールすると、以下の2つの権限設定欄があります。

  • 上:アクションの権限(GET, POST, PUT, DELETE)
  • 下:データ項目ごとの権限

今回は、すべて許可して保存します。

権限の設定

2-4. 設定の反映(ログアウト)

セキュリティ設定の変更を反映させるには、一度ログアウトが必要です。
Maximoではセッション中に権限変更が反映されないため注意しましょう。

ログアウト

3. APIを呼び出す

OpenAPI(Swagger UI)でAPI定義を確認できます。

URL末尾に /maximo/api.html を付けてアクセスしてください。
例:https://your-environment.com/maximo/api.html

出典: IBM Maximo REST API

Swagger UI画面1
Swagger UI画面2

4. cURLで呼び出してみる

以下のcURLコマンドで、MXAPIWO の情報を取得できます。
your-api-keyyour-environment.com は自身の環境に置き換えてください。

curl -X GET "https://masworkspace.manage.your-environment.com/maximo/api/os/mxapiwo" \
     -H "accept: application/json" \
     -H "apikey: your-api-key" \
     --insecure \
     --get \
     --data-urlencode "oslc.where=wonum=1318" \
     --data-urlencode "oslc.select=wonum,siteid,description,assetnum,failurecode,problemcode,jpnum,wopriority,estdur,status,status_description" \
     --data-urlencode "lean=1"

5. 返り値の例

{
  "member": [
    {
      "_rowstamp": "1498977",
      "status_description": "Waiting on approval",
      "worklog_collectionref": "http://localhost/maximo/api/os/mxapiwo/_QkVERk9SRC8xMzE4/modifyworklog",
      "failurecode": "PUMPS",
      "assetnum": "11430",
      "description": "作業指示書作成デモ8888",
      "siteid": "BEDFORD",
      "href": "http://localhost/maximo/api/os/mxapiwo/_QkVERk9SRC8xMzE4",
      "estdur": 0.0,
      "status": "WAPPR",
      "wonum": "1318"
    }
  ],
  "href": "http://localhost/maximo/api/os/mxapiwo",
  "responseInfo": {
    "href": "https://masworkspace.manage.your-environment.com/maximo/api/os/mxapiwo?oslc.where=wonum%3d1318&oslc.select=wonum%2csiteid%2cdescription%2cassetnum%2cfailurecode%2cproblemcode%2cjpnum%2cwopriority%2cestdur%2cstatus%2cstatus_description&lean=1"
  }
}

おわりに

MaximoではAPIを活用することで、外部連携や業務の自動化が可能になります。
今回は、作業指示書API(MXAPIWO)の呼び出し手順をご紹介しました。

この方法は、他のオブジェクト構造にも応用可能です。たとえば、

  • 資産(MXAPIASSET)
  • 保守計画(MXAPIPM)

なども同様にアクセスできます。

今後は、作業指示の自動作成や進捗管理の自動化など、より高度な業務連携にもチャレンジしてみてください。
MaximoのREST APIを活用すれば、現場の業務効率化をさらに一歩進めることが可能です。

参考リンク

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?