LoginSignup
12
12

More than 5 years have passed since last update.

[郵便番号検索] FileMakerでJSONデータを取り扱う

Last updated at Posted at 2015-03-04

ファイルメーカーのバージョン16で追加された関数を利用版をアップしました
[郵便番号API] FileMaker16でJSONデータを取り扱う


郵便番号検索のサンプルですが、JSONデータをファイルメーカーで扱うサンプルにもなっています。

ファイルメーカーでソリューションを作成している際に郵便番号で検索して住所を補完したいケースは多々あると思います。
その時の方法としてWebサービスとして公開されている郵便番号検索を利用するサンプルです。

今回利用させていただいたサイトはこちらです。
郵便番号-住所検索API

GETリクエストで郵便番号を渡すと、JSON形式で住所データを返して来てくれます。

ファイルメーカーでJSONデータを扱うために、海外サイトで公開されている以下のモジュールを利用しました。
FileMaker用JSONモジュール

サンプルファイルをダウンロード後、解凍して実行すると以下のような画面が表示されますので、郵便番号を入力して検索ボタンを押すと住所が補完されます。

FM_JSON.png

郵便番号はハイフン有りでも無しでも検索可能です。
モジュールのカスタム関数とスクリプト以外で作成した処理は検索ボタンを押した時用のスクリプトのみです。

FileMaker_郵便番号検索スクリプトステップ
1 URL から挿入 [選択; ダイアログなし; 郵便番号検索JSON::gJSON_RES; "http://api.zipaddress.net/?zipcode=" & 郵便番号検索JSON::郵便番号]
2 スクリプト実行 [「JSON-FM ( jsonEncodedText )」; 引数: 郵便番号検索JSON::gJSON_RES]
3 変数を設定 [$json; 値:Get ( スクリプトの結果 )]
4 #検索のエラー判定。エラー時はメッセージ表示
5 If [#Get ( $json; "code" )  ≠ "200"]
6   フィールド設定 [郵便番号検索JSON::都道府県; ""]
7   フィールド設定 [郵便番号検索JSON::住所1; ""]
8   カスタムダイアログを表示 ["郵便番号検索失敗"; "郵便番号の検索に失敗しました。¶[" & #Get($json; "message") & "]"]
9 Else
10  フィールド設定 [郵便番号検索JSON::都道府県; #Get (#Get ( $json; "data" ); "pref")]
11  フィールド設定 [郵便番号検索JSON::住所1; #Get (#Get ( $json; "data" ); "address")]
12 End If

ご興味がありましたら参考にしてみてください。

サンプルファイル

12
12
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
12
12