|
CREATE TABLE `penjualan` (
`FAKTUR` varchar(50) NOT NULL DEFAULT '',
`FAKTUR2` varchar(50) NOT NULL DEFAULT '',
`JNSTRANSAKSI` tinyint(1) NOT NULL DEFAULT 0,
`NOREK` varchar(25) DEFAULT NULL,
`JNSLAIN` tinyint(1) NOT NULL DEFAULT 0,
`TAX` tinyint(1) NOT NULL DEFAULT 0,
`RESERVED` tinyint(1) NOT NULL DEFAULT 0,
`CEK` tinyint(1) NOT NULL DEFAULT 0,
`LEVEL` tinyint(1) NOT NULL DEFAULT 0,
`KOSONG` tinyint(1) NOT NULL DEFAULT 0,
`CEKGIRO` tinyint(1) NOT NULL DEFAULT 0,
`GUNGGUNG` tinyint(1) NOT NULL DEFAULT 0,
`FAKTURPAJAK` varchar(25) DEFAULT '',
`REF` varchar(30) DEFAULT '',
`REFSO` varchar(50) DEFAULT '',
`TGL` datetime DEFAULT NULL,
`TEMPO` smallint(6) DEFAULT NULL,
`TGLTERIMA` date DEFAULT NULL,
`TGLREF` date DEFAULT NULL,
`CUSTOMER` varchar(50) NOT NULL DEFAULT '',
`PENJUALAN` double DEFAULT 0,
`JASA` double DEFAULT 0,
`DISCPR` double DEFAULT 0,
`DISCNI` double NOT NULL DEFAULT 0,
`DISCFAKTUR` double NOT NULL DEFAULT 0,
`DISCPERSENS` varchar(50) NOT NULL DEFAULT '',
`PAJAK` double DEFAULT 0,
`PEMBULATAN` double DEFAULT 0,
`NETTO` double DEFAULT 0,
`LAIN` double DEFAULT 0,
`JNSBAYAR` tinyint(4) unsigned DEFAULT 0,
`BAYAR` double DEFAULT 0,
`CHARGE` double NOT NULL DEFAULT 0,
`JNSBAYAR2` tinyint(4) unsigned DEFAULT 0,
`BAYAR2` double NOT NULL DEFAULT 0,
`JNSBAYAR3` tinyint(4) unsigned DEFAULT 0,
`BAYAR3` double NOT NULL DEFAULT 0,
`KEMBALI` double NOT NULL DEFAULT 0,
`NOBUKTI` varchar(50) DEFAULT '',
`RETUR` varchar(50) DEFAULT '',
`PIUTANG` double DEFAULT 0,
`KASIR` varchar(16) NOT NULL DEFAULT current_user(),
`USEREDIT` varchar(16) DEFAULT NULL,
`POSTING` tinyint(1) DEFAULT 0,
`PRINTF` tinyint(1) DEFAULT 0,
`PRINTSJ` tinyint(1) DEFAULT 0,
`NOPOST` smallint(6) DEFAULT NULL,
`KET` varchar(250) DEFAULT NULL,
`INKLUSIF` tinyint(1) NOT NULL DEFAULT 0,
`LOKASI` smallint(6) NOT NULL DEFAULT 0,
`LOKASI2` smallint(6) DEFAULT NULL,
`SALES` smallint(6) DEFAULT NULL,
`TGLFAKTUR` date DEFAULT NULL,
`MASAPAJAK` tinyint(4) DEFAULT NULL,
`TAHUNPAJAK` smallint(6) DEFAULT NULL,
`CREATETIME` datetime DEFAULT current_timestamp(),
`UPDTIME` datetime DEFAULT NULL ON UPDATE current_timestamp(),
PRIMARY KEY (`FAKTUR`,`FAKTUR2`,`CUSTOMER`,`JNSTRANSAKSI`) USING BTREE,
UNIQUE KEY `FAKTUR1` (`FAKTUR`,`FAKTUR2`) USING BTREE,
KEY `FK_penjualan_customer` (`CUSTOMER`),
KEY `FK_penjualan_gudang` (`LOKASI`),
KEY `FK_penjualan_sales` (`SALES`),
KEY `FK_penjualan_pengguna` (`KASIR`) USING BTREE,
KEY `FK_penjualan_pengguna_2` (`USEREDIT`) USING BTREE,
KEY `FK_penjualan_jnsbayarjual` (`JNSBAYAR`),
KEY `FK_penjualan_jnsbayarjual_2` (`JNSBAYAR2`),
KEY `FK_penjualan_jnsbayarjual_3` (`JNSBAYAR3`),
KEY `FK_penjualan_gudang_2` (`LOKASI2`),
KEY `FK_penjualan_account` (`NOREK`),
KEY `FK_penjualan_jnsjual` (`JNSBAYAR`,`LOKASI`),
KEY `FK_penjualan_jnsjual2` (`JNSBAYAR2`,`LOKASI`),
KEY `FK_penjualan_jnsjual3` (`JNSBAYAR3`,`LOKASI`),
CONSTRAINT `FK_penjualan_account` FOREIGN KEY (`NOREK`) REFERENCES `account` (`NOREK`) ON UPDATE CASCADE,
CONSTRAINT `FK_penjualan_customer` FOREIGN KEY (`CUSTOMER`) REFERENCES `customer` (`KODE`) ON UPDATE CASCADE,
CONSTRAINT `FK_penjualan_gudang` FOREIGN KEY (`LOKASI`) REFERENCES `gudang` (`KODE`) ON UPDATE CASCADE,
CONSTRAINT `FK_penjualan_gudang_2` FOREIGN KEY (`LOKASI2`) REFERENCES `gudang` (`KODE`) ON UPDATE CASCADE,
CONSTRAINT `FK_penjualan_jnsjual` FOREIGN KEY (`JNSBAYAR`, `LOKASI`) REFERENCES `jnsbayarjual` (`KODE`, `LOKASI`) ON UPDATE CASCADE,
CONSTRAINT `FK_penjualan_jnsjual2` FOREIGN KEY (`JNSBAYAR2`, `LOKASI`) REFERENCES `jnsbayarjual` (`KODE`, `LOKASI`) ON UPDATE CASCADE,
CONSTRAINT `FK_penjualan_jnsjual3` FOREIGN KEY (`JNSBAYAR3`, `LOKASI`) REFERENCES `jnsbayarjual` (`KODE`, `LOKASI`) ON UPDATE CASCADE,
CONSTRAINT `FK_penjualan_sales` FOREIGN KEY (`SALES`) REFERENCES `sales` (`KODE`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8
CREATE TABLE `customer` (
`KODE` varchar(50) NOT NULL DEFAULT '',
`NIK` varchar(20) NOT NULL DEFAULT '',
`NAMANIK` varchar(50) NOT NULL DEFAULT '',
`AKTIF` tinyint(1) NOT NULL DEFAULT -1,
`BLOKPLAFON` tinyint(1) NOT NULL DEFAULT -1,
`LVL` smallint(5) unsigned DEFAULT NULL,
`AREA` varchar(20) DEFAULT NULL,
`NAMA` varchar(100) DEFAULT '',
`ALAMAT` varchar(200) DEFAULT '',
`TELP` varchar(50) DEFAULT '',
`MOBILE` varchar(100) DEFAULT NULL,
`MOBILE2` varchar(100) DEFAULT NULL,
`FAX` varchar(50) DEFAULT '',
`CONTACT` varchar(100) DEFAULT '',
`TEMPOBAYAR` smallint(6) DEFAULT NULL,
`TEMPOTELAT` smallint(6) DEFAULT NULL,
`HARITT` varchar(15) CHARACTER SET latin1 DEFAULT '',
`HARITAGIH` varchar(15) CHARACTER SET latin1 DEFAULT '',
`AGAMA` varchar(10) DEFAULT NULL,
`TGLLAHIR` datetime DEFAULT NULL,
`JENISKELAMIN` varchar(6) DEFAULT NULL,
`EMAIL` varchar(100) DEFAULT '',
`PLAFONKREDIT` double NOT NULL DEFAULT 0,
`SALES` smallint(6) DEFAULT NULL,
`TGLDAFTAR` datetime DEFAULT NULL,
`PICTURE` longblob DEFAULT NULL,
`GPSMAP` varchar(50) DEFAULT NULL,
`EXPIREDATE` datetime DEFAULT NULL,
`NPWP` varchar(50) DEFAULT '',
`NAMAPKP` varchar(100) DEFAULT '',
`ALAMATPKP` varchar(150) DEFAULT '',
`UMUR` double DEFAULT 0,
`CREATETIME` datetime DEFAULT current_timestamp(),
`UNIONCODE` varchar(50) DEFAULT '',
`UPDTIME` datetime DEFAULT NULL ON UPDATE current_timestamp(),
PRIMARY KEY (`KODE`) USING BTREE,
KEY `FK_customer_area` (`AREA`),
CONSTRAINT `FK_customer_area` FOREIGN KEY (`AREA`) REFERENCES `area` (`KODE`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8
//explain select
"id" "select_type" "table" "type" "possible_keys" "key" "key_len" "ref" "rows" "Extra"
"1" "PRIMARY" "b" "eq_ref" "PRIMARY" "PRIMARY" "152" "data.a.CUSTOMER" "1" ""
"1" "PRIMARY" "<derived3>" "ref" "key0" "key0" "153" "data.a.FAKTUR2" "10" ""
"3" "DERIVED" "a" "ref" "FK_penjualan_gudang" "FK_penjualan_gudang" "2" "const" "2902" "Using index condition; Using where; Using filesort"
"1" "PRIMARY" "a" "ref" "FK_penjualan_customer,FK_penjualan_gudang" "FK_penjualan_customer" "152" "const" "8" "Using index condition; Using where; Using temporary; Using filesort"
"1" "PRIMARY" "penjualan" "ALL" "5804" "Using where; Using join buffer (flat, BNL join)"
|