<シリーズ 第4回> 株式会社オムニサイエンス社の「API-Bridge」を使ったIBM i とkintoneのAPI連携をやってみた!
投稿者:クラウド事業本部 クラウドサービス部 山﨑
<シリーズ 第4回> 「IBM i 」から「kintone」のデータを更新してみよう
本シリーズでは、IBM i のモダナイズ、API連携について、実際にSaaS等と連携させた検証作業についてご案内します。
さて、「IBM i 」から「kintone」のデータをいじくるシリーズの最終回になります。
最終回は「kintone」データの更新をご紹介いたします。
今回も前回使用した「kintone」<顧客リスト>のデータを使用します。
まずは完成イメージをご紹介します。
kintone側のデータは、レコード番号48まで24件存在しています。
![](https://storage.googleapis.com/website1-prd-wordpress-bkt/1/2023/07/TechBlog_API-Bridge④-01_kintone_1-min-1024x566.jpg)
先頭のレコード番号「48」のデータを「IBM i 」から更新します。
入り口は、削除と同様、データ照会の画面になります。
今回は、「U」:更新についてのご紹介となります。
![](https://storage.googleapis.com/website1-prd-wordpress-bkt/1/2023/07/TechBlog_API-Bridge④-02_IBM-i-_1-min.jpg)
「U/D」欄に更新の「U」を入力し、実行キーを押下します。
![](https://storage.googleapis.com/website1-prd-wordpress-bkt/1/2023/07/TechBlog_API-Bridge④-03_IBM-i-_2-min.jpg)
更新画面が表示されますので、データを入力します。今回は部署名を「IR事業本部」に変更します。
![](https://storage.googleapis.com/website1-prd-wordpress-bkt/1/2023/07/TechBlog_API-Bridge④-04_IBM-i-_3-min.jpg)
![](https://storage.googleapis.com/website1-prd-wordpress-bkt/1/2023/07/d408db07dddd7f9309ae103f5d031b97-3.png)
![](https://storage.googleapis.com/website1-prd-wordpress-bkt/1/2023/07/TechBlog_API-Bridge④-05_IBM-i-_4-min.jpg)
入力後実行キー押下すると確認画面が表示されますので、よろしければ更新キー(ここではF8キー)を押下。
![](https://storage.googleapis.com/website1-prd-wordpress-bkt/1/2023/07/TechBlog_API-Bridge④-06_IBM-i-_5-min.jpg)
データ更新が行なわれ、一覧画面に戻ってきます。
部署名が変更されていることが確認できます。
![](https://storage.googleapis.com/website1-prd-wordpress-bkt/1/2023/07/TechBlog_API-Bridge④-07_IBM-i-_6-min.jpg)
では、「kintone」の画面を確認してみましょう。
![](https://storage.googleapis.com/website1-prd-wordpress-bkt/1/2023/07/TechBlog_API-Bridge④-08_kintone_2-min-1024x566.jpg)
レコード番号「48」のデータがちゃんと更新されています!
というわけで、実装方法をご紹介していきましょう。
まず、「APIBridge」の定義です。
※これまでにご紹介した通り、「kintone」の当該テーブルにアクセスするためには「トークン」が必要となります。
今回はデータの更新なので、メソッドには「*PUT」を指定します。
![](https://storage.googleapis.com/website1-prd-wordpress-bkt/1/2023/07/TechBlog_API-Bridge④-09_API_Bridge_1-min.jpg)
一覧表示同様、2画面目から5画面目は未使用です。
![](https://storage.googleapis.com/website1-prd-wordpress-bkt/1/2023/07/TechBlog_API-Bridge④-10_API_Bridge_2-min.jpg)
![](https://storage.googleapis.com/website1-prd-wordpress-bkt/1/2023/07/TechBlog_API-Bridge④-11_API_Bridge_3-min.jpg)
![](https://storage.googleapis.com/website1-prd-wordpress-bkt/1/2023/07/TechBlog_API-Bridge④-12_API_Bridge_4-min.jpg)
![](https://storage.googleapis.com/website1-prd-wordpress-bkt/1/2023/07/TechBlog_API-Bridge④-13_API_Bridge_5-min.jpg)
6画面目にパラメータを指定します。
更新データをIFSのディレクトリにJSON形式で作成しました。
(詳細は後述します)
![](https://storage.googleapis.com/website1-prd-wordpress-bkt/1/2023/07/TechBlog_API-Bridge④-14_API_Bridge_6-min-1024x537.jpg)
7画面目はデータ取得定義と同様になります。
(更新時は指定したライブラリは特に使用しません)
![](https://storage.googleapis.com/website1-prd-wordpress-bkt/1/2023/07/TechBlog_API-Bridge④-15_API_Bridge_7-min.jpg)
これで定義は終わりです。
6画面目で指定したJSONファイル「kintone/upd.json」の内容は以下の通りです。
更新処理で編集・書き込みを行なっています。
![](https://storage.googleapis.com/website1-prd-wordpress-bkt/1/2023/07/TechBlog_API-Bridge④-16_JSON_1-min.jpg)
次に、RPGを用意します。
既存の照会処理から呼び出されます。
1.SQLUPD:更新処理およびJSONファイルの出力用
ソースは以下となります。
(毎回言い訳してますが、ソースの美しさは求めていませんので、中途半端なILERPGだな、と言わないでください、あしからず)
SQLUPD
![](https://storage.googleapis.com/website1-prd-wordpress-bkt/1/2023/07/TechBlog_API-Bridge④-17_RPG_SQLUPD-278x1024.jpg)
次に画面ファイルを用意します。
1.SQLD2:顧客データ更新画面
SQLD2
![](https://storage.googleapis.com/website1-prd-wordpress-bkt/1/2023/07/TechBlog_API-Bridge④-18_DSP_SQLD2-576x1024.jpg)
次に、CLPを用意します。
CLPは以下の構成としました。
1.API_INIT:初期設定用(前回ご紹介の削除処理同様、登録処理でも使用している共通処理です)
2.API_EXEC4:更新APIBridge実行用
API_INIT JSONデータを出力するファイルをクリア
![](https://storage.googleapis.com/website1-prd-wordpress-bkt/1/2023/07/TechBlog_API-Bridge④-19_CLP_SQL_INIT.jpg)
API_EXEC4 RPGで作成した更新用のJSONファイルをIFSのフォルダにコピーしています。
CCSIDはUTF-8の「1208」を指定しています。
![](https://storage.googleapis.com/website1-prd-wordpress-bkt/1/2023/07/TechBlog_API-Bridge④-20_CLP_API_EXEC4.jpg)
いかがでしょうか。データ更新処理も簡単に作成できました。
これまで登録処理、削除処理とクリアしてきた我々にとって、更新処理は苦労なく実装できました。
ただ、この事例はあくまでも1件ずつの更新であり、サブファイル上で更新を行なう一括更新だと
また話は変わってきます。
まあ、そこは百戦錬磨の読者の方々に、これまでのサンプルを参考に、それぞれトライいただくということで、
今回のお話を終了したいと思います。
さて、冒頭にもご紹介したように、今回で「IBM i 」から「kintone」でデータを操作するチャレンジは終了となります。
今後はシリーズ2として、「kintone」から「IBM i 」のデータを操作するというテーマでお届けしたいと思います。
こちらは、「kintone」でのカスタマイズをゴリゴリ書いていくことになりますので、ちょっと大変です。
(というか、私には相当大変でした)
というわけで、これにてシリーズ1 「IBM i 」から「kintone」のデータを操作する、を終了します。
これまでお付き合いいただき、ありがとうございました。
また、シリーズ2もよろしくお願いいたします。
ひとまずお別れとなります。さようなら…
※「IBM i 」は、IBM株式会社の登録商標です。
「APIBridge」は、株式会社オムニサイエンスの登録商標です。
「kintone」は、株式会社サイボウズの登録商標です。
– 顧客マスター・メンテナンス –
– 得意先マスター・メンテナンス –
※製品名、サービス名、会社名、ロゴは、一般に各社の商標、または登録商標です。なお、本文および図表中では、「™」、「®」は明記しておりません。
製品の仕様・性能は予告なく変更する場合がありますので、ご了承ください。
本サービスの詳細リンク先:IBM i アプリケーションモダナイズ
本サービスの詳細を知りたい場合は、こちらよりお問い合わせください。