見出し画像

FileMaker Pro 18 Advancedからkintoneのアプリにレコードを追加する

こんにちは、エミックの松尾です。FileMaker Pro 東京ユーザーズミーティング(FM-Tokyo)のある日の午前中にカスタムWeb勉強会というFileMakerとWebに関する勉強会を開催していますが、4月のFM-Tokyoが開催中止になったことを受けて、2020年4月のカスタムWeb勉強会の開催を中止します。6月以降の予定については詳細が決まり次第ご案内したいと思います。今回の記事では、kintone REST APIを使用してFileMaker Pro 18 Advancedからkintoneのアプリにレコードを追加する方法について記しています。

FileMaker プラットフォームについて

業務改善に役立つアプリを構築できるFileMaker プラットフォームはAppleの子会社であるClaris社(Claris International Inc.)が開発・販売しているソフトウェアおよびクラウドサービスです。

プログラミング言語での開発経験がない人でもiPadで動作する業務アプリを作成可能

1985年から続く歴史のあるソフトウェアであり、WindowsおよびmacOSで利用できるデスクトップ向けのFileMaker Pro Advancedには45日間試用できる無料評価版が用意されています。

FileMaker プラットフォームであれば、プログラミング言語での開発経験がない方でも、iPadでもデスクトップでも動作する業務アプリを作ることができます。FileMaker Pro Advancedを用いて“カスタム App”と呼ばれるファイルを作成し、そのファイルを業務アプリとして活用できます。

FileMaker Pro Advancedでカスタム Appを作成

FileMakerでは[URL から挿入]スクリプトステップを使うことでHTTPリクエストを送信できます。このスクリプトステップをインターネットに接続している状態で使用するとkintoneにデータを登録できます。

FileMaker Pro Advancedでカスタム Appを作成するには、[ファイル]メニューの[新規作成...]を選択します。

[ファイル]メニューの[新規作成...]を選択してカスタム Appを作成

次に「新規」を選択したままの状態で[作成]をクリックします。

FileMaker Pro Advancedの[作成]ウインドウ

名前については今回は「PhotoReports.fmp12」とします。名前を入力して、保存場所を選んでから[保存]をクリックすると、指定した場所にカスタム Appが作成されます。

カスタム Appの名前を入力

カスタム Appを作成すると、[データベースの管理]ダイアログボックスが表示されます。フィールド名の欄に「タイトル」と入力して、[作成]をクリックします。

[データベースの管理]ダイアログボックスでタイトルフィールドを作成

FileMakerでは「タイトル」は予約語であるため、「選択された名前は下記の理由で計算式の中では通常は使用できません。」というメッセージが表示されますが、今回は気にせず[OK]をクリックします。

「タイトル」というフィールド名にした場合に表示されるダイアログボックス

続けてフィールド名の欄に「メモ」と入力して、[作成]をクリックします。

[データベースの管理]ダイアログボックスでメモフィールドを作成

[OK]を押して、フィールドの設定作業を完了します。

[OK]を押してフィールドの設定作業を完了

フィールドの設定作業が完了すると、データを表示・入力できる画面(レイアウト)が自動的に作成されます。タイトルおよびメモフィールドに何かデータを入力した後、フィールドの外をどこかクリックすると値が保存されるようになっています。

[URL から挿入]スクリプトステップでHTTPリクエストを送信

特定の処理を自動化するスクリプトを作成するには[スクリプト]メニューの[スクリプトワークスペース...]を選びます。

FileMaker Pro Advancedのスクリプトワークスペースでスクリプトを作成

[+]をクリックします。

スクリプトワークスペースの画面で[+]をクリックして新規スクリプトを作成

後から判別しやすいように、スクリプトの名称を「新規スクリプト」から「kintoneに登録」に変更します。

スクリプトの名称を「新規スクリプト」を「kintoneに登録」に変更

スクリプトステップの検索欄に「URL」と入力すると、目的のスクリプトステップを素早く見つけることができます。

検索欄に「URL」を入力してスクリプトステップを検索

[URL から挿入]スクリプトステップをダブルクリックすると、スクリプトに追加できます。

[URL から挿入]スクリプトステップを追加

オプションの[ターゲット]をチェックすると、[ターゲットの指定]ダイアログボックスが表示されます。今回は[変数]をチェックして、変数の欄に「$response」と入力します。

[ターゲットの指定]ダイアログボックス

[OK]を押してダイアログボックスを閉じた後、[URL を指定]の右にある[指定...]をクリックして、kintoneで単一のレコード登録に使うURIを入力します(例:「https://example.cybozu.com/k/v1/record.json」)。「example」の代わりに実際に使用しているkintoneのサブドメインを指定してください。

HTTPリクエスト送信先のURLを指定

[SSL 証明書の検証]にチェックをつけます。

[SSL 証明書の検証]を忘れずにチェック

[cURL オプションの指定]の右にある[指定...]をクリックして、次の文字列をコピーした後、[計算式の指定]ダイアログボックス内にペーストします。

"-X POST --header \"Content-Type: application/json\" --header \"X-Cybozu-API-Token: YOUR_TOKEN\" --data-raw " & Quote(JSONSetElement ("";
["app" ; 46 ; JSONNumber];
["record" ; JSONSetElement("";
["文字列__1行_"; JSONSetElement ( ""; "value"; PhotoReports::${タイトル}; JSONString ); JSONObject];
["文字列__複数行_"; JSONSetElement ( ""; "value"; PhotoReports::メモ; JSONString ); JSONObject]
); JSONObject]
))

[OK]を押した後、[スクリプト]メニューの[スクリプトの保存]を選ぶと、作成したスクリプトの内容を保存できます。

なお、今回のサンプルは、kintoneアプリストアの「フォトレポート」アプリを利用する前提でのサンプルになっています。アプリのIDは46ではなく実際のアプリIDに、「YOUR_TOKEN」という文字列については実際のAPIトークンに置き換えてください。

kintoneアプリストアで入手できるフォトレポートアプリ

kintoneでAPIトークンを生成する手順については、kintone ヘルプをご参照ください。kintone REST APIの概要や関連情報については以前の記事が参考になると思います。

スクリプトが動作するか確認する

[スクリプト]メニューの[kintoneに登録]を選択すると、スクリプトが実行されます。スクリプトを実行して[OK]を押した後に、実際にkintoneでレコードが作成されているか確認しましょう。

FileMaker Pro Advancedの[スクリプト]メニューからスクリプトを実行

まとめ

kintone REST APIを使用してFileMaker Pro 18 Advancedからkintoneのアプリにレコードを追加する方法について解説しました。FileMaker プラットフォームも業務改善に役立つアプリを構築できる便利なソフトウェアです。次回は、iPadやiPhoneでインターネットに接続していない時に書いたメモをkintoneに登録できるように、FileMaker Pro Advancedで作成したカスタム AppをFileMaker Goにコピーする方法について解説したいと思います。

この記事が気に入ったらサポートをしてみませんか?