CommentsvTigerCRM6の頭出し機能は、アルファベットにしか対応していないので、名前がABC...など英字で始まるものでないと検索できません。日本では当然、会社名や個人名がアルファベットで始まることのほうが少ないため、ほとんど機能していません。これを「あいうえお」等で頭出しできるようにします。課題の整理さて、一言に頭出し検索を日本語でと言っても、そう単純ではありません。日本の企業、氏名はたいていひらがなやカタカナではなく、漢字が使われていること。50音検索ができても、読みがなと結合しなければ、結局はアルファベット同様、機能しないです。次に、日本語は音が多すぎること。アルファベットの約2倍にあたる50音ですから、横一列では収まりそうにありません。ひらがなを登録できるようにするまず1つ目の課題から片付けていきましょう。言っても大したことではありません。対象のテーブルに読み仮名カラムを作ります。Accountsモジュールであればaccoutsテーブルに、Contactsモジュールであればcontactdetailsに、kanaなどのカラムを追加します。画面からも参照更新できるように、vtiger_fieldへの追加も忘れずに。ひらがなで検索できるようにする次は、2つ目の多すぎる音の解決策です。こちらは、全音ではなく、子音別に検索するようにしてみます。「あ」「か」「さ」「た」「な」・・・という具合です。これなら文字数が5分の1になるので、画面横幅に十分収まりそうです。画面表記は、言語ファイルの”LBL_ALPHABETS”を編集することで変えることができます。それでは、検索処理を実装していきます。検索はQueryGenerator.phpで行われています。変数operatorに”s”、変数valueに「あ」「か」などクリックされた文字がセットされたリクエストが飛んできます。この変数operator=”s”を受け取っている場所が、where句の作成箇所です。getWhereClause()という関数に、どうやら目的の処理が書けそうです。/include/QueryGenerator/QueryGenerator.php子音にぶら下がる母音すべてが検索対象となるようにします。「か」がクリックされた場合は、「かきくけこ」のどれかを頭文字に持つレコードが検索されるようにするということです。書き方はいろいろあると思いますが、上の例では、「あ」がクリックされた場合(valueに”あ”がセットされている場合)、「いうえお」もLike検索の対象とする、「か」の場合は「きくけこがぎぐげご」も対象とする・・・といった形で「わ」行まで書き連ねていく形です。Like検索の対象となるカラムは、各モジュールで設定しています。Accountsの場合だと、下記のようになります。modules/Accounts/Accounts.php読み仮名カラムが”kana”である場合ここがちゃんと設定できていないと、せっかく作った読み仮名カラムが検索に使われませんので、忘れずに。結果これで日本語での頭出し検索ができるようになりました。コメントをキャンセルメールアドレスが公開されることはありません。InkThemes.。