BAB 4 EVALUAS I DAN PERANCANGAN 4.1. Gap Analysis Dengan metode ini, akan dilakukan pencatatan terhadap kebutuhan pengguna yang terlibat dalam siklus procure to pay yang masih belum dapat terpenuhi oleh sistem. Lalu akan paparkan solusi dari masalah yang ada. Analisa dilakukan dari aktivitas pembelian material hingga penerimaan material di warehouse, dan aktivitas penagihan hingga pembayaran sesuai dengan ruang lingkup yang telah dipaparkan sebelumnya. Hasil analisa disajikan dalam bentuk tabel - tabel sebagai berikut : No 1
Requirements Vendor dapat melihat history dan Purchase Order baru pada website.
Rank High
Level Gap
Comment Dokumen Purchase Order dicetak kemudian dikirim melalui fax sehingga membutuhkan banyak waktu dan biaya.
Alternatives Pembuatan sistem dengan fungsi view Purchase Order dimana vendor dapat melihat dokumen Purchase Order yang baru dikirim dan melihat dokumen history Purchase Order yang telah selesai.
2
Vendor dapat melihat history penerimaan barang pada PT. XYZ.
Medium
Gap
Vendor membutuhkan waktu untuk mengecek apakah barang yang dikirim sesuai dengan barang yang diterima.
Pembuatan sistem dengan fungsi view BPB+ dimana vendor dapat melihat jumlah barang yang masuk pada gudang.
3
Vendor dapat melihat jumlah kekurangan barang yang harus dikirim kembali.
High
Gap
Vendor tidak cepat dalam menanggapi pengiriman kekurangan barang.
Pembuatan sistem dengan fungsi view BCT Pending dimana vendor dapat melihat jumlah kekurangan barang yang harus kembali dikirim.
52
53 4
Vendor dapat melakukan proses pelaporan kes alahan penerimaan dalam website.
Medium
Gap
Perusahaan menerima laporan kesalahan secara manual kemudian melakukan input ke dalam sistem.
Pembuatan sistem dengan fungsi BPB+ Report dimana vendor dapat melakukan pelaporan kes alahan penerimaan dalam website.
5
Vendor melakukan input terhadap Invoice yang akan ditagih ke PT. XYZ.
High
Gap
Kasir PT. XYZ yang melakukan input Invoice beserta dokumen bermaterai yang dibawa karyawan vendor melakukan kesalahan input.
Pembuatan sistem dengan fungsi Invoice dimana vendor dapat membuat Invoice berdas arkan dokumen BPB+.
6
Vendor dapat melihat history bukti pembayaran yang telah dilakukan pada website.
Medium
Gap
Saat ini pembayaran yang dilakukan akan menghasilkan cetakan dokumen bukti pembayaran sehingga tidak efisien dalam operasional perusahaan.
Pembuatan sistem dengan fungsi View Payment dimana vendor dapat melihat history bukti pembayaran yang telah dilakukan PT. XYZ.
Tabel 4.1 Tabel Fit/Gap Analysis
Keterangan : 1. Requirement, menjelaskan kebutuhan user 2. Rank (Ranking), terdiri dari : a. H (High / Kebutuhan Penting), yaitu kebutuhan yang kritis, penting untuk operasi dan tanpa mereka organisasi tidak dapat berfungsi, mereka juga meliputi kebutuhan pelaporan eksternal dan internal. b. M (Medium / Kebutuhan Penambah Nilai), yaitu kebutuhan yang jika dipenuhi, akan meningkatkan proses bisnis secara signifikan, kebutuhan ini biasanya kurang kritis untuk bisnis organisasi, tetapi
54
jika dipenuhi akan memberikan keuntungan biaya signifikan pada organisasi. c. L (Low / Kebutuhan yang Diinginkan), adalah kebutuhan yang baik untuk dimiliki dan hanya akan menambah nilai kecil ke proses bisnis dan mungkin dipertemukan melalui workaround atau perubahan proses bisnis. 3. Level, terdiri dari : a. F (Fit), artinya kebutuhan secara penuh dipenuhi oleh perangkat lunak. b. G (Gap), artinya perangkat lunak tidak memenuhi semua kebutuhan ini. c. P (Partial Fit), artinya perangkat lunak memiliki fungsionalitas yang memuaskan kebutuhan user. 4. Comment adalah
deskripsi dari kondisi perusahaan
yang sedang
berlangsung. 5. Alternatives adalah solusi alternatif yang digunakan untuk menyelesaikan permasalahan (Gap/Partial Fit) yang ditemukan. 4.2. Rekomendasi Pengembangan No 1 2 3 4 5 6
Alternatives Pembuatan sistem dengan fungsi view Purchase Order Pembuatan sistem dengan fungsi view BPB+ Pembuatan sistem dengan fungsi view BCT Pending Pembuatan sistem dengan fungsi BPB+ Report Pembuatan sistem dengan fungsi Invoice Pembuatan sistem dengan fungsi View Payment Tabel 4.2 Tabel Rekomendasi Pengembangan
Priorities High Medium High Medium High Medium
55
Keterangan : 1. Alternatives adalah solusi alternatif yang digunakan untuk menyelesaikan permasalahan (Gap/Partial Fit) yang ditemukan. 2. Priorities merupakan prioritas yang kami berikan pada solusi tersebut, prioritas dipengaruhi oleh Ranking pada tabel Gap, semakin tinggi Ranking maka prioritas semakin tinggi, karena semakin besar pula dampak dari permasalahan yang ada. Berdasarkan hasil dari analisis Gap, maka rekomendasi yang diajukan adalah mengembangkan sebuah vendor portal dengan fungsi , dengan menggunakan metode Object Oriented. 4.3. Analysis Document 4.3.1. The Task 4.3.1.1. Purpose PT. XYZ merupakan sebuah perusahaan yang bergerak di bidang manufaktur produk X. Seiring dengan berkembangnya perusahaan maka diperlukan suatu aplikasi tambahan untuk meningkatkan produksi pada perusahaan. Sistem yang baru diharapkan dapat membantu vendor dalam melihat Purchase Order, melihat Bukti Penerimaan Barang (BPB+), menampilkan BCT Pending, melaporkan kesalahan penerimaan, menampilkan laporan kesalahan penerimaan, membuat Invoice, menampilkan Invoice, menampilkan Bukti Pembayaran.
56
4.3.1.2. S ystem Definition Functionality
Application Domain Condition Technology Object
Responsibility
M enampilkan Purchase Order, menampilkan BPB+, menampilkan BCT Pending, melaporkan kesalahan penerimaan, membatalkan BPB+, menampilkan laporan kesalahan penerimaan, membuat Invoice, menampilkan Invoice, menampilkan bukti pembayaran. Receiving Dept Head, Vendor. Harus mempunyai koneksi internet agar kegiatan dapat berlangsung dengan baik. PC, server, internet. Purchase Order, Kondisi, Delivery schedule, Vendor, M aterial, BPB+, BCT Pending, BPB+Report, Invoice, Payment. Sebagai tools untuk membantu vendor dalam monitoring dokumen dalam modul procure to pay, tools untuk pembuatan Invoice, dan tools untuk melakukan pembatalan terhadap bukti penerimaan (BPB+). Tabel 4.3 Factor Framework
4.3.1.3. Context
57
4.3.1.3.1. Problem Domain a d Ac tiv ity [Ye s]
Re q ue ste r
Pu rch a si n g S ta ff
WAHO
Tre as ury
Tre as ury M a n ag e r
Sec ti on He a d
Fu n d M a na g e r
Pu rch a si n g Fu nc ti on He a d
Re ce i vi n g De pt He a d
Ve n d or
Si ste m
Me ngec e k PR M RP / Non M RP
Cre a te Purc ha s e Re quis ition
[PR MRP? ]
M e nge c e k PR
[No ]
[Ha rga l e ng ka p ? ]
M em buat Me m o
[No ] [Ye s] M ainta in har ga PR
Approv e /re jec t PR
[Ye s]
[Ap p ro v e PR? ] M ene rim a in form as i pe m ba ta lan
[No] Re le as e PR [Ye s] M e nge c e k k ele ngka pa n har ga pa da PO
[Ad a h a rg a? ]
M ainta in info re cord
[No ] [Y es]
M e nge c e k jumla h P O
[J u ml a h PO <ju m l ah PR? ] A pprov e /re je ct Konfirm a s i
Konfirm a si ke Re que s te r
[Ye s] [No ]
[Ap pro ve Ko n firm a si ?]
M enge c ek ov e r budge t
[No] M em buat m e mo pem ba ta la n
[Ye s]
Me nga juk a n pe rm inta a n pe ruba ha n budge t
Me m ba ta lka n s isa jum lah PR
[O ve rb u d g et? ]
[Ye s] M a inta in budge t Me nyim pan da n me nc eta k PO
[No ] M e nge c e k da n me nye tujui PO
M e nguploa d PO da n notifik a si M ene rima PO
Me ne rima Ba ra ng & Kele ngka pa n Dok um en
M e ngirim ba ra ng, sura t ja lan, dan dok ume n re fer ens i
[Do ku me n l en g ka p ?] [N o]
[Ye s]
Re ce iv ing Ins pec tion Proce s s es [BCT/Non BCT? ]
[BCT]
[Non BCT]
Sc a n B CT
Me nc ata t pe ne rima a n ma te ria l Me ngupload BPB+
M e mbua t BPB+ M e ne rim a Sura t Ja la n dan BPB+ [Bara n g
[Ye s]
Me ner im a BCT pe nding
M e mbe ntu k BCT pe nding
M e nguploa d BCT pe nding & s ur at ja la n
Ve rifik as i B PB+ [ad a ke sa a l h a n ?] Me ngor ek s i La por an Ke s ala ha n [App ro ve Ke sa l ah a n ?]
[No ]
M em buat inv oice
Me m il ih BPB+
M e n-s ubmit inv oice
Me ne rima , me nge ce k inv oic e & k e le ngk a pa n dokum e n
M enc e tak inv oic e
Me m bua t inv oic e v e rific a tion
M enguploa d TTDV da n a t ngga l pe m ba y ara n
M eny im pa n da n m e nc e ta k TTDV da n ta ngga l pe m bay a ra n Me ne rima TTDV da n tanggal pe m ba y ar an M e mbua t Pay m ent Propos a l Otorisa s i Pa ym e nt Proposa l M ela k uka n pem ba ya ra n
Me ngupload buk ti pe mba ya ra n Me ne rima pe m bay a ran
Gambar 4.1 Activity Diagram
58
Penjelasan Activity Diagram : Purchase Requisition (PR) dibuat sebagai permintaan pembelian untuk persediaan material lokal. PR terdiri dari 2 jenis, yaitu PR – Non M RP dan PR – M RP. Untuk PR – Non M RP dibuat langsung oleh Requester, sedangkan PR – M RP dibuat oleh sistem berdasarkan jumlah komponen yang telah digunakan dalam proses produksi. PR yang terbentuk akan dicek apakah PR tersebut merupakan hasil M RP atau bukan. Untuk PR – Non M RP, maka Section
Head akan
melakukan
pengecekan
PR.
Selanjutnya akan diperiksa kelengkapan harga pada PR. Jika harga belum ada maka akan dibuat memo ke Puchasing Staff untuk menanyakan estimasi harga yang dibuat oleh Requester, selanjutnya Purchasing Staff akan me-maintain harga pada PR. Jika harga pada PR sudah lengkap, maka Section Head harus menyetujui/menolak PR. Jika PR tidak disetujui, maka Section Head akan membatalkan PR dan ada informasi dari sistem yang disampaikan kepada Requester. Jika PR disetujui, maka PR dapat di-release oleh Purchasing Staff dan dilanjutkan dengan pembuatan PO. Untuk PR – M RP, maka akan dilanjutkan pembuatan PO dilengkapi dengan BCT.
59
Pada saat pembuatan PO akan dilakukan pengecekan harga pada sistem. Jika harga sudah ada, maka PO
dapat
langsung dibuat. Jika harga tidak ada, maka Purchasing Staff harus me-maintain info record, selanjutnya PR yang telah terbentuk akan diubah menjadi PO, jika jumlah PO kurang dari jumlah PR, Purchasing Staff akan melakukan konfirmasi kepada Requester, Jika jumlah PO disetujui, maka Requester akan memberitahu Fund Manager untuk mengirim memo ke Purchasing Staff, yang kemudian akan membatalkan sisa jumlah pada PR, dan mengulang proses perubahan PR ke PO. Jika jumlah PO tidak disetujui, maka sistem melakukan pemeriksaan ketersediaan budget, jika jumlah PO lebih dari sama dengan jumlah PR, juga akan dilakukan pengecekan ketersediaan budget. Jika budget tidak tersedia dan kebutuhan barang/jasa memiliki tingkat urgensi yang tinggi, Purchasing Staff harus menghubungi Requester, dan Requester yang membuat PR harus mengajukan permintaan perubahan budget kepada Fund Manager. PO tidak akan terbentuk jika budget tidak
tersedia.
Setelah
dilakukan
prosedur overbudget,
Purchasing Staff akan mengulang proses pembuatan PO. Apabila PO sudah tidak overbudget, PO akan disimpan dan dicetak sebagai arsip, kemudian PO akan di cek dan disetujui
60
oleh Purchasing Function Head. Selanjutnya sistem akan meng-upload PO ke website beserta notifikasi email ke vendor. Untuk penerimaan barang, vendor mengirim barang beserta surat jalan dan dokumen referensi (PO/BCT Pending) ke Warehouse (WAHO) PT. XYZ yang akan diterima oleh karyawan WAHO PT. XYZ. Karyawan WAHO akan memeriksa kelengkapan dokumen yang dibawa. Apabila dokumen
tidak
lengkap
maka
barang
tidak
dapat
diterima/pengiriman ditolak. Sementara apabila dokumen lengkap, maka selanjutnya akan dilakukan receiving inspection processes, dimana dilakukan pengecekan antara dokumen order (BCT), surat jalan (SJ) dan fisik barang. Dari receiving inspection processes akan didapat data pengiriman. Setelah data ini diperoleh, material dibawa ke area penyimpanan dan dilakukan transaksi penerimaan berdasarkan data tersebut. Untuk material/barang non BCT, transaksi kemudian dilanjutkan dengan melakukan entry BPB+ sejumlah barang yang diterima. Untuk barang BCT, transaksi penerimaan dilakukan dengan melakukan scan BCT. BCT ini hanya dapat di-scan 1 kali saja dan dengan melakukan scan BCT, maka sistem akan mencatat penerimaan material sejumlah yang tercantum pada
61
BCT tersebut. Apabila fisik barang yang diterima lebih kecil dari BCT yang di-scan, maka karyawan harus melakukan entry jumlah yang diterima dan sistem akan mengkalkulasi jumlah barang yang tidak diterima yang akan membentuk BCT Pending. BCT Pending ini akan di upload ke website yang digunakan sebagai dasar bagi vendor untuk mengirimkan kekurangan barang. Untuk barang BCT, transaksi penerimaan ini akan menghasilkan cetakan Bukti Penerimaan Barang (BPB+) yang kemudian ditempelkan di SJ. SJ yang tidak ada tempelan
BPB+
tidak
dapat
digunakan
sebagai dasar
penagihan. Data BPB+ juga akan di upload ke website oleh sistem, sehingga vendor dapat melihat informasi mengenai jumlah penerimaan. Vendor akan melakukan verifikasi BPB+ sebelum membuat Invoice. Jika terdapat kesalahan, maka vendor akan membuat laporan kesalahan, kemudian Receiving Dept Head akan memeriksa laporan kesalahan yang telah diupload ke portal. Jika laporan tersebut disetujui, maka secara otomatis sistem akan me-non-aktifkan BPB+ dan membatalkan BPB+, lalu
bagian
WAHO
pembuatan BPB+.
harus
mengulang kembali proses
62
Jika semua barang telah dikirim, maka vendor dapat membuat Invoice berdasarkan BPB+ pada website. Vendor dapat memilih data BPB+ yang ingin dibuat Invoice, kemudian vendor
melakukan
submit sehingga Invoice
terbentuk.
Kemudian vendor akan mencetak Invoice untuk dibawa pada saat penagihan. Invoice beserta dokumen bermaterai dibawa oleh vendor ke Treasury. Treasury akan mengecek kelengkapan dokumen kemudian entry Invoice tersebut ke dalam SAP disertai penyimpanan dan pencetakan Tanda Terima Invoice (TTDV) dan tanggal pembayaran yang akan diberikan kepada vendor. Tanda Terima Invoice (TTDV) dan tanggal bayar juga di upload ke website sehingga vendor dapat melihat informasi tanggal bayar. Tanggal pembayaran dihitung berdasarkan baseline date yaitu tanggal terima Invoice ditambah lama jatuh tempo yang tertera di PO plus jumlah hari ke hari Rabu terdekat setelah tanggal jatuh tempo. Dokumen bermaterai dari vendor berisi: - Nama dan alamat perusahaan (vendor). - NPWP (jika ada).
63
-
Dokumen pembelian yang sah.
-
Surat jalan beserta Bukti penerimaan barang (BPB+).
- Kronologis (jika ada keterlambatan pekerjaan yang bukan merupakan kesalahan vendor). - Berita Acara Denda (jika ada keterlambatan pekerjaan yang merupakan kesalahan vendor). - Bukti cetak DN yang sudah di post (jika ada Berita Acara Denda). Sebelum melakukan pembayaran, Treasury harus melakukan pembuatan Payment proposal. Payment proposal ini harus dibuat paling lambat 3 hari kerja sebelum hari pembayaran. Dasar pembuatan Payment proposal yaitu hasil monitoring Treasury atas semua Invoice dari vendor yang telah diverifikasi dan belum dibayar. Kemudian hasil Payment proposal akan diotorisasi oleh Treasury Manager. Setelah dilakukan otorisasi kemudian akan dilakukan pembayaran ke vendor. Kemudian akan di upload bukti pembayaran kepada vendor dalam website.
64
4.3.1.3.2. Application Domain Vendor Tugas
Tanggung Jawab
Vendor bertugas untuk melakukan pengecekan terhadap Purchase Order, BPB+, BCT Pending, melaporkan jika terjadi kesalahan pada penerimaan, dan membuat Invoice Vendor bertanggung jawab terhadap pengiriman barang sesuai Purchase Order sampai pembuatan Invoice.
Receiving Dept Head Tugas Receiving Dept Head bertugas untuk melakukan pengecekan terhadap laporan kesalahan dari vendor dan melakukan pembatalan BPB+ jika diperlukan. Tanggung Receiving Dept Head bertanggung jawab terhadap BPB+ yang dibatalkan sesuai dengan laporan Jawab kesalahan dari vendor. Tabel 4.4 Tabel actor beserta tugas dan tanggung jawabnya
4.3.1.4. Problem Domain 4.3.1.4.1. Cluster
Gambar 4.2 Cluster Purchase Order
65
Gambar 4.3 Cluster BPB+
Gambar 4.4 Cluster BCT PendingPending
Gambar 4.5 Cluster BPB+ Report
66
Gambar 4.6 Cluster Invoice
Gambar 4.7 Cluster Payment
67
4.3.1.4.2. S tructure
1..*
1.. *
purchaseOrderKondi si -noPO -tipeKondisi -jumlahKondisi +membeli()
BPB+Detai l
BPB+ReportDetail
-noBPB + -noMaterial -qty +meneri ma() +melaporkan() +menagih()
-noReport -noMaterial -qty -koreksi +melaporkan() 1.. *
1..*
1
V endor -idVendor -namaVendor -alamatVendor -NP WP +membeli()
0..* 1 1.. *
1
1
-noPO -idVendor -t glPO -TOP -currency -exchangeRate -status +membeli() +menerima()
1 BPB+
0..1
1
-noBPB+ -noPO -noSuratJalan -tglBPB+ +menerima() +mengkonfi rmasi() +melaporkan() +menagih()
1.. *
1
purchaseOrderDetai l
1
1. .*
-noPO -noMat erial -qt y -tglPengiriman -harga -status +membeli () +menerima()
1
1
0.. * 1 i nvoiceDetail -noI nvoice -noBP B+ +menagih() +membayar()
1
*
BCTP ending -noBCTPending -noBPB+ -t glBCTPending -status +mengkonfirmasi() +menerima()
1..*
-noPO -noMaterial -tglDelivery -qtyDelivery -st at us +membeli()
1
1..*
payment
1
paymentDetai l -noPayment -noInvoice +membayar()
1. .*
1
-noPayment -idVendor -t glP ayment -t ot al +membayar()
Gambar 4.8 Class Diagram
4.3.1.4.3. Classes 4.3.1.4.3.1. Definition
Behaviour
PurchaseOrder noPO, idVendor, tglPO, TOP, currency, exchangeRate, status membeli(), menerima()
Nama Class Atribut Behaviour
Kondisi tipeKondisi, namaKondisi M embeli()
Nama Class Atribut
1
BCTPendingDetail -noBCTPending -noMaterial -qt y +mengkonf irmasi() +menerima()
1
1..*
1
Materi al -noMaterial -namaMat erial -jumlah -unit -currency -harga +membeli() +meneri ma() +mengkonf irmasi() +melaporkan()
Deli verySchedul e
1..*
invoi ce -noI nvoice -tglInvoice -tax -total -memo -st at us +menagih() +membayar()
1
1
1..*
purchaseOrder
BPB+Report -noReport -noB PB+ -t glReport -stat us +melaporkan()
Kondisi -tipeKondisi -namaK ondisi +membeli()
1. .*
68
Nama Class Atribut Behaviour
DeliverySchedule noPO, noM aterial, tglDelivery, qtyDelivery, status membeli()
Nama Class Atribut Behaviour
Vendor idVendor, namaVendor, alamatVendor, NPWP membeli()
Nama Class Atribut
M aterial noM aterial, namaM aterial, jumlah, unit, currency, harga M embeli(), menerima, mengkonfirmasi(), melaporkan()
Behaviour
Nama Class Atribut Behaviour
BPB+ noBPB+, noPO, noSuratJalan, tglBPB+ menerima(),mengkonfirmasi(), melaporkan(), menagih()
Nama Class Atribut Behaviour
BCTPending noBCTPending, noBPB+, tglBCTPending, status mengkonfirmasi(), menerima()
Nama Class Atribut Behaviour
BPB+Report noReport, noBPB+, tglReport, status melaporkan()
Nama Class Atribut Behaviour
Invoice noInvoice, tglInvoice,tax, total, memo, status menagih(), membayar()
Nama Class Atribut Behaviour
Payment noPayment, idVendor, tglPayment, total membayar() Tabel 4.5 Class Definition
69
4.3.1.4.3.2. Behavioral Pattern
Gambar 4.9 Statechart Purchase Order
Event
Atribut membeli noPO, idVendor, tglPO, TOP, currency, exchangeRate, status menerima noPO BP : membeli + menerima Tabel 4.6 Event, Atribut, Behavior Pattern Statechart PurchaseOrder
Gambar 4.10 Statechart Material
Event
Atribut membeli noM aterial, namaM aterial, unit, harga menerima noM aterial, namaM aterial, unit mengkonfirmasi noM aterial, namaM aterial, unit melaporkan noM aterial, namaM aterial, unit BP : (membeli | menerima | melaporkan | mengkonfirmasi)* Tabel 4.7 Event, Atribut, Behavior Pattern Statechart M aterial
70
Gambar 4.11 Statechart Vendor
Event membeli BP : membeli*
Atribut idVendor, namaVendor
Tabel 4.8 Event, Atribut, Behavior Pattern Statechart Vendor
Gambar 4.12 Statechart Kondisi
Event membeli BP : membeli*
Atribut tipeKondisi, namaKondisi
Tabel 4.9 Event, Atribut, Behavior Pattern Statechart Kondisi
Gambar 4.13 Statechart DeliverySchedule
Event membeli
Atribut noPO, noM aterial, tglDelivery, qtyDelivery, status
BP : membeli* Tabel 4.10 Event, Atribut, Behavior Pattern Statechart DeliverySchedule
71
Gambar 4.14 Statechart BPB+
Event menerima
Atribut noBPB+, noPO, noSuratJalan, tglBPB+ M engkonfirmasi noBPB+ melaporkan noBPB+ menagih noBPB+, noPO BP : menerima + mengkonfirmasi + melaporkan + menagih Tabel 4.11 Event, Atribut, Behavior Pattern Statechart BPB+
Gambar 4.15 Statechart BPB+Report
Event melaporkan BP : melaporkan
Atribut noReport, noBPB,tglReport, status
Tabel 4.12 Event, Atribut, Behavior Pattern Statechart BPB+Report
Gambar 4.16 Statechart BCTPending
Event mengkonfirmasi
Atribut noBCTPending, noBPB+, tglBCTPending, status menerima noBCTPending BP : mengkonfirmasi + menerima Tabel 4.13 Event, Atribut, Behavior Pattern Statechart BCTPending
72
Gambar 4.17 Statechart Invoice
Event menagih membayar
Atribut noInvoice, tglInvoice, tax, total, memo, status noInvoice, total
BP : menagih + membayar Tabel 4.14 Event, Atribut, Behavior Pattern Statechart Invoice
Gambar 4.18 Statechart Payment
Event membayar
Atribut noPayment, idVendor, tglPayment, total
BP : membayar Tabel 4.15 Event, Atribut, Behavior Pattern Statechart Payment
73
4.3.1.5. Applicaton Domain 4.3.1.5.1. Usage 4.3.1.5.1.1. Overview Actor Use case M enampilkan Purchase Order M enampilkan BCT Pending M enampilkan BPB+ M elaporkan kesalahan penerimaan M enampilkan laporan kesalahan penerimaan M embatalkan BPB+ M embuat Invoice M enampilkan Invoice M enampilkan bukti pembayaran
Vendor 9 9 9 9 9
9 9
9 9 9
Tabel 4.16 Actor Table
4.3.1.5.1.2. Use Case Diagram
Receiving Dept Head
74 ud Primary Use Cases Sistem Informasi PT . XYZ
Menampilkan Purchase O rder
Menampilkan BPB+
Menampilkan BCT pending
Melaporkan kesalahan penerimaan
Vendor
Membatalkan BPB+ Receiving Dept Head Menampilkan Laporan Kesalahan Penerimaan
Membuat Inv oice
Menampilkan Invoice
Menampilkan Bukti Pembayaran
Gambar 4.19 Use Case Diagram
75
4.3.1.5.1.3. Actors Vendor Purpose
Vendor dapat mengakses form Purchase Order, form BPB+, form BCT Pending, form BPB+ Report, form Invoice, form Payment Vendor mampu melakukan kegiatan terkait dengan pengiriman terhadap Purchase Order yang diterima sampai pembuatan Invoice
Characterization
Receiving Dept Head Purpose Characterization
Receiving Dept Head dapat mengakses form BPB+ Report Receiving Dept Head mampu melakukan pengecekan terhadap laporan kesalahan dari vendor dan melakukan pembatalan BPB+ jika diperlukan.
Tabel 4.17 Actor Specification
4.3.1.5.1.4. Use case Menampilkan Purchase Order Use Case Digunakan untuk melihat Purchase Order baru dan Purchase Order yang telah selesai Object PurchaseOrder, PurchaseOrderDetail, PurchaseOrderKondisi, Kondisi, DeliverySchedule Function Get_data_PurchaseOrder, Get_data_Vendor, Get_data_M aterial, Get_data_DeliverySchedule, Get_data_Kondisi, Signal_PurchaseOrder Menampilkan BPB+ Use Case Digunakan untuk melihat jumlah penerimaan barang di gudang Object BPB+, BPB+Detail, M aterial Function Get_data_BPB+, Get_data_M aterial Menampilkan BCT Pending Use Case Digunakan untuk melihat jumlah kekurangan penerimaan yang harus dikirim kembali oleh
76
vendor Object BCTPending, BCTPendingDetail, M aterial Function Get_data_BCTPending, Get_data_M aterial Melaporkan kesalahan penerimaan Use Case Digunakan untuk melaporkan bila ada kesalahan pada penerimaan Object BPB+Report, BPB+ReportDetail, M aterial, BPB+, BPB+Detail Function Generate_noReport, Get_data_BPB+, get_data_M aterial, Save_BPB+Report Membatalkan BPB+ Use Case Digunakan untuk membatalkan BPB+ bila terdapat kesalahan pada penerimaan Object BPB+Report, BPB+ReportDetail, M aterial Function Get_data_BPB+Report, get_data_M aterial, Update_BPB+Report Menampilkan laporan kesalahan penerimaan Use Case
Digunakan untuk melihat laporan kesalahan yang telah selesai Object BPB+Report, BPB+ReportDetail, M aterial Function Get_data_BPB+Report, get_data_M aterial Membuat Invoice Use Case Digunakan untuk membuat Invoice kepada perusahaan Object Invoice, InvoiceDetail, BPB+, PurchaseOrder Function Generate_noInvoice, Get_data_BPB+, Get_data_PurchaseOrder, Hitung_total, Save_Invoice Menampilkan Invoice Use Case Digunakan untuk melihat Invoice yang telah dibuat Object Invoice, InvoiceDetail Function Get_data_Invoice Menampilkan bukti pembayaran Use Case Digunakan untuk melihat bukti pembayaran yang telah dilakukan Object Payment, PaymentDetail Function Get_data_Payment, Get_data_vendor Tabel 4.18 Use Case Specification
77
4.3.1.5.2. Function 4.3.1.5.2.1. Complete Function List Function Menampilkan Purchase Order Get_data_PurchaseOrder Get_data_Vendor Get_data_M aterial Get_data_DeliverySchedule Get_data_Kondisi Signal_PurchaseOrder
Type Read,Signal Read Read Read Read Read Signal
Complexity Simple Simple Simple Simple Simple Simple Simple
Menampilkan BPB+ Get_data_BPB+ Get_data_M aterial
Read Read Read
Simple Simple Simple
Menampilkan BCT Pending Get_data_BCTPending Get_data_M aterial
Read Read Read
Simple Simple Simple Simple
Get_data_BPB+ Get_data_M aterial Save_BPB+Report
Compute, Read, Update Compute, Read Read Read Update
Simple Simple Simple
Membatalkan BPB+ Get_data_BPB+Report Get_data_M aterial Update_BPB+Report
Read, Update Read Read Update
Simple Simple Simple Simple
Menampilkan laporan kesalahan penerimaan Get_data_BPB+Report Get_data_M aterial
Read
Simple
Read Read
Simple Simple
Melaporkan kesalahan penerimaan Generate_noReport,
Simple
78
Get_data_BPB+ Get_data_PurchaseOrder Compute_total Save_Invoice
Compute, Read, Update Compute, Read Read Read Compute Update
Menampilkan Invoice Get_data_Invoice
Read Read
Simple Simple
Menampilkan bukti pembayaran Get_data_Payment Get_data_vendor
Read Read Read
Simple Simple Simple
Membuat Invoice Generate_noInvoice
Complex Simple Simple Simple Complex Simple
Tabel 4.19 Function List
4.3.1.5.2.2. S pecification of Function Function Membuat Invoice M erupakan function yang complex karena mengakses beberapa objek untuk membuat Invoice antara lain Invoice yang dibentuk, Invoice Detail, BPB+ dan Purchase Order. Selain itu, juga terdapat perhitungan matematika yang rumit.
79
4.3.1.5.3. User Interface 4.3.1.5.3.1. Dialogue S tyle Windows Form M enu Purchase Order Form Purchase Order Purchase Order Tab Delivery schedule Tab Condition Tab Form M enu BPB+ Form BPB+ Form M enu BCT Pending Form BCT Pending Form Create BPB+ Report Form M enu BPB+ Report Form View BPB+ Report Form M enu Invoice Form Create Invoice Form M enu View Invoice Form View Invoice Form M enu View Payment Form View Payment
Printout Purchase Order Purchase Order Delivery schedule BPB+ BCT Pending Invoice Payment
Tabel 4.20 List menu beserta printout yang dihasilkan form
80
4.3.1.5.3.2. Overview
Gambar 4.20 Navigation Diagram
81
4.3.1.5.3.3. Examples
Gambar 4.21 Form Login
Halaman ini menampilkan Form untuk melakukan login kedalam sistem dengan elemen yang terdiri dari : Elemen
Keterangan
Textbox Username
Digunakan untuk memasukkan username.
Textbox Password
Digunakan untuk memasukkan password.
Button Login
Digunakan untuk login sistem. Tabel 4.21 Elemen dan Keterangan Form Login
82
Gambar 4.22 Form Menu
Halaman ini merupakan halaman utama yang muncul ketika user melakukan login. Terdapat beberapa menu pada kiri layar untuk mengakses fungsifungsi yang ada pada website .
Gambar 4.23 Form Menu Purchase Order
Halaman ini merupakan halaman utama pada fungsi Purchase Order dengan elemen yang terdiri dari :
83
Elemen
Keterangan
Tabel Purchase Order
M enampilkan data Purchase Order
Textbox search
Digunakan untuk mencari data Purchase Order pada tabel
Tabel 4.22 Elemen dan Keterangan Form Menu Purchase Order
Gambar 4.24 Form Purchase Order – Tab Purchase Order
Halaman ini adalah tampilan isi dari Purchase Order yang dipilih pada Tab Purchase Order dengan elemen yang terdiri dari :
84
Elemen
Keterangan
Textbox Vendor
M enampilkan data vendor
Textbox PO Number
M enampilkan nomor Purchase Order
Textbox Document date
M enampilkan tanggal dokumen dibuat
Textbox search
Digunakan untuk mencari data barang pada tabel
Tabel Purchase Order
M enampilkan data barang pada Purchase Order
Button Print
Digunakan untuk mencetak dokumen Purchase Order
Tabel 4.23 Elemen dan Keterangan Form Purchase Order – Tab Purchase Order
Gambar 4.25 Form Purchase Order – Tab Delivery Schedule
Halaman ini adalah tampilan isi dari Purchase Order yang dipilih pada Tab Delivery Schedule dengan elemen yang terdiri dari :
85
Elemen
Keterangan
Textbox Vendor
M enampilkan data vendor
Textbox PO Number
M enampilkan nomor Purchase Order
Textbox Document date
M enampilkan tanggal dokumen dibuat
Textbox search
Digunakan untuk mencari data barang pada tabel
Tabel Purchase Order
M enampilkan data jadwal pengiriman setiap barang
Button Print
Digunakan untuk mencetak dokumen Delivery schedule
Tabel 4.24 Elemen dan Keterangan Form Purchase Order – Tab Delivery Schedule
Gambar 4.26 Form Purchase Order – Tab Condition
Halaman ini adalah tampilan isi dari Purchase Order yang dipilih pada Tab Condition dengan elemen yang terdiri dari :
86
Elemen
Keterangan
Textbox Vendor
M enampilkan data vendor
Textbox PO Number
M enampilkan nomor Purchase Order
Textbox Document date
M enampilkan tanggal dokumen dibuat
Textbox Term of Payment
M enampilkan data term of Payment Purchase Order
Textbox Currency
M enampilkan data mata uang yang digunakan
Textbox Exchange Rate
M enampilkan data rate mata uang
Textbox search
Digunakan untuk mencari data kondisi pada tabel.
Tabel Condition
M enampilkan data kondisi Purchase Order
Tabel 4.25 Elemen dan Keterangan Form Purchase Order – Tab Condition
87
sd M enam pilkan Pu rcha se Or der Purcha seOrd er
V end or
Purcha seOrd erDe tail
Ma terial
Delive ryS chedu le
p urchaseOrderCondi tion
Co ndition
Ven dor
<
>
Windo w M enu Pu rchase Order
<>
Grid Menu P urchase Orde r
loop
ge t_noP O_tglP O_status() noP O_tglP O_status
kl ik view det ail Win dow Pur ch ase Order
<>
T ab P urchase Order
<>
< >
Grid Detai l P urchase Orde r Ta b Delivery S chedu le
<< cre ate>>
Gri d De tail < > Delivery S chedule T ab Conditi on <>
<>
Grid Detail Con dition
g et_tgl PO_id Vend or_T OP_Curre ncy_ Exchan geRa te() nam aVe ndor tglP O_nam aVe ndor tglP O_na maV endor tglP O_nama Ven dor_T OP_ Curr ency_Exchan geRate loop
get_ noMa terial_ qty_harg a() get _nama Mater ial_un it() noMat erial_n amaM ateria l_qty_un it_har ga
hitu ng_subtota l()
l oop
ge t_noM ateria l() get _nama Mater ial_un it() get_de liveryDa te_sch eduleQty() na maMa terial_ deliveryDate_ schedu leQty_unit
loop
get_t ipeK ondisi_jum lahK ondisi() get_ nama Kond isi() na maK ondisi_jum lahK ondi si
kl ik T ab P urchase Orde r klik p rint
Windo w P rint <> prin t() close() klik T ab Cond ition klik print
pr int() clo se()
klik Ta b Delivery S ch edule
Gambar 4.27 Sequence DiagramPurchas e Order
88
Gambar 4.28 Form Menu BPB+
Halaman ini merupakan halaman utama pada fungsi BPB+ dengan elemen yang terdiri dari : Elemen
Keterangan
Textbox PO Number
Digunakan untuk mencari data BPB+ dari sebuah Purchase Order
Textbox search
Digunakan untuk mencari data BPB+ pada tabel.
Tabel BPB+
M enampilkan data BPB+ Tabel 4.26 Elemen dan Keterangan Form Menu BPB+
89
Gambar 4.29 Form BPB+
Halaman ini adalah tampilan isi dari BPB+ yang dipilih dengan elemen yang terdiri dari : Elemen
Keterangan
Textbox BPB+ Number
M enampilkan nomor BPB+
Textbox Document date
M enampilkan tanggal dokumen dibuat
Textbox search
Digunakan untuk mencari data barang pada tabel.
Tabel Good Receive
M enampilkan data barang pada BPB+
Button Print
Digunakan untuk mencetak dokumen BPB+ Tabel 4.27 Elemen dan Keterangan Form BPB+
90 sd Menam pi lkan B PB + Li st P O V endor <>
purc haseOrder
BPB +
BP B+Det ail
Mat erial
Wi ndow M enu BPB + Gri d List B PB+ <>
i nput P O number loop
get_noBP B+_noSurat Jal an_t glPost ing() noBP B+_noSurat Jal an_t glP ost ing
kl ik vi ew det ai l
Window BP B+
<> Grid B PB + <> get_t gl BP B+() tgl BPB + l oop get_noMaterial_qt y()\ get _nam aMaterial_uni t() noMaterial _nam aM aterial_qt y_unit
Gambar 4.30 Sequence Diagram Form BPB+
91
Gambar 4.31 Form Menu BCT Pending
Halaman ini merupakan halaman utama pada fungsi BCT Pending dengan elemen yang terdiri dari : Elemen
Keterangan
Textbox search
Digunakan untuk mencari data BCT Pending pada tabel.
Tabel BCT Pending
M enampilkan data BCT Pending
Tabel 4.28 Elemen dan Keterangan Form Menu BCT Pending
92 Header Purchase Order BPB+ BCT Pending BPB+ Report -Create -View Invoice -Create -View Payment Logout
BCT Pending BCT Pending Number Document Date
xxx Dd/mm/ yyyy
search No
Material
xxx
Short text
Pending Qty
PO Qty
BPB Qty
Unit
1
xxx
xxx
9,999
9,999
9,999
xxx
2
xxx
xxx
9,999
9,999
9,999
xxx
3
xxx
xxx
9,999
9,999
9,999
xxx
4
xxx
xxx
9,999
9,999
9,999
xxx
First
<<
>> End
Print
Gambar 4.32 Form BCT Pending
Halaman ini adalah tampilan isi dari BCT Pending yang dipilih dengan elemen yang terdiri dari : Elemen
Keterangan
Textbox BCT Pending Number
M enampilkan nomor BCT Pending
Textbox Document date
M enampilkan tanggal dokumen dibuat
Textbox search
Digunakan untuk mencari data BCT Pending pada tabel.
Tabel BCT Pending
M enampilkan data barang pada BCT Pending
Button Print
Digunakan untuk mencetak dokumen BCT Pending Tabel 4.29 Elemen dan Keterangan Form BCT Pending
93 sd Menam pil kan BCT pe nding B CT P ending V endor <>
B CT Pendi ngDetai l
M aterial
Wi ndow Menu BCT Pendi ng
<>
Gri d M enu B CT P ending
loop get_n oBCTP ending_noP O_tgl B CT Pendi ng_stat us() noB CT Pendi ng_noPO_t glB CTP ending_st atus
kli k view det ail <>
Window B CT Pendi ng
<>
Grid BCT P ending
ge t_t glB CT Pendi ng() t glB CT Pendi ng loop get _noMat eri al_q ty() get_n amaM aterial _unit () noM aterial _nam aMat eri al_qt y_uni t kli k Print
Wi ndow Print <> pri nt() cl ose()
Gambar 4.33 Sequence Diagram Form BCT Pending
94
Gambar 4.34 Form Create BPB+ Report
Halaman ini merupakan halaman utama pada fungsi Create BPB+ Report dengan elemen yang terdiri dari : Elemen
Keterangan
Textbox Report Number
M enampilkan nomor laporan
Textbox Document date
M enampilkan tanggal dokumen dibuat
Textbox BPB+ Number
Digunakan untuk mencari data barang BPB+
Textbox search
Digunakan untuk mencari data barang pada tabel.
Tabel BPB+ Report
M enampilkan data barang BPB+ pada tabel.
Button Submit
Digunakan untuk konfirmasi laporan kesalahan
Tabel 4.30 Elemen dan Keterangan Form Create BPB+Report
95 s d Melap orkan ke salahan pe nerimaan BPB+ Vendo r <>
BPB+Deta il
Mate ri al
BPB+Report
BPB+Rep ortDetai l
Win dow BPB+ Re port Gri d BPB+ Re port << create>>
in put BPB+ n umber get_tgl BPB+() tgl BPB+ loop ge t_n oMateri al _qty() get_na ma Mate ri al _uni t() noMaterial _n amaMateri al _qty_uni t
loo p
i nput Correcti on kl i k Sub mi t get_l ast_code () last_cod e gene rate_n ew_code() a dd_ne w_ BPB+Repo rt() ad d_ne w_ detail ()
Gambar 4.35 Sequence Diagram Form Create BPB+ Report
96
Gambar 4.36 Form Menu BPB+ Report
Halaman ini merupakan halaman utama pada fungsi View BPB+ Report dengan elemen yang terdiri dari : Elemen
Keterangan
Textbox search
Digunakan untuk mencari data laporan kesalahan BCT+ pada tabel.
Tabel BCT+ Report
M enampilkan data laporan kesalahan BCT+
Tabel 4.31 Elemen dan Keterangan Form Menu BPB+ Report
97
Gambar 4.37 Form View BPB+ Report
Halaman ini adalah tampilan isi dari BPB+ Report yang dipilih dengan elemen yang terdiri dari : Elemen
Keterangan
Textbox Report Number
M enampilkan nomor laporan
Textbox Document date
M enampilkan tanggal dokumen dibuat
Textbox BPB+ Number
M enampilkan nomor BPB+ yang perlu koreksi
Textbox search
Digunakan untuk mencari data barang pada tabel.
Tabel BCT+ Report
M enampilkan data barang pada tabel.
Tabel 4.32 Elemen dan Keterangan Form View BPB+ Report
98 sd Me mbata lk an BPB+ BPB+Re port Re cei vin g Dep t Hea d << cre ate> >
BPB+Re po rtDetai l
Materi al
Wi ndo ws Men u Vi ew BPB+ Re port < >
Gri d Men u Vie w BPB+ Repo rt
loop get_n oRe port_tgl Rep ort_status() no Repo rt_ tg lRe po rt_sta tu s kli k vi ew de ta il < >
Wi ndo w Vie w BPB+ Re po rt
<< cre ate> >
Gri d Vi ew BPB+ Re po rt
g et_tgl Rep ort_ no BPB+() tgl Rep ort_ no BPB+ loop g et_n oMateri al _q ty_ koreksi () ge t_na maMa te ria l_ un it() noMa teria l_ na maMa te ri a l_ qty_un it_ koreksi kl i k ap prove/rej ect u pda te_sta tu s()
Gambar 4.38 Sequence Diagram Form View BPB+ Report
99
Gambar 4.39 Form Create Invoice
Halaman ini merupakan halaman utama pada fungsi Create Invoice dengan elemen yang terdiri dari :
100
Elemen
Keterangan
Textbox Invoice Number
M enampilkan nomor Invoice
Textbox Document date
M enampilkan tanggal dokumen Invoice dibuat
Textbox Tax
Digunakan untuk memasukan jumlah pajak
Textbox Total
M enampilkan kalkulasi total Invoice
Textbox M emo
Digunakan untuk menuliskan memo tambahan pada Invoice
Textbox PO Number
Digunakan untuk menampilkan data BPB+ berdasarkan nomor Purchase Order
Textbox search
Digunakan untuk mencari data barang pada tabel.
Tabel Invoice
Digunakan untuk memilih nomor BPB+ yang akan dibuat Invoice
Button Reset
Digunakan untuk mengosongkan form
Button Approve
Digunakan untuk melakukan submit data Invoice yang telah dibuat
Tabel 4.33 Elemen dan Keterangan Form Create Invoice
101 sd M embua t Invoic e Pu rcha seOrd er Ve n do r <>
BPB +
In vo ice
In vo i ceDeta i l
Wi nd o w Invo i ce
Gri d In vo ice <>
Ge n era te_ tgl () i np u t T ax i n pu t Me mo loop i np u t P O n u mb er n oP O g et_ no BPB +_ to ta l () n o_ BPB +_ tota l p i li h BPB+ h i tun g _to tal ()
opt kl i k rese t cl e a r() cle a r()
kl i k su b mi t g et_ l ast_co d e() la st_ co de g e ne rate _ ne w_ co de () a d d_ ne w_ i nv oi ce () add_new_deta i l ()
Gambar 4.40 Sequence Diagram Form Create Invoice
102
Gambar 4.41 Form Menu View Invoice
Halaman ini merupakan halaman utama pada fungsi View Invoice dengan elemen yang terdiri dari : Elemen
Keterangan
Textbox search
Digunakan untuk mencari data Invoice pada tabel.
Tabel View Invoice
M enampilkan data Invoice
Tabel 4.34 Elemen dan Keterangan Form Menu View Invoice
103
Gambar 4.42 Form View Invoice
Halaman ini adalah tampilan isi dari Invoice yang dipilih dengan elemen yang terdiri dari : Elemen
Keterangan
Textbox Invoice Number
M enampilkan nomor Invoice
Textbox Document date
M enampilkan tanggal dokumen Invoice dibuat
Textbox Tax
M enampilkan jumlah pajak
Textbox Total
M enampilkan total Invoice
Textbox M emo
M enampilkan memo tambahan pada Invoice
Textbox search
Digunakan untuk mencari data barang pada tabel.
Tabel View Invoice
M enampilkan data barang pada tabel.
Button Print
Digunakan untuk mencetak dokumen Invoice Tabel 4.35 Elemen dan Keterangan Form View Invoice
104 sd Menampi lkan Inv oice Invoice V endor <>
invoiceDet ail
B P B+
Window M enu V iew I nvo ice
<>
G ri d M enu V ie w I nvoi ce
l oop get _noInvoice_tg lI nvoi ce_t ota l() noInvoice_tg lI nvoi ce_t otal kl ik Vi ew Detai l < >
Window V iew Invoice
<>
Gri d V i ew Invoice
get _t glI nvoi ce_t ax_tot al_m emo () tg lI nvoi ce_t ax_ tot al_m emo l oop
get_noB P B+() get _noP O_tot al() n oPO_noB PB +_t otal
kl ik Print
Windo w Print <>
pri nt() cl ose()
Gambar 4.43 Sequence Diagram Form View Invoice
105 Header Purchase Order BPB+ BCT Pending BPB+ Report -Create -View Invoice -Create -View Payment Logout
View Payment search Payment Number
Document Date
xxx
xxx
Dd/mm/yyyy
View detail
xxx
Dd/mm/yyyy
View detail
xxx
Dd/mm/yyyy
View detail
xxx
Dd/mm/yyyy
View detail
First
<< >> End
Gambar 4.44 Form Menu View Payment
Halaman ini merupakan halaman utama pada fungsi View Payment dengan elemen yang terdiri dari : Elemen
Keterangan
Textbox search
Digunakan untuk mencari data Invoice pada tabel.
Tabel View Payment
M enampilkan data Pembayaran
Tabel 4.36 Elemen dan Keterangan Form Menu View Payment
106
Gambar 4.45 Form View Payment
Halaman ini adalah tampilan isi dari Payment yang dipilih dengan elemen yang terdiri dari : Elemen
Keterangan
Textbox Payment Number
M enampilkan nomor pembayaran
Textbox Vendor
M enampilkan data vendor
Textbox Document date
M enampilkan tanggal dokumen dibuat
Textbox Total
M enampilkan kalkulasi total pembayaran
Textbox search
Digunakan untuk mencari data Invoice yang telah dibayar pada tabel.
Tabel View Payment
M enampilkan data Invoice pada tabel.
Button Print
Digunakan untuk mencetak dokumen pembayaran Tabel 4.37 Elemen dan Keterangan Form View Payment
107
s d Me nampilkan Bukti Pemb aya ran Payment
pa yme ntDe tai l
In vo ice
i nvoi ceDeta il
BPB+
Purch aseO rd er
Vendo r
Vend or
<>
Win dow Menu Vie w Payment Grid Men u Vi ew Payment
<>
loop ge t_n oPayment_tgl Pa yme nt() n oPayment_tgl Pa yme nt kli k view detai l << create> >
Wi nd ow Vi ew Pa yme nt
<>
G ri d Vie w Pa ymen t
g et_ tg lPayment_total () get_no Invoi ce()
g et_noBPB+() get_noPO () g et_ id Ve ndo r() get_na ma Vendo r() n amaVend or_tg lPayment_total loop g et_noInvoi ce()
g et_ to tal ()
no Invoi ce_total kli k Pri nt << crea te >>
prin t() cl ose
Gambar 4.46 Sequence Diagram Form View Payment
Win dow Pri nt
108
4.3.1.5.4. The Technical Platform Bahasa pemograman yang akan digunakan adalah PHP. Program ini membutuhkan hard drive berupa printer jika diperlukan, PC Client dengan spesifikasi Processor Intel Pentium 4, RAM 1GB, Harddisk 250GB, VGA standart, serta server yang memiliki Processor Intel i7, RAM 8GB, Harddisk 2TB, dan VGA standart. 4.3.1.6. Recommendation 4.3.1.6.1. The S ystem’s Usefulness and Feasibility Sistem akan dikembangkan secara server processing pada server dengan kapasitas : - Processor Intel i7 - RAM 8GB - Harddisk 2TB dan dirancang dengan menggunakan bahasa pemograman PHP. Selain itu disarankan komputer client dilengkapi dengan printer untuk memudahkan pencetakan surat yang diperlukan. Selain itu, PC Client memerlukan kapasitas : - Processor Intel Pentium 4
109
- RAM 1GB - Harddisk 250GB 4.3.1.6.2. S trategy Strategi yang akan kami terapkan pada PT. X YZ adalah strategi parallel, yaitu dengan menjalankan secara bersamaan proses bisnis lama dengan proses bisnis baru agar tingkat kegagalan dapat diminimalkan karena jika sistem baru mengalami gangguan, proses bisnis lama masih berjalan sehingga proses bisnis tidak terhenti. 4.3.1.6.3. Development Economy Sistem ini akan dibangun dengan tim yang terdiri dari 3 orang dengan spesifikasi sebagai berikut : 1. Bagian Jumlah
: Analisis sistem awal dan design : 1 orang
Gaji per orang : -/hari Lama kerja 2. Bagian Jumlah
: 3 bulan : Design sistem : 1 orang
Gaji per orang : -/hari
110
Lama Kerja 3. Bagian Jumlah
: 2 bulan : Programmer : 1 orang
Gaji per orang : -/hari Lama kerja
: 2 bulan
4.4. Design Document 4.4.1. The Task 4.4.1.1. Purpose Sistem pada PT. XYZ dirancang dengan user-friendly dengan tujuan user yang terdiri dari vendor dan Receiving Dept Head dapat menggunakan sistem dengan baik. Sistem ini dirancang agar dapat memenuhi semua permintaan dari user seperti membantu vendor dalam melihat Purchase Order, melihat Bukti Penerimaan Barang (BPB+), menampilkan BCT Pending, melaporkan kesalahan penerimaan, menampilkan laporan kesalahan penerimaan, membuat Invoice, menampilkan Invoice, menampilkan Bukti Pembayaran, dan membantu Receiving Dept Head untuk melihat laporan kesalahan penerimaan dan membatalkan BPB+.
111
4.4.1.2. Correction to the Analysis Berikut adala nama class dan event yang berubah : Nama Class
Purchase Order
Event yang dihilangkan
M enerima
Event yang ditambahkan
-
Event baru Class
M embeli
Deskripsi
Event menerima lebih cenderung dimiliki oleh class BPB+. Event dari class Purchase Order adalah membeli yaitu saat terjadi pembelian kepada vendor.
Nama Class
M aterial
Event yang dihilangkan
M embeli, melaporkan
Event yang ditambahkan
-
Event baru Class
M endata material
Deskripsi
Event membeli lebih cenderung dimiliki oleh class Purcase Order, event menerima lebih cenderung dimiliki oleh class BPB+, event mengkonfirmasi lebih cenderung dimiliki oleh class BCT Pending, event melaporkan lebih cenderung dimiliki oleh class BPB+ Report. Event dari class M aterial adalah mendata material yaitu proses mendata material yang dimiliki.
Nama Class
Vendor
Event yang dihilangkan
M embeli
menerima,
mengkonfirmasi,
112
Event yang ditambahkan
-
Event baru Class
M endata vendor
Deskripsi
Event membeli lebih cenderung dimiliki oleh class Purcase Order. Event dari class Vendor adalah mendata vendor yaitu proses mendata vendor yang dimiliki perusahaan.
Nama Class
Kondisi
Event yang dihilangkan
M embeli
Event yang ditambahkan
-
Event baru Class
M endata kondisi
Deskripsi
Event membeli lebih cenderung dimiliki oleh class Purcase Order. Event dari class Kondisi adalah mendata kondisi yaitu proses mendata kondisi sebuah Purchase Order.
Nama Class
BPB+
Event yang dihilangkan
M engkonfirmasi, melaporkan, menagih
Event yang ditambahkan
-
Event baru Class
M enerima
Deskripsi
Event mengkonfirmasi lebih cenderung dimiliki oleh class BCT Pending, event melaporkan lebih cenderung dimiliki oleh class BPB+ Report, event menagih lebih cenderung dimiliki oleh class Invoice. Event dari class BPB+ adalah menerima yaitu proses pencatatan ketika penerimaan barang.
113
Nama Class
BCT Pending
Event yang dihilangkan
M enerima
Event yang ditambahkan
-
Event baru Class
M engkonfirmasi
Deskripsi
Event menerima lebih cenderung dimiliki oleh class BPB+. Event dari class BCT Pending adalah mengkonfirmasi yaitu proses konfirmasi atas kekurangan barang yang dikirim.
Nama Class
BPB+ Report
Event yang dihilangkan
-
Event yang ditambahkan
-
Event baru Class
M elaporkan
Deskripsi
Event dari class BPB+ Report tidak ada yang dihilangkan.
Nama Class
Invoice
Event yang dihilangkan
M embayar
Event yang ditambahkan
-
Event baru Class
M enagih
Deskripsi
Event membayar lebih cenderung dimiliki oleh class Payment. Event dari class Invoice adalah menagih yaitu proses penagihan Purchase Order kepada perusahaan. Tabel 4.38 Correction to The Analysis
114
Selanjutnya, untuk class Delivery Schedule dan Payment tidak mengalami perubahan apapun.
Easily Fulfill
Irrelevant
Less Important
Criterion
Important
Very Important
4.4.1.3. Quality Goals
9
Useable Secure Efficient Correct Reliable Maintainable Testable Flexible Comprehensible Reusable Portable Interoperable
9 9 9 9 9 9 9 9 9 9 9 Tabel 4.39 Criteria
4.4.2. Technical Platform 4.4.2.1. Equipment Sistem akan dikembangkan secara server processing menggunakan server dengan kapasitas minimum menggunakan Operating System Windows Server, Processor Intel i7, RAM 8GB DDR3, Harddisk 2TB. Untuk PC Client, dengan kapasitas minimum menggunakan Operating System Windows XP SP2, Processor Intel Pentium 4, RAM 1GB, Harddisk 250B.
115
4.4.2.2. S ystem Software Sistem diprogram dengan menggunakan bahasa pemograman PHP dan menggunakan M ySQL yang berfungsi sebagai database dari sistem tersebut. 4.4.2.3. S ystem Interface Sistem menggunakan printer yang dapat mencetak suratsurat yang dibutuhkan. Diharapkan setiap PC Client dilengkapi dengan 1 (satu) buah printer yang dapat diakses melalui LAN (Local Area Network) oleh setiap komputer yang terhubung didalamnya. Sistem ini menggunakan jaringan internet untuk menghubungkan client dengan server supaya perolehan informasi lebih cepat dan real-time. 4.4.2.4. Design Languange Bahasa yang digunakan dalam pemodelan sistem adalah UM L (Unified Modeling Language) untuk menggambarkan sebagian besar sistem yang dibuat berdasarkan modelnya. 4.4.3. Architecture 4.4.3.1. Component Architecture
116
Gambar 4.47 Component Diagram
Arsitektur yang kami pilih adalah Centralized Data, karena setiap proses yang dilakukan tidak melakukan penyimpanan data pada masing-masing client, tetapi client mengambil dan menyimpan data di dalam server. Untuk memudahkan pengambilan dan penyimpanan data akan disediakan jaringan internet. Ciri dari tipe centralized data adalah adanya user interface (UI) dan function (F) pada client, pada hal ini adalah Vendor dan Receiving Dept Head. Pada server terdapat hanya model (M ) untuk menyimpan data.
117
4.4.3.2. Process Architecture
Gambar 4.48 Deployment Diagram
4.4.3.3. S tandards Sistem akan menggunakan windows alert untuk memberi pesan error. Selain itu sistem akan menggunakan warna pada menu Purchase Order dan BPB+ Report sebagai status adanya data baru pada objek tersebut.
118
4.4.4. Component 4.4.4.1. S tructure
Gambar 4.49 Class Diagram Revised (Model Component)
119
< > Model
<> Function
1. .* 1.. *
BPB+ReportDetai l
purchaseOrderKondisi -noP O -ti peKondisi -jumlahK ondisi +membeli ()
BPB+Detai l
-noReport -noMaterial -qt y -koreksi +melaporkan()
-noB PB+ -noMaterial -qty +menerima()
1..*
1
Kondisi
Vendor
-t ipeKondisi -namaK ondisi +mendat a_kondisi()
-idVendor -namaVendor -alamatV endor -NP WP +mendata_vendor()
0..* <>1
1.. *
1. .*
<>
1
1
1. .*
1
Pem buatan Invoice <> +membuat _I nvoice()
purchaseOrder 1 BPB+Report -noReport -noBPB + -tglReport -status +melaporkan()
-noP O -idVendor -tglPO -TOP -currency -exchangeRate -st at us +membeli()
1
0. .1
1
BPB+ -noB PB+ -noP O -noS uratJalan -tglBP B+ +menerima()
1.. *
1
purchaseOrderDetai l
1
1.. *
1
-noPO -noMaterial -qt y -tglPengiri man -harga -status +membeli()
Material
1.. *
1
1. .*
0.. * 1 invoiceDetail
BCTPendi ng
-noInvoice -noBPB + +menagih() 1 *
-noB CTPending -noB PB+ -tglBCTPending -status +mengkonfirmasi()
1
-noMaterial -namaMat erial -jumlah -unit -currency -harga +mendat a_material()
Del iverySchedule -noP O -noMaterial -tglDelivery -qtyDelivery -st at us +membeli()
1
BCTPendingDetail
1
1..*
-noBCTPending -noMat erial -qty +mengkonf irmasi()
1. .*
<> 1 <> i nvoi ce -noInvoice -tglInvoice -tax -total -memo -status +menagih()
payment paymentDetail
1.. *
1
-noPayment -noInvoice +membayar()
1.. *
1
-noPayment -idVendor -t glPayment -t ot al +membayar()
Gambar 4.50 Function Component
120
4.4.4.2. Classes 4.4.4.2.1. Class Name Nama Class Purchase Order Material Vendor Kondisi Delivery schedule BPB+ BCT Pending BPB+ Report Invoice Payment Tabel 4.40 Nama-nama Class yang ada pada Sistem Informasi PT. XYZ
4.4.4.2.2. Class Responsibility and Purposes Nama Class Resposibility & Purposes
PurchaseOrder Class Purchase Order menjelaskan objek dari Purchase Order yang berisi data material dibeli.
Nama Class Resposibility & Purposes
M aterial Class M aterial menjelaskan objek dari M aterial yang berisikan tentang nama, jumlah, unit, currency, dan harga material.
Nama Class Resposibility & Purposes
Vendor Class Vendor menjelaskan objek dari Vendor yang berisikan nama, alamat, dan NPWP vendor.
121
Nama Class Resposibility & Purposes
Kondisi Class Vendor menjelaskan objek dari Kondisi yang berisikan tipe dan nama kondisi yang ada pada Purchase Order
Nama Class Resposibility & Purposes
DeliverySchedule Class DeliverySchedule menjelaskan objek dari Delivery Schedule yang berisikan jadwal pengiriman setiap material yang dibeli
Nama Class Resposibility & Purposes
BPB+ Class BPB+ menjelaskan objek dari BPB+ yang berisikan data penerimaan material.
Nama Class Resposibility & Purposes
BCT Pending Class BCT Pending menjelaskan objek dari BCT Pending yang berisikan data kekurangan material yang dikirim oleh vendor.
Nama Class Resposibility & Purposes
BPB+ Report Class BPB+ Report menjelaskan objek dari BPB+ Report yang berisikan laporan dari vendor terhadap kesalahan pencatatan penerimaan material.
Nama Class Resposibility & Purposes
Invoice Class Invoice menjelaskan objek dari Invoice yang berisikan data tagihan atas barang yang telah dikirim.
Nama Class Resposibility & Purposes
Payment Class Payment menjelaskan objek dari Payment yang berisikan data pembayaran Invoice yang telah dilakukan. Tabel 4.41 Class’s Responsibility and Purpose
122
4.4.4.2.3. Attribute Nama Class : Atribut:
Purchase Order noPO, idVendor, tglPO, TOP, currency, exchangeRate, status
Nama Class : Atribut:
M aterial noM aterial, namaM aterial, jumlah, unit, currency, harga
Nama Class : Atribut:
Vendor idVendor, namaVendor, alamatVendor, NPWP
Nama Class : Atribut:
Kondisi tipeKondisi, namaKondisi
Nama Class : Atribut:
Delivery schedule noPO, noM aterial, tglDelivery, qtyDelivery, status
Nama Class : Atribut:
BPB+ noBPB+, noPO, noSuratJalan, tglBPB+
Nama Class : Atribut:
BCT Pending noBCTPending, noBPB+, tglBCTPending, status
Nama Class : Atribut:
BPB+ Report noReport, noBPB+, tglReport, status
Nama Class : Atribut:
Invoice noInvoice, tglInvoice, tax, total, memo, status
Nama Class : Atribut:
Payment noPayment, idVendor, tglPayment, total Tabel 4.42 Class’s Attributes
123
4.4.4.2.4. Complex Operations (Operation S pecification) Name Category
Purpose Input Data Conditions Effect Algorithm
Data Structure Placement Involved Object Triggering Event
M embuat Invoice ___ Actice _X_ Read _X_ Passive _X_ Compute ___ Signal ___ Update Untuk menghasilkan Invoice noPO, noBPB+, jumlah, harga, tax, vendor Pada saat Purchase Order telah selesai maka vendor membuat Inovice untuk menagih. Invoice tercipta. Get_noBPB from BPB+ Get_noM aterial, jumlah from BPB+Detail Get_noInvoice from Invoice Hitung total_BPB+ Hitung tax Hitung grandtotal Save String, Integer, Date Pembuatan Invoice BPB+, BPB+Detail, Invoice, InvoiveDetail Penagihan
Tabel 4.43 Operation Specifi cation dari membuat Invoice
124
Windows Invoice
BPB+
BPB+Detail
Invoice
read read not found result
read not found result
read not found result result
Gambar 4.51 Sequence Function Read
Gambar 4.52 Sequence Function Compute
125
4.4.4.2.5. S tatechart Diagram Purchase Order
BPB+ / men eri ma
/ mem bel i
terteri ma
w ai t_ te rima
Mater ial
BCT Pendin g
/ me nda ta _ma te ria l
/ me ng kon fi rmasi te rdata
Vendor
w ai t_ te rima
Invoice
/ men da ta _ven do r
/ me nag ih akti f
Kondisi
wa it_ve rifika si
Pa yment
/ men da ta _ko ndi si
/ memba yar te rda ta
[lu nas ] te rba yar
Deli very Schedule / me mbe li w ait_l en gkap
Gambar 4.53 Statechart Diagram Revised
4.4.5. Recommendation 4.4.5.1. The S ystem’s Usefulness Dalam vendor portal PT. XYZ yang dibuat, ada kriteria terpenting, yaitu : 1. Useable (Very Important) Sistem ini harus bisa digunakan dengan baik pada komputer vendor untuk mendukung proses bisnis.
126
2. Secure (Important) Data yang ada di server tidak boleh hilang atau rusak. Data juga tidak boleh bocor keluar perusahaan. 3. Efficient (Important) Sistem yang sudah berjalan mampu mengakomodasi kebutuhan untuk server sehingga tidak perlu di upgrade. 4. Correct (Very Important) Sistem harus dapat memenuhi setiap fungsi yang ada pada Procure to pay. 5. Reliable (Very Important) Setiap perhitungan harus dieksekusi secara tepat (perhitungan pada pembuatan Invoice harus tepat sesuai BPB+ yang ditagih) karena bila terjadi kesalahan dapat menyebabkan kerugian bagi perusahaan. 6. M aintainable (Important) Sistem harus dapat diperbaikin secepat mungkin apabila terjadi kerusakan.
127
7. Testable (Important) Sistem harus dilakukan uji coba sebelum digunakan karena sistem berperan penting dalam proses bisnis perusahaan. 8. Comprehensible (Important) Sistem harus mudah digunakan agar vendor cepat mengerti dan menggunakan sistem dengan baik. 9. Portable (Very Important) Sistem menggunakan bahasa pemograman PHP sehingga dapat digunakan di operating system apapun. 10. Interoperable (Ver y Important) Karena sistem yang akan dibangun akan digabungkan dengan sistem SAP yang ada pada PT. X YZ. 4.4.5.2. Plan for Initiating Use Kami merekomendasikan untuk meng-install sistem secara langsung dan dijalankan secara parallel bersamaan dengan sistem yang lama. Selain itu menggunakan layanan internet sebagai akses dari client ke server.
128
4.4.5.3. Implementation Plan Sumber daya yang digunakan adalah 3 orang yang terdiri dari 2 orang system analyst dan 1 oran g programmer untuk mengerjakan sistem ini. Estimasi waktu pembuatan sistem diperkirakan 7 bulan terhitung Juli 2011 – Januari 2012.
1.
Analisis
2.
Design
3.
Coding
4.
Testing
Januari
Desember
November
Oktober
September
Agustus
Bulan
Juli
No Kegiatan
Tabel 4.44 Tabel Estimasi Waktu Kegiatan Analisis Hingga Testing
4.5. Perancangan Database Dalam merancang aplikasi berbasis web vendor portal juga diperlukan database sebagai tempat penyimpanan data. Berikut ini merupakan tipe-tipe data yang dipakai dalam perancangan struktur database aplikasi vendor portal:
129
Tipe Data
Keterangan
CHAR (ukuran)
String variable (dapat berisi huruf, angka, dan karakter khusus). Ukuran maksimum ditentukan dalam kurung. Dapat menyimpan hingga 255 karakter.
INT (ukuran)
-2147483648 Ke 2147483647 normal. 0-4294967295 unsigned. Jumlah maksimum digit dapat ditentukan dalam kurung.
DATE
Sebuah tanggal. Format: YYYY-M M -DD. Rentang yang didukung adalah dari ‘1000-01-01’ sampai ‘999912-31’ Tabel 4.45 Tipe Data Database
Berikut ini merupakan struktur database yang digunakan dalam perancangan aplikasi vendor portal: Nama Tabel: user Nama Field
Tipe Data
Ukuran
Keterangan
userID
CHAR
5
not null
password
CHAR
10
not null
type
CHAR
8
not null
Tabel 4.46 Tabel Database User
Nama Tabel: role Nama Field
Tipe Data
Ukuran
Keterangan
idRole
CHAR
2
not null
level
CHAR
1
not null
role
CHAR
20
not null
link
CHAR
25
not null
Tabel 4.47 Tabel Database Role
130
Nama Tabel: role_detail Nama Field
Tipe Data
Ukuran
Keterangan
type
CHAR
8
not null
idRole
CHAR
2
not null
Tabel 4.48 Tabel Database Role_Detail
Nama Tabel: karyawan Nama Field
Tipe Data
Ukuran
Keterangan
NIK
CHAR
10
not null
userID
CHAR
5
not null
namaKaryawan
CHAR
25
not null
alamatKaryawan
CHAR
25
not null
Tabel 4.49 Tabel Database Karyawan
Nama Tabel: material Nama Field
Tipe Data
Ukuran
Keterangan
noM aterial
CHAR
10
not null
namaM aterial
CHAR
25
not null
jumlah
INT
5
not null
unit
CHAR
2
not null
currency
CHAR
3
not null
harga
INT
11
not null
Tabel 4.50 Tabel Database Material
131
Nama Tabel: vendor Nama Field
Tipe Data
Ukuran
Keterangan
idVendor
CHAR
10
not null
namaVendor
CHAR
25
not null
alamatVendor
CHAR
25
not null
NPWP
CHAR
15
not null
status
CHAR
10
not null
Tabel 4.51 Tabel Database Vendor
Nama Tabel: kondisi Nama Field
Tipe Data
Ukuran
Keterangan
tipeKondisi
CHAR
5
not null
namaKondisi
CHAR
25
not null
Tabel 4.52 Tabel Database Kondisi
132
Nama Tabel: purchaseorder Nama Field
Tipe Data
Ukuran
Keterangan
noPO
CHAR
10
not null
idVendor
CHAR
10
not null
tglPO
DATE
-
not null
TOP
CHAR
15
not null
currency
CHAR
5
not null
exchange rate
INT
5
not null
status
CHAR
10
not null
poStatus
CHAR
10
not null
Tabel 4.53 Tabel Database PurchaseOrder
Nama Tabel: purchaseorderdetail Nama Field
Tipe Data
Ukuran
Keterangan
noPO
CHAR
10
not null
noM aterial
CHAR
10
not null
keterangan
CHAR
25
not null
qty
INT
4
not null
tglPengiriman
DATE
-
not null
Harga
INT
8
not null
status
CHAR
10
not null
Tabel 4.54 Tabel Database Purchas eOrderDetail
133
Nama Tabel: purchaseorderkondisi Nama Field
Tipe Data
Ukuran
Keterangan
noPO
CHAR
10
not null
tipeKondisi
CHAR
5
not null
jumlahKondisi
INT
3
not null
Tabel 4.55 Tabel Database Purchas eOrderKondisi
Nama Tabel: deliveryschedule Nama Field
Tipe Data
Ukuran
Keterangan
noPO
CHAR
10
not null
noM aterial
CHAR
10
not null
tglDelivery
DATE
-
not null
qtyDelivery
INT
4
not null
status
CHAR
10
not null
Tabel 4.56 Tabel Database DeliverySchedule
Nama Tabel: bpb Nama Field
Tipe Data
Ukuran
Keterangan
noBPB
CHAR
10
not null
noPO
CHAR
10
not null
noSuratJalan
CHAR
10
not null
tglBPB
DATE
-
not null
Tabel 4.57 Tabel Database BPB
134
Nama Tabel: bpbdetail Nama Field
Tipe Data
Ukuran
Keterangan
noBPB
CHAR
10
not null
noM aterial
CHAR
10
not null
qty
INT
4
not null
Tabel 4.58 Tabel Database BPBDetail
Nama Tabel: bpbreport Nama Field
Tipe Data
Ukuran
Keterangan
noReport
CHAR
10
not null
noBPB
CHAR
10
not null
tglReport
DATE
-
not null
status
CHAR
10
not null
Tabel 4.59 Tabel Database BPBReport
Nama Tabel: bpbreportdetail Nama Field
Tipe Data
Ukuran
Keterangan
noReport
CHAR
10
not null
noM aterial
CHAR
10
not null
qtyKoreksi
INT
4
not null
Tabel 4.60 Tabel Database BPBReportDetail
Nama Tabel: bctpending
135
Nama Field
Tipe Data
Ukuran
Keterangan
noBCTPending
CHAR
10
not null
noPO
CHAR
10
not null
tglBCTPending
DATE
-
not null
status
CHAR
10
not null
Tabel 4.61 Tabel Database BCTPending
Nama Tabel: bctpendingdetail Nama Field
Tipe Data
Ukuran
Keterangan
noBCTPending
CHAR
10
not null
noM aterial
CHAR
10
not null
qty
INT
4
not null
Tabel 4.62 Tabel Database BCTPendingDetail
Nama Tabel: invoice Nama Field
Tipe Data
Ukuran
Keterangan
noInvoice
CHAR
10
not null
tglInvoice
DATE
-
not null
tax
INT
5
not null
total
INT
10
not null
memo
CHAR
50
not null
status
CHAR
10
not null
Tabel 4.63 Tabel Database Invoice
136
Nama Tabel: invoicedetail Tipe Data
Nama Field
Ukuran
Keterangan
noInvoice
CHAR
10
not null
noBPB
CHAR
10
not null
Tabel 4.64 Tabel Database InvoiceDet ail
Nama Tabel: payment Nama Field
Tipe Data
Ukuran
Keterangan
noPayment
CHAR
10
not null
idVendor
CHAR
10
not null
tglPayment
DATE
-
not null
total
INT
10
not null
Tabel 4.65 Tabel Database Payment
Nama Tabel: paymentdetail Nama Field
Tipe Data
Ukuran
Keterangan
noPayment
CHAR
10
not null
noInvoice
CHAR
10
not null
Tabel 4.66 Tabel Database PaymentDet ail