はじめに
日報や社員の健康状態の報告など、従業員情報を元に一括で翌月の予定としてレコードを作成したいシーンがあるかと思います。
こちらの記事では Job Runner の機能を使用して、「従業員名簿」を元に来月 1ヶ月分のレコードを作成する例を紹介します。
Job Runner を初めてお使いになる方は、はじめての gusuku Customine Job Runner : 年齢計算のカスタマイズも参考にしてください。
想定する要件
「従業員名簿」アプリに入っている全ての従業員分の翌月1ヶ月分の日報レコードを作成します。
事前準備
作成するデータの元となる従業員情報は「従業員名簿」アプリ(kintone アプリストア「人事労務パック」内)を使用します。
また、「日報」アプリは以下の通り作成します。この例では最低限必要となるフィールドのみ用意しているため、要件に応じてフィールドは追加してください。
続いて、それぞれのアプリにて以下の権限で API トークンを作成しておきます。
また、Job Runner を初めてお使いになる際にはJob Runnerを利用するとき、初めにすることを参照の上、アプリスロットの割り当てを行ってください。
では、カスタマイズ作成に入ります。
定期実行タスクの作成手順
カスタマイズ一覧画面からは「新規のカスタマイズ作成」→「定期実行タスク」、カスタマイズ画面からは左上のメニューから「新しいカスタマイズ」→「定期実行タスク」で定期実行タスクの作成を開始します。
作成するプロジェクトを選択し初期画面が表示されると、アクション1番と2番に初めからやることと条件が設定されています。
これらの設定は、定期実行タスクでの定番となる設定が自動的にセットされた状態になります。これを順に説明していきたいと思います。
接続設定
はじめに kintone 接続設定を行う と 実行予定時刻になった時 という条件がセットされています。これは定期実行タスクでの定番のパターンです。レコードを取得したり更新したりと、kintoneアプリに接続するためには必ずAPIトークンの設定が必要です。
ここで設定するAPIトークンは、kintoneアプリ側で予め設定が必要です。今回は、「事前準備」で「従業員名簿」「日報」アプリのAPIトークンを作成していますので、これらを使用して両アプリへの接続設定を作成します。
日付の設定
続いて、後続のアクションで使用するために、レコード作成の対象となる日付を設定します。今回の要件では「翌月1ヶ月分」のレコードを作成するため、その最初の日である「来月月初」と最後の日である「来月末日」を指定しています。
元となるレコードの取得
元となる「従業員名簿」アプリからレコードを取得する設定です。今回は「従業員名簿」アプリ内の全てのレコードが対象となるため「全レコードを取得する」を使用していますが、要件に応じて「クエリで条件を指定してレコードを取得する」や「取得したレコードを絞り込む」などを使用して必要なレコードを絞り込んでください。
レコードの追加
ここまでの設定内容を踏まえて、最後に「日報」アプリにレコードを追加するための設定をします。
日付フィールドは「日報」アプリで日付を入力するためのフィールド(今回は「報告日」フィールド)を指定します。開始日、終了日は「他のアクションの結果」を参照して日付の設定で指定した「来月月初」「来月末日」を指定しています。
マッピングは以下のように、「他のアクションの結果」を参照して5番のアクションで取得した従業員番号、氏名を入力します。
また、条件は「他のアクションの実行が完了した時」ではなく、「レコード1行が準備できた時」を使用する点に注意してください。
カスタマイズの実行
作成したカスタマイズを実行するには、画面上部の黄色い「ジョブ生成・設定」ボタンをクリックしてください。ジョブが生成され、ダイアログが開きます。詳しい使い方についてはこちらのページをご確認ください。
ここで左下の「直ちに実行」をクリックすると、作成したカスタマイズが実行されます。「実行履歴」のタブで実行結果を確認してみてください(履歴が出てこないようであれば、ダイアログ左上のリロードボタンをクリックしてみてください)。
また、kintoneアプリ側で、思ったようなカスタマイズが実行されているかをご確認ください。
スケジュールの設定
動作を確認し、問題ないことが確認できたら、このジョブを定期的に実行するように設定しましょう。
「設定を追加」をクリックして、例えばこのように毎月20日の0時に実行するようにセットします。設定が終わったら、最後に右下の「設定保存」を忘れずにクリックしてください。 これで、毎月20 に翌月1ヶ月分の日報レコードが作成されることになります。
まとめ
以上で Job Runner を使用して指定した期間内のレコードを一括で作成するカスタマイズのご紹介を終わります。応用することで様々な用途で活用いただけるかと思いますので、ご確認いただければと思います。