📅

日付範囲の週番号一覧を得るには?

Status
Created by 2.0
関数説明
属性名
週番号集
返り値
String
逆引きNotionDB
関連するもの
「日付範囲が入力されている場合に、範囲が該当する週のグループすべてにレコードを表示したいのですが、実装方法のアイディアがあれば教えていただきたいです。(中略)。なお、マルチセレクトプロパティで複数選択した場合、選ばれているカテゴリすべてのグループに表示されることは確認しています。」という質問がありました。マルチセレクトであればよいとのことなので、マルチセレクトの雛形が作れればよいと判断しました。マルチセレクトが設定されていないものだけを集めたビューを用意して、そこで一括コピーすればいいかと思います。
  1. 開始日から終了日までの週番号を全て取り出し、unique にする
    1. lets( /* 開始日*/ ds, prop("日付範囲").dateStart(), /* 終了日 */ de, prop("日付範囲").dateEnd(), /* 日付差分 */ n, de.dateBetween(ds, "days"), /* 日付が設定されている場合 */ n >= 0 ? /* n+1 個分の.を作成 */ ".".repeat(n + 1) /* 1文字ごとに分割 (n+1 個の . の配列) */ .split("") /* 開始日から終了日までの日付配列に変換 */ .map(ds.dateAdd(index, "days")) /* 週番号に変換 */ .map(100 + current.week()) /* 先頭の1をWに変換 */ .map(current.replace("^1", "W")) /* ユニークなものだけを取り出し */ .unique() /* 日付が設定されていない時 */ : "" )
      名前
      日付範囲
      週番号集
      後からコピー
      Sep 25, 2023
      W39
      Sep 25, 2023 → Sep 26, 2023
      W39
      Sep 24, 2023 → Sep 25, 2023
      W38
      W39
      Sep 25, 2023 → Oct 1, 2023
      W39
      Sep 26, 2023 → Oct 2, 2023
      W39
      W40
      Sep 25, 2023 → Oct 2, 2023
      W39
      W40
      Sep 18, 2023 → Oct 2, 2023
      W38
      W39
      W40