Job Runner

検索用文字列を作成する

概要

kintone では、文字列フィールドの値で検索を行う場合「日本語の1文字検索」や「英数字の部分一致」ができません。これに対処するために、検索したい元のフィールドの値から、「日本語の1文字検索」や「英数字の部分一致」にも対応した検索用のフィールドを作成します。

使い方

事前に、kintoneのフォームに、検索したいフィールドとは別に、そのフィールドの検索専用ダミーフィールドを作成しておきます。例えば検索したいフィールドが「顧客コード」だったら「顧客コード(検索用)」といったフィールドを作成しておきます。

「検索用文字列を作成する」で、上の例であれば「元のフィールド」に「顧客コード」、「検索用文字列をセットするフィールド」に「顧客コード(検索用)」を指定します。

作成した検索フィールドで実際に検索を行うには、kintone アプリのカスタマイズで、「一覧画面にキーワードで検索する検索フォームを設置する」を設置します。上の例の場合は、検索条件フィールドとしては「顧客コード(検索用)」の方を指定します。

※ 「kintone アプリカスタマイズ版の一覧画面に簡易検索フォームを設置する」は完全一致で検索するため、この方法は使えません。

作成した検索用文字列はアクションの結果としてもセットされます。ただし、「レコード」が複数行ある場合、最後の1行に対するもののみがセットされます。

「検索用文字列をセットするフィールド」が指定されている場合、この「やること」をセットしたアクションを実行してフィールド値が元の値から変更されると、レコードの保存が予約されます。変更されたレコードはすぐには保存されず、ジョブ内の全アクションが終了した後に自動的に保存されます。変更されたレコードを別のタイミングで保存したい場合は「値が変更されているレコードを保存する」を使用します。

自動保存時に「レコード」のアプリに対してレコード編集権限を持った API トークンが必要になります。別のアクションで「kintone 接続設定を行う」を行い、kintone アプリの API トークンを設定しておいてください。

設定するパラメーター

「レコード」「元のフィールド」「検索用文字列をセットするフィールド」を設定します。

レコード

処理対象となるレコードを取得したアクションを選択します。

複数行のレコードが含まれる場合、それぞれのレコードに対して処理されます。レコードが1行もない場合は何も行われません。

複数のレコードが含まれる場合、アクションの結果は最後の1行に対するものだけが残ります。

元のフィールド

本来検索したい値が入っているフィールドを指定します。

「検索用文字列を作成する」を実行しても、元のフィールドの値は変更されません。

選択可能なフィールドタイプは以下の通りです。

  • 文字列(1行)
  • 文字列(複数行)

テーブル内のフィールドは選択できません。

検索用文字列をセットするフィールド

元のフィールドの値に対して、日本語の1文字検索や英数字の部分一致に対応した値をセットする先のフィールドを指定します。

「検索用文字列を作成する」を実行すると、このフィールドの値は上書きされます。

選択可能なフィールドタイプは以下の通りです。

  • 文字列(1行)

テーブル内のフィールドは選択できません。

制限事項

  • 「元のフィールド」に入ってる値の文字数が64文字以内である必要があります。65文字以上の長さの値が入っていると、カスタマイズの実行時にエラーが発生します。

  • 「元のフィールド」と「検索用文字列をセットするフィールド」に同じフィールドを選択することはできません。

関連記事