濁音や拗音の違いを考慮したカナ検索
最終更新日: 2020年3月14日
R8 | R9
この設定を行っておくことで濁音、清音のいずれでも検索ができます。
ここでは顧客名「山田」のカナ名が「ヤマダ」か「ヤマタ」か不明な場合でも、ひとまずどちらかで登録し、後でどちらでも検索できる例を示します。
氏名「山田 太郎」、カナ氏名「ヤマダ タロウ」と登録します。
カナ氏名「ヤマダ」で検索します。
カナ氏名に「ヤマタ」と指定して検索しても、同じデータを見つけることができます。
定義のポイントは「カナ氏名」を2項目用意することです。「customerkana」は通常の入力及び一覧表示用です。もう一方の「customerkana2」は入力画面では隠し項目にし、検索条件用として使用します。
以降の設定は、すべて「customerkana2」項目に対して行います。
次のように式を設定します。
入力された customerkana の値を JPKANANORM 関数を使って濁音や拗音を正規化します。また、この customerkana2 項目で検索を行うため、データベースに保存します。
入力制御で、隠し項目とします。
同じく出力制御でも、隠し項目とします。
CSV出力を行わないようにします。この設定で、CSVダウンロード機能を用いた場合でも、この項目は含まれないようになります。
検索の初期値として、検索画面で入力された文字(検索条件文字列)を清音化します。データベースに格納された文字列も同じように清音化されているため、必ずヒットするようになります。
例
定義方法
計算式とデータベース保存の設定
JPKANANORM(${customerkana})
隠し項目にする
検索条件の設定
JPKANANORM(${customerkana2})