KYU programs for payroll calculation: KYU01CVT - CSV conversion KYU02REG - attendance registration KYU03AGG - aggregation KYU04CAL - salary calculation KYU05DED - deduction calculation KYU06UPD - DB update KYU07DIV - division/pay-slip KYU08PRI - print output KYU09MRG - merge output Includes: - Source programs (9 .cbl) - Compiled executables (9 .exe) - Detailed design docs (9 + sign-off) - Basic design doc (subsystem C overview) - Resource lists (9) - DDL schema (schema_kyu.sql) - COPY book (KYU99REC.cpy) - Coverage statistics update - DB definition update (STATUS values) - Overall system design document
53 lines
1.9 KiB
SQL
53 lines
1.9 KiB
SQL
-- ============================================================
|
|
-- SALARYDB 給与計算データベース 建表文
|
|
-- 対象DB2 : LUW
|
|
-- 作成日 : 2026-07-01
|
|
-- ============================================================
|
|
|
|
-- テーブル1: EMP-MASTER(社員マスタテーブル)
|
|
CREATE TABLE EMP-MASTER (
|
|
EMP-ID CHAR(8) NOT NULL,
|
|
EMP-NAME VARCHAR(40) NOT NULL,
|
|
DEPT-CODE CHAR(2) NOT NULL,
|
|
REGION-CODE CHAR(2) NOT NULL,
|
|
CATEGORY-CODE CHAR(3) NOT NULL,
|
|
BASE-SALARY DECIMAL(9,0) NOT NULL,
|
|
HOURLY-RATE DECIMAL(7,0) NOT NULL,
|
|
DEPENDENT-COUNT SMALLINT NOT NULL,
|
|
STATUS CHAR(1) NOT NULL,
|
|
UPDATED-AT TIMESTAMP NOT NULL,
|
|
PRIMARY KEY (EMP-ID)
|
|
);
|
|
|
|
-- テーブル2: TAX-TABLE(税率テーブル)
|
|
CREATE TABLE TAX-TABLE (
|
|
TAX-FROM DECIMAL(9,0) NOT NULL,
|
|
TAX-TO DECIMAL(9,0) NOT NULL,
|
|
TAX-RATE DECIMAL(5,4) NOT NULL,
|
|
DEDUCTION DECIMAL(9,0) NOT NULL,
|
|
PRIMARY KEY (TAX-FROM, TAX-TO)
|
|
);
|
|
|
|
-- テーブル3: INSURANCE-TABLE(社会保険料率テーブル)
|
|
CREATE TABLE INSURANCE-TABLE (
|
|
INS-INCOME-FROM DECIMAL(9,0) NOT NULL,
|
|
INS-INCOME-TO DECIMAL(9,0) NOT NULL,
|
|
INS-HEALTH-RATE DECIMAL(7,6) NOT NULL,
|
|
INS-PENSION-RATE DECIMAL(7,6) NOT NULL,
|
|
UPDATED-AT TIMESTAMP NOT NULL,
|
|
PRIMARY KEY (INS-INCOME-FROM, INS-INCOME-TO)
|
|
);
|
|
|
|
-- テーブル4: SALARY-RESULTS(給与計算結果テーブル)
|
|
CREATE TABLE SALARY-RESULTS (
|
|
EMP-ID CHAR(8) NOT NULL,
|
|
YEAR-MONTH CHAR(6) NOT NULL,
|
|
GROSS-PAYMENT DECIMAL(9,0) NOT NULL,
|
|
INCOME-TAX DECIMAL(9,0) NOT NULL,
|
|
INSURANCE DECIMAL(9,0) NOT NULL,
|
|
RESIDENT-TAX DECIMAL(9,0) NOT NULL,
|
|
NET-PAYMENT DECIMAL(9,0) NOT NULL,
|
|
UPDATED-AT TIMESTAMP NOT NULL,
|
|
PRIMARY KEY (EMP-ID, YEAR-MONTH)
|
|
);
|