Fachri 201843502125
JAKARTA
2022
Jl. Nangka No. 58 C Tanjung Barat, Jagakarsa, Jakarta Selatan Telp. (021) 78835283-7818718 Fax. :
1
UNIVERSITAS INDRAPRASTA PGRI
FAKULTAS TEKNIK DAN ILMU KOMPUTER
PROGRAM STUDI TEKNIK INFORMATIKA
(021)78835283.Jl. Raya Tengah, Kelurahan Gedong, Pasar Rebo, Jakarta Timur. Telp. : (021) 87797409
LEMBAR PENGESAHAN
Disusun oleh:
M. Sandy Rizki Irmawan 201843502306
Fachri 201843502125
Mengetahui, Menyetujui,
Ketua Program Studi Teknik Informatika Dosen Pembimbing
KATA PENGANTAR
Segala puji bagi Allah SWT, yang telah memberikan rahmat dan hidayah-Nya
kepada penulis, sehingga penulis dapat melaksanakan kegiatan Kuliah Kerja Praktek
(KKP) beserta pembuatan Laporan KKP ini dapat diselesaikan sesuai dengan yang
penulis harapkan.
laporan ini terdapat banyak kekurangan dan kesalahan. Oleh karena itu penulis
mengharapkan kritik dan saran yang bersifat membangun, sehingga laporan penulis
Pada kesempatan ini penulis ingin mengucapkan terima kasih kepada seluruh
pihak yang telah memberikan bantuan secara materil maupun moril dalam menyelesaikan
1. Bapak Saputra Dwi Nurcahya, M.Kom, selaku Dosen Pembimbing KKP di Fakultas
Teknik dan Ilmu Komputer Universitas Indraprasta PGRI yang telah memberikan
bimbingan dan arahan yang mendukung penulis dalam menyelesaikan laporan KKP
ini.
3. Bapak Ir. H. Soepardi Harris, M.T selaku Dekan Fakultas Teknik dan Ilmu Komputer
4. Ibu Mei Lestari, M.Kom selaku Ketua Program Studi Informatika Fakultas Teknik
Akhir kata semoga laporan ini dapat memberi manfaat bagi pembaca umumnya
Jakarta, 2022
Penulis
iv
Daftar Isi
KATA PENGANTAR............................................................................................
Daftar Isi................................................................................................................
Daftar Gambar.......................................................................................................
BAB I.......................................................................................................................
A. Latar Belakang....................................................................................1
B. Perumusan Masalah............................................................................3
C. Tujuan Penulisan................................................................................3
D. Batasan Permasalahaan.......................................................................3
E. Metodologi Penelitian.........................................................................4
F. Sistematika Penulisan.........................................................................5
BAB II.....................................................................................................................
D. Kegiatan Perusahaan........................................................................13
BAB III..................................................................................................................
A. Spesifikasi Hardware........................................................................14
B. Spesifikasi Software.........................................................................19
BAB IV..................................................................................................................
A. Proses Bisnis.......................................................................................
B. Aturan Bisnis......................................................................................
C. Dekomposisi Fungsi...........................................................................
F. Kamus Data........................................................................................
G. Spesifikasi Proses...............................................................................
H. Bagan Terstruktur...............................................................................
I. Spesifikasi Proses...............................................................................
BAB V....................................................................................................................
A. Kesimpulan.........................................................................................
B. Saran...................................................................................................
Daftar Pustaka......................................................................................................
vii
Lampiran.....................................................................................................
Listing Program.......................................................................................
x
Daftar Gambar
PENDAHULUAN
A. Latar Belakang
yang sangat penting. Pada saat ini, teknologi informasi sangatlah dibutuhkan
maupun swasta.
Sistem Informasi Pengelolaan Asset Berbasis Java pada PT. Tunas Ridean,
untuk tujuan tertentu dan dapat disimpulkan dari pengertian di atas bahwa
fungsi operasi organiasi yang bersifat manajerial dengan secara cepat dan
akurat. Salah satu peran teknologi informasi saat ini adalah mempermudah
yang paling viral bagi berjalannya kegiatan strategi dari suatu organisasi untuk
Pengelolaan Asset Berbasis Java pada PT. Tunas Ridean, Tbk, melakukan
pengelolaan data aset dan barang inventaris dengan aplikasi ini, petugas tidak
akan mengalami banyak kesukaran seperti mengitung keselurhan aset yang ada
dan tracking barang inventaris yang membuat petugas lebih mudah dalam
tertentu). Melakukan pencatatan atau perubahan dan pengajuan pada data aset
dan barang inventaris yang ada akan menjadi lebih terstruktur karena adanya
B. Perumusan Masalah
Tunas Ridean, Tbk, dalam melakukan pekerjaan yang baik dan tertata
rapih?
C. Tujuan Penulisan
D. Batasan Permasalahaan
jaringan.
E. Metodologi Penelitian
a. Observasi
terhadap objek yang akan kita teliti. Metode ini berguna untuk
b. Wawancara
pihak yang terkait dengan data yang diperlukan oleh aplikasi yang akan
dibangun.
c. Studi Pustaka
Pengelolaan Asset.
5
e. Desain
perusahaan internal.
f. Pengujian
g. Metode Perancangan
h. Metode Pembuatan
menyimpan database.
F. Sistematika Penulisan
BAB I PENDAHULUAN
BAB II ORGANISASI
organisasi PT. Dan penjelasan unit kegiatan PT. Tunas Ridean Tbk.
BAB IV PEMBAHASAN
BAB V PENUTUP
Daftar Pustaka.
7
8
BAB II
ORGANISASI
Winanto Wiryomartani, S.H., No. 102 tertanggal 24 Juli 1980. Akta pendirian
Tunas Dwipa Matra ”TDM”. - Jasa keuangan dan sewa, yang berkedudukan
resmi.
berdasarkan Akta Pendirian No. 69, oleh Notaris Djojo Muljadi, S.H.
Indonesia dalam Surat Keputusan No. Y.A.5348 tanggal 6 Pebruari 1973 dan
telah diumumkan dalam Lembaran Berita Negara No. 31, Tambahan No. 281
Keputusan Rapat No. 54, tanggal 13 Juni 2008, yang dibuat dihadapan Benny
disetujui oleh Menteri Hukum dan Hak Asasi Manusia Republik Indonesia
10
pada Bursa Efek Jakarta dan Bursa Efek Surabaya dengan menawarkan
sejumlah 2,7 juta lembar saham dengan nilai nominal Rp 1.000 Rupiah penuh
per lembar.
organisasi pemerintah maupun swasta atau badan usaha lain merasa perlu
hubungan satu sama lainnya dari keseluruhan fungsi, tugas, dan wewenang
serta tanggung jawab yang harus dijalankan oleh karyawan atau satuan-satuan
dengan baik pada setiap departemen yang ada. Selain itu, CEO juga
harus mampu untuk menjaga dan memantau setiap aktifitas dan proses
2. General manager
4. Sales Manager
5. Supervisor Keuangan
keuangan.
7. Service Advisor
8. Supervisor Inventory
yang ditetapkan.
9. Leader Mekanik
dan kebutuhannya.
10. Mekanik
4. Kegiatan Perusahaan
berikut :
BAB III
INFRASTRUKTUR SISTEM
A. Spesifikasi Hardware
keras adalah salah satu komponen dari sebuah komputer yang sifat alatnya
bisa dilihat dan diraba secara langsung atau yang bebentuk nyata. Yang
padanya, atau yang juga disebut dengan istilah instructuion set. Dengan
bagian yaitu :
keyboard dan mouse. Data yang dimasukkan dapat berupa signal input
1) Power Supply
komputer.
3) Kartu grafis
4) Processor
komputer.
5) Motherboard
6) Monitor
masukkan.
7) Printer
1) Hardisk (HDD)
tambahan)
2) Modular
3) Kartu Suara
terhubung melalui topologi star atau topologi bintang. Perangkat keras yang
dan diatur oleh komputer ,data elektronik yang disimpan itu dapat berupa
20
software atau perangkat lunak inilah suatu komputer dapat menjalankan suatu
perintah. Dengan kata lain software merupakan data yang diformat dan
kemudian dibuat berbagai jenis software, jumlah software saat ini banyak
a. System Software
b. Operating system
pengguna.
c. device driver
d. system utility
21
e. Application Software
g. Shareware
secara gratis dengan fitur yang terbatas atau waktu pakai yang
terbatas.
h. Freeware
i. Rentalware
j. Pirated software
a. Database (MySQL)
adalah data. Dalam sebuah database terdiri dari dua bagian dasar yang
1) Tabel
2) Kolom
23
baik itu menerima dalam mengirimkan data. MySQL juga multi user
(Wikipedia, 2007).
Manual, 2007).
MySQL adalah salah satu server database SQL multi user dan
multi threaded yang didukung oleh PHP untuk melakukan koneksi dan
b. Netbeans
c. Java
bahasa Java :
2) Concurrent
BAB IV
PEMBAHASAN
A. Proses Bisnis
Sistem ini bekerja dengan saling terhubung dan dapat dengan mudah
asset baru dan juga dapat menghapus asset atau menghapus asset (scraping).
Proses ini berawal dari modul team purchasing, dimana asset akan di create
oleh team purchasing dan akan otomatis pula ter create nomor Assetnya
ketika sudah memasuki data yang harus di isi, sehingga kita dapat mengetahui
asset apa yang di pesan, dan siapa pemesannya, dan juga per untukan ruangan
mana yang akan di adakan asset tersebut. Lalu terdapat team Fixed Asset
yang akan di beri modul Fixed Asset dimana bertugas untuk memberikan
Label asset pada fisik asset tersebut agak mudah untuk di tracking nantinya.
Setelah asset tersebut di berikan label, maka asset tersebut siap untuk di
antarkan ke ruangan yang telah di peruntukan, lalu team Fixed Asset akan
mengupdate status, foto asset dan lokasi asset tersebut melalui via aplikasi
android yang telah di buatkan. Dan segala informasi asset tersebut akan
terdata di Database yang telah di siapkan. Dan saat semua data telah
data dan laporan yang telah di berikan oleh team Fixed Asset, setelah di
B. Aturan Bisnis
harus di taati bagi seluruh pengguna/user nya, agar sistem ini dapat menjadi
suatu solusi terbaik untuk memudahkan suatu aktivitas yang dilakukan setiap
saat. Berikut aturan dan kebijakan untuk menjalankan sistem informasi ini :
1. Account
atas apapun yang terjadi pada Asset yang terekap dengan account setiap
karyawan.
Alur data yang harus dilakukan haruslah sesuai dengan SOP yang telah
direksi.
3. Operation
C. Dekomposisi Fungsi
dan output yang sebagai mana ketiga komponen ini harus terwujud agar
Pada menu ini, user akan di arahkan untuk mengisi account yang sudah di daftarkan atau
belum ke dalam FMS/Sistem Informasi ini, proses yang di lakukan yaitu dengan
mencocokan data dari username dan password, dengan database pada akun yang telah di
daftarkan, bila proses itu sudah selesai, maka akan terjadi 2 output yang akan di
Bila login berhasil, makan akan menampilkan alert success yang dapat
dilihat setelah login. Di dalam alert ini akan menampilkan alert success ketika
daftarkan.
Pada page ini, bila keadaan yang terjadi username ataupun password
yang belum di daftarkan salah, akan terdapat alert login failed apabila
a. Login Account
Sumber : Admin
Pengguna : Pengguna
b. Penambahan Barang
Rangkap : 1 Lembar
c. Approval
General Affair
Rangkap : 1 Lembar
Rangkap : 4 Lembar
antar komponen yang terdapat pada sistem. Berikut merupakan desain data
flow diagram dari sistem ini yang digambarkan mulai dari diagram konteks
F. Kamus Data
a. Data Karyawan
b. Data Login
c. Data Divisi
d. Data Barang
46
a. Laporan
Komentar :-
G. Spesifikasi Proses
1. Proses 1.1
2. Proses 2.1
Keluaran :
Penyimpanan pada Tabel TbBarang
Uraian proses ini adalah input data barang yang ingin di view,
penjelasan dan setelah
: itu terdapat output data barang pada
TbBarang
3. Proses 3.1
4. Proses 3.2
5. Proses 4.1
H. Bagan Terstruktur
Proses Login
Pengkonfirmasian
Isi form request
Request
Proses Pencetakan
Laporan
I. Spesifikasi Proses
Mulai
Selesai
1. Form approval
Mulai
Selesai
Mulai
Selesai
Modul Manager
Mulai
Selesai
1. Tabel karyawan
karyawan
Laki’,’Perempuan’)
karyawan
2. Tabel Login
56
3. Tabel Divisi
divisi
4. Tabel Role
5. Tabel Barang
57
barang
aktif)
1. Tabel Transaksi
transaksi
barang
1. Form Login
2. Tampilan Dashboard
59
BAB V
PENUTUP
A. Kesimpulan
untuk mecancang suatu sistem pada PT. Tunas Ridean Tbk tentang
ditetapkan, Contohnya:
B. Saran
Informasi Pengelolaan Asset Berbasis Java pada PT. Tunas Ridean Tbk
ini menjadi lebih baik di masa yang akan datang, agar dalam pengembangan
kedepannya sistem informasi ini juga dapat diperbaharui lagi dalam hal
66
tampilan dan terutama fitur atau fungsinya agar bisa ditambahkan lagi.
proses penyewaan dan pegembalian data aset barang, jika sewaktu-waktu ada
2. Hasil dari print ini kemudian akan dibagikan kepada pihak accounting di
tiap tiap bagian tim stock opname. Usahakan yang menerima hasil print
bukanlah orang gudang, karena orang gudang tidak boleh tahu stok versi
3. Lakukan pengecekan ulang atas stok yang selisih. Jika terjadi kekurangan
cari penyebabnya apakah karena salah hitung atau memang terjadi selisih
atas stok.
4. Lakukan pengecekan stok dan beri tag/ stiker agar tidak terjadi double
penghitungan.
Setelah semua proses selesai, maka hasil stock opname tersebut diserahkan ke
DAFTAR PUSTAKA
Informasi:
Bandung: Informatika.
Index.
Komputindo.
LISTING PROGRAM
1. LoginFrame.java
2. package asetku.frames;
3. import asetku.databases.ConnectionManager;
4. import asetku.databases.UserSession;
5. import asetku.models.User;
6. import java.awt.Dimension;
7. import java.awt.Toolkit;
8. import java.awt.event.KeyEvent;
9. import java.sql.Connection;
17. initComponents();
21.
24.
28.
29. try {
32.
34. if(!result.next()) {
36. return;
37. }
39. System.out.println(passwordCol);
40.
41. System.out.println(result.toString());
42.
43. if(!password.equals(passwordCol)) {
45. return;
46. }
47.
48. setVisible(false);
50.
51. user.setUser(
52. result.getString("id"),
53. result.getString("nip"),
54. result.getString("nama"),
55. result.getString("role_id"),
56. result.getString("cabang_id"),
57. result.getString("divisi_id")
58. );
59.
60. UserSession.setUser(user);
61.
63.
67. }
68.
69. }
70.
73.
75. evt.consume();
76. }
77. }
78.
81.
82. if(!Character.isDigit(c)) {
83. evt.consume();
84. }
85. }
89. });
90. }
97. HistoryPanel.Java
120. initComponents();
121.
122.
124. jComboBox1.setSelectedIndex(calendar.get(Calendar.MONTH));
125.
129. initHistoryTable(month.getId());
130. }
131. });
133. initHistoryTable(month.getId());
134. }
135.
137. Object[] header = new Object[]{"No.", "Kode Aset", "Nama Aset", "Branch Sebelum", "Divisi Sebelum",
139. tabelHistory.setModel(tableModel);
148. System.out.println(month);
149.
150. try {
154.
155. int i = 1;
156. while(result.next()) {
157.
165.
167. tableModel.addRow(row);
168. i++;
169. }
171. System.err.println(e.getMessage());
172. }
173. }
177.
178. try {
182. } catch(JRException e) {
183.
185. }
186. }
191. BudgetPanel.java
214. initComponents();
216. initBudgetTable();
217. }
219. Object[] header = new Object[]{"No.", "Divisi", "Saldo Sebelum", "Penambahan", "Saldo Sesudah",
"Tanggal"};
221. budgetTable.setModel(tableModel);
222.
226.
227. try {
230.
231. int i = 1;
232. while(result.next()) {
233.
239.
75
241.
242. tableModel.addRow(row);
243. i++;
244. }
245.
246.
248. System.err.println(e.getMessage());
249. }
250. }
JComboBox<>(services.getDivisions(currentUser.getBranchId()));
257. divisiComboBox,
259. budgetField
260. };
261.
JOptionPane.PLAIN_MESSAGE);
created_at)\n"
270.
271. try {
76
278. while(resultSet.next()) {
280. }
281.
286. updateStmt.execute();
287.
295.
296. insertStmt.execute();
298. initBudgetTable();
300. System.err.println(e.getMessage());
301. }
302. }
303.
304.
305. }
307.
308. }
315. }
316. AsetPanel.java
345. initComponents();
346. restrictAccess();
348.
349. initAssetsTable("");
350.
352. @Override
354. initAssetsTable(searchField.getText());
355. }
356.
357. @Override
359. initAssetsTable(searchField.getText());
360. }
361.
362. @Override
364. initAssetsTable(searchField.getText());
365. }
366. });
367. }
368.
371. return;
372. }
UserSession.getCurrentUser().getRoleId() : "";
374.
375. if(roleId.equals("2")) {
79
376. addAsetButton.setEnabled(false);
377. }
378. }
379.
382. return;
383. }
384. Object[] header = new Object[]{"No.", "Kode Aset", "Nama Aset", "Harga Aset", "Divisi", "Status"};
386. @Override
389. }
390. };
391. asetTable.setModel(tableModel);
392.
398.
399. try {
403.
405. int i = 1;
406. while(result.next()) {
407.
413. if("0".equals(result.getString("verify"))) {
415. } else {
416. e = "Terverifikasi";
417. }
418.
420. tableModel.addRow(row);
421. i++;
422. }
424. System.err.println(e.getMessage());
425. }
426. }
428.
429. }
430.
432.
436. passwordField
437. };
438. int result = JOptionPane.showConfirmDialog(this, inputs, "Masukkan kata sandi untuk melanjutkan",
JOptionPane.OK_CANCEL_OPTION);
439.
441.
445. try {
448.
450.
451. if(resultSet.next()) {
452. if(!resultSet.getString("password").equals(passwordField.getText())) {
454. return;
455. }
456. }
458. System.err.println(e.getMessage());
459. }
460.
466.
467. try {
470.
471. stmt.execute();
473. initAssetsTable("");
475. System.err.println(e.getMessage());
476. }
477.
478. }
479. }
82
486.
DefaultComboBoxModel<>(divisions);
492. comboDivisi.setModel(defaultComboBoxModel);
496. }
497. }
498. });
499.
503. System.out.println(divisi.getId());
504. }
505. });
506.
508. comboCabang,
509. comboDivisi
510. };
511.
513.
83
519.
n"
522.
523. try {
527. if(!resultSet.next()) {
529. }
530.
534. updateStmt.execute();
535.
541. insertStmt.execute();
542.
544.
545. initAssetsTable("");
547. System.err.println(e.getErrorCode());
84
548. System.err.println(e.getMessage());
550. System.err.println(ex.getMessage());
551. }
552. }
553. }
556.
558. approveButton.setEnabled(true);
559. } else {
560. approveButton.setEnabled(false);
561. }
562.
564. mutasiButton.setEnabled(true);
565. } else {
566. mutasiButton.setEnabled(false);
567. }
568. }
579. }
580. AllAsetPanel.java
596. initComponents();
598. initAssetsTable("");
599.
601. @Override
603. initAssetsTable(searchField.getText());
604. }
605.
606. @Override
608. initAssetsTable(searchField.getText());
609. }
610.
611. @Override
613. initAssetsTable(searchField.getText());
614. }
615. });
616.
617. }
86
619. Object[] header = new Object[]{"No.", "Kode Aset", "Nama Aset", "Harga Aset", "Cabang", "Divisi"};
621. @Override
624. }
625. };
626. asetTable.setModel(tableModel);
627.
632.
633. try {
637. int i = 1;
638. while(result.next()) {
639.
645.
647.
648. tableModel.addRow(row);
649.
650. i++;
651. }
653. System.err.println(e.getMessage());
654. }
655. }
657.
658. }
665. }
666. PembelianPanel.java
691. initComponents();
693.
694. initTabelPembelian();
695. }
696.
700. jTable1.setModel(tableModel);
701.
704.
705. try {
707.
709.
710. int i = 1;
711. while(resultSet.next()) {
716.
718. tableModel.addRow(row);
719.
720. i++;
721. }
723. }
724. }
JComboBox<>(services.getDivisions(UserSession.getCurrentUser().getBranchId()));
734. namaField,
736. keteranganField,
738. comboVendor,
740. hargaField,
742. comboKategori,
744. comboDivisi
745. };
746.
JOptionPane.PLAIN_MESSAGE);
748.
750. String query1 = "INSERT INTO aset (nama_aset, harga_aset, kategori_id, divisi_id, vendor_id,
752. String query2 = "INSERT INTO pembelian_aset(aset_id, keterangan, created_at, updated_at) VALUES
(?, ?, ?, ?)";
753.
90
754. try {
Statement.RETURN_GENERATED_KEYS);
765.
766. if(affectedRow == 0) {
768. }
769.
771. generatedKeys.first();
773.
774.
780. stmt2.execute();
781.
783. initTabelPembelian();
784.
786. System.err.println(e.getMessage());
787. }
91
788. }
789. }
793. }
794. VendorPanel.java
810. initComponents();
811. initTabelVendor();
812. }
813.
815. Object[] header = new Object[]{"No.", "Nama Vendor", "Nomor Telepon", "Alamat Vendor"};
817. tabelVendor.setModel(tableModel);
819.
820. try {
823.
824. int no = 1;
825. while(result.next()) {
829.
831. tableModel.addRow(row);
832. no++;
833. }
835. }
836. }
841. alamatVendor.setLineWrap(true);
842. alamatVendor.setWrapStyleWord(true);
843.
846. namaVendor,
848. nomorTelepon,
850. alamatVendor
851. };
JOptionPane.PLAIN_MESSAGE);
853.
855. String query = "INSERT INTO vendor (nama, no_telepon, alamat) VALUES\n"
857.
858. try {
863.
864. stmt.execute();
865.
867. initTabelVendor();
868. } catch(SQLException e) {
869. System.err.println(e.getMessage());
870. }
871. }
872. }
877. }