郵便番号から住所への変換
出典: SugarForum.jp
特定モジュールに適用する場合
[[SugarRoot/custom/modules/<適用したいモジュール名>/metadata/editviewdefs.php]]
の24行目付近、include情報にajax_zip3のJavascriptを追記。
'includes' =>
array (
0 =>
array (
'file' => 'include/javascript/ext-2.0/adapter/ext/ext-base.js',
),
1 =>
array (
'file' => 'include/javascript/ext-2.0/ext-all.js',
),
2 =>
array (
'file' => 'include/Dynamic_dropdown.js',
),
),
の箇所を
'includes' =>
array (
0 =>
array (
'file' => 'include/javascript/ext-2.0/adapter/ext/ext-base.js',
),
1 =>
array (
'file' => 'include/javascript/ext-2.0/ext-all.js',
),
2 =>
array (
'file' => 'include/Dynamic_dropdown.js',
),
3 =>
array (
'file' => 'http://ajaxzip3.googlecode.com/svn/trunk/ajaxzip3/ajaxzip3.js',
),
),
のように、書き足す。
次に郵便番号を指定したいフィールドを探し、カスタムコードを追記する。
array (
'name' => '<適用したい項目名(郵便番号)>',
'label' => '<適用したい項目(郵便番号)ラベル>',
),
の箇所を
array (
'name' => '<適用したい項目名(郵便番号)>',
'label' => '<適用したい項目(郵便番号)ラベル>',
'customCode'=>'
<input type="text"
name="<適用したい項目名(郵便番号)>" maxlength="255" size="30"
onKeyUp="AjaxZip3.zip2addr(this,\',\'<適用したい項目(県名)>\'
,\'[適用したい項目(市区)]\',\'<適用したい項目(町村)>\');"
value="{$fields.<適用したい項目名>.value}">'
),
を追加。
『株式会社人気組』のajaxzip3を利用している為、そのままでは郵便番号データの更新は、 『株式会社人気組』の更新頻度に依存してしまう事と、JSONPを利用しいている特性上、 WEBを閲覧できない環境には、利用できないことに注意しなければいけませんが、その条件を無視できるならば、非常に簡単に郵便番号住所変換に対応できます。
※この改変には『株式会社人気組』のajaxzip3を利用させてもらっています。
利用する際には、下記のページより利用報告をされることを推奨します。
ajaxzip3 採用報告フォーム
http://spreadsheets.google.com/viewform?hl=ja&formkey=cklLZTV0VWpwbWhmWjA2RmV1dGhBdVE6MA..
ajaxzip3 本家サイト