Pages

Sunday 2 January 2011

KONSEP OOP PADA PYTHON

Konsep OOP Pada Python
Python adalah bahasa pemograman komputer berorientasi objek, yang berarti
bahasa Python ini menyediakan fitur - fitur yang mendukung pemograman
berorientasi objek. Dan Anda mungkin pernah mendengar tentang konsep bahasa
pemograman yang mempunyai banyak kelebihan dibandingkan dengan pemograman
prosedural, yaitu reusability dan inheritance yang akan dibahas pada bab ini.
Tidak mudah menjelaskan pemograman berorientasi objek, tetapi kita telah meli
hat beberapa karakteristiknya :

1. Program - program dibuat dari pendefinisian objek - objek dan fungsi - fungsi,
dan kebanyakan perhitungan komputasi diekspresikan kedalam operasi pada objek.
2. Masing - masing pendefinisian objek merujuk ke beberapa objek atau konsep
yang sebenarnya pada dunia nyata, dan fungsi - fungsi pada objek dianalogikan
sebagai interaksi pada objek.
Pada suatu objek terdapat metode - metode yang dapat digunakan, kita telah
melihat beberapa metode, seperti keys dan values,
Class
Pada saat Anda membuat sebuah class, Anda dapat meminta Python untuk
menentukan objek apa yang dapat dilakukan pada suatu class. Hal yang membuat
objek dalam class melakukan sesuatu adalah metode. Metode seperti fungsi yang
berada di dalam sebuah objek.
>>> class Cetak:
... def cetak_sesuatu (self, string):
... print "Anda mencetak", string
Pada contoh diatas Anda telah membuat class Cetak dengan metode cetak_sesuatu
yang mempunyai fungsi untuk mencetak string yang ditentukan. Kemudian buat
suatu objek dengan class Cetak:
>>> cetak = Cetak()
>>> cetak.cetak_sesuatu("Hello World!")
Anda mencetak Hello World!
Sekarang variabel cetak merupakan suatu objek dari class Cetak dan objek cetak
dapat melakukan metode yang terdapat pada class Cetak.
Kita dapat memberikan variabel - variabel di dalam metode. Misalnya :
>>> class Mencetak :
... def tentukan_string(self, string):
... self.kata = string
... def cetak(self):
... print "Kata yang anda ingin cetak", self.kata
Sama seperti halnya menentukan suatu objek dari class Cetak, maka kita juga
dapat melakukannya dengan class Mencetak. Misalnya nama objek itu adalah
ngeprint. Berarti objek ngeprint tersebut memiliki dua metode yang terdapat pada
class Mencetak, yaitu tentukan_string dan cetak. Pada objek ngeprint juga terdapat
anggota variabel yang dideklarasikan dengan kata kunci self, yang berarti anggota
dari suatu class.
>>> ngeprint = Mencetak()
>>> ngeprint.kata = "Hello"
>>> ngeprint.cetak()
Kata yang anda ingin cetak Hello
Kita dapat menentukan anggota variabel lokal dari class tersebut secara langsung
atau dengan menggunakan metode tentukan_string. Misalnya :
>>> ngeprint.tentukan_string("Hello Class!")
>>> ngeprint.cetak()
Kata yang anda ingin cetak Hello Class!
Inheritance (Turunan)
Seperti yang telah disebutkan diatas, salah satu kemampuan pemograman
berorientasi objek adalah inheritance, yang berarti turunan dari suatu class.
Pendefinisian sintaksnya adalah sebagai berikut :
class NamaClassTurunan (NamaClassDasar):

...
...
...

Nama ClassDasar harus didefinisikan dalam ruang lingkup class turunan. Selain
sebuah nama ClassDasar, sebuah ekspresi juga diperbolehkan. Contohnya pada saat
menurunkan suatu class yang terdapat dalam suatu modul:
class NamaClassTurunan (namamodule.NamaClassDasar):
Menjalankan pendefinisian class turunan sama halnya dengan mendefinisikan class
dasar. Pada saat suatu objek class dibangun, classDasar disertakan didalamnya. Hal
ini digunakan sebagai referensi atribut; jika permintaan terhadap suatu atribut
tidak ditemukan di dalam class, kemudian mencari atribut tersebut ke dalam
classDasar. Aturan ini berkelanjutan jika classDasar yang ditentukan merupakan
classTurunan lain.
Mari kita buat classTurunan dari class Mencetak :
>>> class printer (Mencetak):
... def tambah_kata(self, kata):
... self.kata = self.kata + kata
Pada contoh diatas kita membuat suatu classTurunan dengan nama printer yang
diturunkan dari class Mencetak, dan ditambahkan satu metode yang berfungsi
menambahkan suatu kata. Contoh penggunaannya :
>>> buku = printer()
>>> buku.kata = "Buku Python"
>>> buku.tambah_kata("Bisa dibeli di Amazon.com")
>>> buku.cetak()
Kata yang anda ingin cetak Buku Python Bisa dibeli di Amazon.com
Anda telah membuat suatu class turunan yang diturunkan dari class Mencetak!.
Seperti yang kita lihat beberapa metode diatas tidak didefinisikan dalam class
printer, tetapi mengapa printer dapat menjalankan metode yang berada pada class
Mencetak ? hal ini dikarenakan classTurunan akan mencari atribut yang dipanggil
pada classDasar jika atribut tersebut tidak ditemukan dalam class itu sendiri. Anda
juga dapat mendefinisikan classTurunan dari beberapa classDasar, seperti halnya
satu classDasar, jika atribut yang diminta tidak ada pada class itu sendiri maka
akan mencari ke classDasarsatu, kemudian jika tidak ada juga maka akan mencari ke
classDasardua begitu selanjutnya.
Constructor
Dalam Python juga terdapat constructor seperti pada C++, tetapi pada python tidak
terdapat Destructor . Constructor ini berfungsi untuk menginisialisasikan sesuatu
metode atau variabel pada saat class tersebut dipanggil atau didefinisikan.
Sintaksnya adalah sebagai berikut :
class NamaClass:
def __init__ (self, :


Contohnya mari kita buat suatu classTurunan dari class printer :
>>> class Kalimat(printer):
... def __init__(self, kata):
... self.kata = kata
... self. cetak()
... self.awal = self.kata + 'Ini variabel awal'
dari sini kita langsung dapat menentukan kata yang ingin dicetak pada
pendefinisian class.
>>> ObjekCTK = Kalimat("Dunia ini")
Kata yang anda ingin cetak Dunia ini
seperti yang Anda lihat ketika pendefinisian suatu class, maka akan menset
variabel kata dan menjalankan metode fungsi cetak. Bagaimana jika kita tidak
memberikan argumen parameter pada saat pendefinisian class? Akan menimbulkan
pesan kesalahan :
>>> ObjekCTKB = Kalimat()
Traceback (most recent call last):
File "", line 1, in ?
TypeError: __init__() takes exactly 2 arguments (1 given)
Tetapi hal ini dapat diatasi dengan memberikan nilai awal pada argumen
parameter dengan nilai string kosong ''.Misalnya :
>>> class KalimatA(printer):
... def __init__(self, kata=''):
... self.kata = kata
... self. cetak()
... self.awal = self.kata + 'Ini variabel awal'
Dengan ini kita dapat mendefinisikan suatu class secara optional , dengan
parameter maupun tanpa parameter.
>>> ObjekCTKB = KalimatA()
Kata yang anda ingin cetak
Selengkapnya...

PROPOSAL PERANCANGAN SISTEM DATABASE MINIMARKET (belum dinormalisasi)

PROPOSAL PERANCANGAN SISTEM DATABASE
MINIMARKET
(disusun sebagai tugas mata kuliah
Sistem Basis Data 1)

disusun oleh:
Reza Budi Ryanzah : 58409013
Lucky Rachmadeni : 50408961
Handi : 50408410
Yugi Safari Nurhakim : 50408890
Arry Ardiantara : 50408163
Fakultas Teknik Industri
Jurusan Teknologi Informatika
Universitas Gunadarma
2010






KATA PENGANTAR

Syukur alhamdulillah kami panjatkan kehadirat Allah Swt atas limpahan karunia-Nya sehingga kami dapat menyelesaikan tugas pembuatan rancangan proposal database dengan judul “Perancangan Sistem Informasi Database Minimarket“. Perancangan ini telah dimulai pembuatannya awal perkuliahan tahun ajaran 2010-2011 hingga akhir perkuliahan mata kuliah Sistem Basis Data, sebagai tugas kelompok.
Sistem Database Minimarket sangatlah kompleks, mengingat bukan hanya bagian internal perusahaan yang harus direncanakan desain databasenya, melainkan pihak ekstern seperti supplier. Selain itu kita juga harus merencanakan storage yang baik, sehingga bila nantinya ada pengembangan usaha, desain database ini masih bisa dan layak untuk digunakan. Selain itu, efektifitas dan efisiensi dalam perancangan desain database ini pun merupakan tolak ukur bagi kami dalam menyelsaikan proposal ini.
Penulisan proposal ini dapat selesai berkat dorongan, saran, kritik, dan bantuan berbagai pihak. Pada kesempatan kali ini penulis ingin menyampaikan rasa terima kasih yang sebesar-besarnya kepada semua pihak yang turut membantu Penulis menyelesaikan proposal penelitian ini. Proposal ini mudah-mudahan dapat bermanfaat bagi pembaca dan pihak yang terkait dengan pelaporan akademik di setiap program studi, khususnya program studi Teknik Informatika.
Jakarta, 12 Oktober 2010
Penulis







BAB I
PENDAHULUAN

I.1 Latar Belakang Masalah
Persaingan yang ketat diantara industry franchised seperti halnya minimarket, mau tak mau mendorong para pelaku industry tersebut untuk memberikan pelayanan yang sebaik-baiknya kepada pelanggan, termasuk penyediaan informasi bagi para supplier, dan penyusunan jadwal distribusi produk mereka. Hal ini semakin terikat erat dengan pesatnya pula perkembangan teknologi computer yang mengubah semua proses pencatatatan dan akuntansi yang awalnya masih bersifat manual menjadi ter-komputerisasi dengan baik. Sealian di sisi sumber daya material yang sudah siap ‘menyambut’ kelutnya persaingan di dunia usaha, para pelaku industry juga perlu membekali kemampuan para pekerjanya untuk bisa mengoperasikan alat-alat dan computer yang sudah disediakan sebagai media pencatat.
Ada beberapa hal yang perlu dipikirkan oleh seorang system analis database dalam menyusun database sebuah minimarket yang dipersiapkan untuk berkembang dan maju. Selain tentunya system database untuk menampung semua jenis dan detail barang yang akan dijual, namun juga perlu memikirkan system database untuk menampung data stock barang, data pembelian dan data penjualan, data karyawan dan penggajian, juga perlu memikirkan system database yang menampung data para supplier.
Setelah memikirkan rancangan database, seorang system analis database juga merancang bagaimana flow kerja dari system database tersebut, serta mungkin perlu dipikirkan desain softwarenya mengingat tampilan yang user friendly memudahkan proses penginputan dan pengolahan data, sehingga meminimalisir factor kesalahan oleh human error. Mengingat begitu kompleksnya rancangan desain database ini, melatarbelakangi kami dalam menyusun rancangan databasenya termasuk pula software yang akan menjadi input dan tampilan pertama bagi end user.

I.2 Tujuan Perancangan Database
Adapun tujuan pembuatan SIM PT adalah sebagai berikut :
1. Membangun suatu system database yang didukung oleh software yang handal dan dibangun dengan fasilitas untuk mengolah data minimarket, dan membuat laporan yang sesuai
2. Memperbaiki kinerja system database dari sebuah minimarket yang mungkin masih manual, sehingga membutuhkan waktu lama sehingga menjadi sebuah informasi yang berguna dalam pengambilan keputusan.

I.3 Manfaat Perancangan Database
Adapun keuntungan yang akan didapat dengan menggunakan system komputerisasi yang terhubung dengan database, diantaranya adalah:
1. Mempercepat proses penginputan data di kasir, dan pengolahannya
2. Sistem database juga menyediakan proses otomatisasi dalam beberapa hal, seperti misalnya penggajian (yang berdasarkan absen), dan pemesanan stock barang, karena langsung terhubung dengan supplier(melalui key).
3. Mempertinggi value added dan comparative advantage dalam rangka menyongsong persaingan di dunia usaha yang serba terkomputerisasi dengan database.
I.4 Perencanaan Sistem
Sistem baru akan dibuat menjadi sebuah sistem yang terkomputerisasi, sehingga transaksi penjualan dan pembelian serta penyimpanan data tidak dilakukan secara manual. Sistem ini dibuat menggunakan 5 PC yaitu 4 PC untuk kasir dan 1 PC untuk admin. Kelima PC ini terhubung dengan suatu jaringan LAN yang menggunakan topologi STAR. Tampilan aplikasi dari sistem ini dibuat menggunakan Java dan MYSQL sebagai database / penyimpanan data.
I.5 Perencanaan Biaya
Dalam proposal perancangan system database ini kami cantumkan rencana biaya dimana didalamnya sudah termasuk anggaran untuk pembelian hardware, software dan biaya pelatihan karyawan. Berikut rencana biaya yang dimaksud:
Total anggaran yang disediakan: Rp.25.000.000,-

Estimasi biaya yang dibutuhkan:
- 4 unit PC Pentium IV (kasir)
@ Rp 800.000,- * 4 = Rp 3.200.000,-
- 1 unit PC Centrino Core2Duo (admin)
@ Rp 2.500.000,- * 1 = Rp 2.500.000,-
- 3 Windows XP SP2 Home Edition
@ Rp 750.000,- * 3 = Rp 2.250.000,-
- 1 Windows XP Professional SP2
@ Rp. 900.000,- * 1 = Rp. 900.000,-
- 1 Microsoft Office 2007 Profesional Edition
@ Rp 1.200.000,- * 1 = Rp 1.200.000,-
- 4 unit printer Dot Matrik Epson
@ Rp 500.000,- * 1 = Rp 500.000,-
- 1 unit printer inkjet Canon IP 1700
@ Rp 300.000,- * 1 = Rp 300.000,-
- 1 roll kabel LAN = Rp 40.000,-
- Tinta dan Kertas = Rp 500.000,-
- Biaya pelatihan pegawai ( 2hari) = Rp 1.000.000,-_ +
Total Biaya = Rp 12.390.000,-
I.6 Faktor Uji Kelayakan (TELOS)
Pengembangan sistem baru ini dibuat berdasarkan faktor uji kelayakan TELOS yaitu :
Teknikal
- Sistem baru yang akan dibuat dapat digunakan untuk jangka waktu 10 tahun mendatang.
- Menggunakan bahasa pemograman Java dengan format GUI (Graphical User interface) untuk tampilan aplikasi.
- Menggunakan software MYSQL untuk penyimpanan data (database).
- Menggunakan Topologi jaringan STAR.
Ekonomi
- Dana yang tersedia untuk pengembangan sistem = Rp 25.000.000,-
- Dana yang digunakan untuk pembuatan sistem baru = Rp 12.390.000,-
Legal
- Sistem baru yang dibuat menggunakan software – software original
- Pembuatan sistem sesuai dengan ketentuan yang berlaku.
Operasional
- Dilakukan pelatihan / training 2 hari untuk pegawai mini market (kasir), mengenai sistem baru yang akan digunakan.
- Dibutuhkan seorang Admin untuk mengatur pengoperasian sistem yang baru.
Strategi
Selain berdasarkan faktor uji kelayakan, sistem baru ini juga memperhatikan faktor strategi PDM yaitu :
Produktivitas
- Transaksi penjualan dan pembelian lebih cepat sehingga lebih banyak pelanggan yang dapat dilayani dalam satu waktu secara bersamaan.
Diferensiasi
- Pelayanan yang diberikan lebih cepat karena transaksi sudah terkomputerisasi.
Manajemen
- Dengan menggunakan sistem baru memudahkan pemilik melihat perkembangan minimarket serta memudahkan pemilik pengambilan keputusan.
• Work Plan
STEP DERIVERABLE ESTIMATED HOUR ACTUAL HOUR
1. Planning Phase 2 Months
2. Analysis Phase
Examine as is system - Information summaries 1 week
- Use Case
- Proses Model 1 week
- Data Model
Identify improvements - Idea for system 2 weeks
Develop robe system - System concept 2 weeks
- Use Case 2 weeks
- Proses Model 2 weeks
- Data Model 2 weeeks
3. Design Phase
Develop Physical Model - Physical Use Case 2 weeks
- Physical Proses Model 2 weeks
- Physical Data Model 2 weeks
Design Architecture - System Architecture 3 weeks
Design Infrastructure - Infrastructure Design 3 weeks
- Network Model 3 weeks
- Hardware 3 weeks
- Security Plan 2 weeks
Design Interface - Design Interface 2 weeks
Design Database - Database 2 weeks
Keterangan :
1. Yang dilakukan pada tahap planning phase yaitu merencanakan aplikasi apa yang akan dibuat, mencari data sustem lama dan mencari data baru untuk aplikasi yang baru, pada tahap ini dibutuhkan waktu perkiraan selama 2 bulan.
2. Pada tahap examine as is system, mencari ringkasan informasi dengan melakukan observasi dan interview kepada pemilik mini market, waktu perkiraan yang dibutuhkan selama 2 minggu.
3. Pada tahap Identify improvement adalah pencarian ide awal yang digunakan untuk membuat sistem yang baru.
4. Develop robe system, dalam tahap ini ditetapkan konsep sistem yang akan dibuat dibantu dengan pembuatan model-model seperti use case diagram, activity diagram, dan class diagram.
5. Dalam tahapan Design Phase digambarkan bagaimana desain yang sesuai dengan sistem yang akan dibuat, mulai dari arsitektur sistem, penggambaran infrastruktur jaringan maupun sistem keamanan yang dipakai, hingga perancangan tampilan interface dari sistem yang user friendly dan perancangan database yang digunakan sistem.
• Analysis Plan
STEP TECHNIQUE SPESIFIC ACTIVITIES
1. Understand is as system - Gather Information - Observation at mini market
- Interview with owner
- Develop Proses Model -
- Develop Data Model -
2.Identified Improvemants - BPA (Bussiness Proccess Automation) Problem Analysis
3. Develop to be system - Gather Information Find Requirment
- Develop Proses Model UseCase Diagram
- Develop Data Model Class Diagram

Keterangan :
1. Pada Tahap Understand is as system, teknik yang digunakan adalah pengumpulan informasi dengan cara observasi langsung bagaimana sistem yang lama berjalan dan melakukan interview kepada pemilik mini market untuk mengetahui apa saja yang dibutuhkan dalam pembuatan sistem baru.
2. Pada tahap Identified Improvemants ialah mengenali perekembangan yang akan dilakukan, teknik yang digunakan dalam tahap ini adalah BPA (Bussiness Proccess Automation), digunakan teknik ini karena sistem yang lama masih menggunakan cara manual yang kurang efektif, dibuatlah sistem yang secara otomatis membantu kinerja mini market untuk mendapatkan hasil yang maksimal. Hal ini dilakukan dengan cara menganalisa permasalahan yang ada untuk dicari penyelesaiannya.
3. Pada tahap Develop to be system ialah mengembangkan sistem yang akan dibuat dengan teknik pengumpulan informasi dan mencari requirment yang dibutuhkan sistem, teknik pengembangan proses model menggunakan use case diagram untuk menhetahui proses bisnis apa saja yang terdapat pada sistem yang baru, serta pengembangan data model dengan menggunakan class diagram yang menggambarkan keterhubungan antar database dalam sistem yang akan dibuat.
• Find Requirment
REQUIRMENT ACTOR USE CASE
Pelanggan membayar barang di kasir Pelanggan, Kasir Membayar barang
Kasir menghitung total penjualan barang yang dibeli pelanggan Kasir Menghitung total harga
Kasir memberikan nota penjualan ke pelanggan Kasir, Pelanggan Memberikan nota
Admin meminta laporan penjualan harian ke kasir Admin, Kasir Meminta laporan penjualan harian
Kasir memberikan laporan penjualan harian ke admin Kasir, Admin Memberikan laporan penjualan harian
Admin mengecek persediaan barang Admin Mengecek Persediaan barang
Admin memesan barang ke suplier Admin, Suplier Memesan barang
Suplier mengirimkan barang dan memberikan faktur Suplier, Admin Mengirim barang dan memberikan faktur pembelian


















BAB II
DESAIN DATABASE
II.1 Desain Output
Transaksi penjualan dan pembelian pada mini market, menggunakan nota penjualan, retur pembelian dan laporan penjualan harian sebagai output dan bukti transaksi. Desain output dibedakan menjadi output eksternal dan internal.
Output eksternal diberikan untuk pihak lain dari mini market, yaitu :
1. Nota Penjualan : diberikan oleh kasir kepada pelanggan sebagai bukti penjualan. Frekuensi output ini diberikan setiap terjadi transaksi penjualan. Output memberikan informasi mengenai barang – barang yang dijual ke pelanggan dan total harga.
2. Retur Pembelian : diberikan oleh admin kepada suplier sebagai bukti pembelian. Frekuensi output ini diberikan setiap terjadi transaksi pembelian. Output memberikan informasi mengenai barang –barang yang dibeli dari suplier dan total harga.
Output internal diberikan untuk pihak mini market, yaitu :
1. Laporan penjualan harian : diberikan oleh kasir kepada admin. Frekuensi output ini diberikan setiap hari di akhir penjualan. Output memberikan informasi mengenai barang yang terjual dan stock barang.

II.2 Desain Input
Informasi dari pihak mini market dan pihak luar mini market diperlukan untuk mengetahui transaksi yang terjadi dan membantu dalam pengambilan keputusan sehingga tujuan yang diharapkan tercapai. Desain input dibedakan menjadi input eksternal dan input internal.
Input eksternal merupakan informasi yang diperoleh dari pihak luar mini market, yaitu retur pembelian dari suplier. Input internal merupakan informasi yang diperoleh dari pihak mini market, yaitu nota penjualan untuk pelanggan.

II.3 Struktur Menu
} Menu File : Log-in, Log-out, Keluar.
} Menu Data : Data Pelanggan, Data Pemasok, Data Group, Data Produk, Data Barang.
} Menu Transaksi : Pembelian Barang, Penjualan Retail, Retur Barang.
} Menu Laporan : Seluruh Pemasok, Seluruh Grup Barang, Seluruh Produk Barang, Seluruh Barang, Barang Berdasarkan Produk, Penjualan per-Nota, Penjualan per-Tanggal Transaksi, Penjualan per-Periode, Pembelian per-Nota, Pembelian per-Periode.
} Menu Setting

II.4 Desain Database
Model Entity Relationship


Daftar Tabel yang digunakan:

Tabel Pelanggan (yang membayar dengan kartu kredit)
Field Name Type Data Field Size Keterangan
No_Nota Text 10 Primary key
Kode_Pelanggan Text 5 Foreign Key
Nama_Pelanggan Text 50
No_Card Text 15 Foreign key
Id_bank Text 10 Foreign Key
Subtotal Number

Kode Bank Member
Field Name Type Data Field Size Keterangan
Id_bank Text 10 Primary key
Nama_bank Text 10 Foreign Key

Metode Pembayaran
No_Nota Text 10 Primary key
Kode_Pelanggan Text 5 Foreign Key
Cara_Bayar Text (Cash/Credit Card) 10 Foreign Key
Subtotal Number

Tabel Supplier
Field Name Type Data Field Size Keterangan
Id_Supplier Text 5 Primary key
Nama_Pemasok Text 50
Alamat Text 100
Kota Text 50
No_Telepon Text 15
No_Fax Text 15
Rekening Text 30

Tabel Grup
Field Name Type Data Field Size Keterangan
Kode_Grup Text 5 Primary key
Nama_Grup Text 50

Tabel Produk
Field Name Type Data Field Size Keterangan
Kode_Produk Text 5 Primary key
Kode_Grup Text 5 Foreign key
Nama_Produk Text 50

Tabel Barang
Field Name Type Data Field Size Keterangan
Kode_Barang Text 5 Primary key
Kode_Produk Text 5 Foreign key
Nama_Barang Text 50
Satuan Text 25
Harga_Beli Number
Harga_Jual Number
Stok Number

Tabel Pembelian
Field Name Type Data Field Size Keterangan
No_Masuk Text 5 Primary key
Tgl_Masuk Date/Time
Total Number
Kode_Pemasok Text 5 Foreign key
UserID Text 5 Foreign key

Tabel Pembelian Detail
Field Name Type Data Field Size Keterangan
No_Masuk Text 5 Foreign key
Kode_barang Text 5 Foreign key
Harga_Beli Number
Jumlah Number
SubTotal Number

Tabel Penjualan
Field Name Type Data Field Size Keterangan
No_Nota Text 10 Primary key
Tgl_Nota Date/Time
Total_Bayar Number
Kode_Pelanggan Text 5 Foreign key
UserID Text 30 Foreign key

Tabel Penjualan Detail
Field Name Type Data Field Size Keterangan
No_Nota Text 10 Foreign key
Kode_Barang Text 5 Foreign key
Harga_Jual Number
Jumlah Number
SubTotal Number

Tabel Pengguna
Field Name Type Data Field Size Keterangan
Id_peg Number Primary Key
UserID Text 30 Foreign Key
PassID Text 10 Foreign Key
Nama Text 20
Level Text 5

Tabel Pegawai
Field Name Type Data Field Size Keterangan
Id_peg Number Primary key
Nama Text 20
Alamat Text 100
No Telp Text 10
Email Text 20
Level Text 10

Tabel Shift Jaga
Field Name Type Data Field Size Keterangan
Id Number Primary Key
UserID Text 10 Foreign Key
PassID Text 10 Foreign Key
Nama Text 20
Level Text 5
Waktu Date 8
Tanggal Date 10

Tabel Absensi
Field Name Type Data Field Size Keterangan
Id Number Primary Key
Nama Text 20 Foreign Key
Level Text 5
Waktu Date 8
Tanggal Date 10
Keterangan Varchar 10

Tabel Penggajian
Field Name Type Data Field Size Keterangan
Id Number Primary Key
Nama Text 20 Foreign Key
Level Text 5
GajiPokok int 8
Bonus int 6
Potongan Varchar 6

Selengkapnya...