gusuku Customine では、「リストから要素を取り出す」「数値の範囲から数値を取り出す」、そして「日付の範囲から日付を取り出す」で、いわゆるループ処理を作成することができます。


今回は、指定日付の範囲をループしてレコードを作成する方法をご案内します。


今回のカスタマイズでできること

  • 詳細画面で「スケジュール日別アプリにレコード作成」ボタンをクリックすると、
    開始日付フィールドの日付から終了日付フィールドの日付までの日別で、別アプリにレコードを追加する

  • 研修予定なので、追加するのは平日のレコードのみ

アプリの準備

「スケジュール登録」アプリと、「スケジュール日別」アプリを用意します。


スケジュール登録アプリ:


フィールド名

フィールドコード

フィールドタイプ

スケジュール名

スケジュール名

文字列(1行)

開始日付

開始日付

日付

終了日付

終了日付

日付


スケジュール日別アプリ:


フィールド名

フィールドコード

フィールドタイプ

スケジュール名

スケジュール名

文字列(1行)

日付

日付

日付


Customine の設定

「スケジュール登録」アプリのカスタマイズを作成します。


まず、詳細画面のメニュー位置に「ボタンをメニュー位置に配置する」でボタンを作成します。

条件は「詳細画面を表示した時」です。

レコード作成は時間がかかる場合があるので「読み込み中画面を表示する」で読み込み中画面を表示しておきます。

条件は「ボタンを押した時」を指定します。


次に、「開始日付」フィールドから「終了日付」フィールドの期間内で日付を1日ずつ取り出します。


やることは「日付の範囲から日付を取り出す」です。

今回は、開始日付から終了日付の期間で、平日の日のみ1日単位でレコードを作成したいので、下記のように指定しました。

  • 開始日:= 開始日付

  • 終了日:= 終了日付

  • 増分:1

  • 単位:日

  • 除外する曜日:土曜日と日曜日

条件は「いずれかのアクションの実行が完了した時」です。


「アクション」には「読み込み中画面を表示する」のアクションと、アクション3に続く「レコードを追加する」のアクションを指定します。

このように指定することで、終了日に到達するまでアクション3、4を繰り返すことができます。

日付を取り出したら、次にレコードを追加する」で「スケジュール日別」アプリにレコードを追加します。

マッピングは下記です。

  • スケジュール名:=スケジュール名

  • 日付:=$3 ※アクション3で取得された日付

条件は「リストから要素を取り出した時」を指定してください。

「アクション」は「3」です。
この 条件 を指定すると、アクション3で日付が取り出せた場合のみアクション4が実行されます。

要素が取り出せなかった、つまり日付が終了日付を超えると条件が満たされなくなり、処理のループが終わります。


最後に、要素の取り出しが終わったら「読み込み中画面を終了する」で読み込み中画面を消します。

条件には「リストからの取り出しが終了した時」を指定してください。

「アクション」は「3」です。


これでカスタマイズは完了です。

「kintone アプリへ登録」して、動きを確認してみてください。


うまくいかないなどございましたら、チャットでお問い合わせください!