CREATE TABLE actmst ( --accounting master
  actseq     INTEGER NOT NULL,
  actnum     INTEGER NOT NULL,
  acttyp     VARCHAR(1) NOT NULL,  -- 'e' = expense (รายจ่าย), 'i' = income (รายรับ)
  actcat     VARCHAR(50), -- หมวดหมู่ a,b,c,d,e → รายละเอียดจาก dtlmst table
  actqty     NUMERIC(12, 2) NOT NULL,     -- จำนวนเงิน รองรับสูงถึงหลักล้าน
  actcmt     TEXT,                        -- คำอธิบายเพิ่มเติม
  actacpdtm  CHAR(12) NOT NULL,-- รูปแบบ: ddMMyyyyHHmm เช่น '111120251200' = 11 พ.ย. 2025 เวลา 12:00
  PRIMARY KEY (actseq, actnum)
);


CREATE TABLE IF NOT EXISTS dtlmst (
    dtltblcod VARCHAR(20) NOT NULL,     -- รหัสกลุ่ม เช่น ACTTYP, ACTCAT
    dtlcod    VARCHAR(10) NOT NULL,     -- รหัสค่าภายในกลุ่ม เช่น 'e', 'i'
    dtlnam    VARCHAR(100),             -- ชื่อภาษาไทย เช่น 'รายจ่าย'
    dtleng    VARCHAR(100),             -- ชื่อภาษาอังกฤษ เช่น 'expense'
    dtlmsc    VARCHAR(100),             -- อื่น ๆ เช่น รหัสสี หรือหมายเหตุ
    CONSTRAINT dtlmst_pkey PRIMARY KEY (dtltblcod, dtlcod)
);
