Anda di halaman 1dari 61

LAPORAN KERJA PRAKTEK

PENGEMBANGAN FITUR LAPORAN PENJUALAN PADA


APLIKASI IMAGINE REPORTS DI PT. CITRA BINA
NIAGA BERBASIS WEB (BAGIAN CUSTOMER AREA)

DisusunOleh :

Indah Wulandari
NIM. 1355301035

PROGRAM STUDI TEKNIK KOMPUTER


POLITEKNIK CALTEX RIAU
PEKANBARU
2017
i
ii
KATA PENGANTAR
Puji Syukur kepada Tuhan Yang Maha Esa atas semua
karunianya sehingga penulis mampu menyelesaikan Laporan Kerja
Praktik ini dengan judul PENGEMBANGAN FITUR LAPORAN
PENJUALAN PADA APLIKASI IMAGINE REPORTS DI PT.
CITRA BINA NIAGA BERBASIS WEB (BAGIAN CUSTOMER
AREA) yang merupakan salah satu syarat untuk kelulusan mata
kuliah wajib di semester 8 (delapan) di Politeknik Caltex Riau.
Laporan Kerja Praktik ini disusun berdasarkan
pelaksanaan kerja praktik yang penulis lakukan di PT. Citra Bina
Niaga pada tanggal 06 Maret 2017 05 Juli 2017.
Melalui program kerja praktik ini penulis mendapat
banyak pengalaman, tambahan ilmu, dan dapat merasakan dunia
kerja yang sesungguhnya secara langsung. Program kerja praktik
ini tidak hanya mengasah hardskill penulis, tapi juga softskill.
Program kerja praktik ini dapat berjalan dengan lancar
karena adanya kerjasama yang baik dari berbagai pihak. Untuk itu
penulis mengucapkan terimakasih kepada :
1. Puji dan syukur kepada Allah SWT yang telah
memberikan kesehatan jasmani maupun rohani untuk
dapat selalu hadir dalam kerja praktek tersebut.
2. Kedua Orang tua penulis dan seluruh anggota keluarga
penulis yang selalu memberikan motivasi serta dorongan

iii
dan bimbingan agar penulis tetap semangat dalam
menyelesaikan laporan.
3. Bapak Dr. Hendriko, S.T.,M.Eng selaku Direktur
Politeknik Caltex Riau.
4. Bapak Ananda, S.Kom,M.T. selaku Ketua Program Studi
Teknik Informatika Politeknik Caltex Riau.
5. Ibu Syefrida Yulina, M.Sc. selaku koordinator kerja
praktek Politeknik Caltex Riau.
6. Ibu Istianah Muslim, S.T.,M.T. selaku dosen
pembimbing kerja praktek penulis yang telah memberikan
bantuan dan bimbingannya.
7. Bapak Hendri Irawan, S.S.T selaku atasan pembimbing
Instansi/Perusahaan yang telah memberikan kesempatan
kepada penulis untuk melaksanakan kerja praktek di PT.
Citra Bina Niaga.
8. Karyawan-karyawan PT.Citra Bina Niaga di divisi IT
terutama Abang Suryadi, S.S.T yang telah banyak
membantu dalam pelaksanan kerja praktek penulis selama
di perusahan.
9. Teman-teman Teknik Informatika generasi 13, yang telah
memberikan dukungan dan doa kepada penulis sehingga
dapat menyelesaikan kerja praktik ini.

iv
10. Semua pihak yang telah membantu penulis baik secara
langsung maupun tidak langsung dalam mengerjakan
laporan hasil kerja praktik.
Selama menjalani program kerja praktik ini, penulis
menyadari selama kesehariannya berinteraksi dengan berbagai
pihak, penulis tidak luput dari berbagai macam kesalahan, baik
yang disengaja maupun tidak disengaja. Sehingga dalam
kesempatan ini penulis meminta maaf atas kesalahan tersebut.
Kritik dan saran juga diharapkan demi perbaikan di masa
mendatang.
Pekanbaru, Juni 2017

Indah Wulandari

v
DAFTAR ISI

KATA PENGANTAR...................................................................... iii

DAFTAR ISI .....................................................................................vi

DAFTAR TABEL .......................................................................... viii

DAFTAR GAMBAR ........................................................................ix

BAB I ................................................................................................. 1

PENDAHULUAN .............................................................................. 1

I.1 Latar Belakang ......................................................................... 1


I.2 Pelaksanaan .............................................................................. 2
I.3 Tujuan Sistem .......................................................................... 2
I.4 Batasan Masalah ...................................................................... 2
I.5 Manfaat Kerja Praktek ............................................................. 3
I.6 Sistematika Penulisan .............................................................. 4
BAB II ................................................................................................ 5

PROFIL PERUSAHAAN .................................................................. 5

II.1. Sejarah Perusahaan .................................................................. 5


II.2. Visi dan Misi Perusahaan ......................................................... 5
II.3. Struktur Organisasi Perusahaan ............................................... 6
BAB III ............................................................................................... 8

DASAR TEORI.................................................................................. 8

III.1 C# ............................................................................................. 8
vi
III.2 Active Server Pages .NET ........................................................ 8
III.3 Microsoft SQL Server............................................................. 10
BAB IV ............................................................................................ 11

PEMBAHASAN .............................................................................. 11

IV.1. Aktifitas KP............................................................................ 11


IV.2. Perancangan ........................................................................... 12
IV.3. Implementasi Aplikasi ........................................................... 16
BAB V .............................................................................................. 33

PENUTUP ........................................................................................ 33

V.1. Kesimpulan ............................................................................ 33


V.2. Saran ...................................................................................... 33
DAFTAR PUSTAKA....................................................................... 34

LAMPIRAN ...................................................................................... A

vii
DAFTAR TABEL

Tabel 4.1 Skenario use case login .................................................... 14


Tabel 4.2 Skenario use case lihat laporan penjualan ........................ 14
Tabel 4.3 Skenario use case logout .................................................. 15

viii
DAFTAR GAMBAR

Gambar 2.1 Struktur Organisasi Perusahaan Kerja Praktek ............... 6


Gambar 4.1 Use Case Diagram ........................................................ 13
Gambar 4.2 Flowchart Rumus ......................................................... 16
Gambar 4.3 Halaman Login ............................................................. 17
Gambar 4.4 Halaman Utama ............................................................ 17
Gambar 4.5 Halaman Dashboard ..................................................... 18
Gambar 4.6 Fitur pada Dashboard ................................................... 19
Gambar 4.7 Gridview Customer ....................................................... 29
Gambar 4.8 Gridview Area .............................................................. 30
Gambar 4.9 Gridview Area jika diklik ............................................. 31

ix
BAB I
PENDAHULUAN
I.1 Latar Belakang
Perusahaan dapat dinilai baik dan berkembangnya dapat
diukur dari penjualannya setiap tahun, apabila setiap tahunnya
meningkat makan perusahaan ini dapat dikatakan sebagai
perusahaan yang baik dan berkembang. Penambahan fitur laporan
penjualan perusahaan itu tersendiri merupakan hak yang wajib
dilakukan oleh mereka yang bergerak dalam dunia usaha.
Pada PT. Citra Bina Niaga mempunyai sebuah sistem yang
sudah dibangun oleh perusahaan yaitu Imagine Reports. Sistem
tersebut memiliki fungsi yaitu staff dapat mengetahui posisi
kunjungan setiap salesman dan collector pada map, berapa lama
salesman dan collector berkunjung ke toko customer dan proyek
apa saja yang sedang dibangun atau akan dibangun.
Sebelumnya sudah ada aplikasi yang menampilkan
laporan penjualan produk semen dan pencapaian kinerja salesman
tetapi untuk data dashboard yang lain belum ada. Aplikasi
sebelumnya masih berbasis desktop sehingga mempersulit dalam
melakukan proses pengecekkan untuk user yang fleksibel.
Aplikasi Imagine Reports masih memiliki kekurangan,
sebelumnya sistem ini mempunyai halaman dashboard yaitu
sebagai fitur untuk laporan penjualan tetapi fitur tersebut tidak
digunakan sebagaimana fungsinya. Fungsi utama dashboard untuk

1
`
melihat pencapaian pembelian dari semen holcim, melihat apakah
salesman baik dari segi penjualan produk semen holcim dan
customer.
Berdasarkan hal tersebut maka diperlukan pengembangan
untuk penambahan fitur laporan penjualan pada aplikasi Imagine
Reports. Berdasarkan latar belakang masalah tersebut maka akan
dibahas lebih lanjut dalam satu pokok pembahasan dengan judul
Pengembangan Fitur Laporan Penjualan Pada Aplikasi Imagine
Reports Di PT. Citra Bina Niaga Berbasis Web (Bagian Customer
Area).
I.2 Pelaksanaan
Kerja Praktik ini dilaksanakan dari tanggal 06 Maret
2017 sampai dengan 05 Juli 2017 di PT. Citra Bina Niaga.
I.3 Tujuan Sistem
Berdasarkan latar belakang yang telah diuraikan di atas,
maka tujuan dalam pembuatan laporan kerja praktek ini adalah
mengembangkan dan mengimplementasikan fitur laporan
penjualan pada Imagine Reports berbasis web untuk melihat data
penjualan semen holcim, dan melihat pencapaian salesman ,
customer dan area.
I.4 Batasan Masalah
Batasan masalah pada sistem ini adalah sebagai berikut :
1. Pengguna sistem ini adalah karyawan PT.Citra Bina Niaga.

2
`
2. Sistem ini berbasis web, dan dibangun dengan menggunakan
bahasa pemprograman C# dan SQL Server sebagai
databasenya.
I.5 Manfaat Kerja Praktek
Kerja praktek memberikan manfaat bagi perguruan tinggi
maupun bagi perusahaan. Adapun manfaat tersebut antara lain,
yaitu :
1. Menambah pengalaman, wawasan dan ilmu pengetahuan
selama di dunia kerja.
2. Mengetahui secara langsung alur dunia kerja sehingga
dapat meningkatkan keterampilan dan pengetahuan dalam
dunia kerja.

Manfaat kerja praktek bagi perusahaan adalah :


1 Meningkatkan aplikasi yang ada di perusahaan menjadi
lebih efektif dan efisien.
2 Terjalin kerjasama antara PT. Citra Bina Niaga dengan
instansi pendidikan yaitu Politeknik Caltex Riau.

3
`
I.6 Sistematika Penulisan
Adapun sistematika yang digunakan dalam penulisan
laporan kerja praktik ini adalah :

BAB I : PENDAHULUAN
Bab ini berisi mengenai latar belakang kerja praktek,
tempat pelaksanaan kerja praktek, tujuan kerja
praktek, manfaat kerja praktek dan sistematika
penulisan.
BAB II : PROFIL PERUSAHAAN
Bab ini berisi tentang uraian secara singkat profil
perusahaan, visi dan misi dari perusahaan.
BAB III : LANDASAN TEORI
Bab ini berisikan penjelasan tentang teori terkait
seperti C#, ASP.NET dan Microsoft SQL Server.
BAB IV : PEMBAHASAN
Bab ini membahas perancangan dan ERD sistem
dan implementasi sistem Imagine Reports
Dashboard.
BAB V : PENUTUP
Bab ini berisi kesimpulan yang diperoleh dari kerja
praktek dan saran bagi perusahaan untuk
pengembangan untuk pengembangan selanjutnya.

4
`
BAB II
PROFIL PERUSAHAAN
II.1. Sejarah Perusahaan
PT. Citra Bina Niaga merupakan salah satu anak
perusahaan dari Bangun Sarana Group. Kantor pusat PT.Citra Bina
Niaga berada di JL.Soekarno-Hatta, Komp. Puri Waringin Indah
Blok D No. 10-11, Kota Pekanbaru Indonesia, 28291, dimana
sistem yang digunakan oleh PT.Bangun Sejahtera Bersama
dikembangkan disini.

II.2. Visi dan Misi Perusahaan


II.2.1 Visi
Menjadi perusahaan yang terdepan dengan kinerja terbaik
dalam industri di Indonesia.

II.2.2 Misi
1. Memastikan nihil bahaya dalam setiap kegiatan
operasional dan bisnis.
2. Bermitra dengan para pelanggan untuk mewujudkan
solusi-solusi berbeda dan inovatif.
3. Mengembangkan sumber daya manusia yang berkinerja
tinggi melalui lingkungan kerja yang beragam dan
melibatkan setiap individu didalamnya
4. Menciptakan nilai yang sama dan solusi-solusi yang
berkelanjutan bagi para pemangku kepentingan.
5
`
II.3. Struktur Organisasi Perusahaan
Struktur organisasi dari PT. Citra Bina Niaga dapat dilihat
dalam gambar 2.1.

Gambar 2.1 Struktur Organisasi Perusahaan Kerja Praktek


Sumber : PT. Citra Bina Niaga

Tugas dan Tanggung Jawab


1. Manager
a. Untuk mengelola pekerjaan Teknologi Informasi (TI)
dalam operasional sehari-hari dalam lingkungan
perusahaan.
b. Memberikan solusi dan konsultansi teknologi untuk
mencapai tujuan dan strategi bisnis perusahaan.
2. Supervisor
a. Berhubungan langsung dengan Manager.

6
`
b. Memiliki tugas yang stategis karena langsung terjun di
lapangan untuk melaksanakan semua rencana yang
telah ditetapkan oleh Manager.
c. Menegakkan aturan yang telah di tentukan oleh
perusahaan.
d. Mengontrol dan mengevaluasi kinerja staff.

7
`
BAB III
DASAR TEORI

III.1 C#

C# (dibaca: C sharp) merupakan bahasa pemograman yang


diciptakan oleh Microsoft sebagai salah satu bahasa pemograman
dalam teknologi .Net dan dikembangkan dibawah kepemimpinan
Anders Hejlsberg juga telah menciptakan berbagai macam bahasa
pemrograman termasuk Borland Turbo C++ dan Borland Delphi).
Bahasa C# juga telah di standarisasi secara internasional oleh
ECMA. C# dapat memaksimalkan kemampuannya tanpa khawatir
dengan masalah kompatibilitas dengan versi sebelumnya. Seperti
halnya bahasa pemograman yang lain, C# bisa digunakan untuk
membangun berbagai macam jenis aplikasi, seperti : (Kurniawan,
2004)
Aplikasi console
Aplikasi berbasis windows (Windows Form)
Aplikasi ASP.NET (berbasis web)
Aplikasi Web Service XML
Aplikasi berbasis Windows Services

III.2 Active Server Pages .NET

Active Server Pages .NET (sering disingkat sebagai


ASP.NET) adalah teknologi baru dalam pemrograman web yang

8
`
merupakan kelanjutan dari teknologi ASP 3.0. Perbedaan utama
dibanding ASP klasik adalah penggunaan .NET Framework
sebagai fondasi pemrograman (Amri, 2003).
ASP.NET memiliki beberapa kelebihan dibandingkan
teknologi terdahulu, antara lain (Amri, 2003).
1. Kemudahan mengakses berbagai library .NET Framework
secara konsisten dan powerful, yang mempercepat
pengembangan aplikasi.
2. Penggunaan berbagai bahasa pemrograman secara penuh,
misalnya VB.NET, C#, J#, dan C++. Dalam ASP.NET
bahasa-bahasa ini dapat digunakan secara penuh
sebagaimana layaknya bekerja di Windows Application.
Hal ini jauh berbeda dibandingkan ASP klasik yang
menggunakan scripting language.
3. Tersedia berbagai, Web Control yang dapat digunakan
membangun aplikasi secara cepat. Programmer dapat
dengan mudah mengkaitkan data ke web control
sebagaimana layaknya memprogram Windows
Application.
4. Code Behind, artinya kode-kode pemrograman yang
menjadi logic aplikasi ditempatkanterpisah dengan kode
user interfaceyang berbentuk HTML.

9
`
III.3 Microsoft SQL Server
Microsoft SQL Server merupakan produk Relational
Database Management Systme (RDBMS) yang dibuat oleh
Microsoft. Microsoft SQL Server banyak digunakan pada dunia
bisnis, pendidikan atau juga pemerintahan sebagai salah satu solusi
database atau media penyimpanan data. Pada tahun 2008,
Microsoft mengeluarkan SQL Server 2008 yang merupakan versi
yang banyak digunakan. Berikut adalah beberapa fitur dari sekian
banyak fitur yang ada pada SQL Server 2008 : (Komputer, 2010)
1. XML Support. Dengan fitur ini, bisa menyimpan dokumen
XML dalam suatu tabel, dapat meng-query data ke dalam
format XML melalui Transact-SQL dan lain sebagainya.
2. Multi-Instance Support. Fitur ini memungkinkan Anda
menjalankan beberapa database engine SQL Server pada
mesin yang sama.
3. Data Warehousing and Business Intelligence (BI)
Improvements. SQL Server dilengkapi dengan fungsi
untuk keperluan Business Intelligence melalui Analysis
Service.
4. Perfomance and Scalability Improvements. SQL Server
menerapkan distributed partitioned view yang
memungkinkan untuk membagi workload ke beberapa
server sekaligus.

10
`
BAB IV
PEMBAHASAN
IV.1. Aktifitas KP
Pada tanggal 6 Maret 2017, Hari pertama kerja praktek.
Mahasiswa diletak pada posisi Divisi IT bagian programmer.
Mahasiswa diarahkan oleh seorang mentor yang disebut
pembimbing selama magang. Kemudian pembimbing menjelaskan
sedikit tentang struktur perusahaan dan memberikan proyek yang
akan dikerjakan selama magang. Projek yang dikerjakan yaitu
mengembangkan sistem yang telah ada pada perusahaaan PT. Citra
Bina Niaga.
Pada tanggal 7 18 Maret 2017, mahasiswa mengerjakan
projek yang diberikan. Deadline projek tersebut 2 minggu. Setelah
2 minggu berjalan tepatnya pada tanggal 18 Maret 2017 waktu
12.00, pengecekkan projek yang diperiksa oleh asisten
pembimbing yaitu Abang Suryadi. Setelah projek tersebut
diperiksa, maka akan ada yang namanya revisi.
Pada tanggal 20 Maret 2017, mahasiswa diberikan tugas
tambahan pada projek yaitu penambahan fitur pada halaman
dashboard.
Pada tanggal 7 April 2017, mahasiswa diberikan tugas lagi
yaitu penambahan halaman baru di halaman dashboard berupa
halaman detail.

11
`
Pada tanggal 12 April 2017, mahasiswa diberikan tugas
untuk membuat gridview pada halaman dashboard untuk user
customer & area.
Pada tanggal 22 Mei 2017 22 Juni 2017, pengecekkan
tugas gridview user customer & area. Lalu ada penambahan untuk
sum dan avg pada gridview area, penambahan Rp pada kolom uang
seperti PlafonMax, PlafonBeri dan Total Piutang. Setelah selesai
projek tersebut akan diperiksa apakah sudah sesuai dengan
keinginan instansi atau masih ada kekurangan, jika ada kekurangan
mahasiswa harus memperbaiki kembali projek tersebut sesuai
dengan keinginan instansi.
Pada tanggal 29 Juni 2017 04 Juli 2017, mahasiswa
diberitahu untuk mengubah beberapa query pada kolom tertentu
seperti kolom customer aktif (ca), plafonmax, plafonberi, dan
efektifitas plafon pada halaman dashboard dan gridview customer
& area.
Pada tanggal 05 Juli 2017, pengecekkan projek selama
magang secara keseluruhan. Mahasiswa menyelesaikan dan
merapikan apa yang telah dikerjakan di perusahaan.
IV.2. Perancangan
IV.2.1 Analisis Sistem Imagine Reports Dashboard
Sistem Imagine Reports ini berbasis web yang dibangun
menggunakan bahasa pemrograman C# dan database SQL server.
Sistem ini digunakan sendiri oleh perusahaan PT. Citra Bina Niaga.
Sebelum sistem ini dikembangkan, sistem ini berfungsi untuk
menampilkan posisi salesman dan collector di map, mengetahui
12
`
jumlah kunjungan dan berapa lama salesman dan collector di toko
customer.
Pengembangan fitur laporan penjualan pada sistem
Imagine Reports berguna untuk melihat pencapaian pembelian dari
semen holcim, melihat apakah salesman baik dari segi penjualan
produk semen holcim dan customer berdasarkan pilihan dari
bagian user customer, sales dan area.
IV.2.2 Perancangan Aplikasi
IV.2.2.1 Use Case Diagram

Gambar 4.1 Use Case Diagram


Gambar 4.1 merupakan use case diagram yang
dikembangkan. Aktor pada sistem ini adalah seluruh staff pada
perusahaan PT. Citra Bina Niaga.
IV.2.2.2 Skenario Use Case Diagram
Skenario use case merupakan penjelasan dari masing-
masing use case yang ada pada use case diagram. Skenario use case

13
`
ditampilkan dalam bentuk tabel. Beberapa analisi use case adalah
sebagai berikut :
a. Skenario Use Case Login
Tabel 4.1 Skenario use case login
Nama Usecase Login
Aktor Staff
Pre Kondisi Berada pada halaman login
Post Kondisi Masuk ke dalam sistem
Skenarion Normal :
1. Input username dan
password
2. Klik tombol Log In
3. Pengecekkan data
4. Apabila data tidak
valid maka ke-1 dan
jika data valid maka
ke-5
5. Menampilkan
halaman utama

b. Skenario Use Case Lihat Laporan Penjualan


Tabel 4.2 Skenario use case lihat laporan penjualan
Nama Usecase Lihat Laporan Penjualan
Aktor Staff
Pre Kondisi Berada pada halaman utama
Post Kondisi Berada pada halaman dashboard
Skenarion Normal :

14
`
1. Klik menu Dashboard
2. Menampilkan
halaman Dashboard
3. Aktor memilih user,
identitas dan periode
yang ingin dilihat
4. Memproses data
5. Menampilkan data
yang telah diproses

c. Skenario Use Case Logout


Tabel 4.3 Skenario use case logout
Nama Usecase Logout
Aktor Staff
Pre Kondisi Berada pada halaman dashboard
Post Kondisi Keluar dari sistem
Skenarion Normal :
1. Klik button logout
2. Proses logout
3. Menampilkan
halaman login

15
`
IV.2.2.3 Flowchart

Gambar 4.2 Flowchart Rumus


Pada Gambar 4.2 merupakan gambar flowchart rumus
yang ada di halaman dashboard , dimana proses pertama yaitu
pilihan responden berupa user, identitas, dan periode yang di pilih.
Setiap tabel mempunyai rumus-rumus tertentu. Kemudian
mengambil data ke database. Pada tabel hari akan ada
pengecekkan apakah utang si user sudah lunas/belum. Jika sudah,
maka query hari akan diproses jika tidak maka output pada tabel
hari akan 0 . Setelah itu staff dapat melihat data yang telah diproses.
IV.3. Implementasi Aplikasi
IV.3.1 Tampilan Halaman Utama
Berikut adalah tampilan login dari Aplikasi Imagine
Reports yang digunakan oleh staff perusahaan PT. Citra Bina
Niaga.

16
`
Gambar 4.3 Halaman Login
Gambar 4.3 Merupakan halaman awal pada sistem.
Sebelum mengakses sistem, staff harus login terlebih dahulu
seperti biasa staff mengisi username dan password yang sesuai
pada database.
IV.3.2 Tampilan Halaman Utama

Gambar 4.4 Halaman Utama


Gambar 4.4 Merupakan halaman utama setelah berhasil
melakukan login. Terdapat beberapa menu yang bisa dilakukan
oleh staff perusahaan namun pada menu Track, Visit dan Customer
mempunyai hak akses untuk mengakses menu tersebut.

17
`
IV.3.3 Tampilan Halaman Dashboard
Disini penulis mengembangkan menu Dashboard yaitu
berupa fitur laporan penjualan. Menu Dashboard tidak memiliki
hak akses seperti menu yang lainnya, tetapi menu ini bisa diakses
oleh seluruh staff.

Gambar 4.5 Halaman Dashboard


Gambar 4.5 Merupakan halaman dashboard yang
dikembangkan oleh penulis. Disini penulis diberi tugas mencari
jumlah Customer Aktif, Pencapaian CA terhadap Target,
Pencapaian CA terhadap Univers, Total piutang, Efektifitas Plafon,
dan Jumlah Hari (Dari Surat Jalan hingga Lunas) pada baris kedua
dapat dilihat pada gambar 4.5 .
Pada halaman dashboard, terdapat 6 tabel yang
dikembangkan yaitu :

18
`
1. Customer Aktif (CA) berfungsi untuk melihat berapa
jumlah Customer yang Aktif pada bagian salesman dan
area.
2. Pencapaian CA terhadap target berfungsi untuk melihat
berapa banyak apakah si user salesman / area tercapai
terhadap target yang telah ditentukan sebelumnya.
3. Pencapain CA terhadap univers berfungsi untuk melihat
berapa banyak pencapaian target si user salesman / area
pada customer yang dimiliki si user salesman / area.
4. Total Piutang berfungsi untuk melihat total piutang si
customer / salesman / area selama melakukan transaksi.
5. Efektifitas Plafon berfungsi untuk melihat seberapa
efektifnya jumlah plafon yang diberi terhadap utang yang
sebenarnya pada si user customer / salesman / area.
6. Jumlah hari berfungsi jika total piutang si user sudah lunas
maka akan menampilkan jumlah hari dari surat jalan
hingga lunas pada bagian customer, salesman, dan area.

Staff bisa melihat perhitungan pada si customer/sales/area


sesuai periode yang dipilih.

Gambar 4.6 Fitur pada Dashboard

19
`
Gambar 4.6 Merupakan fitur yang terdapat pada halaman
Dashboard sehingga staff bisa melihat perhitungan pada si
customer / sales / area sesuaiperiode yang dipilih.
Pilihan fitur yang dimiliki pada halaman Dashboard ,yaitu:
1. User : Customer, Sales dan Area
2. Identitas : Nama yang akan tampil bila memilih user yang
dipilih. Dan juga terdapat pilihan ALL pada identitas
untuk user customer, sales dan area
3. Periode :Waktu yang dinginkanseperti :
a. Bulan,
b. Quartal,
c. Semester, dan
d. Tahun.
Lalu pada pilihan "ALL" di bagian Identitas,akan
menampilkan sebuah gridview berdasarkan user yang dipilih.
Disini penulis mengerjakan bagian user customer dan area.

Kode program untuk Customer


//CA
TextCA.Text = " - ";

//Capai Terhadap Target


TextTarget.Text = " - ";

//Capai Terhadap Univers


TextUnivers.Text = " - ";

//Total Piutang
DataTable utangCust = DB.GetData("select SUM(TotalBase) from
CBN..ReceiveBalance where RelationCode= '" + ID.Value + "' GROUP BY
RelationCode ");

20
`
DataTable utangCustBSB = DB.GetData("select SUM(TotalBase) from
BSBSEMEN..ReceiveBalance where RelationCode= '" + ID.Value + "' GROUP
BY RelationCode ");

if (utangCust.Rows.Count > 0) {
if (utangCustBSB.Rows.Count > 0{
CultureInfo culture = new CultureInfo("id-ID");
double utangCust1 = double.Parse(utangCust.Rows[0][0].ToString());
double utangCust2 = double.Parse(utangCustBSB.Rows[0][0].ToString());
double total = (utangCust1 + utangCust2);
TextPiutang.Text=Decimal.Parse(total.ToString()).ToString("C",
culture);
} else {
CultureInfo culture = new CultureInfo("id-ID");
double utangCust1 = double.Parse(utangCust.Rows[0][0].ToString());
TextPiutang.Text = Decimal.Parse(utangCust1.ToString()).ToString("C",
culture);
} }
else if (utangCustBSB.Rows.Count > 0) {
CultureInfo culture = new CultureInfo("id-ID");
double utangCust1 = double.Parse(utangCustBSB.Rows[0][0].ToString());
TextPiutang.Text = Decimal.Parse(utangCust1.ToString()).ToString("C",
culture);
} else {
TextPiutang.Text = "0";
}

//Efektifitas Plafon
//totalrupiahTON
DataTable query1 = DB.GetData("SELECT TotRP -ISNULL(TotReturn, 0) FROM
(select SUM(s.TotalBase + s.FreightBase) AS TotRP from CBN..Sales s
LEFT JOIN cbn..SalesReturn SR ON SR.CustomerCode = S.CustomerCode where
s.CustomerCode = '" + ID.Value + "' AND MONTH(s.TransDate) BETWEEN " +
awal + " and " + akhir + " AND YEAR(s.TransDate) = " + year + " AND
s.PaymentType = 'Credit' GROUP BY s.CustomerCode) A, (SELECT
SUM(SR.TotalBase) AS TotReturn FROM CBN..SalesReturn SR INNER JOIN
CBN..Sales s ON SR.CustomerCode = s.CustomerCode where s.CustomerCode
= '" + ID.Value + "' AND MONTH(SR.TransDate) BETWEEN " + awal + " and
" + akhir + " AND YEAR(SR.TransDate) = " + year + ") B");

if (query1.Rows.Count > 0){


//plafonygdiberi
DataTable query2 = DB.GetData("SELECT SUM(NewLimit) from
CBN..RequestPlafonAndTargetD WHERE CustomerCode = '" + ID.Value + "'
AND MONTH(TargetDate) BETWEEN " + awal + " and " + akhir + " AND
YEAR(TargetDate) = " + year + " GROUP BY CustomerCode");

if (query2.Rows.Count > 0) {
double q1 = double.Parse(query1.Rows[0][0].ToString());
double q2 = double.Parse(query2.Rows[0][0].ToString());
jumlahEfek = (q1 / q2);

//Rumus
double hasilPlafon = ((q1 / q2) * 100);
if (hasilPlafon < 0)
TextPlafon.Text = "0";
else
TextPlafon.Text = Math.Round(hasilPlafon, 2).ToString();

21
`
} else {
TextPlafon.Text = " - ";
} } else {
query1 = DB.GetData("SELECT TotRP -ISNULL(TotReturn, 0) FROM (select
SUM(s.TotalBase + s.FreightBase) AS TotRP from BSBSEMEN..Sales s LEFT
JOIN BSBSEMEN..SalesReturn SR ON SR.CustomerCode = S.CustomerCode where
s.CustomerCode = '" + ID.Value + "' AND MONTH(s.TransDate) BETWEEN " +
awal + " and " + akhir + " AND YEAR(s.TransDate) = " + year + " AND
s.PaymentType = 'Credit' GROUP BY s.CustomerCode) A, (SELECT
SUM(SR.TotalBase) AS TotReturn FROM BSBSEMEN..SalesReturn SR INNER JOIN
BSBSEMEN..Sales s ON SR.CustomerCode = s.CustomerCode where
s.CustomerCode = '" + ID.Value + "' AND MONTH(SR.TransDate) BETWEEN "
+ awal + " and " + akhir + " AND YEAR(SR.TransDate) = " + year + ")
B");

if (query1.Rows.Count > 0) {
DataTable query2 = DB.GetData("SELECT SUM(NewLimit) from
BSBSEMEN..RequestPlafonAndTargetD WHERE CustomerCode = '" + ID.Value +
"' AND MONTH(TargetDate) BETWEEN " + awal + " and " + akhir + " AND
YEAR(TargetDate) = " + year + " GROUP BY CustomerCode");

if (query2.Rows.Count > 0) {
double q1 = double.Parse(query1.Rows[0][0].ToString());
double q2 = double.Parse(query2.Rows[0][0].ToString());
jumlahEfek = (q1 / q2);

//Rumus
double hasilPlafon = ((q1 / q2) * 100);
if (hasilPlafon < 0)
TextPlafon.Text = "0";
else
TextPlafon.Text = Math.Round(hasilPlafon, 2).ToString();
} else {
TextPlafon.Text = " - ";
} }
else {
TextPlafon.Text = "0";
} }

//Jumlah Hari dari SJ-Lunas


if (utangCust.Rows.Count > 0){
if (Double.Parse(utangCust.Rows[0][0].ToString()) == 0) {
DataTable Tgglhari = DB.GetData("SELECT COUNT(z.TransDate) AS Data,
SUM(DATEDIFF(DAY, Z.TransDate, C.TransDate)) AS Total FROM
CBN..CreditReceiveE C INNER JOIN( SELECT D.TransCode as INVCode,
S.TransCode AS SJCode, S.TransDate, S.CustomerCode FROM CBN..SalesD D
INNER JOIN CBN..SalesDelivery S ON D.SDCode = S.TransCode) Z ON
Z.INVCode = C.PTransCode WHERE YEAR(C.TransDate) = " + year + " AND
MONTH(C.TransDate) BETWEEN " + awal + " and " + akhir + " AND
Z.CustomerCode = '" + ID.Value + "' ");

if (Tgglhari.Rows.Count > 0) {
if (Tgglhari.Rows[0][0] is DBNull){
TextTanggal.Text = "-";
} else if (Tgglhari.Rows[0][1] is DBNull) {
TextTanggal.Text = "-";
} else {
double hari = double.Parse(Tgglhari.Rows[0][1].ToString());

22
`
double data = double.Parse(Tgglhari.Rows[0][0].ToString());
double hasil = hari / data;
TextTanggal.Text = Math.Round(hasil, 0).ToString(); ;
} } else {

Tgglhari = DB.GetData("SELECT COUNT(z.TransDate) AS Data,


SUM(DATEDIFF(DAY, Z.TransDate, C.TransDate)) AS Total FROM
BSBSEMEN..CreditReceiveE C INNER JOIN( SELECT D.TransCode as INVCode,
S.TransCode AS SJCode, S.TransDate, S.CustomerCode FROM CBN..SalesD D
INNER JOIN CBN..SalesDelivery S ON D.SDCode = S.TransCode) Z ON
Z.INVCode = C.PTransCode WHERE YEAR(C.TransDate) = " + year + " AND
MONTH(C.TransDate) BETWEEN " + awal + " and " + akhir + " AND
Z.CustomerCode = '" + ID.Value + "' ");

if (Tgglhari.Rows.Count > 0){


if (Tgglhari.Rows[0][0] is DBNull){
TextTanggal.Text = "-";
} else if (Tgglhari.Rows[0][1] is DBNull){
TextTanggal.Text = "-";
} else {
double hari = double.Parse(Tgglhari.Rows[0][1].ToString());
double data = double.Parse(Tgglhari.Rows[0][0].ToString());
double hasil = hari / data;
TextTanggal.Text = Math.Round(hasil, 0).ToString();
} } }
} else {
TextTanggal.Text = "Piutang belum lunas!";
} } else {
TextTanggal.Text = "-";
}

Kode program untuk Sales dan Area


//CA
double hasilCA = 0;
DataTable caSalesCBN = DB.GetData("SELECT COUNT (DISTINCT CustomerCode)
from CBN..SalesDashboard where SalesCode= '" + ID.Value + "'" AND
MONTH(TransDate) BETWEEN " + awal + " AND " + akhir + " AND
YEAR(TransDate) =" + year);

DataTable caSalesBSB = DB.GetData("SELECT COUNT (DISTINCT CustomerCode)


from BSBSEMEN..SalesDashboard where SalesCode= '" + ID.Value + "' AND
MONTH(TransDate) BETWEEN " + awal + " AND " + akhir + " AND
YEAR(TransDate) = " + year);

if (caSalesCBN.Rows.Count > 0){


if (caSalesBSB.Rows.Count > 0) {
double caSalesCBN1 = double.Parse(caSalesCBN.Rows[0][0].ToString());
double caSalesBSB1 = double.Parse(caSalesBSB.Rows[0][0].ToString());
hasilCA = (caSalesBSB1 + caSalesCBN1);
TextCA.Text = hasilCA.ToString();
} else {
double caSalesCBN1 = double.Parse(caSalesCBN.Rows[0][0].ToString());
TextCA.Text = caSalesCBN1.ToString();
} }
else if (caSalesBSB.Rows.Count > 0) {

23
`
double caSalesCBN1 = double.Parse(caSalesBSB.Rows[0][0].ToString());
TextCA.Text = caSalesCBN1.ToString();
} else {
TextCA.Text = "0";
}

//Capai Terhadap Target


DataTable tSalesCBN = DB.GetData("SELECT SUM(CustomerActive) from
CBN..SalesTarget where SalesCode= '" + ID.Value + "' AND MonthTarget
BETWEEN " + awal + " AND " + akhir + " AND YearTarget = " + year + "
GROUP BY SalesCode");

DataTable tSalesBSB = DB.GetData("SELECT SUM(CustomerActive) from


BSBSEMEN..SalesTarget where SalesCode= '" + ID.Value +"' AND
MonthTarget BETWEEN " + awal + " AND " + akhir + " AND YearTarget = "
+ year + " GROUP BY SalesCode");

if (tSalesCBN.Rows.Count > 0){


if (tSalesBSB.Rows.Count > 0) {
double tSalesC1 = double.Parse(tSalesCBN.Rows[0][0].ToString());
double tSalesB1 = double.Parse(tSalesBSB.Rows[0][0].ToString());
double jumlahT = (tSalesC1 + tSalesB1);
//Rumus
double hasilTargetSales = ((hasilCA / jumlahT) * 100);

if (hasilTargetSales < 0)
TextTarget.Text = "0";
else
TextTarget.Text = Math.Round(hasilTargetSales, 2).ToString();
} else {
double tSalesC1 = double.Parse(tSalesCBN.Rows[0][0].ToString());
//Rumus
double hasilTargetSales = ((hasilCA / tSalesC1) * 100);

if (hasilTargetSales < 0)
TextTarget.Text = "0";
else
TextTarget.Text = Math.Round(hasilTargetSales, 2).ToString();
} }
else if (tSalesBSB.Rows.Count > 0) {
double tSalesC1 = double.Parse(tSalesBSB.Rows[0][0].ToString());
//Rumus
double hasilTargetSales = ((hasilCA / tSalesC1) * 100);

if (hasilTargetSales < 0)
TextTarget.Text = "0";
else
TextTarget.Text = Math.Round(hasilTargetSales, 2).ToString();
} else {
TextTarget.Text = "-";
}
//Capai Terhadap Univers
DataTable univSalesCBN = DB.GetData("select COUNT(CustomerCode) from
CM..CustomerE where SalesCode = '" + ID.Value + "' and CompanyCode =
'CBN'");

if (univSalesCBN.Rows.Count > 0) {

24
`
DataTable univSalesBSB = DB.GetData("select COUNT(CustomerCode) from
CM..CustomerE where SalesCode = '" + ID.Value + "' and CompanyCode =
'BSBSEMEN'");

double univSalesC1 = double.Parse(univSalesCBN.Rows[0][0].ToString());


double univSalesB1 = double.Parse(univSalesBSB.Rows[0][0].ToString());
//Rumus
double jumlah = (univSalesB1 + univSalesC1);
double hasilUnivSales = ((hasilCA / jumlah) * 100);

if (hasilUnivSales > 0)
TextUnivers.Text = Math.Round(hasilUnivSales, 2).ToString();
else
TextUnivers.Text = "0";
} else {
TextUnivers.Text = "0";
}

//Total Piutang
DataTable utangCBN = DB.GetData("SELECT SUM(r.TotalBase) from
CBN..ReceiveBalance r INNER JOIN CM..CustomerE c ON
r.RelationCode=c.CustomerCode WHERE c.CompanyCode = 'CBN' AND
c.SalesCode = '" + ID.Value + "' GROUP BY SalesCode ");

DataTable utangBSB = DB.GetData("SELECT SUM(r.TotalBase) from


BSBSEMEN..ReceiveBalance r INNER JOIN CM..CustomerE c ON
r.RelationCode=c.CustomerCode WHERE c.CompanyCode = 'BSBSEMEN' AND
c.SalesCode = '" + ID.Value + "' GROUP BY SalesCode ");

if (utangCBN.Rows.Count > 0) {
if (utangBSB.Rows.Count > 0) {
CultureInfo culture = new CultureInfo("id-ID");
double utangC1 = double.Parse(utangCBN.Rows[0][0].ToString());
double utangB1 = double.Parse(utangBSB.Rows[0][0].ToString());
utang = (utangC1 + utangB1);
TextPiutang.Text = Decimal.Parse(utang.ToString()).ToString("C",
culture);
} else {
CultureInfo culture = new CultureInfo("id-ID");
double utangC1 = double.Parse(utangCBN.Rows[0][0].ToString());
TextPiutang.Text = Decimal.Parse(utangC1.ToString()).ToString("C",
culture);
}
}
else if (utangBSB.Rows.Count > 0) {
CultureInfo culture = new CultureInfo("id-ID");
double utangC1 = double.Parse(utangBSB.Rows[0][0].ToString());
TextPiutang.Text = Decimal.Parse(utangC1.ToString()).ToString("C",
culture);
} else {
TextPiutang.Text = "-";
}
//Efektifitas Plafon
//totalrupiahTON
DataTable efekTonCBN = DB.GetData("SELECT TotRP -ISNULL(TotReturn, 0)
FROM (select SUM(s.TotalBase + s.FreightBase) AS TotRP from CBN..Sales
s INNER JOIN CM..CustomerE c ON s.CustomerCode = c.CustomerCode where
c.SalesCode = '" + ID.Value + "' AND MONTH(s.TransDate) BETWEEN " +

25
`
awal + " and " + akhir + " AND YEAR(s.TransDate) = " + year + " AND
s.PaymentType = 'Credit' AND c.CompanyCode = 'CBN' GROUP BY
c.SalesCode) A, (SELECT SUM(SR.TotalBase) AS TotReturn FROM
CBN..SalesReturn SR INNER JOIN CM..CustomerE c ON SR.CustomerCode =
c.CustomerCode where c.SalesCode = '" + ID.Value + "' " and
MONTH(SR.TransDate) BETWEEN " + awal + " and " + akhir + " AND
YEAR(SR.TransDate) = " + year + " AND c.CompanyCode = 'CBN') B");

DataTable efekTonBSB = DB.GetData("SELECT TotRP -ISNULL(TotReturn, 0)


FROM (select SUM(s.TotalBase + s.FreightBase) AS TotRP from
BSBSEMEN..Sales s INNER JOIN CM..CustomerE c ON s.CustomerCode =
c.CustomerCode where c.SalesCode = '" + ID.Value + "' AND
MONTH(s.TransDate) BETWEEN " + awal + " and " + akhir + " AND
YEAR(s.TransDate) = " + year + " AND s.PaymentType = 'Credit' AND
c.CompanyCode = 'BSBSEMEN' GROUP BY c.SalesCode) A, (SELECT
SUM(SR.TotalBase) AS TotReturn FROM BSBSEMEN..SalesReturn SR INNER JOIN
CM..CustomerE c ON SR.CustomerCode = c.CustomerCode where c.SalesCode
= '" + ID.Value + "' and MONTH(SR.TransDate) BETWEEN " + awal + " and
" + akhir + " AND YEAR(SR.TransDate) = " + year + " AND c.CompanyCode
= 'BSBSEMEN') B");

//plafonygdiberi
DataTable efekPlafonCBN = DB.GetData("SELECT SUM(NewLimit) from
CBN..RequestPlafonAndTargetD where SalesCode= '" + ID.Value +"' AND
MonthTarget BETWEEN " + awal + " and " + akhir + " AND YearTarget = "
+ year + " GROUP BY SalesCode");

DataTable efekPlafonBSB = DB.GetData("SELECT SUM(NewLimit) from


BSBSEMEN..RequestPlafonAndTargetD where SalesCode= '" + ID.Value +"'
AND MonthTarget BETWEEN " + awal + " and " + akhir + " AND YearTarget
= " + year + " GROUP BY SalesCode");

if (efekTonCBN.Rows.Count > 0) {
if (efekTonBSB.Rows.Count > 0) {
if (efekPlafonCBN.Rows.Count > 0) {
if (efekPlafonBSB.Rows.Count > 0) {
double tonC1 = double.Parse(efekTonCBN.Rows[0][0].ToString());
double tonC2 = double.Parse(efekTonBSB.Rows[0][0].ToString());
double efekTon = (tonC1 + tonC2);
double tonB1 = double.Parse(efekPlafonCBN.Rows[0][0].ToString());
double tonB2 = double.Parse(efekPlafonBSB.Rows[0][0].ToString());
double efekPlafon = (tonB1 + tonB2);
jumlahEfek = (efekTon / efekPlafon);

//Rumus
double hasilPlafon = ((efekTon / efekPlafon) * 100);
if (hasilPlafon < 0)
TextPlafon.Text = "0";
else
TextPlafon.Text = Math.Round(hasilPlafon, 2).ToString();
} else {
double tonC1 = double.Parse(efekTonCBN.Rows[0][0].ToString());
double tonC2 = double.Parse(efekTonBSB.Rows[0][0].ToString());
double efekTon = (tonC1 + tonC2);
double efekPlafon = double.Parse(efekPlafonCBN.Rows[0][0].ToString());
jumlahEfek = (efekTon / efekPlafon);

26
`
//Rumus
double hasilPlafon = ((efekTon / efekPlafon) * 100);
if (hasilPlafon < 0)
TextPlafon.Text = "0";
else
TextPlafon.Text = Math.Round(hasilPlafon, 2).ToString();
} } else {
if (efekPlafonCBN.Rows.Count > 0) {
if (efekPlafonBSB.Rows.Count > 0) {
double tonC1 = double.Parse(efekTonCBN.Rows[0][0].ToString());
double tonC2 = double.Parse(efekTonBSB.Rows[0][0].ToString());
double efekTon = (tonC1 + tonC2);
double efekPlafon = double.Parse(efekPlafonBSB.Rows[0][0].ToString());
jumlahEfek = (efekTon / efekPlafon);

//Rumus
double hasilPlafon = ((efekTon / efekPlafon) * 100);
if (hasilPlafon < 0)
TextPlafon.Text = "0";
else
TextPlafon.Text = Math.Round(hasilPlafon, 2).ToString();
}else{
TextPlafon.Text = "0";
} } }
} else {
if (efekPlafonCBN.Rows.Count > 0) {
if (efekPlafonBSB.Rows.Count > 0) {
double efekTon = double.Parse(efekTonCBN.Rows[0][0].ToString());
double tonB1 = double.Parse(efekPlafonCBN.Rows[0][0].ToString());
double tonB2 = double.Parse(efekPlafonBSB.Rows[0][0].ToString());
double efekPlafon = (tonB1 + tonB2);
jumlahEfek = (efekTon / efekPlafon);

//Rumus
double hasilPlafon = ((efekTon / efekPlafon) * 100);
if (hasilPlafon < 0)
TextPlafon.Text = "0";
else
TextPlafon.Text = Math.Round(hasilPlafon, 2).ToString();
} else {
double efekTon = double.Parse(efekTonCBN.Rows[0][0].ToString());
double efekPlafon = double.Parse(efekPlafonCBN.Rows[0][0].ToString());
jumlahEfek = (efekTon / efekPlafon);

//Rumus
double hasilPlafon = ((efekTon / efekPlafon) * 100);
if (hasilPlafon < 0)
TextPlafon.Text = "0";
else
TextPlafon.Text = Math.Round(hasilPlafon, 2).ToString();
} } else {
TextPlafon.Text = "0";
} }
} else if (efekTonBSB.Rows.Count > 0) {
if (efekPlafonCBN.Rows.Count > 0) {
if (efekPlafonBSB.Rows.Count > 0) {
double efekTon = double.Parse(efekTonBSB.Rows[0][0].ToString());
double tonB1 = double.Parse(efekPlafonCBN.Rows[0][0].ToString());

27
`
double tonB2 = double.Parse(efekPlafonBSB.Rows[0][0].ToString());
double efekPlafon = (tonB1 + tonB2);
jumlahEfek = (efekTon / efekPlafon);

//Rumus
double hasilPlafon = ((efekTon / efekPlafon) * 100);
if (hasilPlafon < 0)
TextPlafon.Text = "0";
else
TextPlafon.Text = Math.Round(hasilPlafon, 2).ToString();
} else {
double efekTon = double.Parse(efekTonBSB.Rows[0][0].ToString());
double efekPlafon = double.Parse(efekPlafonCBN.Rows[0][0].ToString());
jumlahEfek = (efekTon / efekPlafon);

//Rumus
double hasilPlafon = ((efekTon / efekPlafon) * 100);
if (hasilPlafon < 0)
TextPlafon.Text = "0";
else
TextPlafon.Text = Math.Round(hasilPlafon, 2).ToString();
} } else {
double efekTon = double.Parse(efekTonBSB.Rows[0][0].ToString());
double efekPlafon = double.Parse(efekPlafonBSB.Rows[0][0].ToString());
jumlahEfek = (efekTon / efekPlafon);

//Rumus
double hasilPlafon = ((efekTon / efekPlafon) * 100);
if (hasilPlafon < 0)
TextPlafon.Text = "0";
else
TextPlafon.Text = Math.Round(hasilPlafon, 2).ToString();
} } else {
TextPlafon.Text = "-";
}

//Jumlah Hari dari SJ-Lunas


//cek customer yang utangnya 0
DataTable cekCust = DB.GetData("SELECT RelationCode from
CBN..ReceiveBalance a inner join cbn..SalesDashboard b on
a.RelationCode = b.CustomerCode where b.SalesCode ='" + ID.Value + "'
GROUP BY RelationCode HAVING sum(a.TotalBase) = 0 order by
MAX(b.TransDate) desc");

if (cekCust.Rows.Count > 0){


if (cekCust.Rows[0][0] is DBNull) {
TextTanggal.Text = "-";
} else {

int x;
double hasil = 0;
double totalHari = 0;
for (x = 0; x < cekCust.Rows.Count; x++) {
DataTable HariLunas = DB.GetData("SELECT COUNT(z.TransDate) AS
Data,SUM(DATEDIFF(DAY, Z.TransDate, C.TransDate)) AS Total FROM
CBN..CreditReceiveE C INNER JOIN (SELECT D.TransCode as INVCode,
S.TransCode AS SJCode, S.TransDate, S.CustomerCode FROM CBN..SalesD D
INNER JOIN CBN..SalesDelivery S ON D.SDCode = S.TransCode) Z ON

28
`
Z.INVCode = C.PTransCode WHERE YEAR(C.TransDate) = " + year + " AND
MONTH(C.TransDate) BETWEEN " + awal + " and " + akhir + " AND
Z.CustomerCode =" + cekCust.Rows[x][0] + " ");

if (HariLunas.Rows[0][1] is DBNull) {
hasil += 0;
}else{
double data = double.Parse(HariLunas.Rows[0][0].ToString());
double hari = double.Parse(HariLunas.Rows[0][1].ToString());
double hitung = hari / data;
totalHari += hitung;
} }

double lunas = totalHari / cekCust.Rows.Count;


TextTanggal.Text = Math.Round(lunas, 0).ToString();
} } else {
TextTanggal.Text = "-";
}

Kode program untuk sales dan area hampir sama, hanya


beda SalesCode diganti dengan CustomerAreaCode.

Gambar 4.7 Gridview Customer

29
`
Gambar 4.7 Merupakan halaman dashboard yang
menampilkan gridview untuk user customer. Pada gridview
customer ini mempunyai kelebihan yaitu bisa menampilkan siapa
sales pada customer tersebut dan customer tersebut berada di area
mana. Dimana fungsi gridview ini memudahkan staff melihat
semua customer yang ada tanpa harus memilih nama customer satu
per satu.

Gambar 4.8 Gridview Area


Gambar 4.8 Merupakan halaman dashboard yang
menampilkan gridview untuk user area. Fungsi gridview area ini
tidak jauh beda dengan gridview customer, namun di gridview area
ini tidak akan menampilkan nama sales seperti customer.
30
`
Gambar 4.9 Gridview Area jika diklik
Gambar 4.9 Merupakan gridview area yang diklik pada
bagian CustomerAreaName maka akan menampilkan sebuah
gridview baru yaitu gridview Customer. Gridview Customer ini
sama seperti gridview customer perbedaannya pada gridview ini
menampilkan siapa aja customer yang terdapat di area yang dipilih
dan 1 nama sales karena 1 sales memegang 1 area.
31
`
IV.3.4 Analisa
Sebelum adanya sistem Imagine Reports Dashboard,
sistem tersebut hanya mempunyai halaman kosong dashboard
sehingga sistem mempunyai kekurangan. Dengan adanya
pengembangan sistem pada halaman dashboard , memudahkan
staff pada perusahaan untuk melakukan kalkulasi terhadap user
sesuai periode yang dipilih. Dan kelebihan halaman dashboard juga
bisa menampilkan data secara keseluruhan pada user sehingga staff
tidak perlu memilih satu per satu user.

32
`
BAB V
PENUTUP

V.1. Kesimpulan
Adapun kesimpulan dari laporan ini adalah sebagai
berikut:
1. Sistem Imagine Reports Dashboard yang dikembangkan
berfungsi untuk mempermudah menampilkan data pada
bagian customer aktif yang telah dikalkulasikan sesuai
periode pilihan pada bagian user customer, sales dan area.
2. Sistem Imagine Reports Dashboard menampilkan gridview
secara keseluruhan yang ada di halaman dashboard pada
bagian user customer dan area.

V.2. Saran
Adapun saran dari laporan ini adalah sebagai berikut:
1. Sistem ini bisa ditambahkan dengan menampilkan grafik
sehingga staff lebih gampang mengetahui kinerja
salesman , customer dan area.
2. Menerapkan fitur ganti password pada pengguna.
3. Tidak hanya mencakup jenis dokumen itu saja, tetapi
mencakup seluruh dokumen yang ada di Kanwil DJP Riau
Kepri.

33
`
DAFTAR PUSTAKA

Amri, M. C. (2003). Pengantar ASP.NET. Ilmukomputer.com.

Komputer, W. (2010). SQL Server 2008 Express. Yogyakarta:

Andi Offset.

Kurniawan, A. (2004, May 25). Pengenalan Bahasa C#. Jakarta:

.net Developer Community.

34
`
LAMPIRAN

A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q

Anda mungkin juga menyukai