Add xckijun_給与計算基準項目定義.md
This commit is contained in:
@@ -0,0 +1,78 @@
|
|||||||
|
# xckijun 表
|
||||||
|
|
||||||
|
## Description
|
||||||
|
- 物理表名:xckijun
|
||||||
|
- 業務名称:[コントロール]給与計算基準項目定義
|
||||||
|
- 业务语义:給与計算基準項目(xkkijun 系列 200 槽位五花)の**項目定義**を保持する control 表
|
||||||
|
- xkkijun 系列的"动态列名 + 数据槽"模式(ccode01..ccode200 / cname01..cname200 ...)的元信息
|
||||||
|
- 1 项目 = 1 行(項目種別 1:区分 / 2:名称 / 3:数値 / 4:日付 / 5:フラグ)
|
||||||
|
- 項目 No. 1~40(本部用 40 项,扩展槽位从 xkkijun 200 槽里挑)
|
||||||
|
- 所属项目:UPDS-V7 給与システム
|
||||||
|
- 所在库:updsv7_opho_ci(192.168.1.72:5432,CI 环境)
|
||||||
|
- 设计書:D:\\25.テーブル一覧\\10.テーブル定義\\30.給与\xckijun.xlsx(2026-08-19 user 提供)
|
||||||
|
|
||||||
|
## Key Facts (实测 2026-08-19 information_schema)
|
||||||
|
- 物理列数:23
|
||||||
|
- 主键 UNIQUE 索引:xckijun_idx(ccompkb, cqtaikeikb, nqshoyokb, dstart, nkomokukb, nkomokuno)
|
||||||
|
- 唯一索引:xckijun_rowid_key UNIQUE(rowid)
|
||||||
|
- 业务角色:control / 項目メタデータ(不是业务数据本身)
|
||||||
|
- 与 xkkijun 关系:控制表 → 数据表(定义 xkkijun 动态列的语义)
|
||||||
|
- 与 xkkijunctl 区别:xkkijunctl = 連携停止控制(15 列扁平);xckijun = 項目定义控制(23 列含动态列语义)
|
||||||
|
|
||||||
|
## 列结构(实测已确认)
|
||||||
|
|
||||||
|
(A) 头部业务标识 5 列,全部 NOT NULL:
|
||||||
|
1. ccompkb varchar(2) -- 会社区分
|
||||||
|
2. cqtaikeikb varchar(2) -- 給与体系区分(00 固定)
|
||||||
|
3. nqshoyokb numeric(1,0) -- 給与賞与区分
|
||||||
|
4. dstart date -- 適用開始年月(YYYY/MM/01)
|
||||||
|
5. dend date -- 適用終了年月(YYYY/MM/末日)
|
||||||
|
|
||||||
|
(C) 业务控制列(7 列):
|
||||||
|
10. nkomokukb numeric(1,0) NOT NULL -- 項目種別(1:区分,2:名称,3:数値,4:日付,5:フラグ)
|
||||||
|
11. nkomokuno numeric(3,0) NOT NULL -- 項目 No.(1~40)
|
||||||
|
12. ckomokunm varchar(30) -- 項目名称
|
||||||
|
13. ccolumnid varchar(20) -- 項目カラム ID(xkkijun 200 槽位对应列名如 ccode05)
|
||||||
|
14. nseisuu numeric(3,0) -- 最大桁数)整数部
|
||||||
|
15. nshosuu numeric(3,0) -- 最大桁数)小数部
|
||||||
|
16. cmtableid varchar(20) -- マスタ参照)テーブル ID(◆ 未使用 ◆)
|
||||||
|
17. cmtblwhere varchar(999) -- マスタ参照)テーブル表示条件(◆ 未使用 ◆)
|
||||||
|
|
||||||
|
(D) 预留标志列(5 列):
|
||||||
|
18-22. nflag01..nflag05 numeric(1,0) -- ◆ 未使用 ◆
|
||||||
|
|
||||||
|
(B) 日志 4 列:
|
||||||
|
6. cmnclient varchar(10) -- 更新ユーザ)端末ID
|
||||||
|
7. cmncomp varchar(2) -- 更新ユーザ)会社区分
|
||||||
|
8. cmnuser varchar(10) -- 更新ユーザ)ユーザID
|
||||||
|
9. dmndate timestamp(0) without timezone -- 更新日時
|
||||||
|
|
||||||
|
(E) 代理键:
|
||||||
|
23. rowid bigint NOT NULL DEFAULT nextval('rowid_seq'::regclass)
|
||||||
|
|
||||||
|
## DB vs xlsx 差异点 (7 处)
|
||||||
|
|
||||||
|
1. **PK UNIQUE 索引列顺序** — xlsx 序号 1~6 = `ccompkb, cqtaikeikb, dstart, nkomokukb, nkomokuno, nqshoyokb`;DB 实际 UNIQUE = `ccompkb, cqtaikeikb, nqshoyokb, dstart, nkomokukb, nkomokuno`。第 3 / 6 位 `dstart` 与 `nqshoyokb` 顺序颠倒。UNIQUE 索引不受顺序影响,但 WHERE 优化走索引时列顺序敏感。
|
||||||
|
3. **dmndate 精度** — xlsx 写 `timestamp`,DB 实际 `timestamp(0) without time zone`。PostgreSQL 默认 `timestamp` 就是 without time zone,所以 DB 类型准确,xlsx 缺精度标注。
|
||||||
|
4. **rowid 默认值** — xlsx 只写 `int8 N`,DB 实际有 `DEFAULT nextval('rowid_seq'::regclass)` 序列。
|
||||||
|
5. **cmtblwhere 长度 999** — xlsx 写 999,DB `varchar(999)`(PG 的 varchar(n) 长度限制语义:超长报错而非截断,与别的 DB 不同)。
|
||||||
|
6. **xckijun_rowid_key UNIQUE(rowid) 索引** — xlsx 完全没标,DB 存在。
|
||||||
|
7. **索引序号 vs DB ordinal_position** — xlsx 索引 #6 = `nqshoyokb`(注意 xlsx 把 `nqshoyokb` 标 6),DB ordinal_position 也是 3(因为 DB 列顺序是 `ccompkb, cqtaikeikb, nqshoyokb, dstart, dend, cmnclient, ...`)。xlsx 索引序号只是业务约定,不一定对应物理列位。
|
||||||
|
|
||||||
|
## Relations
|
||||||
|
- 上位系统:UPDS-V7 給与システム
|
||||||
|
- **控制 → 数据**:xckijun(項目定义)→ xkkijun(实际数据,200 槽位) — xckijun.ccolumnid = xkkijun 列名(如 `ccolumnid='ccode05'` 对应 `xkkijun.ccode05`)
|
||||||
|
- 同型头部 PK:与 xkkijun / xkkijunctl / xkkihon 头部 6 列同型(本表 5 列头部 + nkomokukb/nkomokuno 业务键)
|
||||||
|
- 同领域:qkijun / xkkijunctl / qinp1020 等同 給与基準 系列
|
||||||
|
|
||||||
|
## 同名易混(2026-08-19 实证)
|
||||||
|
- **xckijun** vs **xkkijun** 字形相近但**不同表**:
|
||||||
|
- xckijun:23 列 control / 項目定义(本表)
|
||||||
|
- xkkijun:1011 列 データ / 实际业务值(本日 resource 已独立存在)
|
||||||
|
- 关键区分点:xckijun 有 `nkomokukb` / `nkomokuno` / `ccolumnid` 三列,xkkijun 没有
|
||||||
|
- 反之,xkkijun 有 `ccode01..200` / `cname01..200` / `nnumber01..200` / `ddate01..200` / `nflag01..200` 1000 列,xckijun 没有
|
||||||
|
|
||||||
|
## 设计書元信息
|
||||||
|
- シート:改訂履歴(Ver 7.0.0,作成日 45203(=2023-10-01),作成者 NSC)
|
||||||
|
- シート:xckijun(No.1~23)
|
||||||
|
- 业务方备注:項目種別 1:区分,2:名称,3:数値,4:日付,5:フラグ(对应 xkkijun 五花)
|
||||||
Reference in New Issue
Block a user