このような大量のレコード処理は、Job Runnerのご利用をお勧めいたします!
こちらの「大量のレコードを安全に処理する方法 : 検索文字列を作成する事例」をご確認ください。
画面上で大量レコード操作は、ブラウザのタブがバックグラウンドになると、停止してしまうなど問題が多いのでおすすめはしません。
以下の記事は参考程度にご確認いただけますと幸いです。
可能です。
ただ、kintoneの一覧画面は標準機能で1画面に最大で100件までしか表示できません。
その点も考慮し、100件を超える場合でも一括で更新可能な方法をご紹介します。
レコードを更新するタイミングで検索用文字列を作成する方法と、その検索用文字列を使用した検索フォームを設置する手順は「日本語の一文字や英数字の部分一致で検索できる検索フォームを追加する」でご紹介していますので、ご覧ください。
なお、検索用文字列の一括作成はレコード数によっては時間のかかる負荷の高い処理です。
検索用文字列が未作成のアプリに対して、1回だけ実行ください。
一括作成で既存レコードに検索用文字列が作成されたら、その後は追加・編集画面でレコードが保存されるタイミングでの検索用文字列の作成をお勧めします。
カスタマイズ例:
例として kintone アプリストア の「顧客リスト」アプリを使います。
アプリ名は「顧客リスト(検索可能)」に変更しました。
今回は、「会社名」フィールドを検索対象としたいので、検索用文字列を保存するための文字列(1行)フィールドを追加し、フィールド名とフィールドコードは「会社名検索用」と指定しました。
次に、検索用文字列が未作成のレコードのみ表示する一覧を追加します。一覧名は「一括更新用一覧」に設定しました。
表示するフィールドは「会社名」と「会社名検索用」フィールドです。
ポイントは、絞り込み条件に「会社名検索用」フィールドが空白のレコード、つまり検索用文字列が未作成のレコードのみ表示する、という設定をしている点です。
このように設定することで、「処理対象のレコードのみが表示される」一覧を作成します。
一覧が作成できたら、kintoneアプリ側の設定は完了です。
やりたいこと
顧客リスト(検索可能)アプリの既存レコードに、一括で検索用文字列を設定する。
Customineの設定
顧客リスト(検索可能)アプリのカスタマイズを追加します。
一覧に処理対象レコードが存在するか確認するためレコードを取得する
やること
一覧に処理対象のレコードが存在する時だけ処理を行いたので、まずは一覧にレコードがあるかどうかを確認するため、レコードを取得します。
やること「一覧で画面に表示されているレコードを取得する」を選択します。
条件
一覧画面が表示された時に確認したいので「一覧画面を表示した時」を指定します。
また、一覧画面が「一括更新用一覧」の時だけ処理を行いたいので、「現在の一覧が指定の一覧ならば」を追加します。
一覧の名前は、あらかじめ作成しておいた一覧の名前である「一括更新用一覧」を指定します。
このように条件指定することで、アクションを実行する一覧を限定できます。
処理中は操作が行えないように読み込み中画面を表示する
やること
処理中に画面遷移などできないように「読み込み中画面を表示する」を指定します。
なお、通常「読み込み中画面を表示する」で表示した読み込み中画面は「読み込み中画面を終了する」で消す必要がありますが、今回のカスタマイズでは処理の最後に画面をリロードするので終了は不要です。
画面をリロードすると、読み込み中画面は消えるためです。
条件
一覧画面に表示されたレコードの取得が完了してから処理を行いたいので「他のアクションの実行が完了した時」を指定します。
アクションには「1」を指定しました。
また、一覧画面にレコードが1件以上表示されている時に処理を行いたいので「レコード件数が1件以上ならば」を指定します。
こちらも、アクションには「1」を指定しました。
検索用文字列を作成する
やること
「検索用文字列を作成する」を指定します。
元のフィールドは、検索用文字列の作成元となる「会社名」フィールドを指定しました。
検索用文字列をセットするフィールドは「会社名検索用」フィールドを指定します。
条件
読み込み中画面が表示されてから処理を行いたいので「他のアクションの実行が完了した時」を指定します。
アクションには「2」を指定しました。
検索用文字列の作成が完了したら画面をリロードする
やること
「画面をリロードする」を指定します。
条件
検索用文字列の作成が完了してからリロードしたいので「他のアクションの実行が完了した時」を指定します。
アクションには「3」を指定しました。
以上で、一括更新のカスタマイズは完了です。
kintoneアプリへ登録いただき、一括更新用一覧を開いてみてください。
一覧画面のリロードが終わり、「データがありません。」と表示されたら一括作成完了です。
※ご利用のブラウザが Internet Explorer や Microsoft Edge で、値がセットされずに画面のリロードが延々と繰り返される場合は、アクション番号4の条件を「レコードが自動的に保存された時」に変更ください。
この現象は、上記ブラウザをご利用の場合にレコードの保存が完了する前に画面がリロードされてしまい、レコードの更新が行われない場合があるため発生します。