Sunday, October 27, 2019

(Part 1) Membangun Aplikasi Kasir atau Point of Sales (POS) Dengan PHP dan MYSQL (Rancangan Database)

Pada kesempatan kali ini kami ingin berbagi dan belajar tetang cara Membagun Aplikasi Kasir atau sering juga di kenal dengan Point of Salses (POS).
Tampilan transaksi dan potonhgan struk


Point of Sales, yang berarti akan terjadi proses pencatatan transaksi penjualan, syarat dari pencatatan transaksi tersebut adalah terdapat data Item atau produk jumlah item yang dibeli dan nilai jualnya, data operator (kasir) dan data transaksi dari transaksi yang dilakaukan.

Perangkat Lunak :
Perangkat lunak yang digunakan dalam pembangunan Aplikasi ini yaitu :
-  AppServ, sebagai software yang berisi web server Apache, PHP, dan Database Server MYSQL.
- Aplikasi browser program Mozilla Firefox, Google Crhome atau yang lainnya.

SCHEMA DATABASE

Database atau basis data, atau sering pula dieja basisdata, adalah kumpulan Informasi yang disimpan di dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer  untuk memperoleh informasi dari basis data tersebut.



MEMBUAT DATABASE

1. Buat database dengan nama POS
CREATE DATABASE `POS` ;

2. Buat tabel dengan nama TABEL_BARANG dengan jumlah field 6 :
CREATE TABLE `tabel_barang` (
 `BRG_PLU` VARCHAR( 7 ) NOT NULL , 
`BRG_DESK` VARCHAR( 100 ) NOT NULL ,
 `BRG_DESKP` VARCHAR( 30 ) NOT NULL ,
 `BRG_UNIT` VARCHAR( 7 ) NOT NULL ,
 `BRG_FRAC` VARCHAR( 4 ) NOT NULL ,
 `BRG_BARCODE` VARCHAR( 100 ) NOT NULL )
ENGINE = MYISAM ;

Tabel barang ini berfungsi untuk menyimpan data-data Item atau barang apa saja yang akan kita jadi item transaksi.

3. Buat tabel dengan nama TABEL_HARGA dengan jumlah field 7 :
CREATE TABLE `TABEL_HARGA` (
`HRG_PLU` VARCHAR( 7 ) NOT NULL ,
`HRG_HARGA_LAMA` INT( 9 ) NOT NULL ,
`HRG_HARGA_BARU` INT( 9 ) NOT NULL ,
`HRG_CREATE_DT` DATE NOT NULL ,
`HRG_CREATE_BY` VARCHAR( 6 ) NOT NULL,
`HRG_MODIFY_DT` DATE NOT NULL ,
`HRG_MODIFY_BY` VARCHAR( 6 ) NOT NULL )
ENGINE = MYISAM ;

Tabel harga ini berfungsi untuk menyimpan data harga dari setiap item atau barang transaksi.



4. Buat tabel dengan nama TABEL_STOCK dengan jumlah field 9 :
CREATE TABLE `TABEL_STOCK` (
`ST_PLU` VARCHAR( 7 ) NOT NULL ,
`ST_QTY_AWAL` INT( 10 ) NOT NULL ,
`ST_QTY_AKHIR` INT( 10 ) NOT NULL ,
`ST_ACOST` INT( 9 ) NOT NULL ,
`ST_ACOST_LAMA` INT( 9 ) NOT NULL,
`ST_CREATE_BY` VARCHAR( 6 ) NOT NULL ,
`ST_CREATE_DT` DATE NOT NULL ,
`ST_MODIFY_BY` VARCHAR( 66 ) NOT NULL ,
`ST_MODIFY_DT` DATE NOT NULL )
ENGINE = MYISAM ;

Tabel stock merupakan tabel untuk penyimpanan data stock. Dimana nantinya penerimaan barang yang dinput admin gudang akan bertambah di stock, sedangkan transaksi penjualan yang dilakukan oleh kasir akan memotong stock.


5. Buat tabel dengan nama TABEL_JUAL dengan jumlah field 7 :
CREATE TABLE `TABEL_JUAL` (
 `TJ_PLU` VARCHAR( 7 ) NOT NULL ,
 `TJ_QTY` INT( 9 ) NOT NULL , 
`TJ_HARGA` INT( 9 ) NOT NULL , 
`TJ_TOTAL_HARGA` INT( 10 ) NOT NULL ,
 `TJ_TGLTRANS` DATETIME NOT NULL ,
 `TJ_CREATE_BY` VARCHAR( 6 ) NOT NULL ,
 `TJ_NO_STRUK` VARCHAR( 20 ) NOT NULL )
 ENGINE = MYISAM ;

Tabel jual tabel untuk menyimpan data2 transaksi penjualan.


6. Buat tabel dengan nama TEMP_TABEL_JUAL dengan jumlah field 7 :
CREATE TABLE `TEMP_TABEL_JUAL` ( 
`TEMP_PLU` VARCHAR( 7 ) NOT NULL ,  
`TEMP_QTY` VARCHAR( 9 ) NOT NULL , 
 `TEMP_HARGA` VARCHAR( 9 ) NOT NULL ,
 `TEMP_TOTAL_HARGA` VARCHAR( 10 ) NOT NULL ,
 `TEMP_TGLTRANS` DATETIME NOT NULL , 
 `TEMP_CREATE_BY` VARCHAR( 6 ) NOT NULL , 
 `TEMP_NO_STRUK` VARCHAR( 20 ) NOT NULL )
 ENGINE = MYISAM ;

Sedangkan Tabel Temp Jual untuk penyimpan sementara data2 transaksi, yang kemudian di insert ke tabel jual.


7. Buat tabel dengan nama TEMP_PENERIMAAN dengan jumlah field 6 :
CREATE TABLE  `TEMP_PENERIMAAN` (
 `TEMP_NODOC` VARCHAR( 16 ) NOT NULL ,
 `TEMP_PLU` VARCHAR( 7 ) NOT NULL ,
 `TEMP_QTY` INT( 9 ) NOT NULL ,
 `TEMP_HARGA_BELI` INT( 9 ) NOT NULL ,
 `TEMP_TGL` DATETIME NOT NULL ,
 `TEMP_CREATE_BY` VARCHAR( 6 ) NOT NULL
) ENGINE = MYISAM ;

Tabel TEMP_PENERIMAAN untuk penyimpanan data penerimaan barang sementara untuk kemudian disimpan pada tabel TABEL_PENERIMAAN dan TABEL_STOCK.

8. Buat tabel dengan nama TABEL_PENERIMAAN dengan jumlah field 6 :
CREATE TABLE  `TABEL_PENERIMAAN` (
 `TP_NODOC` VARCHAR( 16 ) NOT NULL ,
 `TP_PLU` VARCHAR( 7 ) NOT NULL ,
 `TP_QTY` INT( 9 ) NOT NULL ,
 `TP_HARGA_BELI` INT( 9 ) NOT NULL ,
 `TP_TGL` DATETIME NOT NULL ,
 `TP_CREATE_BY` VARCHAR( 6 ) NOT NULL
) ENGINE = MYISAM ;
 Tabel TABEL_PENERIMAAN untuk penyimpanan data penerimaan barang dari gudang, dimana ketika melakukan penerimaan akan berpengaruh terhadap tabel TABEL_PENERIMAAN dan TABEL_STOCK.

9. Buat tabel dengan nama USER_LOGIN dengan jumlah field 7 :
CREATE TABLE `USER_LOGIN` ( 
 `USERNAME` VARCHAR( 3 ) NOT NULL , 
`NAMA` VARCHAR( 40 ) NOT NULL ,  
`PASSWORD` VARCHAR( 40 ) NOT NULL ,
 `LOGIN_HASH` VARCHAR( 20 ) NOT NULL ) 
ENGINE = MYISAM ;

Mengakhiri Postingan kali ini kita telah menyelasikan rancangan database yang akan kita gunakan untuk membuat aplikasi Point of Sales, maka dengan rancangan database ini kita sudah dapat membayangkan apa saja yang harus kita kerjakan pada tahap development.

sampai jumpa di artikel selanjutnya

NB : Source code dalam artikel yang berkelanjutan ini akan kami dokumentasikan, dan kami share link downloadnya di akhir project.






0 komentar:

Post a Comment

follow

Follow My Blog

baner ak

Click the Flag to translate this blog into English =>> English








Twitter Delicious Facebook Digg Stumbleupon Favorites More