休日・横並・項目書式 の3プラグインを組み合わせた例

休日プラグイン・横並びプラグイン・項目書式プラグインを利用したカレンダー生成


rex0220 横並びプラグイン 応用例2 年カレンダー #kintone - Qiita
で紹介されていたカレンダーを改変してみました。
休日プラグインで作成した休日設定テーブルと連動したカレンダーになります。
取引先に直接渡すため、弊社営業日を記載した簡易カレンダーを印刷(またはPDF配布)していましたが、毎年このカレンダーをExcelで作成するのが億劫になったため、横並びプラグインの応用例2が公開されたときに作成したものです。
今はこのカレンダーを印刷して手渡ししてます。


休日プラグインで日本の祝日を取得したテーブルを作成します。
rex0220 休日プラグイン #kintone - Qiita

横並びプラグインでカレンダーを作成します。
項目書式プラグインを用い、休日プラグインで作成した祝日のテーブルにある日付とカレンダーで一致した日付のみ色付けしているだけです。
(テーブルヘッダーや全体の雰囲気が違うのはCSSでカスタマイズしているためです)


カレンダー用の書式
フィールドコード名はQiitaのサンプルと違いますのでご注意下さい。

1月の日曜日
_01_Sun != “”

1月の月曜日
LET(
target, “1-” & _01_Mon,
dayType, FIRSTIF(DATE_FORMAT(date,“M-D”)=target, type),
IN(dayType, “休日”, “祝日”)
)

金曜日まではこれを応用しています。
カレンダーのテーブルフィールドの _01_Mon を各曜日に変えてます。
月が変われば、_01_Mon と “1-” を以外の月に変えるだけです。
あとはひたすら12月まで作成するだけです。

12月の金曜日なら
LET(
target, “12-” & _12_Fri,
dayType, FIRSTIF(DATE_FORMAT(date,“M-D”)=target, type),
IN(dayType, “休日”, “祝日”)
)

12月の土曜日
_12_Sat != “”



個人的感想
めちゃくちゃ処理が重いのでフリーズしたかと思うかもしれませんが、辛抱強く表示されるのを待ってください。
ブラウザによっては処理中に「ページが応答しないからもう処理辞める?」みたいなメッセージがブラウザから言われますけど、諦めず「待機」一択で待ち続けてください。


最後に、

もっといい方法あればぜひ教えて下さい。
多分あるような気がしますが計算式が浮かんできませんでした。
フォルトンとフェリスに聞けば分かるかもしれませんが・・・

ご紹介ありがとうございます。
デザインいいですね。

計算式は、日単位に計算するので処理時間がかかります。
たぶん、月単位(テーブル単位)で計算式を組めば早くなると思いますが、私も面倒だったのでそのままでした。

「いいね!」 2