サンプルを載せておきます
最初に SetSequenceNumber関数 をデータベースにインポートして
利用可能な状態にしておきましょう
■DDL
CREATE TABLE アクションテーブル (
氏名 VARCHAR(50) NOT NULL
, 発令日 DATETIME NOT NULL
, 組織名 VARCHAR(30) NOT NULL
, GSeq日付 INT
, GSeq組織 INT
, CONSTRAINT pk_action PRIMARY KEY ( 氏名, 発令日 )
);
■データ例 (連番付与前)
氏名 | 発令日 | 組織名 | GSeq日付 | GSeq組織 |
---|---|---|---|---|
山田 花子 | 2022/01/01 | 営業 | ||
山田 花子 | 2023/04/01 | 経営企画 | ||
山田 花子 | 2023/09/01 | 営業 | ||
山田 花子 | 2024/01/01 | 営業 | ||
山田 花子 | 2024/04/01 | 総務 | ||
青山 太郎 | 2014/04/01 | 人事 | ||
青山 太郎 | 2014/05/26 | 人事 | ||
青山 太郎 | 2014/06/01 | 人事 | ||
青山 太郎 | 2015/04/01 | 経営企画 | ||
青山 太郎 | 2017/10/01 | 法務 | ||
青山 太郎 | 2018/04/01 | 法務 | ||
青山 太郎 | 2020/01/01 | 法務 | ||
青山 太郎 | 2021/04/01 | 人事 | ||
青山 太郎 | 2022/04/01 | 総務 |
■グループ連番の付与
Sub set_number()
Call SetSequenceNumber("GSeq日付", "アクションテーブル", "氏名", "発令日")
Call SetSequenceNumber("GSeq組織", "アクションテーブル", "氏名,組織名", "発令日")
End Sub
■データ例 (連番付与後)
氏名 | 発令日 | 組織名 | GSeq日付 | GSeq組織 |
---|---|---|---|---|
山田 花子 | 2022/01/01 | 営業 | 1 | 1 |
山田 花子 | 2023/04/01 | 経営企画 | 2 | 1 |
山田 花子 | 2023/09/01 | 営業 | 3 | 2 |
山田 花子 | 2024/01/01 | 営業 | 4 | 3 |
山田 花子 | 2024/04/01 | 総務 | 5 | 1 |
青山 太郎 | 2014/04/01 | 人事 | 1 | 1 |
青山 太郎 | 2014/05/26 | 人事 | 2 | 2 |
青山 太郎 | 2014/06/01 | 人事 | 3 | 3 |
青山 太郎 | 2015/04/01 | 経営企画 | 4 | 1 |
青山 太郎 | 2017/10/01 | 法務 | 5 | 1 |
青山 太郎 | 2018/04/01 | 法務 | 6 | 2 |
青山 太郎 | 2020/01/01 | 法務 | 7 | 3 |
青山 太郎 | 2021/04/01 | 人事 | 8 | 4 |
青山 太郎 | 2022/04/01 | 総務 | 9 | 1 |
通報 ...