bab iii pembahasan · direktur mempunyai tugas memimpin perusahaan dengan menerbitkan...

101
23 BAB III PEMBAHASAN 3.1. Tinjauan Perusahaan PT. Rakha Rekananta merupakan perusahaan konsultan kontraktor yang bergerak di bidang pelaksana jasa kontraktor yang berguna untuk pembangunan di Kalimantan Barat ini. Berikut ini merupakan gambaran mengenai PT. Rakha Rekananta mulai dari sejarah singkat perusahaan, struktur organisasi hingga uraian tugas tanggung jawab. PT. Rakha Rekananta memiliki visi dan misi sebagai berikut: Visi: 1. Mengusulkan perbaikan atau pemeliharaan pembangunan yang akan di perbaiki. 2. Mempercepat perencanaan dan pelaksanaan pembangunan. Misi: 1. Melayani pengaduan mengenai pembangunan. 2. Meningkatkan kualitas pembangunan. 3. Mengembangkan karya para arsitektur. 3.1.1 Sejarah Perusahaan Perusahaan ini didirikan pada tanggal 11 Maret 2008 di hadapan Notaris, yakni Riza Emir Cyrillus Caloh, SH di Pontianak. PT. Rakha Rekananta beralamat di Jalan Karangan Blok C, No. 9 Komplek UNTAN, Kelurahan Bansir Laut, Kecamatan Pontianak Tenggara, Kota Pontianak, Kalimantan Barat.

Upload: others

Post on 29-Jan-2021

5 views

Category:

Documents


0 download

TRANSCRIPT

  • 23

    BAB III

    PEMBAHASAN

    3.1. Tinjauan Perusahaan

    PT. Rakha Rekananta merupakan perusahaan konsultan kontraktor yang

    bergerak di bidang pelaksana jasa kontraktor yang berguna untuk pembangunan di

    Kalimantan Barat ini. Berikut ini merupakan gambaran mengenai PT. Rakha

    Rekananta mulai dari sejarah singkat perusahaan, struktur organisasi hingga

    uraian tugas tanggung jawab.

    PT. Rakha Rekananta memiliki visi dan misi sebagai berikut:

    Visi:

    1. Mengusulkan perbaikan atau pemeliharaan pembangunan yang akan di

    perbaiki.

    2. Mempercepat perencanaan dan pelaksanaan pembangunan.

    Misi:

    1. Melayani pengaduan mengenai pembangunan.

    2. Meningkatkan kualitas pembangunan.

    3. Mengembangkan karya para arsitektur.

    3.1.1 Sejarah Perusahaan

    Perusahaan ini didirikan pada tanggal 11 Maret 2008 di hadapan Notaris,

    yakni Riza Emir Cyrillus Caloh, SH di Pontianak. PT. Rakha Rekananta

    beralamat di Jalan Karangan Blok C, No. 9 Komplek UNTAN, Kelurahan Bansir

    Laut, Kecamatan Pontianak Tenggara, Kota Pontianak, Kalimantan Barat.

  • 23

    PT. Rakha Rekananta dipimpin oleh Direktur yang bernama Dwi

    Transmanto, ST. Perusahaan ini mencakup usaha jasa kontruksi dengan sub

    kualifikasi M (Menengah) pada bidang bangunan arsitektur dan bidang bangunan

    sipil.

    3.1.2 Struktur Organisasi

    Struktur organisasi merupakan suatu kerangka dan susunan untuk

    mewujudkan pola tetap dari hubungan antar bagian atau posisi maupun orang-

    orang yang menunjukkan kedudukan tugas, wewenang dan tanggung jawab yang

    berbeda-beda dalam suatu lingkungan kerjasama. Struktur mutlak diperlihatkan

    agar jelas hubungan antar unit yang terdapat di dalam organisasi tersebut, serta

    bagaimana tugas wewenang dan tanggung jawabnya. Gambar III.1 berikut ini

    adalah struktur organisasi pada PT. Rakha Rekananta.

    Sumber : PT. Rakha Rekananta (2018)

    Gambar III.1. Struktur Organisasi PT. Rakha Rekananta Pontianak

  • 23

    3.1.3 Uraian Tugas Tanggung Jawab

    Guna kelancaran dalam melaksanakan operasional kerja dari PT. Rakha

    Rekananta Pontianak, maka secara internal keorganisasian telah ditetapkan tugas

    masing-masing bagian, yaitu:

    1. Komisaris

    Komisaris mempunyai tugas memberikan pengarahan dan nasehat kepada

    direktur dalam menjalankan tugasnya, melakukan pengawasan atas kebijakan

    direktur dalam menjalankan perusahaan, mengevaluasi rencana kerja dan

    anggaran perusahaan dan memberikan saran dan pendapat mengenai tujuan

    strategis perusahaan.

    2. Direktur

    Direktur mempunyai tugas memimpin perusahaan dengan menerbitkan

    kebijakan-kebijakan perusahaan, memilih menetapkan, mengawasi tugas dari

    karyawan, menyetujui anggaran tahunan perusahaan.

    3. Kepala Bagian Administrasi dan Keuangan

    Kepala bagian administrasi dan keuangan mempunyai tugas menyediakan

    sarana administrasi dan kebutuhan dana, merencanakan dan mengendalikan

    pengolahan data keuangan, mengatur administrasi perusahaan dan terkendalinya

    dokumen administrasi dan keuangan.

    4. Kepala Bagian Umum

    Kepala bagian umum mempunyai tugas mendukung seluruh kegiatan

    operasional kantor dengan melakukan proses pengadaan seluruh kebutuhan kerja,

    melakukan analisa kebutuhan anggaran atas pengadaan dan pemeliharaan seluruh

    fasilitas dan sarana penunjang aktivitas kantor, melakukan aktivitas pemeliharaan

  • 23

    atas seluruh fasilitas kantor, membuat, menjalankan dan mengembangkan sistem

    kerja atas pengadaan dan menyiapkan laporan bulanan untuk keperluan rapat

    anggaran, laporan keuangan atas aset dan beban biaya kantor.

    5. Kepala Bagian Teknisi

    Kepala bagian teknisi mempunyai tugas bertanggung jawab atas tersedianya

    mesin, peralatan dan kebutuhan listrik demi kelancaran kinerja perusahaan dan

    mendelegasikan dan mengkoodinir tugas-tugas di bagian perawatan mesin dan

    listrik.

    3.2 Tinjauan Kasus

    Proses pengolahan laporan keuangan pada PT. Rakha Rekananta datanya

    masih sederhana yakni masih menggunakan Microsoft Excel dan sering terjadinya

    kehilangan data keuangannya.

    3.2.1 Proses Bisnis Sistem Berjalan

    Berikut adalah penjelasan prosedur pengolahan data keuangan pada PT.

    Rakha Rekananta:

    1. Teknisi pengolahan proyek mendapat klien potensial pengadaan proyek.

    2. Teknisi menganalisa tuntutan dari klien dan menyusun biaya teknis

    administrasi.

    3. Admin Keuangan membantu proses penyusunan teknis biaya dan

    administrasi proyek.

    4. Direktur memeriksa isi dari teknis biaya dan administrasi proyek.

    5. Direktur menandatangi pengadaan proyek dan administrasi proyek untuk

    disetujui.

  • 23

    6. Komisaris mengatur tim pelaksana pekerjaan dan koordinasi di bidang

    desain, manajemen kontruksi dengan customer atau instansi terkait dan

    menyusun rencana kerja.

    7. Komisaris merinci kebutuhan keuangan dan sumber daya operasional

    proyek.

    8. Teknisi mengatur dan melaksanakan pembelian alat kerja.

    9. Teknisi membuat perincian pengeluaran alat kerja dan kebutuhan lain-lain..

    10. Admin menerima laporan rincian pengeluaran alat kerja dan lain-lain untuk

    dicatat.

    11. Admin memberi biaya operasional kantor kepada Kabag Umum.

    12. Kabag Umum membuat laporan pengeluaran administrasi dan perlengkapan

    kantor kepada admin.

    13. Admin mencatat semua data operasional administrasi.

    3.2.2 Activity Diagram

    Berdasarkan proses bisnis yang telah diuraikan pada 3.2.1, maka terdapat 5

    swimline, yakni teknis pengolahan proyek, admin keuangan, kabag umum,

    direktur, komisaris. Proses bisnis dimulai oleh teknis pengolahan proyek

    mendapat klien potensial pengadaan proyek. Gambar III.2 dibawah ini

    merupakan gambar activity diagram proses bisnis sistem berjalan pada PT. Rakha

    Rekananta.

  • 23

    Sumber : Hasil Analisa (2018)

    Gambar III.2. Activity Diagram pada PT. Rakha Rekananta Pontianak

    3.2.3 Dokumen Masukan

    Spesifikasi sistem berjalan yaitu serangkaian dari bentuk dokumen untuk

    mendukung terbentuknya file-file yang dibutuhkan serta informasi yang disajikan,

    maka dibutuhkan masukan-masukan untuk sistem.

    1. Nama Dokumen : Data Pengadaan Proyek

    Fungsi : Untuk Mengetahui Data Pengadaan Proyek

    Sumber : Klien

    Tujuan : Teknisi Pengolahan Proyek

    Media : Kertas

    Jumlah : Satu Lembar

  • 23

    Frekuensi : Setiap Terjadinya Kegiatan Proyek

    Format : Lampiran A.1

    2. Nama Dokumen : Data Susunan Biaya Administrasi

    Fungsi : Untuk Mengetahui Rincian Biaya Administrasi

    Sumber : Teknisi Pengolahan Proyek

    Tujuan : Admin Keuangan

    Media : Kertas

    Jumlah : Satu Lembar

    Frekuensi : Setiap Terjadinya Kegiatan Proyek

    Format : Lampiran A.2

    3.2.4 Dokumen Keluaran

    1. Nama Dokumen : Data Rincian Keuangan Operasional Proyek

    Fungsi : Untuk Mengetahui Rincian Keuangan Operasional

    Sumber : Komisaris

    Tujuan : Teknisi Pengolahan Proyek

    Media : Kertas

    Jumlah : Satu Lembar

    Frekuensi : Setiap Terjadinya Kegiatan Proyek

    Format : Lampiran B.1

    2. Nama Dokumen : Data Pengeluaran Alat Kerja

    Fungsi : Pengeluaran Alat Kerja

    Sumber : Teknisi Pengolahan Proyek

    Tujuan : Admin Keuangan

    Media : Kertas

  • 23

    Jumlah : Satu Lembar

    Frekuensi : Setiap Terjadinya Kegiatan Proyek

    Format : Lampiran B.2

    3. Nama Dokumen : Data Laporan Pemasukan dan Pengeluaran Kantor

    Fungsi : Untuk Mengetahui Laporan Keuangan Kantor

    Sumber : Kabag Umum

    Tujuan : Admin Keuangan

    Media : Kertas

    Jumlah : Satu Lembar

    Frekuensi : Setiap Bulan

    Format : Lampiran B.3

    3.2.5 Permasalahan Pokok

    Dalam suatu perusahaan sangat dibutuhkan suatu sistem yang baik.

    Sehingga memudahkan perusahaan dalam usaha yang dioperasikan sesuai

    keinginan. Akan tetapi, perlunya cara pengolahan suatu usaha harus dapat

    disesuaikan dengan pengaturan aktivitas yang baik agar tidak terjadinya masalah.

    Melihat dari proses yang terjadi, adanya beberapa data yang bermasalah dihadapi

    PT. Rakha Rekananta dalam pengolahan data keuangan. Berikut permasalahan

    pokok yang terjadi pada PT. Rakha Rekananta:

    1. Dalam melakukan pengolahan data keuangan masih dilakukan secara

    sederhana menggunakan Microsoft Excel sering terjadinya kekeliruan.

    2. Adanya kesalahan informasi laporan data keuangan sehingga untuk

    penyajian informasi laporan data keuangan memerlukan waktu yang lama

    dan tidak efisien.

  • 23

    3.2.6 Pemecahan Masalah

    Untuk mengatasi masalah yang ada pada PT. Rakha Rekananta, maka

    penulis memberikan cara alternatif pemecahan masalah berupa sistem yang

    terkomputerisasi. Pada sistem yang sudah terkomputerisasi tersebut memiliki

    kelebihan yaitu:

    1. Membuat suatu sistem komputerisasi sehingga dalam pengolahan data

    keuangan lebih akurat.

    2. Merancang sistem informasi akuntansi untuk mengolah data keuangan

    hingga pembuatan laporan secara otomatis agar lebih efektif dan

    meminimalisir terjadinya kesalahan, sehingga informasi yang diperoleh

    lebih cepat, tepat dan akurat.

    3.3 Analisa Kebutuhan Software

    Berdasarkan dari analisa yang diamati pada PT. Rakha Rekananta, maka

    terdapat kebutuhan dalam pengolahan data keuangan. Program berbasis web ini

    dibuat untuk membantu mempermudah pembuatan laporan pengolahan data

    keuangan, yang dimana aplikasi ini dapat diakses oleh 5 pengguna seperti admin,

    kabag umum, teknisi pengolahan proyek, direktur dan komisaris.

    3.3.1 Tahapan Analisis

    Berdasarkan proses sistem berjalan pengolahan data keuangan pada PT.

    Rakha Rekananta, maka tahapan berikutnya adalah analisis kebutuhan. Berikut ini

    spesifikasi kebutuhan (System Requirement) dari sistem laporan pengolahan data

    keuangan pada PT. Rakha Rekananta.

  • 23

    A. Halaman Admin:

    A.1. Admin login

    A.2. Admin mengelola data karyawan

    A.3. Admin mengelola data piutang

    A.4. Admin mengelola data sumber utang

    A.5. Admin mengelola data utang

    A.6. Admin mengelola data pekerjaan

    A.7. Admin mengelola data pekerjaan proyek

    A.8. Admin mengelola data pengeluaran proyek

    A.9. Admin mengelola rekapitulasi proyek tahunan

    A.10. Admin mengelola jurnal

    A.11. Admin mengelola akun

    A.12. Admin mengelola buku besar

    A.13. Admin kas keluar

    A.14. Admin kas masuk

    A.15. Admin neraca saldo

    A.16. Admin mencetak rekapitulasi proyek tahunan, jurnal, laba rugi,

    perubahan modal, neraca dan laporan arus kas

    A.17. Admin keluar

    B. Halaman Direktur:

    B.1. Direktur login

    B.2. Direktur melihat data pekerjaan

    B.3. Direktur melihat data pekerjaan proyek

    B.4. Direktur melihat pengeluaran proyek

  • 23

    B.5. Direktur melihat jurnal

    B.6. Direktur keluar

    C. Halaman Komisaris:

    C.1. Komisaris login

    C.2. Komisaris melihat rekapitulasi proyek tahunan

    C.3. Komisaris melihat jurnal

    C.4. Komisaris keluar

    D. Halaman Kabag Umum:

    D.1. Kabag Umum login

    D.2. Kabag Umum mengelola jurnal

    D.3. Kabag Umum keluar

    E. Halaman Kabag Teknis:

    E.1. Kabag Teknis login

    E.2. Kabag Teknis mengelola data pekerjaan

    E.3. Kabag Teknis mengelola data pekerjaan proyek

    E.4. Kabag Teknis mengelola pengeluaran proyek

    E.5. Kabag Teknis melihat rekapitulasi proyek tahunan

    E.6. Kabag Teknis melihat jurnal

    E.7. Kabag Teknis keluar

    3.3.2 Use Case Diagram

    Dalam bukunya Rosa dan Shalahudin menjelaskan use case merupakan

    permodelan untuk kelakuan sistem informasi yang akan dibuat, use case

    mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem.

  • 23

    1. Use Case Diagram Halaman Admin

    Pada Gambar III.3 berikut ini merupakan use case diagram halaman admin

    pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.3. Use Case Diagram Halaman Admin pada PT. Rakha

    Rekananta Pontianak

  • 23

    2. Use Case Diagram Halaman Direktur

    Pada Gambar III.4 berikut ini merupakan use case diagram halaman

    direktur pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.4. Use Case Diagram Halaman Direktur pada PT. Rakha

    Rekananta Pontianak

    3. Use Case Diagram Halaman Komisaris

    Pada Gambar III.5 berikut ini merupakan use case diagram halaman

    komisaris pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.5. Use Case Diagram Halaman Komisaris pada PT. Rakha

    Rekananta Pontianak

  • 23

    4. Use Case Diagram Halaman Kabag Umum

    Pada Gambar III.6 berikut ini merupakan use case diagram halaman kabag

    umum pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.6. Use Case Diagram Halaman Kabag Umum pada PT. Rakha

    Rekananta Pontianak

    5. Use Case Diagram Halaman Kabag Teknis

    Pada Gambar III.7 berikut ini merupakan use case diagram halaman kabag

    teknis pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.7. Use Case Diagram Halaman Kabag Teknis pada PT. Rakha

    Rekananta Pontianak

  • 23

    Tabel III.1

    Deskripsi Use Case Diagram Halaman Admin

    Use Case Narative Halaman Admin

    Tujuan Admin dapat melihat data di halaman admin

    Deskripsi Sistem ini memungkinkan admin untuk masuk ke dalam

    halaman admin yang di dalamnya ada data karyawan, data

    piutang, data sumber utang, data utang, data pekerjaan,

    data pekerjaan proyek, data pengeluaran proyek,

    rekapitulasi proyek tahunan, jurnal, akun, buku besar, kas

    keluar, kas masuk dan neraca saldo.

    Skenario Utama

    Aktor Admin

    Kondisi Awal Aktor memasuki halaman login kemudian membuka

    halaman admin

    Aksi Aktor Reaksi Sistem

    1. Aktor memilih data karyawan

    Sistem akan menampilkan halaman data karyawan

    2. Aktor memilih data piutang

    Sistem akan menampilkan halaman data piutang

    3. Aktor memilih data sumber

    utang

    Sistem akan menampilkan halaman data sumber utang

    4. Aktor memilih data utang

    Sistem akan menampilkan halaman informasi data utang

    5. Aktor memilih data pekerjaan

    Sistem akan menampilkan halaman data pekerjaan

    6. Aktor memilih data pekerjaan

    proyek

    Sistem akan menampilkan halaman data pekerjaan proyek

    7. Aktor memilih data pengeluaran

    proyek

    Sistem akan menampilkan halaman data pengeluaran

    proyek

    8. Aktor memilih data rekapitulasi

    proyek tahunan

    Sistem akan menampilkan halaman data rekapitulasi

    pekerjaan proyek tahunan

    9. Aktor memilih jurnal

    Sistem akan menampilkan halaman jurnal

    10.Aktor memilih

    akun

    Sistem akan menampilkan halaman akun

    11.Aktor memilih

    buku besar

    Sistem akan menampilkan halaman buku besar

    12.Aktor memilih

    kas keluar

    Sistem akan menampilkan halaman kas keluar

    13.Aktor memilih

    kas masuk

    Sistem akan menampilkan halaman kas masuk

  • 23

    14.Aktor memilih

    neraca saldo

    Sistem akan menampilkan halaman neraca saldo

    Kondisi Akhir Jika perintah sesuai maka sistem akan menampilkan yang

    di inginkan oleh pengguna

    Tabel III.2

    Deskripsi Use Case Diagram Halaman Direktur

    Use Case Narative Halaman Direktur

    Tujuan Direktur dapat melihat data yang ada di dalam sistem

    halaman direktur

    Deskripsi Sistem ini memungkinkan direktur untuk masuk ke dalam

    halaman direktur yang di dalamnya ada data pekerjaan, data

    pekerjaan proyek, data pengeluaran proyek dan jurnal

    Skenario Utama

    Aktor Direktur

    Kondisi Awal Aktor membuka aplikasi halaman direktur

    Aksi Aktor Reaksi Sistem

    1. Aktor memilih data pekerjaan

    Sistem ini akan menampilkan halaman data pekerjaan

    2. Aktor memilih data pekerjaan

    proyek

    Sistem ini akan menampilkan halaman data pekerjaan proyek

    3. Aktor memillih data

    pengeluaran

    proyek

    Sistem ini akan menampilkan halaman data pengeluaran

    proyek

    4. Aktor memilih jurnal

    Sistem ini akan menampilkan halaman jurnal

    Kondisi Akhir Jika perintah sesuai maka sistem akan menampilkan yang di

    inginkan oleh pengguna

    Tabel III.3

    Deskripsi Use Case Diagram Halaman Komisaris

    Use Case Narative Halaman Komisaris

    Tujuan Komisaris dapat melihat data yang ada di dalam sistem

    halaman komisaris

    Deskripsi Sistem ini memungkinkan komisaris untuk masuk ke dalam

    halaman komisaris yang di dalamnya ada data pekerjaan,

    rekapitulasi proyek tahunan dan jurnal

  • 23

    Skenario Utama

    Aktor Komisaris

    Kondisi Awal Aktor membuka aplikasi halaman login kemudian masuk

    halaman komisaris

    Aksi Aktor Reaksi Sistem

    1. Aktor memilih data

    rekapitulasi

    proyek

    tahunan

    Sistem akan menampilkan halaman data rekapitulasi

    pekerjaan proyek tahunan

    2. Aktor memilih jurnal

    Sistem akan menampilkan halaman jurnal

    Kondisi Akhir Jika perintah sesuai maka sistem akan menampilkan yang di

    inginkan oleh pengguna

    Tabel III.4

    Deskripsi Use Case Diagram Halaman Kabag Umum

    Use Case Narative Halaman Kabag Umum

    Tujuan Kabag umum dapat melihat data yang ada di dalam sistem

    halaman kabag umum

    Deskripsi Sistem ini memungkinkan kabag umum untuk masuk ke

    dalam halaman kabag umum yang di dalamnya ada jurnal

    Skenario Utama

    Aktor Kabag umum

    Kondisi Awal Aktor membuka aplikasi halaman login kemudia masuk

    halaman kabag umum

    Aksi Aktor Reaksi Sistem

    1. Aktor memilih jurnal

    Sistem akan menampilkan halaman jurnal

    Kondisi Akhir Jika perintah sesuai maka sistem akan menampilkan yang di

    inginkan oleh pengguna

    Tabel III.5

    Deskripsi Use Case Diagram Halaman Kabag Teknis

    Use Case Narative Halaman Kabag Teknis

    Tujuan Kabag teknis dapat melihat data yang ada di dalam sistem

    halaman kabag teknis

    Deskripsi Sistem ini memungkinkan kabag teknis untuk masuk ke

    dalam halaman kabag teknis yang di dalamnya ada data

  • 23

    pekerjaan, data pekerjaan proyek, data pengeluaran proyek

    dan data rekapitulasi proyek

    Skenario Utama

    Aktor Kabag teknis

    Kondisi Awal Aktor membuka aplikasi halaman login kemudian masuk

    halaman kabag teknis

    Aksi Aktor Reaksi Sistem

    1. Aktor memilih data

    pekerjaan

    Sistem akan menampilkan halaman data pekerjaan

    2. Aktor memilih data

    pekerjaan

    proyek

    Sistem akan menampilkan halaman data pekerjaan proyek

    3. Aktor memilih data

    pengeluaran

    proyek

    Sistem akan menampilkan halaman data pengeluaran

    pekerjaan proyek

    4. Aktor memilih data

    rekapitulasi

    proyek

    tahunan

    Sistem akan menampilkan halaman data rekapitulasi proyek

    tahunan

    5. Aktor memilih data

    jurnal

    Sistem akan menampilkan halaman data jurnal

    Kondisi Akhir Jika perintah sesuai maka sistem akan menampilkan yang di

    inginkan oleh pengguna

  • 23

    3.3.3 Activity Diagram

    1. Activity Diagram Halaman Admin

    Pada Gambar III.8 berikut ini merupakan activity diagram halaman admin

    pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.8. Activity Diagram Halaman Admin pada PT. Rakha Rekananta

    Pontianak

  • 23

    2. Activity Diagram Halaman Direktur

    Pada Gambar III.9 berikut ini merupakan activity diagram halaman direktur

    pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.9. Activity Diagram Halaman Direktur pada PT. Rakha

    Rekananta Pontianak

  • 23

    3. Activity Diagram Halaman Komisaris

    Pada Gambar III.10 berikut ini merupakan activity diagram halaman

    komisaris pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.10. Activity Diagram Halaman Komisaris pada PT. Rakha

    Rekananta Pontianak

  • 23

    4. Activity Diagram Halaman Kabag Umum

    Pada Gambar III.11 berikut ini merupakan activity diagram halaman kabag

    umum pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.11. Activity Diagram Halaman Kabag Umum pada PT. Rakha

    Rekananta Pontianak

  • 23

    5. Activity Diagram Halaman Kabag Teknis

    Pada Gambar III.12 berikut ini merupakan activity diagram halaman kabag

    teknis pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.12. Activity Diagram Halaman Kabag Teknis pada PT. Rakha

    Rekananta Pontianak

  • 23

    6. Activity Diagram Halaman Data Karyawan

    Pada Gambar III.13 berikut ini merupakan activity diagram halaman data

    karyawan pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.13. Activity Diagram Halaman Data Karyawan pada PT. Rakha

    Rekananta Pontianak

  • 23

    7. Activity Diagram Halaman Data Piutang

    Pada Gambar III.14 berikut ini merupakan activity diagram halaman data

    piutang pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.14. Activity Diagram Halaman Data Piutang pada PT. Rakha

    Rekananta Pontianak

  • 23

    8. Activity Diagram Halaman Data Sumber Utang

    Pada Gambar III.15 berikut ini merupakan activity diagram halaman data

    sumber utang pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.15. Activity Diagram Halaman Data Sumber Utang pada PT.

    Rakha Rekananta Pontianak

  • 23

    9. Activity Diagram Halaman Data Utang

    Pada Gambar III.16 berikut ini merupakan activity diagram halaman data

    utang pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.16. Activity Diagram Halaman Data Utang pada PT. Rakha

    Rekananta Pontianak

  • 23

    10. Activity Diagram Halaman Data Pekerjaan

    Pada Gambar III.17 berikut ini merupakan activity diagram halaman data

    pekerjaan pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.17. Activity Diagram Halaman Data Pekerjaan pada PT. Rakha

    Rekananta Pontianak

  • 23

    11. Activity Diagram Halaman Data Pekerjaan Proyek

    Pada Gambar III.18 berikut ini merupakan activity diagram halaman data

    pekerjaan proyek pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.18. Activity Diagram Halaman Data Pekerjaan Proyek pada PT.

    Rakha Rekananta Pontianak

  • 23

    12. Activity Diagram Halaman Data Pengeluaran Proyek

    Pada Gambar III.19 berikut ini merupakan activity diagram halaman data

    pengeluaran proyek pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.19. Activity Diagram Halaman Data Pengeluaran Proyek pada

    PT. Rakha Rekananta Pontianak

  • 23

    13. Activity Diagram Halaman Data Rekapitulasi Proyek Tahunan

    Pada Gambar III.20 berikut ini merupakan activity diagram halaman data

    rekapitulasi proyek tahunan pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.20. Activity Diagram Halaman Data Rekapitulasi Proyek

    Tahunan pada PT. Rakha Rekananta Pontianak

  • 23

    14. Activity Diagram Halaman Data Jurnal

    Pada Gambar III.21 berikut ini merupakan activity diagram halaman data

    jurnal pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.21. Activity Diagram Halaman Data Jurnal pada PT. Rakha

    Rekananta Pontianak

  • 23

    3.4. Desain

    Desain menjelaskan proses atau prosedur dalam perancangan yang

    berguna sebagai penduan untuk menghasilkan model atau desain.

    3.4.1 Entity Relationship Diagram (ERD)

    Pada Gambar III.22 berikut ini merupakan Entity Relationship Diagram

    (ERD) pada PT. Rakha Rekananta Pontianak.

    Sumber : Hasil Perancangan (2018)

    Gambar III.22. Entity Relationship Diagram (ERD) pada PT. Rakha

    Rekananta Pontianak

  • 23

    3.4.2 Logical Record Structure (LRS)

    Pada Gambar III.23 berikut ini merupakan logical record structure (LRS)

    pada PT. Rakha Rekananta Pontianak.

    Sumber : Hasil Perancangan (2018)

    Gambar III.23. Logical Record Structure (LRS) pada PT. Rakha Rekananta

    Pontianak

  • 23

    3.4.3 Spesifikasi File

    1. Spesifikasi File Data Karyawan

    Nama Database : master_data

    Nama File : Karyawan

    Tipe File : Data

    Akses File : Random

    Panjang Record : 136 Karakter

    Field Key : nip

    Tabel III.6

    Spesifikasi File Data Karyawan

    No Elemen Data Akronim Tipe Panjang Ket

    1 Nip nip Char 10 Primary

    Key

    2 Nama Karyawan nama_karyawan Varchar 30

    3 Alamat alamat Varchar 50

    4 Telp telp Varchar 15

    5 Jenis Kelamin jenis_kelamin Char 1

    6 Tempat Lahir tempat_lahir Varchar 15

    7 Tanggal Lahir tgl_lahir Date

    8 Username username Varchar 10

    9 Password password Varchar 10

    10 Hak_akses hak_akses Varchar 15

    2. Spesifikasi File Data Pekerjaan

    Nama Database : master_data

    Nama File : pekerjaan

    Tipe File : Data

    Akses File : Random

    Panjang Record : 40 Karakter

    Field Key : kode_pekerjaan

  • 23

    Tabel III.7

    Spesifikasi File Data Pekerjaan

    No Elemen Data Akronim Tipe Panjang Ket

    1 Kode Pekerjaan kode_pekerjaan char 10 Primary

    Key

    2 Nama Pekerjaan nama_pekerjaan varchar 30

    3. Spesifikasi File Data Pekerjaan Proyek

    Nama Database : master_data

    Nama File : pekerjaan_proyek

    Tipe File : Data

    Akses File : Random

    Panjang Record : 90 Karakter

    Field Key : id_proyek

    Tabel III.8

    Spesifikasi File Data Pekerjaan Proyek

    No Elemen Data Akronim Tipe Panjang Ket

    1 Id Proyek id_proyek char 10 Primary

    Key

    2 Kode Pekerjaan kode_pekerjaan char 10 FK

    3 Deskripsi

    Proyek

    deskripsi_proyek varchar 50

    4 Nilai Kontrak nilai_kontrak double

    5 Pemasukan Pemasukan double

    6 Pengeluaran Pengeluaran double

    7 Laba Kotor laba_kotor double

    8 Bobot Bobot double

    9 Biaya Kantor biaya_kantor double

    10 Laba Bersih laba_bersih double

    11 Nip Nip char 10 FK

    12 Id Rekapitulasi id_rekapitulasi char 10 FK

    4. Spesifikasi File Data Jurnal

    Nama Database : master_data

    Nama File : jurnal

    Tipe File : Data

  • 23

    Akses File : Random

    Panjang Record : 140 Karakter

    Field Key : kode_jurnal

    Tabel III.9

    Spesifikasi File Data Jurnal

    No Elemen Data Akronim Tipe Panjang Ket

    1 Kode Akun kode_akun char 10 Primary

    Key

    2 Tanggal

    Transaksi

    tgl_transaksi date

    3 Jenis

    Transaksi

    jenis_transaksi varchar 40

    4 Uraian Uraian varchar 50

    5 Kode

    Pekerjaan

    kode_pekerjaan char 10 FK

    6 Pemasukan Pemasukan double

    7 Pengeluaran Pengeluaran double

    8 Saldo Saldo double

    9 No Referensi no_referensi varchar 10

    10 Nip Nip char 10 FK

    5. Spesifikasi File Data Piutang

    Nama Database : master_data

    Nama File : piutang

    Tipe File : Data

    Akses File : Random

    Panjang Record : 40 Karakter

    Field Key : kode_piutang

    Tabel III.10

    Spesifikasi File Data Piutang

    No Elemen Data Akronim Tipe Panjang Keterangan

    1 Kode_piutang kode_piutang char 10 Primary

    Key

    2 Tanggal

    Piutang

    tgl_piutang date

    3 Nip Nip char 10 FK

    4 Nominal nominal_piutang double

  • 23

    Piutang

    5 Masa

    Tenggang

    masa_tenggang date

    6 Nominal

    Angsuran

    nominal_angsuran double

    7 Status Status varchar 10

    8 Kode Akun kode_akun char 10 FK

    6. Spesifikasi File Data Utang

    Nama Database : master_data

    Nama File : utang

    Tipe File : Data

    Akses File : Random

    Panjang Record : 50 Karakter

    Field Key : kode_utang

    Tabel III.11

    Spesifikasi File Data Utang

    No Elemen Data Akronim Tipe Panjang Keterangan

    1 Kode Utang kode_utang char 10 Primary

    Key

    2 Tanggal

    Utang

    tgl_utang date

    3 Kode

    Sumber

    kode_sumber char 10 FK

    4 Nominal

    Utang

    nominal_utang double

    5 Masa

    Tenggang

    masa_tenggang date

    6 Bunga Bunga double

    7 Cicilan Cicilan double

    8 Status Status varchar 10

    9 Kode Akun kode_akun char 10 FK

    10 Nip Nip varchar 10 FK

    7. Spesifikasi File Data Sumber Utang

    Nama Database : master_data

    Nama File : sumber_utang

  • 23

    Tipe File : Data

    Akses File : Random

    Panjang Record : 170 Karakter

    Field Key : kode_sumber

    Tabel III.12

    Spesifikasi File Data Sumber Utang

    No Elemen Data Akronim Tipe Panjang Keterangan

    1 Kode Sumber kode_sumber char 10 Primary

    Key

    2 Nama Sumber nama_sumber varchar 30

    3 Alamat Alamat varchar 50

    4 Telp Telp varchar 15

    5 Email Email varchar 30

    6 Fax Fax varchar 15

    7 Web Web varchar 20

    8. Spesifikasi File Data Pengeluaran Proyek

    Nama Database : master_data

    Nama File : pengeluaran_proyek

    Tipe File : Data

    Akses File : Random

    Panjang Record : 60 Karakter

    Field Key : id_proyek

    Tabel III.13

    Spesifikasi File Data Pengeluaran Proyek

    No Elemen

    Data

    Akronim Tipe Panjang Keterang

    an

    1 Id Proyek id_proyek char 10 Primary

    Key

    2 Kode Akun kode_akun char 10 FK

    3 Jenis

    Pengeluaran

    jenis_pengeluaran varchar 40

    4 Nominal

    Pengeluaran

    nominal_pengeluar

    an

    double

  • 23

    9. Spesifikasi File Data Rekapitulasi Proyek Tahunan

    Nama Database : master_data

    Nama File : rekapitulasi_proyek_tahunan

    Tipe File : Data

    Akses File : Random

    Panjang Record : 15 Karakter

    Field Key : id_rekapitulasi

    Tabel III.14

    Spesifikasi File Data Rekapitulasi Proyek Tahunan

    No Elemen

    Data

    Akronim Tipe Panjang Ket

    1 Id

    Rekapitulasi

    id_rekapitulasi char 10 Primary

    Key

    2 Tahun Tahun int 5

    3 Grand Total

    Pemasukan

    grandtotal_pemasukan double

    4 Grand Total

    Pengeluaran

    grandtotal_pengeluaran Double

    5 Grand Total

    Laba Kotor

    grandtotal_labakotor Double

    10. Spesifikasi File Data Akun

    Nama Database : master_data

    Nama File : akun

    Tipe File : Data

    Akses File : Random

    Panjang Record : 20 Karakter

    Field Key : kode_akun

    Tabel III.15

    Spesifikasi File Data Akun

    No Elemen Data Akronim Tipe Panjang Keterangan

    1 Kode Akun kode_akun char 5 Primary

  • 23

    Key

    2 Nama Akun Nama_akun varchar 15

    11. Spesifikasi File Data Buku Besar

    Nama Database : master_data

    Nama File : buku_besar

    Tipe File : Data

    Akses File : Random

    Panjang Record : 50 Karakter

    Field Key : kode_akun

    Tabel III.16

    Spesifikasi File Data Buku Besar

    No Elemen Data Akronim Tipe Panjang Keterangan

    1 Kode Akun kode_akun char 10 Primary

    Key

    2 Tanggal Tgl date

    3 Ket Ket varchar 40

    4 Debet Debet double

    5 Kredit Kredit date

    6 Saldo Saldo double

    12. Spesifikasi File Data Kas Keluar

    Nama Database : master_data

    Nama File : kas_keluar

    Tipe File : Data

    Akses File : Random

    Panjang Record : 30 Karakter

    Field Key : no_kk

    Tabel III.17

    Spesifikasi File Data Kas Keluar

    No Elemen Data Akronim Tipe Panjang Keterangan

    1 No Kas No_kk Char 5 Primary

    Key

  • 23

    2 Kode Akun Kode_akun Char 5

    3 Tgl Tgl Date

    4 Ket Ket Varchar 20

    5 Saldo Saldo Double

    13. Spesifikasi File Data Kas Masuk

    Nama Database : master_data

    Nama File : kas_masuk

    Tipe File : Data

    Akses File : Random

    Panjang Record : 30 Karakter

    Field Key : no_km

    Tabel III.18

    Spesifikasi File Data Kas Masuk

    No Elemen

    Data

    Akronim Tipe Panjang Keterang

    an

    1 No Kas No_km Char 5 Primary

    Key

    2 Kode Akun kode_akun Char 5 FK

    3 Tanggal Tgl Date

    4 ket Ket Varchar 20

    5 saldo Saldo Double

    14. Spesifikasi File Data Neraca Saldo

    Nama Database : master_data

    Nama File : neraca_saldo

    Tipe File : Data

    Akses File : Random

    Panjang Record : 25 Karakter

    Field Key : kode_akun

  • 23

    Tabel III.19

    Spesifikasi File Data Neraca Saldo

    No Elemen

    Data

    Akronim Tipe Panjang Ket

    1 Kode Akun Kode_akun Char 5 Primary

    Key

    2 Nama

    Proyek

    Nama_proyek varchar 20

    3 Debet Debet double

    4 Kredit Kredit double

    3.4.4 Sequence Diagram

    1. Sequence Diagram Halaman Admin

    Pada Gambar III.24 berikut ini merupakan sequence diagram halaman

    admin pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.24. Sequence Diagram Halaman Admin pada PT. Rakha

    Rekananta Pontianak

    2. Sequence Diagram Halaman Direktur

    Pada Gambar III.25 berikut ini merupakan sequence diagram halaman

    direktur pada PT. Rakha Rekananta.

  • 23

    Sumber : Hasil Perancangan (2018)

    Gambar III.25. Sequence Diagram Halaman Direktur pada PT. Rakha

    Rekananta Pontianak

    3. Sequence Diagram Halaman Komisaris

    Pada Gambar III.26 berikut ini merupakan sequence diagram halaman

    komisaris pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.26. Sequence Diagram Halaman Komisaris pada PT. Rakha

    Rekananta Pontianak

  • 23

    4. Sequence Diagram Halaman Kabag Umum

    Pada Gambar III.27 berikut ini merupakan sequence diagram halaman

    kabag umum pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.27. Sequence Diagram Halaman Kabag Umum pada PT. Rakha

    Rekananta Pontianak

    5. Sequence Diagram Halaman Kabag Teknis

    Pada Gambar III.28 berikut ini merupakan sequence diagram halaman

    kabag teknis pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.28. Sequence Diagram Halaman Kabag Teknis pada PT. Rakha

    Rekananta Pontianak

  • 23

    6. Sequence Diagram Halaman Data Karyawan

    Pada Gambar III.29 berikut ini merupakan sequence diagram halaman data

    karyawan pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.29. Sequence Diagram Halaman Data Karyawan pada PT.

    Rakha Rekananta Pontianak

    7. Sequence Diagram Halaman Data Piutang

    Pada Gambar III.30 berikut ini merupakan sequence diagram halaman data

    piutang pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.30. Sequence Diagram Halaman Data Piutang pada PT. Rakha

    Rekananta Pontianak

  • 23

    8. Sequence Diagram Halaman Data Sumber Utang

    Pada Gambar III.31 berikut ini merupakan sequence diagram halaman data

    sumber utang pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.31. Sequence Diagram Halaman Data Sumber Utang pada PT.

    Rakha Rekananta Pontianak

    9. Sequence Diagram Halaman Data Utang

    Pada Gambar III.32 berikut ini merupakan sequence diagram halaman data

    utang pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.32. Sequence Diagram Halaman Data Utang pada PT. Rakha

    Rekananta Pontianak

  • 23

    10. Sequence Diagram Halaman Data Pekerjaan

    Pada Gambar III.33 berikut ini merupakan sequence diagram halaman data

    pekerjaan pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.33. Sequence Diagram Halaman Data Pekerjaan pada PT. Rakha

    Rekananta Pontianak

    11. Sequence Diagram Halaman Data Pekerjaan Proyek

    Pada Gambar III.34 berikut ini merupakan sequence diagram halaman data

    pekerjaan proyek pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.34. Sequence Diagram Halaman Data Pekerjaan Proyek pada

    PT. Rakha Rekananta Pontianak

  • 23

    12. Sequence Diagram Halaman Data Pengeluaran Proyek

    Pada Gambar III.35 berikut ini merupakan sequence diagram halaman data

    pengeluaran proyek pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.35. Sequence Diagram Halaman Data Pengeluaran Proyek pada

    PT. Rakha Rekananta Pontianak

    13. Sequence Diagram Halaman Data Rekapitulasi Proyek Tahunan

    Pada Gambar III.36 berikut ini merupakan sequence diagram halaman data

    rekapitulasi proyek tahunan pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.36. Sequence Diagram Halaman Data Rekapitulasi Proyek

    Tahunan pada PT. Rakha Rekananta Pontianak

  • 23

    14. Sequence Diagram Halaman Data Jurnal

    Pada Gambar III.37 berikut ini merupakan sequence diagram halaman data

    jurnal tahunan pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.37. Sequence Diagram Halaman Jurnal pada PT. Rakha

    Rekananta Pontianak

    3.4.5 Deployment Diagram

    Pada Gambar III.38 berikut ini merupakan deployment diagram halaman

    data jurnal tahunan pada PT. Rakha Rekananta.

    Sumber : Hasil Perancangan (2018)

    Gambar III.38. Deployment Diagram pada PT. Rakha Rekananta Pontianak

  • 23

    3.4.6 User Interface

    User interface menjelaskan antara pengguna dengan sistem operasi

    sehingga komputer dapat dioperasikan. Berikut ini merupakan user interface dari

    rancang bangun pengolahan data keuangan pada PT. Rakha Rekananta.

    1. User Interface Form Login

    Sumber : Hasil Perancangan (2018)

    Gambar III.39. User Interface Form Login

    2. User Interface Form Menu Utama Admin

    Sumber : Hasil Perancangan (2018)

    Gambar III.40. User Interface Form Menu Utama Admin

  • 23

    3. User Interface Form Sumber Utang

    Sumber : Hasil Perancangan (2018)

    Gambar III.41. User Interface Form Sumber Utang

    4. User Interface Form Piutang

    Sumber : Hasil Perancangan (2018)

    Gambar III.42. User Interface Form Piutang

  • 23

    5. User Interface Form Utang

    Sumber : Hasil Perancangan (2018)

    Gambar III.43. User Interface Form Utang

    6. User Interface Form Data Karyawan

    Sumber : Hasil Perancangan (2018)

    Gambar III.44. User Interface Form Data Karyawan

  • 23

    7. User Interface Form Data Pekerjaan

    Sumber : Hasil Perancangan (2018)

    Gambar III.45. User Interface Form Data Pekerjaan

    8. User Interface Form Data Pekerjaan Proyek

    Sumber : Hasil Perancangan (2018)

    Gambar III.46. User Interface Form Data Pekerjaan Proyek

  • 23

    9. User Interface Form Data Pengeluaran Proyek

    Sumber : Hasil Perancangan (2018)

    Gambar III.47. User Interface Form Data Pengeluaran Proyek

    10. User Interface Form Data Rekapitulasi Proyek Tahunan

    Sumber : Hasil Perancangan (2018)

    Gambar III.48. User Interface Form Data Rekapitulasi Proyek Tahunan

  • 23

    11. User Interface Form Data Jurnal

    Sumber : Hasil Perancangan (2018)

    Gambar III.49. User Interface Form Data Jurnal

    12. User Interface Form Akun

    Sumber : Hasil Perancangan (2018)

    Gambar III.50. User Interface Form Data Akun

  • 23

    13. User Interface Form Buku Besar

    Sumber : Hasil Perancangan (2018)

    Gambar III.51. User Interface Form Data Buku Besar

    14. User Interface Form Kas Keluar

    Sumber : Hasil Perancangan (2018)

    Gambar III.52. User Interface Form Data Kas Keluar

  • 23

    15. User Interface Form Kas Masuk

    Sumber : Hasil Perancangan (2018)

    Gambar III.53. User Interface Form Data Kas Masuk

    16. User Interface Form Neraca Saldo

    Sumber : Hasil Perancangan (2018)

    Gambar III.54. User Interface Form Data Neraca Saldo

  • 23

    17. User Interface Laporan Laba Rugi

    Sumber : Hasil Perancangan (2018)

    Gambar III.55. User Interface Laporan Laba Rugi

    18. User Interface Laporan Perubahan Modal

    Sumber : Hasil Perancangan (2018)

    Gambar III.56. User Interface Laporan Perubahan Modal

  • 23

    19. User Interface Laporan Neraca

    Sumber : Hasil Perancangan (2018)

    Gambar III.57. User Interface Laporan Neraca

    20. User Interface Laporan Arus Kas

    Sumber : Hasil Perancangan (2018)

    Gambar III.58. User Interface Laporan Arus Kas

  • 23

    21. User Interface Form Menu Utama Direktur

    Sumber : Hasil Perancangan (2018)

    Gambar III.59. User Interface Form Menu Utama Direktur

    22. User Interface Form Data Pekerjaan

    Sumber : Hasil Perancangan (2018)

    Gambar III.60. User Interface Form Data Pekerjaan

    23. User Interface Form Data Pekerjaan Proyek

    Sumber : Hasil Perancangan (2018)

    Gambar III.61. User Interface Form Data Pekerjaan Proyek

  • 23

    24. User Interface Form Data Pengeluaran Proyek

    Sumber : Hasil Perancangan (2018)

    Gambar III.62. User Interface Form Data Pengeluaran Proyek

    25. User Interface Form Data Jurnal

    Sumber : Hasil Perancangan (2018)

    Gambar III.63. User Interface Form Data Jurnal

    26. User Interface Form Menu Utama Komisaris

    Sumber : Hasil Perancangan (2018)

    Gambar III.64. User Interface Form Menu Utama Komisaris

  • 23

    27. User Interface Form Data Rekapitulasi Proyek Tahunan

    Sumber : Hasil Perancangan (2018)

    Gambar III.65. User Interface Form Data Rekapitulasi Proyek Tahunan

    28. User Interface Form Data Jurnal

    Sumber : Hasil Perancangan (2018)

    Gambar III.66. User Interface Form Data Jurnal

    29. User Interface Form Menu Halaman Kabag Umum

    Sumber : Hasil Perancangan (2018)

    Gambar III.67. User Interface Form Menu Halaman Kabag Umum

  • 23

    30. User Interface Form Data Jurnal

    Sumber : Hasil Perancangan (2018)

    Gambar III.68. User Interface Form Data Jurnal

    31. User Interface Form Menu Halaman Kabag Teknis

    Sumber : Hasil Perancangan (2018)

    Gambar III.69. User Interface Form Menu Halaman Kabag Teknis

  • 23

    32. User Interface Form Data Pekerjaan Proyek

    Sumber : Hasil Perancangan (2018)

    Gambar III.70. User Interface Form Data Pekerjaan Proyek

    33. User Interface Form Data Pengeluaran Proyek

    Sumber : Hasil Perancangan (2018)

    Gambar III.71. User Interface Form Data Pengeluaran Proyek

  • 23

    34. User Interface Form Data Rekapitulasi Proyek Tahunan

    Sumber : Hasil Perancangan (2018)

    Gambar III.72. User Interface Form Data Rekapitulasi Proyek Tahunan

    35. User Interface Form Data Jurnal

    Sumber : Hasil Perancangan (2018)

    Gambar III.73. User Interface Form Data Jurnal

    3.5 Implementasi

    Proses implementasi yang harus dilakukan untuk menyelesaikan suatu

    tujuan yang telah ditetapkan sebelumnya.

  • 23

    3.5.1. Code Generation

    Code Generation menjelaskan sebuah program yang dibuat agar

    menghasilkan instruksi atau kode program sesuai dengan kebutuhan pengguna.

    Berikut code generation yang ada di program aplikasi sistem informasi akuntansi.

    1. Form Data Karyawan

    /*

    * To change this license header, choose License Headers in Project Properties.

    * To change this template file, choose Tools | Templates

    * and open the template in the editor.

    */

    package aksi;

    import java.io.IOException;

    import java.io.PrintWriter;

    import java.sql.Connection;

    import java.sql.DriverManager;

    import javax.servlet.ServletException;

    import javax.servlet.annotation.WebServlet;

    import javax.servlet.http.HttpServlet;

    import javax.servlet.http.HttpServletRequest;

    import javax.servlet.http.HttpServletResponse;

    /**

    *

    * @author acer

    */

    @WebServlet(name = "aksi_karyawan", urlPatterns = {"/aksi_karyawan"})

    public class aksi_karyawan extends HttpServlet {

    /**

    * Processes requests for both HTTP GET and

    POST

    * methods.

    *

    * @param request servlet request

    * @param response servlet response

    * @throws ServletException if a servlet-specific error occurs

    * @throws IOException if an I/O error occurs

    */

    protected void processRequest(HttpServletRequest request, HttpServletResponse

    response)

    throws ServletException, IOException {

    response.setContentType("text/html;charset=UTF-8");

    PrintWriter out = response.getWriter();

    try {

    /* TODO output your page here. You may use following sample code. */

    String aksi = request.getParameter("aksi");

  • 23

    String nip = request.getParameter("nip");

    String nama_karyawan = request.getParameter("nama_karyawan");

    String alamat = request.getParameter("alamat");

    String telp = request.getParameter("telp");

    String jenis_kelamin = request.getParameter("jenis_kelamin");

    String tempat_lahir = request.getParameter("tempat_lahir");

    String tgl_lahir = request.getParameter("tgl_lahir");

    String username = request.getParameter("username");

    String password = request.getParameter("password");

    String hak_akses = request.getParameter("hak_akses");

    String cari = request.getParameter("cari");

    Class.forName("com.mysql.jdbc.Driver");

    Connection koneksi=DriverManager.getConnection

    ("jdbc:mysql://localhost:3306/master_data","root","");

    switch (aksi){

    case "SIMPAN":

    if(nip.equals("")||nama_karyawan.equals("")||alamat.equals("")||telp.equals("")||ala

    mat.equals("")||telp.equals("")||jenis_kelamin.equals("")||tempat_lahir.equals("")||us

    ername.equals("")||password.equals("")||hak_akses.equals("")) {

    out.println("alert('masih ada data yang belum terisi')" +

    "");

    } else {

    koneksi.createStatement().execute("insert into karyawan "

    +

    "values('"+nip+"','"+nama_karyawan+"','"+alamat+"','"+telp+"','"+jenis_kelamin+"'

    ,'"+tempat_lahir+"','"+tgl_lahir+"','"+username+"','"+password+"','"+hak_akses+"')

    ");

    out.println("alert('Data Karyawan berhasil

    Disimpan...!!!')"

    + "");

    }

    break;

    case "HAPUS":

    koneksi.createStatement().execute("delete from karyawan where

    nip='"+nip+"'");

    out.println("alert('Data Karyawan berhasil

    Dihapus...!!!')"

    + "");

    break;

    case "GANTI":

    koneksi.createStatement().execute("update karyawan set

    nama_lengkap='"+nama_karyawan+"', "

    +

    "alamat='"+alamat+"',telp='"+telp+"',jenis_kelamin='"+jenis_kelamin+"'

    ,tempat_lahir='"+tempat_lahir+"',tgl_lahir='"+tgl_lahir+"',username='"+username+

    "',password='"+password+"',hak_akses='"+hak_akses+"' "

    + "where username='"+username+"'");

    out.println("alert('Data Karyawan berhasil

    Diubah...!!!')"

  • 23

    + "");

    break;

    default:

    break;

    }

    } catch (Exception e) {

    out.println("alert('Gagal... Kemungkinan Nip sudah ada, Silahkan

    Ulangi!!!')"

    + "");

    }

    }

    //

    /**

    * Handles the HTTP GET method.

    *

    * @param request servlet request

    * @param response servlet response

    * @throws ServletException if a servlet-specific error occurs

    * @throws IOException if an I/O error occurs

    */

    @Override

    protected void doGet(HttpServletRequest request, HttpServletResponse

    response)

    throws ServletException, IOException {

    processRequest(request, response);

    }

    /**

    * Handles the HTTP POST method.

    *

    * @param request servlet request

    * @param response servlet response

    * @throws ServletException if a servlet-specific error occurs

    * @throws IOException if an I/O error occurs

    */

    @Override

    protected void doPost(HttpServletRequest request, HttpServletResponse

    response)

    throws ServletException, IOException {

    processRequest(request, response);

    }

    /**

    * Returns a short description of the servlet.

    *

    * @return a String containing servlet description

    */

    @Override

    public String getServletInfo() {

  • 23

    return "Short description";

    }//

    }

    2. Form Data Piutang

    /*

    * To change this license header, choose License Headers in Project Properties.

    * To change this template file, choose Tools | Templates

    * and open the template in the editor.

    */

    package aksi;

    import java.io.IOException;

    import java.io.PrintWriter;

    import java.sql.Connection;

    import java.sql.DriverManager;

    import javax.servlet.ServletException;

    import javax.servlet.annotation.WebServlet;

    import javax.servlet.http.HttpServlet;

    import javax.servlet.http.HttpServletRequest;

    import javax.servlet.http.HttpServletResponse;

    /**

    *

    * @author User

    */

    @WebServlet(name = "aksi_piutang", urlPatterns = {"/aksi_piutang"})

    public class aksi_piutang extends HttpServlet {

    /**

    * Processes requests for both HTTP GET and

    POST

    * methods.

    *

    * @param request servlet request

    * @param response servlet response

    * @throws ServletException if a servlet-specific error occurs

    * @throws IOException if an I/O error occurs

    */

    protected void processRequest(HttpServletRequest request, HttpServletResponse

    response)

    throws ServletException, IOException {

    response.setContentType("text/html;charset=UTF-8");

    PrintWriter out = response.getWriter();

    try {

    /* TODO output your page here. You may use following sample code. */

    String aksi = request.getParameter("aksi");

    String kode_piutang = request.getParameter("kode_piutang");

    String tgl_piutang = request.getParameter("tgl_piutang");

    String nip = request.getParameter("nip");

  • 23

    String nominal_piutang = request.getParameter("nominal_piutang");

    String masa_tenggang = request.getParameter("masa_tenggang");

    String nominal_angsuran = request.getParameter("nominal_angsuran");

    String status = request.getParameter("status");

    String kode_jurnal = request.getParameter("kode_jurnal");

    String cari = request.getParameter("cari");

    Class.forName("com.mysql.jdbc.Driver");

    Connection koneksi=DriverManager.getConnection

    ("jdbc:mysql://localhost:3306/master_data","root","");

    switch (aksi) {

    case "SIMPAN":

    if(tgl_piutang.equals("")) {

    out.println("alert('Gagal... masih ada data yang belum terisi,

    Silahkan Ulangi!!!')" +

    "");

    } else {

    koneksi.createStatement().execute("insert into piutang "

    +

    "values('"+kode_piutang+"','"+tgl_piutang+"','"+nip+"','"+nominal_piutang+"','"+m

    asa_tenggang+"','"+nominal_angsuran+"','"+status+"','"+kode_jurnal+"')");

    out.println("alert('Data Piutang berhasil

    Disimpan...!!!')"

    + "");

    }

    break;

    case "HAPUS":

    koneksi.createStatement().execute("delete from piutang where

    kode_piutang='" + kode_piutang + "'");

    out.println("alert('Data Piutang berhasil

    Dihapus...!!!')"

    + "");

    break;

    case "GANTI":

    koneksi.createStatement().execute("update piutang set tgl_piutang='"

    + tgl_piutang + "' "

    + "where kode_piutang='" + kode_piutang + "'");

    out.println("alert('Data Piutang berhasil

    Diubah...!!!')"

    + "");

    break;

    default:

    break;

    }

    } catch (Exception e) {

    out.println("alert('Gagal... Kemungkinan Data sudah ada, Silahkan

    Ulangi!!!')"

    + "");

    }

  • 23

    //

    /**

    * Handles the HTTP GET method.

    *

    * @param request servlet request

    * @param response servlet response

    * @throws ServletException if a servlet-specific error occurs

    * @throws IOException if an I/O error occurs

    */

    @Override

    protected void doGet(HttpServletRequest request, HttpServletResponse

    response)

    throws ServletException, IOException {

    processRequest(request, response);

    }

    /**

    * Handles the HTTP POST method.

    *

    * @param request servlet request

    * @param response servlet response

    * @throws ServletException if a servlet-specific error occurs

    * @throws IOException if an I/O error occurs

    */

    @Override

    protected void doPost(HttpServletRequest request, HttpServletResponse

    response)

    throws ServletException, IOException {

    processRequest(request, response);

    }

    /**

    * Returns a short description of the servlet.

    *

    * @return a String containing servlet description

    */

    @Override

    public String getServletInfo() {

    return "Short description";

    }//

    }

    3. Form Data Sumber Utang

    /*

    * To change this license header, choose License Headers in Project Properties.

    * To change this template file, choose Tools | Templates

    * and open the template in the editor.

    */

    package aksi;

  • 23

    import java.io.IOException;

    import java.io.PrintWriter;

    import java.sql.Connection;

    import java.sql.DriverManager;

    import javax.servlet.ServletException;

    import javax.servlet.annotation.WebServlet;

    import javax.servlet.http.HttpServlet;

    import javax.servlet.http.HttpServletRequest;

    import javax.servlet.http.HttpServletResponse;

    /**

    *

    * @author User

    */

    @WebServlet(name = "aksi_sumber_utang", urlPatterns =

    {"/aksi_sumber_utang"})

    public class aksi_sumber_utang extends HttpServlet {

    /**

    * Processes requests for both HTTP GET and

    POST

    * methods.

    *

    * @param request servlet request

    * @param response servlet response

    * @throws ServletException if a servlet-specific error occurs

    * @throws IOException if an I/O error occurs

    */

    protected void processRequest(HttpServletRequest request, HttpServletResponse

    response)

    throws ServletException, IOException {

    response.setContentType("text/html;charset=UTF-8");

    PrintWriter out = response.getWriter();

    try {

    /* TODO output your page here. You may use following sample code. */

    String aksi = request.getParameter("aksi");

    String kode_sumber = request.getParameter("kode_sumber");

    String nama_sumber = request.getParameter("nama_sumber");

    String alamat = request.getParameter("alamat");

    String telp = request.getParameter("telp");

    String email = request.getParameter("email");

    String fax = request.getParameter("fax");

    String web = request.getParameter("web");

    String cari = request.getParameter("cari");

    Class.forName("com.mysql.jdbc.Driver");

    Connection koneksi=DriverManager.getConnection

    ("jdbc:mysql://localhost:3306/master_data","root","");

    switch (aksi) {

    case "SIMPAN":

    if(nama_sumber.equals("")) {

    out.println("alert('Gagal... masih ada data yang belum terisi,

    Silahkan Ulangi!!!')" +

  • 23

    "");

    } else {

    koneksi.createStatement().execute("insert into sumber_utang "

    +

    "values('"+kode_sumber+"','"+nama_sumber+"','"+alamat+"','"+telp+"','"+email+"',

    '"+fax+"','"+web+"')");

    out.println("alert('Data Sumber Utang berhasil

    Disimpan...!!!')"

    + "");

    }

    break;

    case "HAPUS":

    koneksi.createStatement().execute("delete from sumber_utang where

    kode_sumber='" + kode_sumber + "'");

    out.println("alert('Data Sumber Utang berhasil

    Dihapus...!!!')"

    + "");

    break;

    case "GANTI":

    koneksi.createStatement().execute("update sumber_utang set

    nama_sumber='" + nama_sumber + "' "

    + "where kode_sumber='" + kode_sumber + "'");

    out.println("alert('Data Sumber Utang berhasil

    Diubah...!!!')"

    + "");

    break;

    default:

    break;

    }

    } catch (Exception e) {

    out.println("alert('Gagal... Kemungkinan Data sudah ada, Silahkan

    Ulangi!!!')"

    + "");

    }

    }

    //

    /**

    * Handles the HTTP GET method.

    *

    * @param request servlet request

    * @param response servlet response

    * @throws ServletException if a servlet-specific error occurs

    * @throws IOException if an I/O error occurs

    */

    @Override

  • 23

    protected void doGet(HttpServletRequest request, HttpServletResponse

    response)

    throws ServletException, IOException {

    processRequest(request, response);

    }

    /**

    * Handles the HTTP POST method.

    *

    * @param request servlet request

    * @param response servlet response

    * @throws ServletException if a servlet-specific error occurs

    * @throws IOException if an I/O error occurs

    */

    @Override

    protected void doPost(HttpServletRequest request, HttpServletResponse

    response)

    throws ServletException, IOException {

    processRequest(request, response);

    }

    /**

    * Returns a short description of the servlet.

    *

    * @return a String containing servlet description

    */

    @Override

    public String getServletInfo() {

    return "Short description";

    }//

    }

    4. Form Data Utang

    /*

    * To change this license header, choose License Headers in Project Properties.

    * To change this template file, choose Tools | Templates

    * and open the template in the editor.

    */

    package aksi;

    import java.io.IOException;

    import java.io.PrintWriter;

    import java.sql.Connection;

    import java.sql.DriverManager;

    import javax.servlet.ServletException;

    import javax.servlet.annotation.WebServlet;

    import javax.servlet.http.HttpServlet;

    import javax.servlet.http.HttpServletRequest;

    import javax.servlet.http.HttpServletResponse;

  • 23

    /**

    *

    * @author User

    */

    @WebServlet(name = "aksi_utang", urlPatterns = {"/aksi_utang"})

    public class aksi_utang extends HttpServlet {

    /**

    * Processes requests for both HTTP GET and

    POST

    * methods.

    *

    * @param request servlet request

    * @param response servlet response

    * @throws ServletException if a servlet-specific error occurs

    * @throws IOException if an I/O error occurs

    */

    protected void processRequest(HttpServletRequest request, HttpServletResponse

    response)

    throws ServletException, IOException {

    response.setContentType("text/html;charset=UTF-8");

    PrintWriter out = response.getWriter();

    try {

    /* TODO output your page here. You may use following sample code. */

    String aksi = request.getParameter("aksi");

    String kode_utang = request.getParameter("kode_utang");

    String tgl_utang = request.getParameter("tgl_utang");

    String kode_sumber = request.getParameter("kode_sumber");

    String nominal_utang = request.getParameter("nominal_utang");

    String masa_tenggang = request.getParameter("masa_tenggang");

    String bunga = request.getParameter("bunga");

    String cicilan = request.getParameter("cicilan");

    String status = request.getParameter("status");

    String kode_jurnal = request.getParameter("kode_jurnal");

    String nip = request.getParameter("nip");

    String cari = request.getParameter("cari");

    Class.forName("com.mysql.jdbc.Driver");

    Connection koneksi=DriverManager.getConnection

    ("jdbc:mysql://localhost:3306/master_data","root","");

    switch (aksi) {

    case "SIMPAN":

    if(tgl_utang.equals("")) {

    out.println("alert('Gagal... masih ada data yang belum

    terisi, Silahkan Ulangi!!!')" +

    "");

    } else {

    koneksi.createStatement().execute("insert into utang "

    +

    "values('"+kode_utang+"','"+tgl_utang+"','"+kode_sumber+"','"+nominal_utang+

    "','"+masa_tenggang+"','"+bunga+"','"+cicilan+"','"+status+"','"+kode_jurnal+"','"

    +nip+"')");

  • 23

    out.println("alert('Data Utang berhasil

    Disimpan...!!!')"

    + "");

    }

    break;

    case "HAPUS":

    koneksi.createStatement().execute("delete from utang where

    kode_utang='" + kode_utang + "'");

    out.println("alert('Data Utang berhasil Dihapus...!!!')"

    + "");

    break;

    case "GANTI":

    koneksi.createStatement().execute("update utang set tgl_utang='" +

    tgl_utang + "' "

    + "where kode_utang='" + kode_utang + "'");

    out.println("alert('Data Utang berhasil Diubah...!!!')"

    + "");

    break;

    default:

    break;

    }

    } catch (Exception e) {

    out.println("alert('Gagal... Kemungkinan Data sudah ada,

    Silahkan Ulangi!!!')"

    + "");

    }

    }

    //

    /**

    * Handles the HTTP GET method.

    *

    * @param request servlet request

    * @param response servlet response

    * @throws ServletException if a servlet-specific error occurs

    * @throws IOException if an I/O error occurs

    */

    @Override

    protected void doGet(HttpServletRequest request, HttpServletResponse

    response)

    throws ServletException, IOException {

    processRequest(request, response);

    }

    /**

    * Handles the HTTP POST method.

    *

    * @param request servlet request

    * @param response servlet response

  • 23

    * @throws ServletException if a servlet-specific error occurs

    * @throws IOException if an I/O error occurs

    */

    @Override

    protected void doPost(HttpServletRequest request, HttpServletResponse

    response)

    throws ServletException, IOException {

    processRequest(request, response);

    }

    /**

    * Returns a short description of the servlet.

    *

    * @return a String containing servlet description

    */

    @Override

    public String getServletInfo() {

    return "Short description";

    }//

    }

    5. Form Data Pekerjaan

    /*

    * To change this license header, choose License Headers in Project Properties.

    * To change this template file, choose Tools | Templates

    * and open the template in the editor.

    */

    package aksi;

    import java.io.IOException;

    import java.io.PrintWriter;

    import java.sql.Connection;

    import java.sql.DriverManager;

    import javax.servlet.ServletException;

    import javax.servlet.annotation.WebServlet;

    import javax.servlet.http.HttpServlet;

    import javax.servlet.http.HttpServletRequest;

    import javax.servlet.http.HttpServletResponse;

    /**

    *

    * @author User

    */

    @WebServlet(name = "aksi_pekerjaan", urlPatterns = {"/aksi_pekerjaan"})

    public class aksi_pekerjaan extends HttpServlet {

    /**

    * Processes requests for both HTTP GET and

    POST

    * methods.

  • 23

    *

    * @param request servlet request

    * @param response servlet response

    * @throws ServletException if a servlet-specific error occurs

    * @throws IOException if an I/O error occurs

    */

    protected void processRequest(HttpServletRequest request, HttpServletResponse

    response)

    throws ServletException, IOException {

    response.setContentType("text/html;charset=UTF-8");

    PrintWriter out = response.getWriter();

    try {

    /* TODO output your page here. You may use following sample code. */

    String aksi = request.getParameter("aksi");

    String kode_pekerjaan = request.getParameter("kode_pekerjaan");

    String nama_pekerjaan = request.getParameter("nama_pekerjaan");

    String cari = request.getParameter("cari");

    Class.forName("com.mysql.jdbc.Driver");

    Connection koneksi=DriverManager.getConnection

    ("jdbc:mysql://localhost:3306/master_data","root","");

    switch (aksi) {

    case "SIMPAN":

    if(nama_pekerjaan.equals("")) {

    out.println("alert('Gagal... masih ada data yang belum terisi,

    Silahkan Ulangi!!!')" +

    "");

    } else {

    koneksi.createStatement().execute("insert into pekerjaan "

    + "values('"+kode_pekerjaan+"','"+nama_pekerjaan+"')");

    out.println("alert('Data Pekerjaan berhasil

    Disimpan...!!!')"

    + "");

    }

    break;

    case "HAPUS":

    koneksi.createStatement().execute("delete from pekerjaan where

    kode_pekerjaan='" + kode_pekerjaan + "'");

    out.println("alert('Data Pekerjaan berhasil

    Dihapus...!!!')"

    + "");

    break;

    case "GANTI":

    koneksi.createStatement().execute("update pekerjaan set

    nama_pekerjaan='" + nama_pekerjaan + "' "

    + "where kode_pekerjaan='" + kode_pekerjaan + "'");

    out.println("alert('Data Pekerjaan berhasil

    Diubah...!!!')"

    + "");

    break;

  • 23

    default:

    break;

    }

    } catch (Exception e) {

    out.println("alert('Gagal... Kemungkinan Data sudah ada, Silahkan

    Ulangi!!!')"

    + "");

    }

    }

    //

    /**

    * Handles the HTTP GET method.

    *

    * @param request servlet request

    * @param response servlet response

    * @throws ServletException if a servlet-specific error occurs

    * @throws IOException if an I/O error occurs

    */

    @Override

    protected void doGet(HttpServletRequest request, HttpServletResponse

    response)

    throws ServletException, IOException {

    processRequest(request, response);

    }

    /**

    * Handles the HTTP POST method.

    *

    * @param request servlet request

    * @param response servlet response

    * @throws ServletException if a servlet-specific error occurs

    * @throws IOException if an I/O error occurs

    */

    @Override

    protected void doPost(HttpServletRequest request, HttpServletResponse

    response)

    throws ServletException, IOException {

    processRequest(request, response);

    }

    /**

    * Returns a short description of the servlet.

    *

    * @return a String containing servlet description

    */

    @Override

    public String getServletInfo() {

    return "Short description";

    }//

    }

  • 23

    6. Form Data Pekerjaan Proyek

    /*

    * To change this license header, choose License Headers in Project Properties.

    * To change this template file, choose Tools | Templates

    * and open the template in the editor.

    */

    package aksi;

    import java.io.IOException;

    import java.io.PrintWriter;

    import java.sql.Connection;

    import java.sql.DriverManager;

    import javax.servlet.ServletException;

    import javax.servlet.annotation.WebServlet;

    import javax.servlet.http.HttpServlet;

    import javax.servlet.http.HttpServletRequest;

    import javax.servlet.http.HttpServletResponse;

    /**

    *

    * @author User

    */

    @WebServlet(name = "aksi_pekerjaan_proyek", urlPatterns =

    {"/aksi_pekerjaan_proyek"})

    public class aksi_pekerjaan_proyek extends HttpServlet {

    /**

    * Processes requests for both HTTP GET and

    POST

    * methods.

    *

    * @param request servlet request

    * @param response servlet response

    * @throws ServletException if a servlet-specific error occurs

    * @throws IOException if an I/O error occurs

    */

    protected void processRequest(HttpServletRequest request, HttpServletResponse

    response)

    throws ServletException, IOException {

    response.setContentType("text/html;charset=UTF-8");

    PrintWriter out = response.getWriter();

    try {

    /* TODO output your page here. You may use following sample code. */

    String aksi = request.getParameter("aksi");

    String id_proyek = request.getParameter("id_proyek");

    String kode_pekerjaan = request.getParameter("kode_pekerjaan");

    String deskripsi_pekerjaan = request.getParameter("deskripsi_pekerjaan");

    String nilai_kontrak = request.getParameter("nilai_kontrak");

    String pemasukan = request.getParameter("pemasukan");

    String pengeluaran = request.getParameter("pengeluaran");

    String laba_kotor = request.getParameter("laba_kotor");

  • 23

    String bobot = request.getParameter("bobot");

    String biaya_kantor = request.getParameter("biaya_kantor");

    String laba_bersih = request.getParameter("laba_bersih");

    String nip = request.getParameter("nip");

    String id_rekapitulasi = request.getParameter("id_rekapitulasi");

    String cari = request.getParameter("cari");

    Class.forName("com.mysql.jdbc.Driver");

    Connection koneksi=DriverManager.getConnection

    ("jdbc:mysql://localhost:3306/master_data","root","");

    switch (aksi) {

    case "SIMPAN":

    if(kode_pekerjaan.equals("")) {

    out.println("alert('Gagal... masih ada data yang belum terisi,

    Silahkan Ulangi!!!')" +

    "");

    } else {

    koneksi.createStatement().execute("insert into pekerjaan_proyek "

    +

    "values('"+id_proyek+"','"+kode_pekerjaan+"','"+deskripsi_pekerjaan+"','"+nilai_k

    ontrak+"','"+pemasukan+"','"+pengeluaran+"','"+laba_kotor+"','"+bobot+"','"+biaya

    _kantor+"','"+laba_bersih+"','"+nip+"','"+id_rekapitulasi+"')");

    out.println("alert('Data Pekerjaan Proyek berhasil

    Disimpan...!!!')"

    + "");

    }

    break;

    case "HAPUS":

    koneksi.createStatement().execute("delete from pekerjaan_proyek

    where id_proyek='" + id_proyek + "'");

    out.println("alert('Data Pekerjaan Proyek berhasil

    Dihapus...!!!')"

    + "");

    break;

    case "GANTI":

    koneksi.createStatement().execute("update pekerjaan_proyek set

    kode_pekerjaan='" + kode_pekerjaan + "' "

    + "where id_proyek='" + id_proyek + "'");

    out.println("alert('Data Pekerjaan Proyek berhasil

    Diubah...!!!')"

    + "");

    break;

    default:

    break;

    }

    } catch (Exception e) {

    out.println("alert('Gagal... Kemungkinan Data sudah ada, Silahkan

    Ulangi!!!')"

    + "");

  • 23

    }

    }

    //

    /**

    * Handles the HTTP GET method.

    *

    * @param request servlet request

    * @param response servlet response

    * @throws ServletException if a servlet-specific error occurs

    * @throws IOException if an I/O error occurs

    */

    @Override

    protected void doGet(HttpServletRequest request, HttpServletResponse

    response)

    throws ServletException, IOException {

    processRequest(request, response);

    }

    /**

    * Handles the HTTP POST method.

    *

    * @param request servlet request

    * @param response servlet response

    * @throws ServletException if a servlet-specific error occurs

    * @throws IOException if an I/O error occurs

    */

    @Override

    protected void doPost(HttpServletRequest request, HttpServletResponse

    response)

    throws ServletException, IOException {

    processRequest(request, response);

    }

    /**

    * Returns a short description of the servlet.

    *

    * @return a String containing servlet description

    */

    @Override

    public String getServletInfo() {

    return "Short description";

    }//

    }

    7. Form Data Pengeluaran Proyek

    /*

    * To change this license header, choose License Headers in Project Properties.

    * To change this template file, choose Tools | Templates

    * and open the template in the editor.

  • 23

    */

    package aksi;

    import java.io.IOException;

    import java.io.PrintWriter;

    import java.sql.Connection;

    import java.sql.DriverManager;

    import javax.servlet.ServletException;

    import javax.servlet.annotation.WebServlet;

    import javax.servlet.http.HttpServlet;

    import javax.servlet.http.HttpServletRequest;

    import javax.servlet.http.HttpServletResponse;

    /**

    *

    * @author User

    */

    @WebServlet(name = "aksi_pengeluaran_proyek", urlPatterns =

    {"/aksi_pengeluaran_proyek"})

    public class aksi_pengeluaran_proyek extends HttpServlet {

    /**

    * Processes requests for both HTTP GET and

    POST

    * methods.

    *

    * @param request servlet request

    * @param response servlet response

    * @throws ServletException if a servlet-specific error occurs

    * @throws IOException if an I/O error occurs

    */

    protected void processRequest(HttpServletRequest request, HttpServletResponse

    response)

    throws ServletException, IOException {

    response.setContentType("text/html;charset=UTF-8");

    PrintWriter out = response.getWriter();

    try {

    /* TODO output your page here. You may use following sample code. */

    String aksi = request.getParameter("aksi");

    String id_proyek = request.getParameter("id_proyek");

    String kode_jurnal = request.getParameter("kode_jurnal");

    String jenis_pengeluaran = request.getParameter("jenis_pengeluaran");

    String nominal_pengeluaran =

    request.getParameter("nominal_pengeluaran");

    String cari = request.getParameter("cari");

    Class.forName("com.mysql.jdbc.Driver");

    Connection koneksi=DriverManager.getConnection

    ("jdbc:mysql://localhost:3306/master_data","root","");

    switch (aksi) {

    case "SIMPAN":

    if(kode_jurnal.equals("")) {

    out.println("alert('Gagal... masih ada data yang belum terisi,

    Silahkan Ulangi!!!')" +

  • 23

    "");

    } else {

    koneksi.createStatement().execute("insert into pengeluaran_proyek

    "

    +

    "values('"+id_proyek+"','"+kode_jurnal+"','"+jenis_pengeluaran+"','"+nominal_pen

    geluaran+"')");

    out.println("alert('Data Pengeluaran Proyek berhasil

    Disimpan...!!!')"

    + "")

    ;

    }

    break;

    case "HAPUS":

    koneksi.createStatement().execute("delete from pengeluaran_proyek

    where id_proyek='" + id_proyek + "'");

    out.println("alert('Data Pengeluaran Proyek berhasil

    Dihapus...!!!')"

    + "");

    break;

    case "GANTI":

    koneksi.createStatement().execute("update pengeluaran_proyek set

    kode_jurnal='" + kode_jurnal + "' "

    + "where id_proyek='" + id_proyek + "'");

    out.println("alert('Data Pengeluaran Proyek berhasil

    Diubah...!!!')"

    + "");

    break;

    default:

    break;

    }

    } catch (Exception e) {

    out.println("alert('Gagal... Kemungkinan Kode Akun sudah ada,

    Silahkan Ulangi!!!')"

    + "");

    }

    }

    //

    /**

    * Handles the HTTP GET method.

    *

    * @param request servlet request

    * @param response servlet response

    * @throws ServletException if a servlet-specific error occurs

    * @throws IOException if an I/O error occurs

  • 23

    */

    @Override

    protected void doGet(HttpServletRequest request, HttpServletResponse

    response)

    throws ServletException, IOException {

    processRequest(request, response);

    }

    /**

    * Handles the HTTP POST method.

    *

    * @param request servlet request

    * @param response servlet response

    * @throws ServletException if a servlet-specific error occurs

    * @throws IOException if an I/O error occurs

    */

    @Override

    protected void doPost(HttpServletRequest request, HttpServletResponse

    response)

    throws ServletException, IOException {

    processRequest(request, response);

    }

    /**

    * Returns a short description of the servlet.

    *

    * @return a String containing servlet description

    */

    @Override

    public String getServletInfo() {

    return "Short description";

    }//

    }

    8. Form Data Rekapitulasi Proyek Tahunan

    /*

    * To change this license header, choose License Headers in Project Properties.

    * To change this template file, choose Tools | Templates

    * and open the template in the editor.

    */

    package aksi;

    import java.io.IOException;

    import java.io.PrintWriter;

    import java.sql.Connection;

    import java.sql.DriverManager;

    import javax.servlet.ServletException;

    import javax.servlet.annotation.WebServlet;

    import javax.servlet.http.HttpServlet;

    import javax.servlet.http.HttpServletRequest;

  • 23

    import javax.servlet.http.HttpServletResponse;

    /**

    *

    * @author User

    */

    @WebServlet(name = "aksi_rekapitulasi_proyek_tahunan", urlPatterns =

    {"/aksi_rekapitulasi_proyek_tahunan"})

    public class aksi_rekapitulasi_proyek_tahunan extends HttpServlet {

    /**

    * Processes requests for both HTTP GET and

    POST

    * methods.

    *

    * @param request servlet request

    * @param response servlet response

    * @throws ServletException if a servlet-specific error occurs

    * @throws IOException if an I/O error occurs

    */

    protected void processRequest(HttpServletRequest request, HttpServletResponse

    response)

    throws ServletException, IOException {

    response.setContentType("text/html;charset=UTF-8");

    PrintWriter out = response.getWriter();

    try {

    /* TODO output your page here. You may use following sample code. */

    String aksi = reque