83 lines
6.2 KiB
SQL
83 lines
6.2 KiB
SQL
CREATE TABLE public.mst_rekening_lra (
|
|
id_rekening_lra serial NOT NULL,
|
|
tahun integer DEFAULT 0 NOT NULL,
|
|
id_unik_rekening_lra uuid DEFAULT public.uuid_generate_v7() NOT NULL,
|
|
locked boolean DEFAULT false NOT NULL,
|
|
disable boolean DEFAULT false NOT NULL,
|
|
jns_pemda integer[] DEFAULT '{}'::integer[] NOT NULL,
|
|
daerah_khusus integer[] DEFAULT '{}'::integer[] NOT NULL,
|
|
kode_akun character varying(5) DEFAULT ''::character varying NOT NULL,
|
|
nama_akun text DEFAULT ''::text NOT NULL,
|
|
kode_kelompok character varying(5) DEFAULT ''::character varying NOT NULL,
|
|
nama_kelompok text DEFAULT ''::text NOT NULL,
|
|
kode_jenis character varying(10) DEFAULT ''::character varying NOT NULL,
|
|
nama_jenis text DEFAULT ''::text NOT NULL,
|
|
kode_objek character varying(20) DEFAULT ''::character varying NOT NULL,
|
|
nama_objek text DEFAULT ''::text NOT NULL,
|
|
kode_rincian_objek character varying(50) DEFAULT ''::character varying NOT NULL,
|
|
nama_rincian_objek text DEFAULT ''::text NOT NULL,
|
|
kode_sub_rincian_objek character varying(60) DEFAULT ''::character varying NOT NULL,
|
|
nama_sub_rincian_objek text DEFAULT ''::text NOT NULL,
|
|
tag_jenis integer DEFAULT 0 NOT NULL,
|
|
set_form_input integer DEFAULT 0 NOT NULL,
|
|
hist_data jsonb DEFAULT '[]'::jsonb NOT NULL,
|
|
created_at timestamp(6) without time zone DEFAULT now() NOT NULL,
|
|
created_by integer DEFAULT 0 NOT NULL,
|
|
updated_at timestamp(6) without time zone DEFAULT '0001-01-01 00:00:00'::timestamp without time zone NOT NULL,
|
|
updated_by integer DEFAULT 0 NOT NULL,
|
|
deleted_at timestamp(6) without time zone DEFAULT '0001-01-01 00:00:00'::timestamp without time zone NOT NULL,
|
|
deleted_by integer DEFAULT 0 NOT NULL
|
|
);
|
|
|
|
COMMENT ON TABLE public.mst_rekening_lra IS 'Tabel referensi Rekening LRA (Laporan Realisasi Anggaran) yang memuat kode, nama, dan klasifikasi rekening sesuai struktur APBD. Digunakan untuk pengelompokan pendapatan, belanja, dan pembiayaan.';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.id_rekening_lra IS 'Primary key. ID unik untuk setiap entri rekening.';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.tahun IS 'Tahun anggaran yang berlaku untuk rekening ini.';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.id_unik_rekening_lra IS 'ID unik UUID untuk backup ID primary key.';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.locked IS 'Status kunci data. TRUE berarti data terkunci dan tidak dapat diubah.';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.disable IS 'Status nonaktif. TRUE berarti rekening tidak digunakan.';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.jns_pemda IS 'Daftar jenis pemerintah daerah dalam bentuk array (1=Provinsi, 2=Kabupaten, 3=Kota).';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.daerah_khusus IS 'Daftar ID daerah khusus dalam bentuk array (440=Papua, 528=Papua Barat).';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.kode_akun IS 'Kode akun pada struktur rekening APBD.';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.nama_akun IS 'Nama akun pada struktur rekening APBD.';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.kode_kelompok IS 'Kode kelompok rekening.';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.nama_kelompok IS 'Nama kelompok rekening.';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.kode_jenis IS 'Kode jenis rekening.';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.nama_jenis IS 'Nama jenis rekening.';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.kode_objek IS 'Kode objek rekening.';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.nama_objek IS 'Nama objek rekening.';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.kode_rincian_objek IS 'Kode rincian objek rekening.';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.nama_rincian_objek IS 'Nama rincian objek rekening.';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.kode_sub_rincian_objek IS 'Kode sub rincian objek rekening.';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.nama_sub_rincian_objek IS 'Nama sub rincian objek rekening.';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.tag_jenis IS 'Klasifikasi rekening berdasarkan jenis:
|
|
range angka 1-20 = PENDAPATAN;
|
|
range angka 21-40 = PENERIMAAN PEMBIAYAAN;
|
|
range angka 41-60 = PENGELUARAN PEMBIAYAAN;
|
|
range angka 61-80 = BELANJA.';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.set_form_input IS 'Klasifikasi form input rincian belanja:
|
|
0 = Non rekening belanja
|
|
1 = Menggunakan standar harga
|
|
2 = Menggunakan standar harga + penerima non pemda
|
|
3 = Menggunakan standar harga + penerima pemda
|
|
4 = Tanpa standar harga
|
|
5 = Tanpa standar harga + penerima non pemda
|
|
6 = Tanpa standar harga + penerima pemda';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.hist_data IS 'Riwayat perubahan data dalam format JSONB.';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.created_at IS 'Tanggal dan waktu data dibuat.';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.created_by IS 'ID pengguna yang membuat data.';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.updated_at IS 'Tanggal dan waktu terakhir data diperbarui.';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.updated_by IS 'ID pengguna yang memperbarui data.';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.deleted_at IS 'Tanggal dan waktu data dihapus (soft delete).';
|
|
COMMENT ON COLUMN public.mst_rekening_lra.deleted_by IS 'ID pengguna yang menghapus data.';
|
|
|
|
ALTER TABLE public.mst_rekening_lra ADD CONSTRAINT mst_rekening_lra_pkey PRIMARY KEY (id_rekening_lra, tahun);
|
|
ALTER TABLE public.mst_rekening_lra ADD CONSTRAINT mst_rekening_lra_unique_key UNIQUE (id_rekening_lra, tahun, kode_akun, kode_kelompok, kode_jenis, kode_objek, kode_rincian_objek, kode_sub_rincian_objek);
|
|
|
|
CREATE INDEX mst_rekening_lra_id_sub_rincian_objek_idx ON public.mst_rekening_lra USING btree (id_rekening_lra);
|
|
CREATE INDEX mst_rekening_lra_tahun_idx ON public.mst_rekening_lra USING btree (tahun);
|
|
CREATE INDEX mst_rekening_lra_kode_akun_idx ON public.mst_rekening_lra USING btree (kode_akun);
|
|
CREATE INDEX mst_rekening_lra_kode_kelompok_idx ON public.mst_rekening_lra USING btree (kode_kelompok);
|
|
CREATE INDEX mst_rekening_lra_kode_jenis_idx ON public.mst_rekening_lra USING btree (kode_jenis);
|
|
CREATE INDEX mst_rekening_lra_kode_objek_idx ON public.mst_rekening_lra USING btree (kode_objek);
|
|
CREATE INDEX mst_rekening_lra_kode_rincian_objek_idx ON public.mst_rekening_lra USING btree (kode_rincian_objek);
|
|
CREATE INDEX mst_rekening_lra_kode_sub_rincian_objek_idx ON public.mst_rekening_lra USING btree (kode_sub_rincian_objek); |