Perancangan Digital Dashboard pada PT M Cashback...

103
55 BAB 4 PERANCANGAN DIGITAL DASHBOARD BAB 4 PERANCANGAN DIGITAL DASHBOARD 4.1 Environment Berikut ini adalah spesifikasi yang dibutuhkan dalam dalam membangun digital dashboard. Sistem Operasi Windows 2003 Standard Edition/Windows XP Professional DBMS SQL Server 2005 Enterprise Edition Integration Tool SQL Server 2005 Integration Services Analysis Tool SQL Server 2005 Analysis Services BI Tool SQL Server BI Development Studio Development Tool Visual Studio 2008 Professional Edition Bahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET, Dundas Chart Tabel 4.1 Digital dashboard Environtment

Transcript of Perancangan Digital Dashboard pada PT M Cashback...

Page 1: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

55

BAB 4 PERANCANGAN DIGITAL DASHBOARD BAB 4

PERANCANGAN DIGITAL DASHBOARD

4.1 Environment

Berikut ini adalah spesifikasi yang dibutuhkan dalam dalam membangun digital

dashboard.

Sistem Operasi Windows 2003 Standard Edition/Windows XP

Professional

DBMS SQL Server 2005 Enterprise Edition

Integration Tool SQL Server 2005 Integration Services

Analysis Tool SQL Server 2005 Analysis Services

BI Tool SQL Server BI Development Studio

Development Tool Visual Studio 2008 Professional Edition

Bahasa Pemrograman C# 2.0

Teknologi Visual dan

Grafis

ASP.NET, Ajax.NET, Dundas Chart

Tabel 4.1 Digital dashboard Environtment

Page 2: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

56

4.2 Model Arsitektur

Gambar 4.1 Model Arsitektur

Pada gambar 4.1 merupakan arsitektur sistem Digital Dashboard PT. M Cashback.

Arsitektur sistem ini mendeskripsikan lingkungan sistem secara umum yang terdiri dari

komponen server dan klien serta koneksi antar komponen sistem. Dalam perancangan

digital dashboard ini data dirangkum dengan menggunakan konsep warehousing.

Perancangan Digital dashboard dengan konsep warehousing sesuai dengan

kebutuhan informasi yang telah dijelaskan pada bab sebelumnya. Setelah melalui proses

warehousing, informasi ditampilkan dalam bentuk Digital Dashboard.

4.3 Rancangan Data mart

Pada sub bab ini kami akan mengimplementasikan pengetahuan yang diperoleh dari

Bab sebelumnya untuk membuat sebuah data mart yang akan menjadi sumber data

untuk digital dashboard. Kami mmendesain data mart ini untuk menyimpan informasi

yang berasal dari OLTP (M System). Pada bab 3 telah dijelaskan kebutuhan informasi

dibutuhkan oleh pihak terkait didalam organisasi M Cashback. Berdasarkan model

desain Ralph Kimbal pada bab 2, berikut langkah-langkah dalam membangun data mart:

Page 3: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

57

1. Membuat daftar measure berdasarkan kebutuhan informasi.

2. Membuat dimensi dan hirarki.

3. Membuat tabel fact.

4. Membuat desain data mart.

4.3.1 Daftar Measure

Sebelum mendesain data mart terlebih dahulu dipersiapkan measure atau ukuran

yang dibutuhkan oleh pengguna. Daftar ini juga dilengkapi dengan field yang tersedia

dari system OLTP, tipe data, dan formula.

Measure Atribut OLTP Tipe Data Formula

Jumlah top up Topup.Oid Int Count

Jumlah Sales Transaction.Oid Int Count

Jumlah target Tidak tersedia Int

Jumlah top up oleh

pelanggan

Code.Oid Int Count

Jumlah top up manual Transaction.Oid Int [Jumlah top

up]-[ Jumlah

top up oleh

pelanggan]

Jumlah top up yang berhasil Injection.oid Count ketika

state=3

Page 4: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

58

Jumlah top up gagal [Jumlah top

up]-[ Jumlah

top up yang

berhasil]

Jumlah toko yang berjualan Code.redeemedAt Int Count distinct

Waktu yang dibutuhkan

untuk proses top up

Tidak tersedia Int Average

DATEDIFF

(Code.LastStat

eChange,Code.

RedeemedAt)

Tabel 4.2 Daftar Measure

4.3.2 Dimensi dan Hirarki

Pada bagian ini kami akan menyiapkan daftar dimensi serta hirarkinya dari data

mart yang akan dibuat. Daftar dimensi ini disertai juga dengan field-field yang tersedia

dari sistem OLTP. Jika dimensi merupakan anak sebuah dimensi lain, maka induk

dimensi juga didaftarkan.

4.3.3 Tabel Fact

Langkah selanjutnya adalah mempersiapkan tabel fact. Atribut tabel fact

berdasarkan dari kebutuhan digital dashboard yang dibahasa pada bab sebelumnya.

Atribut tabel fact didaftarkan berserta dengan tipe datanya. Berdasarkan skema yang

diperoleh dari sistem OLTP disimpulkan terdapat 3 buah tabel transaksi. Ketiga tabel

Page 5: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

59

tersebut akan digabungkan ke dalam sebuah tabel fact yang bernama Top up Fact untuk

memudahkan proses ETL dan analisis.

4.3.4 Conceptual Data Model

Di bawah ini merupakan diagram data mart yang merupakan hasil analisis dari

database OLTP ( Sistem M). Deskripsi tiap-tiap dimensi yang juga merupakan tabel

master dari Sistem M telah dijelaskan pada bab sebelumnya. Kami menyimpulkan

bahwa model yamg kami gunakan untuk data mart adalah snowflake schema, karena ada

beberapa dimensi mempunyai parent tabel yang jika digambarkan menyerupai snowflake

(butir salju).

Gambar 4.2 Skema CDM data mart

Page 6: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

60

4.3.5 Physical Data Model

Gambar 4.3 Diagram PDM data mart

4.3.6 Proses Extract, Transform, dan Load

SQL Server Integration Services (SSIS) adalah alat yang digunakan untuk

melakukan proses ETL (Extract, Transform, dan Load) dari system OLTP (M System)

ke data mart. Sebelum dipindahkan terlebih dahulu data OLTP dibersihkan (cleansing)

menggunakan sql query. Untuk proses load ETL sendiri dibagi menjadi 2 bagian yaitu:

Proses ETL Dimensi

Proses ETL Data Transansaksi (Fact Tabel)

Page 7: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

61

Pemisahan ini dilakukan karena proses ETL Dimensi tidak terlalu sering dilakukan.

Proses ini hanya dilakukan saat pertama kali dan pada saat penambahan data dimensi,

seperti penambahan toko, produk, dan lain-lain. Sedangkan Proses ETL Data Transaksi

akan dijadwakan sesuai kebutuhan. Dalam hal ini sesuai dengan kebutuhan pengguna

proses ETL dilakukan harian.

4.3.7 Proses ETL Dimensi

Gambar 4.4 Proses ETL Dimensi

Page 8: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

62

1. Load Retailer

Data flow ini berfungsi menarik data dimensi retailer.

a. Data Sumber

i. Database : MReconciler

ii. Tabel : Retailer

b. Data Tujuan

i. Database : MSytemDM

ii. Tabel : DimRetailer

iii. SQL Sintaks :

“select r.oid,externalid,name from retailer with (nolock) join issuing_body ib with (nolock) on r.oid=ib.oid”

2. Load Store Group

Data flow ini berfungsi menarik data dimensi store group.

a. Data Sumber

i. Database : MReconciler

ii. Tabel : Store_Group

b. Data Tujuan

i. Database : MSytemDM

ii. Tabel : DimStore_Group

Page 9: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

63

iii. SQL Sintaks :

“select sg.oid,externalid,name,retailer from store_group sg with (nolock) join issuing_body ib with (nolock) on sg.oid=ib.oid”

3. Load Store

Data flow ini berfungsi menarik data dimensi toko

Data Sumber

i. Database : MReconciler

ii. Tabel : Store_Group

b. Data Tujuan

i. Database :MSytemDM

ii. Tabel :DimStore_Group

c. SQL Sintaks :

“select s.oid,externalid,name,storegroup from store s with (nolock) join issuing_body ib with (nolock) on s.oid=ib.oid”

4. Load Injection State

Data flow ini berfungsi menarik data dimensi status top up.

a. Data Sumber

i. Database : MReconciler

Page 10: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

64

ii. Tabel : injection _state

b. Data Tujuan

i. Database : MSytemDM

ii. Tabel : DimInjection_State

iii. SQL Sintaks :

“select enumvalue,name from injection_state”

5. Load Telco

Data flow ini berfungsi menarik data dimensi provider telekomunikasi.

a. Data Sumber

i. Database : MReconciler

ii. Tabel : telco

b. Data Tujuan

i. Database : MSytemDM

ii. Tabel : DimTelco

iii. SQL Sintaks :

“select t.oid,id,name from telco t with (nolock) join issuing_body ib with (nolock) on t.oid=ib.oid”

Page 11: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

65

6. Load Code Type

Data flow ini berfungsi menarik data dimensi produk provider telekomunikasi.

a. Data Sumber

i. Database : MReconciler

ii. Tabel : code_type

b. Data Tujuan

i. Database : MSytemDM

ii. Tabel : DimCode_Type

iii. SQL Sintaks :

“select oid,name,telco from code_type with (nolock)”

4.3.8 Proses ETL Data Transaksi

Pada Proses ETL data transaksi, sebelum data tersebut diimpor ke data mart, data

tersebut harus diekstrak terlebih dahulu, lalu kemudian dikonversi ke bentuk tipe-tipe

yang terdapat pada tabel fact. Berikut data flow dalam proses ETL Data Transaksi:

1. User Top up

Data flow ini berfungsi menarik data dimensi top up yang dilakukan pelanggan

sendiri

a. Data Sumber

i. Database : MReconciler

Page 12: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

66

ii. Tabel : Top up,code,injection

iii. SQL Sintaks:

“select convert(varchar,injectiondate,101)

as TopupDate, codetype, store, i.state,

t.oid as Topup, ts.Oid as Sales,

RedeemedAt, injectionDate,1 as UserTopup

from

injection i with (nolock)

left join topup t with(nolock)

on t.injection=i.oid

left join [transaction] ts with(nolock)

on t.[transaction]=ts.oid

join code_type ct with (nolock)

on ct.oid=t.codetype

join code c with (nolock)

on c.oid=t.code

where

convert(varchar,injectiondate,101)=convert(v

archar,getdate()-1,101)

Page 13: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

67

2. Manual Top up

Data flow ini berfungsi menarik data dimensi top up yang dibantu oleh call

center.

a. Data Sumber

i. Database : MReconciler

ii. Tabel : manual_credit,code,injection

iii. SQL Sintaks:

“select convert(varchar,injectiondate,101)

as TopupDate,codetype,issuedonbehalfof as

store,i.state,mc.oid as Topup, ts.Oid as

Sales,injectionDate as RedeemedAt,

injectionDate

From injection i with (nolock)

left join manual_credit mc with(nolock)

on mc.injection=i.oid

left join [transaction] ts with(nolock)

on mc.[transaction]=ts.oid

join code_type ct with (nolock) on

ct.oid=mc.codetype where

Page 14: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

68

convert(varchar,injectiondate,101)=convert(v

archar,getdate()-1,101)”

3. Union All

Data flow ini berfungsi menggabungkan data user dan manual top up.

4. Data mart Destination

Pada bagian ini dilakukan mapping antara kolom input dan kolom tujuan.

Gambar 4.5 Desain ETL Tabel Fact

Page 15: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

69

4.4 Metadata

Berdasarkan teori metadata warehouse pada Bab 2, Berikut ini hasil analisa

metadata warehouse Sistem M. Metadata warehouse Sistem M ini dibagi menjadi 3

bagian.

4.4.1 Operational Metadata

Metadata operasional merupakan data yang menjelaskan informasi tentang

sumber-sumber warehouse. Berikut ini adalah daftar struktur metadata operasional:

1. Kode Tabel: RETAILER

Nama Tabel: Tabel Retailer

Keterangan: Berisi data tentang retailer yang menjual produk M Cashback

Key: oid

Nama Field Tipe Field Panjang Field Keterangan

Oid GUID - ID retailer

externalId Varchar 50 ID retailer

tambahan

codeExpiryPeriod Integer - Masa berlaku kode

voucher

Tabel 4.3 Definisi Tabel Retailer

Page 16: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

70

2. Kode Tabel: STORE_GROUP

Nama Tabel: Tabel Store Group

Keterangan: Berisi data grup-grup cabang retailer yang menjual produk M

Cashback

Key: oid

Nama Field Tipe Field Panjang Field Keterangan

Oid GUID - ID grup retailer

externalId Varchar 50 ID grup retailer

tambahan

Retailer GUID - ID retailer

Inactive Varchar 1 Status retailer

Tabel 4.4 Definisi tabel store group

Page 17: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

71

3. Kode Tabel: STORE

Nama Tabel: Tabel Store

Keterangan: Berisi data cabang-cabang retailer yang menjual produk M

Cashback

Key: oid

Nama Field Tipe Field Panjang Field Keterangan

Oid GUID - ID toko retailer

externalId Varchar 50 ID tambahan toko

retailer

storeGroup GUID - ID grup retailer

tambahan

Retailer GUID - ID retailer

addressLine Varchar 50 Alamat toko

City Varchar 50 Kota toko

Region Varchar 50 Regional toko

Postcode Varchar 5 Kode pos toko

managerName Varchar 50 Nama manager

toko

Telephone Varchar 20 Nomor telepon

toko

Tabel 4.5 Definisi tabel store

Page 18: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

72

4. Kode Tabel: CODE

Nama Tabel: Tabel Code

Keterangan: Berisi data kode voucher yang akan dijualkan kepada pelanggan

Key: oid

Nama Field Tipe Field Panjang Field Keterangan

Oid GUID - ID Code

Code Long Integer - Kode voucher

padOrValue Integer - Nilai Voucher

State Varchar 10 Status pengisian

voucher

Type Varchar 50 Jenis voucher

yang diisikan

Store GUID - Toko yang

menjualkan

voucher

Tabel 4.6 Definisi tabel code

Page 19: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

73

5. Kode Tabel: CODE_STATE

Nama Tabel: Tabel Code State

Keterangan: Berisi data status pengisian kode ke nomor handphone

Key: oid

Nama Field Tipe Field Panjang Field Keterangan

Oid GUID - ID Status Kode

Name Varchar 50 Penamaan status

kode

Description Varchar 50 Definisi setiap

status

Tabel 4.7 Defenisi tabel code state

Page 20: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

74

6. Kode Tabel: CODE_TYPE

Nama Tabel: Tabel Code Type

Keterangan: Berisi data satuan nilai kode yang dijual kepada pelanggan.

Key: oid

Nama Field Tipe Field Panjang Field Keterangan

Oid GUID 50 ID tipe kode yang

diisikan

Name Varchar 50 Nama tipe kode

daysBeforeExpiry Integer - Lama masa

berlaku tipe kode

voucher

Telco Varchar 50 Perusahaan

operator

Tabel 4.8 Defenisi tabel code type

Page 21: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

75

7. Kode Tabel: PHONE

Nama Tabel: Tabel Phone

Keterangan: Berisi data nomor handphone yang pernah diisikan pulsa melalui M

Cashback

Key: oid

Nama Field Tipe Field Panjang Field Keterangan

Msisdn Varchar 20 Nomor handphone

yang pernah

diisikan

Telco GUID - Operator pemilik

nomor

Tabel 4.9 Definisi Tabel Phone

Page 22: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

76

8. Kode Tabel: TELCO

Nama Tabel: Tabel Telco

Keterangan: Berisi data operator

Key: oid

Nama Field Tipe Field Panjang Field Keterangan

Oid GUID - ID Operator

telekomunikasi

Id Varchar 50 ID tambahan

operator

Country Varchar 20 Negara pemilik

operator

telekomunikasi

Language Varchar 50 Bahasa yang

digunakan

operator

Tabel 4.10 Definisi tabel telco

Page 23: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

77

9. Kode Tabel: TOP UP

Nama Tabel: Tabel Top up

Keterangan: Berisi data proses pengisian dan pembuatan kode voucher

Key:

Nama Field Tipe Field Panjang Field Keterangan

Oid GUID - ID proses top up

Transaction GUID - ID transaksi

voucher

Amount Integer - Nilai yang akan

diisikan

Code Long Integer - Kode Voucher

Tabel 4.11 Definisi tabel top up

Page 24: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

78

10. Kode Tabel: TRANSACTION

Nama Tabel: Tabel Transaksi

Keterangan: Data transaksi

Key: oid

Nama Field Tipe Field Panjang Field Keterangan

Oid GUID - ID transaksi

Date Datetime 8 Tanggal transaksi

Operator Varchar 50 Petugas yang

menjualkan

retailTransactionTotal Integer - Total nilai

transaksi

Tabel 4.12 Definisi tabel transaksi

Page 25: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

79

11. Kode Tabel: INJECTION

Nama Tabel: Tabel Injection

Keterangan: Berisi informasi status proses pengisian pulsa

Key: oid

Nama Field Tipe Field Panjang Field Keterangan

Oid GUID - ID Injection

injectionDate Datetime 8 Tanggal pengisian

pulsa ke nomor

telepon

Amount Integer - Nilai voucher

yang diisikan

Phone Varchar 20 Nomor handphone

yang pernah

diisikan

Telco GUID - ID Operator

telekomunikasi

State Varchar 20 Status pengisian

pulsa

Tabel 4.13 Definisi tabel injection

Page 26: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

80

4.4.2 Extract Transform Load Metadata

Dalam proses ETL, dilakukan proses transfomasi format dan agregasi dari sumber

data menjadi data tujuan. Berikut ini metadata untuk proses ETL data warehouse Sistem

M.

1. Add ElapsedTimeTop up and SuccesTop up

Derived Column

name

Derived

Column

Expression DateType

ElapsedTimeTopup <add as new

column>

ISNULL(RedeemedAt) ? 0 :

ABS((DATEDIFF("s",

RedeemedAt,injectionDate)))

Int

SuccesTopup <add as new

column>

state == 3 ? 1 : 0 Int

Tabel 4.14 Elapsed time top up dan sources top up

2. Aggregate

Input Column Operation

Topup Count

Sales Count

UserTopup Count

ElapsedTimeTo up Average

SuccesTopup Count

Page 27: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

81

Store Group by

CodeType Group by

TopupDate Group by

Tabel 4.15 Proses aggregate

Page 28: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

82

3. Add FailedToup dan ManualTopup

Derived Column

name

Derived

Column

Expression DateType

FailedTopup <add as new

column>

(DT_I8)TTopup –

SuccesTopup

Int

ManualTopup <add as new

column>

Topup – UserTopup Int

Tabel 4.16 Proses failed top up dan manual top up

4. Data Conversion

Input Column Ouput Alias Data Type

Ttopup Topup2 four-byte signed integer [DT_I4]

Tsales Sales2 four-byte signed integer [DT_I4]

TuserTopup UserTopup2 four-byte signed integer [DT_I4]

Top upDate TopupDate2 database timestamp

[DT_DBTIMESTAMP]

Page 29: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

83

ElapsedTimeTopup ElapsedTimeTopup2 four-byte signed integer [DT_I4]

SuccesTopup SuccesTopup2 four-byte signed integer [DT_I4]

FailedTopup FailedTopup2 four-byte signed integer [DT_I4]

ManualTopup ManualTopup2 four-byte signed integer [DT_I4]

Tabel 4.17 Mapping konversi data dari source ke destination

Page 30: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

84

4.4.3 End User Metadata

End User Metadata merupakan informasi-informasi yang berhubungan desain

data warehouse. Informasi tersebut meliputi dimensi, hirarki, tabel fakta dan lain-lain.

Berikut ini metadata dimensi dan hirarki dari data mart Sistem M:

Dimensi Atribut OLTP Tipe data Induk Dimensi

Telco Telco.ID Long Tidak ada

Code_Type Code_Type.Name Nvarchar(50) Telco

Retailer Retailer.ExternalID Nvarchar(50) Tidak ada

Store Group Store_Group.ExternalID Nvarchar(50) Retailer

Store Store.ExternalID Nvarchar(50) Store_Group

Top upTime Waktu yang dibutuhkan

dalam sebuah transaksi

Int Tidak ada

Injection_State Injection_State.EnumValue Int Tidak ada

Target Tidak ada Int Tidak ada

Tabel 4.18 Daftar dimensi dan hirarki dari Data mart Sistem M

Berikut ini adalah metadata tabel Top up Fact:

Top up Fact

Nama Atribut Tipe Data

Topup Int

Sales Int

UserTopup Int

Page 31: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

85

ManualTopup Int

SuccessTopup Int

FailedTopup Int

ElapsedTimeTopup Int

Topupdate Datetime (PK)

CodeType Uniqueidentifier (PK)

Store Uniqueidentifier (PK)

Tabel 4.19 Top up Fact

4.4.4 Membangun OLAP Cube

Langkah-langkah dalam membentuk cube OLAP adalah sebagai berikut:

1. Menentukan tabel dimensi time dalam hal ini adalah tabel Top upfact

2. Menentukan tabel periode waktu yaitu tanggal, bulan dan tahun.

3. Finalisasi struktur data cube.

4. Deploy dan upload data cube.

Page 32: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

86

Gambar 4.6 Finalisasi struktur Cube

4.4.5 Desain Modul Dashboard

M Digital dashboard dibagi menjadi 4 modul. Modul utamanya adalah digital

dashboard sedangkan modul yang lain sebagi modul pendukung dari digital dashboard

tersebut. Setiap modul terdiri dari beberapa fungsi dan halaman. Berikut ini modul yang

terdapat dalam digital dashboard:

1. Modul Keamanan

Modul keamanan adalah modul yang berfungsi mengatur pengguna, serta hak

aksesnya. Modul keamanan terdiri dari beberapa fungsi. Berikut ini adalah

fungsi-fungsi pada modul keamanan

Page 33: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

87

a. Fungsi Login

b. Fungsi Create User

c. Fungsi Manage User

d. Fungsi Recovery Password

e. Fungsi Change Password

2. Modul Pengaturan Target

Modul Pengaturan Target adalah modul yang berfungsi untuk mengatur

target, setiap retailer berdasarkan kurun waktu tertentu.

a. Fungsi View Target

b. Fungsi Add Target

c. Fungsi Edit Target

3. Modul Ad Hoc Report

Modul Ad Hoc Report adalah sebuah modul yang berisi sebuah fungsi

OLAP. Dengan menggunakan modul ini pengguna dapat membuat laporannya

sediri sesuai dengan kebutuhan pengguna.

4. Modul Digital dashboard

Seperti dijelaskan sebelumnya bahwa modul digital dashboard adalah modul

utama dari M Digital dashboard. Laporan yang ditampilkan pada umumnya

Page 34: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

88

merupakan laporan grafis, ada beberapa laporan yang ditampilkan secara tabular

sesuai dengan kebutuhan pengguna.

a. Fungsi Summary Report

b. Fungsi Retailer Report

c. Fungsi Telco Report

d. Fungsi Comparison Report

e. Fungsi Period Snapshot Report

f. Fungsi Exception Report

Page 35: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

89

4.4.6 Spesifikasi Fungsi Login

Nomor Fungsi : F001

Deskripsi : Fungsi untuk otentikasi pengguna sistem

Jenis : Form Entry Tabular

1. Spesifikasi Data

Jenis Data : Input

Tabel : aspnet_membership

Sintaks Sql :

“select * from aspnet_membership where userid=@userid and password=@password”

2. Layout Layar

Gambar 4.7 Layout halaman login

Page 36: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

90

3. Spesifikasi Objek

Id_Objek Jenis Keterangan lblUser Label Merupakan penanda field yang akan diisi lblPassword Label Merupakan penanda field yang akan diisi txtUser Textbox Merupakan input text username txtPassword Textbox Merupakan input text password btnUser Button Menandai pengiriman data login dan memluai proses

login Tabel 4.20 Detail spesifikasi objek fungsi login

4. Cara penggunaan layar

Layar login digunakan untuk mencegah user yang tidak berhak masuk ke dalam

digital dashboard dan mengakses informasi yang terdapat didalamnya.

Cara Penggunaan Layar Login:

1. Isi username pada tempat yang disediakan untuk username

2. Isi password pada tempat yang telah disediakan untuk password, password yang

telah diketik akan ditampilkan dalam format karakter bintang (*).

3. Klik tombol login

Jika username dan password benar, maka akan langsung masuk ke dalam layar

home. Jika username dan password salah, maka akan ditampilkan di layar login tidak

berhasil dan muncul pesan kesalahan username atau password anda salah.

Page 37: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

91

4.4.7 Spesifikasi Fungsi Create User

Nomor Fungsi : F002

Deskripsi : Fungsi untuk membuat user baru

Jenis : Form entry tabular

1. Spesifikasi Data

Jenis Data :Input

Tabel : aspnet_Membership

Sintaks Sql :

“ALTER PROCEDURE [dbo].[aspnet_Membership_CreateUser]

@ApplicationName nvarchar(256),

@Username nvarchar(256),

@Password nvarchar(128),

@PasswordSalt nvarchar(128),

@Email nvarchar(256),

@PasswordQuestion nvarchar(256),

@PasswordAnswer nvarchar(128),

@IsApproved bit,

@CurrentTimeUtc datetime,

@CreateDate datetime = NULL,

@UniqueEmail int= 0,

@PasswordFormat int = 0,

@UserId

uniqueidentifier OUTPUT

Page 38: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

92

AS

INSERT INTO dbo.aspnet_Membership

( ApplicationId,

UserId,

Password,

PasswordSalt,

Email,

LoweredEmail,

PasswordQuestion,

PasswordAnswer,

PasswordFormat,

IsApproved,

IsLockedOut,

CreateDate,

LastLoginDate,

LastPasswordChangedDate,

LastLockoutDate,

FailedPasswordAttemptCount,

FailedPasswordAttemptWindowStart,

FailedPasswordAnswerAttemptCount,

FailedPasswordAnswerAttemptWindowStart )

VALUES ( @ApplicationId,

@UserId,

@Password,

@PasswordSalt,

@Email,

LOWER(@Email),

Page 39: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

93

@PasswordQuestion,

@PasswordAnswer,

@PasswordFormat,

@IsApproved,

@IsLockedOut,

@CreateDate,

@CreateDate,

@CreateDate,

@LastLockoutDate,

@FailedPasswordAttemptCount,

@FailedPasswordAttemptWindowStart,

@FailedPasswordAnswerAttemptCount,

@FailedPasswordAnswerAttemptWindowStart)

2. Layout Layar

Gambar 4.8 Layout halaman create user

Page 40: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

94

3. Spesifikasi Objek

Id_Objek Jenis Keterangan

lblUsername Label Merupakan penanda field yang akan diisi

lblPassword Label Merupakan penanda field yang akan diisi

lblConfirmPassword Label Merupakan penanda field yang akan diisi

lblEmail Label Merupakan penanda field yang akan diisi

lblSecurityQuestion Label Merupakan penanda field yang akan diisi

lblSecurityAnswer Label Merupakan penanda field yang akan diisi

txtUsername Textbox Merupakan input text username

txtPassword Textbox Merupakan input text password

txtConfirmPassword Textbox Merupakan input text konfirmasi password

txtEmail Textbox Merupakan input email

txtSecurityQuestion Textbox Merupakan input text pertanyaan untuk keamanan

txtSecurityAnswer Textbox Merupakan input text jawaban atas pertanyaan keamanan

btnSave Button Merupakan tombol aksi simpan data user

btnCancel Button Merupakan tombol aksi pembatalan user Tabel 4.21 Detail spesifikasi objek fungsi create user

Page 41: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

95

4. Cara penggunaan layar

Layar create user ini digunakan untuk membuat user baru yang ingin

menggunakan sistem ini.

Langkah langkah mengunakan layar adalah sebagai berikut :

1. Isi nama user yang di inginkan kedalam textbox username minimal 6 karakter

dan menggunakan alphanumeric.

2. Buat kata sandi yang anda inginkan minimal 5 character (case sensitive), lalu

ulangi lagi pada textbox confirm password dengan kata sandi yang sama, jika

tidak sama akan muncul pesan password dan konfirmasi tidak sama.

3. Untuk mendapatkan konfirmasi pengaktifan user anda harus memasukkan email

anda kedalam textbox email

4. Jika anda lupa akan password anda diberikan sebuah pertanyaan keamanan. Anda

dapat membuat pertanyaan di textbox security question. Lalu anda dapat

menuliskan jawabannya pada textboxt security answer.

5. Lalu tekan tombol save untuk menyimpan data, atau menekan tombol cancel

untuk membatalkan transaksi yang dilakukan.

Page 42: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

96

4.4.8 Spesifikasi Fungsi Manage User

Nomor Fungsi : F003

Deskripsi : Fungsi untuk mengatur user yang ada di database.

Jenis : Form Master-Detail

1. Spesifikasi Data

Jenis Data :Ouput

Tabel :aspnet_Membership

Sintaks Sql :

“ALTER PROCEDURE [dbo].[aspnet_Membership_GetAllUsers] @ApplicationName nvarchar(256), @PageIndex int, @PageSize int AS

INSERT INTO #PageIndexForUsers (UserId) SELECT u.UserId FROM dbo.aspnet_Membership m, dbo.aspnet_users u

WHERE u.ApplicationId = @ApplicationId AND u.UserId = m.UserId

ORDER BY u.Username SELECT @TotalRecords = @@ROWCOUNT SELECT u.Username, m.Email, m.PasswordQuestion,

m.Comment, m.IsApproved, m.CreateDate, m.LastLoginDate, u.LastActivityDate, m.LastPasswordChangedDate, u.UserId, m.IsLockedOut, m.LastLockoutDate

FROM dbo.aspnet_Membership m, dbo.aspnet_Users u, #PageIndexForUsers p

WHERE u.UserId = p.UserId AND u.UserId = m.UserId AND p.IndexId >= @PageLowerBound AND p.IndexId <= @PageUpperBound

Page 43: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

97

ORDER BY u.Username

2. Layout Layar

Gambar 4.9 Layout halaman user list

3. Spesifikasi Objek

Id_Objek Jenis Keterangan grvUser grid view Merupakan daftar user

Tabel 4.22 Detail spesifikasi objek fungsi user list

4. Petunjuk penggunaan layar

Layar ini berfungsi untuk menampilkan seluruh informasi dari nama user, email

dan status dari user yang terdaftar. Cara penggunaannya adalah sebagai berikut :

1. Untuk mengubah user pilih ubah maka akan muncul, layar edit user

2. Untuk menghapus user maka akan muncul pesan apakah anda yakin, jika di pilih

yes maka user akan terhapus dari sistem.

4.4.9 Spesifikasi sub fungsi Edit User

Nomor Fungsi : F004

Page 44: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

98

Deskripsi : Fungsi untuk meng-edit detail user

Jenis : Form Entry Tabular

1. Spesifikasi Data

Jenis Data :Input

Tabel :aspnet_Membership

Sintaks Sql :

ALTER PROCEDURE [dbo].[aspnet_Membership_UpdateUser] @ApplicationName nvarchar(256), @Username nvarchar(256), @Email nvarchar(256), @Comment ntext, @IsApproved bit, @LastLoginDate datetime, @LastActivityDate datetime, @UniqueEmail int, @CurrentTimeUtc datetime AS

UPDATE dbo.aspnet_Membership WITH (ROWLOCK) SET Email = @Email, LoweredEmail = LOWER(@Email), Comment = @Comment, IsApproved = @IsApproved, LastLoginDate = @LastLoginDate WHERE @UserId = UserId IF( @@ERROR <> 0 ) GOTO Cleanup IF( @TranStarted = 1 ) BEGIN SET @TranStarted = 0 COMMIT TRANSACTION END RETURN 0

Page 45: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

99

2. Layout Layar

Gambar 4.10 Layout halaman edit user

Page 46: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

100

3. Spesifikasi Objek

Id_Objek Jenis Keterangan lblUsername Label Merupakan penanda field yang akan diisi lblPassword Label Merupakan penanda field yang akan diisi lblRole Label Merupakan penanda field yang akan diisi lblAdmin Label Merupakan penanda field yang akan diisi lblUser Label Merupakan penanda field yang akan diisi rbAdmin Radio button Merupakan penanda field yang akan dipilih rbUser Radio button Merupakan penanda field yang akan dipilih btnSave Button Merupakan tombol aksi simpan data user btnCancel Button Merupakan tombol aksi pembatalan

Tabel 4.23 Detail spesifikasi objek fungsi manage user

4. Petunjuk penggunaan layar.

Layar ini berfungsi untuk merubah password user.

Jika input text password diisi kurang dari enam karakter, “Password minimal enam

karakter”

4.4.10 Spesifikasi Fungsi Recovery Password

4.4.10.1 Spesifikasi sub fungsi Username Check

Nomor Fungsi : F005

Deskripsi : Fungsi untuk memeriksa ada atau tidak username.

Jenis : Form Entry Tabular

1. Spesifikasi Data

Jenis Data : Input

Tabel : aspnet_Membership

Page 47: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

101

Sintaks Sql :

ALTER PROCEDURE [dbo].[aspnet_Membership_FindUsersByName] @ApplicationName nvarchar(256), @UsernameToMatch nvarchar(256), @PageIndex int, @PageSize int AS SELECT u.Username, m.Email, m.PasswordQuestion, m.Comment, m.IsApproved, m.CreateDate, m.LastLoginDate, u.LastActivityDate, m.LastPasswordChangedDate, u.UserId, m.IsLockedOut, m.LastLockoutDate FROM dbo.aspnet_Membership m, dbo.aspnet_Users u, #PageIndexForUsers p WHERE u.UserId = p.UserId AND u.UserId = m.UserId AND p.IndexId >= @PageLowerBound AND p.IndexId <= @PageUpperBound ORDER BY u.Username SELECT @TotalRecords = COUNT(*) FROM #PageIndexForUsers RETURN @TotalRecords 2. LayoutLayar

Gambar 4.11 Layout halaman sub fungsi username check

Page 48: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

102

3. Spesifikasi Objek

Id_Objek Jenis Keterangan

lblUsername Label Merupakan penanda field yang akan diisi

btnSubmit Button Merupakan tombol aksi kirim masukan melalui form

Tabel 4.24 Detail spesifikasi objek sub fungsi username check

4. Petunjuk penggunaan layar.

Masukkan username anda pada textbox tekan submit, jika user ada maka akan

muncul layar seperti gambar 4.12 jika salah maka akan muncul pesan “ username tidak

tersedia”

4.4.10.2 Spesifikasi sub fungsi Identify Confirmation

Nomor Fungsi : F006

Deskripsi : Fungsi untuk mengidentifikasi kebenaran username dengan

Menjawab security question untuk mengembalikan password

yang lama.

Jenis : Form Entry Tabular

1. Spesifikasi Data

Jenis Data : Input

Tabel : aspnet_Membership

Sintaks Sql :

Page 49: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

103

ALTER PROCEDURE [dbo].[aspnet_Membership_ChangePasswordQuestionAndAnswer] @ApplicationName nvarchar(256), @Username nvarchar(256), @NewPasswordQuestion nvarchar(256), @NewPasswordAnswer nvarchar(128) AS BEGIN DECLARE @UserId uniqueidentifier SELECT @UserId = NULL SELECT @UserId = u.UserId FROM dbo.aspnet_Membership m, dbo.aspnet_Users u, dbo.aspnet_Applications a WHERE LoweredUsername = LOWER(@Username) AND u.ApplicationId = a.ApplicationId AND LOWER(@ApplicationName) = a.LoweredApplicationName AND u.UserId = m.UserId IF (@UserId IS NULL) BEGIN RETURN(1) END UPDATE dbo.aspnet_Membership SET PasswordQuestion = @NewPasswordQuestion, PasswordAnswer = @NewPasswordAnswer WHERE UserId=@UserId RETURN(0) END 2. Layout Layar

Page 50: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

104

Gambar 4.12 Layout halaman sub fungsi identify confirmation

3. Spesifikasi Objek

Id_Objek Jenis Keterangan

lblUsername2 Label Merupakan penanda field yang akan diisi

txtSecurityQuestion Textbox Merupakan input text pertanyaan untuk keamanan

txtSecurityAnswer Textbox Merupakan input text jawaban atas pertanyaan keamanan

btnSubmit2 Button Merupakan tombol aksi kirim masukan melalui form

Tabel 4.25 Detail spesifikasi objek sub fungsi identify confirmation

4. Petunjuk penggunaan layar

Page 51: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

105

Setelah proses pada penggunaan layar pada gambar 4.11 maka pada design layar

gambar 2.11 akan muncul nama user dan pertanyaan rahasia untuk me reset password

anda. Lalu anda dapat mengisi jawaban anda pada textbox answer yang tersedia dilayar.

4.4.11 Spesifikasi Fungsi Change Password

Nomor Fungsi : F007

Deskripsi : Fungsi untuk mengganti password user

Jenis : Form Entry Tabular

Page 52: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

106

1. Spesifikasi Data

Jenis Data :Input

Tabel :aspnet_membership

Sintaks Sql :

“ALTER PROCEDURE [dbo].[aspnet_Membership_SetPassword]

@ApplicationName nvarchar(256),

@Username nvarchar(256),

@NewPassword nvarchar(128),

@PasswordSalt nvarchar(128),

@CurrentTimeUtc datetime,

@PasswordFormat int = 0

AS

BEGIN

DECLARE @UserId uniqueidentifier

SELECT @UserId = NULL

SELECT @UserId = u.UserId

FROM dbo.aspnet_Users u, dbo.aspnet_Applications a,

dbo.aspnet_Membership m

WHERE LoweredUsername = LOWER(@Username) AND

u.ApplicationId = a.ApplicationId AND

LOWER(@ApplicationName) =

a.LoweredApplicationName AND

u.UserId = m.UserId

IF (@UserId IS NULL)

RETURN(1)

UPDATE dbo.aspnet_Membership

Page 53: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

107

SET Password = @NewPassword, PasswordFormat =

@PasswordFormat, PasswordSalt = @PasswordSalt,

LastPasswordChangedDate = @CurrentTimeUtc

WHERE @UserId = UserId

RETURN(0)

END”

2. Layout Layar

Gambar 4.13 Layout halaman change password

3. Spesifikasi Objek

Id_Objek Jenis Keterangan

lblPassword Label Merupakan penanda field yang akan diisi

lblConfirmPassword Label Merupakan penanda field yang akan diisi

lblConfirmNewPassword

Label Merupakan penanda field yang akan diisi

txtPassword Textbox Merupakan input text password

txtConfirmPassword Textbox Merupakan input text konfirmasi password

Page 54: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

108

Id_Objek Jenis Keterangan

txtConfirmNewPassword

Textbox Merupakan input text konfirmasi password baru

btnChangePassword Button Merupakan tombol aksi ganti password

btnCancel Button Merupakan tombol aksi pembatalan user

Tabel 4.26 Detail spesifikasi objek fungsi change password

4. Petunjuk penggunaan layar

Layar ini di gunakan untuk mengganti password user yang sedang aktif, dan

syarat penggantian password minimal 6 karakter alpanumerik cara penggunaannya

adalah sebagai berikut :

1. Masukkan pada password lama anda pada textbox password.jika password yang

anda masukkan salah maka pada saat anda menekan tombol change password

yang dimasukkan salah, maka akan muncul pesan “Password anda salah”

2. Lalu masukkan password baru anda pada textbox new password dan lakukan hal

yang sama pada textbox confirm password Jika password baru dan konfirmasi

password tidak sesuai, maka akan muncul pesan “Konfirmasi password baru

tidak sesuai”

3. Jika password baru kurang dari enam karakter maka akan muncul pesan,

“Password tidak boleh kurang dari enam karakter ”

4.4.12 Spesifikasi Fungsi Add Target

Nomor Fungsi : F009

Deskripsi : Fungsi untuk menambah target baru.

Jenis : Form Entry Tabular

Page 55: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

109

1. Spesifikasi Data

Jenis Data :Input/Ouput

Tabel :dimTarget

Sintaks Sql :

“if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[spDimTargetInsert]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) drop procedure [dbo].[spDimTargetInsert] GO CREATE PROCEDURE [dbo].[spDimTargetInsert] ( @oid uniqueidentifier, @Retailer uniqueidentifier, @Year int, @Target int ) AS SET NOCOUNT ON INSERT INTO [DimTarget] ( [oid], [Retailer], [Year], [Target] ) VALUES ( @oid, @Retailer, @Year, @Target ) GO”

Page 56: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

110

2. Layout Layar

Gambar 4.14 Layout halaman add target

3. Spesifikasi Objek

Id_Objek Jenis Keterangan

lblRetailer Label Merupakan penanda field yang akan diisi

lblTargetGroup Label Merupakan penanda field yang akan diisi

lblYear Label Merupakan penanda field yang akan diisi

lblTarget Label Merupakan penanda field yang akan diisi

ddlRetailer dropdown list

Merupakan list pilihan retailer

ddlTargetGroup dropdown list

Merupakan list pilihan grup target

ddlYear dropdown list

Merupakan list tahun

Page 57: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

111

Id_Objek Jenis Keterangan

txtTarget Textarea Merupakan input text untuk target yang didefinisikan

btnSave Button Merupakan tombol aksi simpan data

btnCancel Button Merupakan tombol aksi pembatalan

Tabel 4.16 Detail spesifikasi objek fungsi add target

4. Petunjuk penggunaan layar.

Fungsi layar add target adalah untuk membuat target sales yang diinginkan oleh

perusahaan, dan dilakukan oleh Admin atas perintah dari top manajemen. Adapun cara

penggunaan addalah sebagai berikut :

1. Pertama pilih retailer yang ingin buat target penjualannya

2. Lalu pilih target berdasarkan tiga tingkatan yaitu store group, store dan retailer

target group hanya di isi sekali pertahun.

3. Pilih tahun yang anda ingin buat target

4. Tuliskan berapa target yang anda inginkan pada textbox target dalam format

numeric.

5. Lalu tekan tombol save.

4.4.13 Spesifikasi Fungsi View Target

Nomor Fungsi : F008

Deskripsi : Fungsi untuk me-list target yang sudah ditentukan

Jenis : Report Columnar

Page 58: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

112

1. Spesifikasi Data

Jenis Data :Ouput

Tabel :dimTarget

Sintaks Sql :

“if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[spDimTargetSelectAll]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) drop procedure [dbo].[spDimTargetSelectAll] GO CREATE PROCEDURE [dbo].[spDimTargetSelectAll] AS SET NOCOUNT ON SELECT [oid], [Retailer], [Year], [Target] FROM [DimTarget] GO /********************************************************/ if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[spDimTargetSelectAllByRetailer]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) drop procedure [dbo].[spDimTargetSelectAllByRetailer] GO CREATE PROCEDURE [dbo].[spDimTargetSelectAllByRetailer] ( @Retailer uniqueidentifier ) AS SET NOCOUNT ON SELECT [oid],

Page 59: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

113

[Retailer], [Year], [Target] FROM [DimTarget] WHERE [Retailer] = @Retailer GO“ “if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[spDimTargetDelete]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) drop procedure [dbo].[spDimTargetDelete] GO CREATE PROCEDURE [dbo].[spDimTargetDelete] ( @oid uniqueidentifier ) AS SET NOCOUNT ON DELETE FROM [DimTarget] WHERE [oid] = @oid GO” 2. Layout Layar

Gambar 4.15 Layout halaman view target

Page 60: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

114

3. Spesifikasi Objek

Id_Objek Jenis Keterangan grvTarget grid view Merupakan daftar target

Tabel 4.27 Detail spesifikasi objek fungsi view target

4. Petunjuk penggunaan layar

Layar view target di gunakan untuk melihat target secara keseluruhan maksimal

baris yang di tampilkan adalah 10 baris dan disusun dari tahun tertinggi ketahun yang

terendah. Jika anda ingin merubah target dapat dilakukan dengan menekan perintah

ubah. Perubahan target hanya bisa pada dilakukan pada tahun yang sedang berjalan

ataupun tahun di depannya. Lalu muncul design layar gambar 4.16.

4.4.14 Spesifikasi Fungsi Edit Target

Nomor Fungsi : F010

Deskripsi : Fungsi untuk meng-edit target

Jenis : Form Entry columnar/Tabular/Master-Detail

Report Columnar/tabular/Master-Detail

Form berisi dialog/button saja

Proses tanpa layar

1. Spesifikasi Data

Jenis Data :Input/Ouput

Tabel :dimTarget

Page 61: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

115

Sintaks Sql :

“if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[spDimTargetUpdate]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) drop procedure [dbo].[spDimTargetUpdate] GO CREATE PROCEDURE [dbo].[spDimTargetUpdate] ( @oid uniqueidentifier, @Retailer uniqueidentifier, @Year int, @Target int ) AS SET NOCOUNT ON UPDATE [DimTarget] SET [Retailer] = @Retailer, [Year] = @Year, [Target] = @Target WHERE [oid] = @oid GO”

Page 62: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

116

2. Layout Layar

Gambar 4.14 Layout halaman edit target

3. Spesifikasi Objek

Id_Objek Jenis Keterangan

lblRetailer Label Merupakan penanda field yang akan diisi

lblTargetGroup Label Merupakan penanda field yang akan diisi

lblYear Label Merupakan penanda field yang akan diisi

lblTarget Label Merupakan penanda field yang akan diisi

ddlRetailer dropdown list Merupakan list pilihan retailer

ddlTargetGroup dropdown list Merupakan list pilihan grup target

ddlYear dropdown list Merupakan list tahun

Page 63: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

117

Id_Objek Jenis Keterangan

txtTarget Textarea Merupakan input text untuk target yang didefinisikan

btnSave Button Merupakan tombol aksi simpan data

btnCancel Button Merupakan tombol aksi pembatalan

Tabel 4.28 Detail spesifikasi objek fungsi edit target

4. Petunjuk penggunaan layar

Fungsi ini muncul setelah kita memilih perintah ubah pada gambar design layar 4.14,

secara default combo retailer, target group dan year akan di nonaktifkan dan cursor

berada pada textbox target. Lalu anda bisa merubah target yang anda inginkan lalu

menekan tombol save untuk menyimpan target baru kedalam database.

4.4.15 Spesifikasi Fungsi Ad Hoc Report

Nomor Fungsi : F011

Deskripsi : Fungsi untuk reporting khusus secara detail

Jenis : Report Master-Detail

1. Spesifikasi Data

Data untuk Ad hoc report berasal dari SQL Server Analysis Service, yang sturktur

cubenya sudah dijelaskan pada subbab sebelumnya.

Page 64: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

118

2. Layout Layar

Chart Grid

92%

55%80% 70% 80%

SeriesSelected Cube

Categories

Measures And DimensionMeasures

-----

Dimension-----

Gambar 4.15 Layout halaman ad hoc report

Page 65: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

119

3. Spesifikasi Objek

Id_Objek Jenis Keterangan

lblCube Label Merupakan penanda field yang akan diisi

lblMeasure Label Merupakan penanda field yang akan diisi

lblDimension Label Merupakan penanda field yang akan diisi

grvChart Grid view Merupakan grid view

ddlCube dropdown list

Merupakan list pilihan

ddlCategories dropdown list

Merupakan list pilihan

ddlSeries dropdown list

Merupakan list pilihan

Tabel 4.29 Detail spesifikasi objek fungsi ad hoc report

4. Petunjuk penggunaan layar

Layar ini berfungsi untuk menambah informasi sesuai dengan kebutuhan user. Cara

penggunaan layar adalah dengan melakukan drag and drop pada layar, dengan memilih

informasi dari cubes yang ada di kiri layar lalu letakkan pada layar di sebelah kanan.

User dapat membuat report yang dibutuhkan dengan mudah pada modul ini.

4.4.16 Spesifikasi Fungsi Summary Report

Nomor Fungsi : F012

Deskripsi : Fungsi untuk menghasilkan report yang bersifat summary

Jenis : Report Master-Detail

Page 66: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

120

1. Spesifikasi Data

Jenis Data :Ouput

Tabel :Topup

Sintaks Sql :

Top up by Retailer

“ALTER proc [dbo].[sp_TopupbyRetailer] (@start datetime, @end datetime) as select r.name,sum(sucesstopup) as TotalTopup from dbo.TopupFact t with (nolock) join dbo.DimStore s with (nolock) on s.oid=t.store join dbo.DimStore_Group sg with (nolock) on sg.oid=s.storegroup join dbo.DimRetailer r with (nolock) on r.oid=sg.retailer where topupdate between @start and @end

group by r.name”

Subfungsi Top up by Telco

“ALTER proc [dbo].[sp_TopupbyTelco] (@start datetime, @end datetime) as select tc.name,sum(sucesstopup) as TotalTopup from dbo.TopupFact t with (nolock) join dbo.DimCode_Type ct with(nolock) on ct.oid=t.codetype join dbo.DimTelco tc with(nolock) on tc.oid=ct.telco where topupdate between @start and @end group by tc.name having sum(sucesstopup)>5 order by sum(sucesstopup) desc” Top up by Date

“ALTER proc [dbo].[sp_TopupbyDate] as select top 7 topupdate ,sum(sucesstopup) as TotalTopup from dbo.TopupFact t with (nolock) group by topupdate order by topupdate desc”

Page 67: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

121

KPI Success Top up

“ALTER proc [dbo].[sp_SucessPercentage] (@start datetime, @end datetime) as select topupdate,sum(sucesstop up)*100/sum(topup) as Percentage from dbo.TopupFact t with (nolock) join dbo.DimStore s with (nolock) on s.oid=t.store join dbo.DimStore_Group sg with (nolock) on sg.oid=s.storegroup join dbo.DimRetailer r with (nolock) on r.oid=sg.retailer where topupdate between @start and @end group by topupdate” KPI Manual Credit

“create proc [dbo].[sp_ManualCredit] (@start datetime, @end datetime) as select topupdate,sum(manualtop up)*100/sum(topup) as Percentage from dbo.TopupFact t with (nolock) join dbo.DimStore s with (nolock) on s.oid=t.store join dbo.DimStore_Group sg with (nolock) on sg.oid=s.storegroup join dbo.DimRetailer r with (nolock) on r.oid=sg.retailer where topupdate between @start and @end group by topupdate” KPI Top up Speed

“ALTER proc [dbo].[sp_TopupSpeed] (@start datetime, @end datetime) as select topupdate,avg(ElapsedTimeTop up)/60 as ElapsedTime from dbo.TopupFact t with (nolock) join dbo.DimStore s with (nolock) on s.oid=t.store join dbo.DimStore_Group sg with (nolock) on sg.oid=s.storegroup join dbo.DimRetailer r with (nolock) on r.oid=sg.retailer where topupdate between @start and @end group by topupdate”

Page 68: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

122

KPI Target Achievement

“ALTER proc [dbo].[sp_TargetAchievement] (@start datetime, @end datetime) as select topupdate,avg(top up*100/Target) TargetAchievement from dbo.ViewTopupTarget tt with (nolock) join dbo.DimTarget t on tt.oid=t.retailer and t.[year]=tt.topupyear where topupdate between @start and @end group by topupdate”

2. Layout Layar

Gambar 4.16 Layout halaman summary report

3. Spesifikasi Objek

Id_Objek Jenis Keterangan

chartTopupbyRetail Chart Merupakan chart top up by Retail

chartTopupbyTelco Chart Merupakan chart top up by Telco

Page 69: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

123

Id_Objek Jenis Keterangan

chartTo upByDate Chart Merupakan chart top up by Date

gaugeSuccessTopup

Gauge Merupakan image gauge Success Top up

gaugeManualCredit Gauge Merupakan image gauge Automatic Top up

gaugeTopupSpeed Gauge Merupakan image gauge Top up Speed

gaugeTargetAchivement

Gauge Merupakan image gauge Target Achivement

gaugeDownTime Gauge Merupakan image gauge down time

Tabel 4.30 Detail spesifikasi objek fungsi summary report

4. Petunjuk penggunaan layar

Layar summary adalah bagian layar yang menampilkan grafik informasi penjualan

tertinggi secara toko retail, informasi secara provider, dan grafik tanggal tertinggi

penjualan.

Informasi yang ditampilkan oleh gauge adalah indikator performance dari :

1. Success top up percentage gauge ini menampilkan informasi berapa persen Top up

yang sukses secara otomatis. Informasi ini berguna bagi manajemen untuk

mengetahui performance sistem dari masing-masing provider telco. Yang nantinya

digunakan manajemen untuk me-review provider telco jika hasilnya baik akan

menambah jumlah penjualan sedangkan jika hasilnya buruk akan di gunakan untuk

meminta support dari telco untuk memperbaiki sistem mereka.

2. Manual credit percentage gauge ini menampilkan informasi berapa persen

pengisian pulsa yang dilakukan secara manual. Informasi ini berguna untuk

mengetahui berapa banyak customer yang gagal melakukan pengisian pulsa secara

otomatis. Hal ini dapat mengakibatkan penurunan jumlah penjualan karena

Page 70: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

124

berhubungan dengan performance dan pelayanan yang diberikan oleh M cashback

kepada customernya.

3. Top up speed average gauge ini menampilkan informasi berapa kecepatan rata-rata

pengisian pulsa secara otomatis. Informasi ini berguna untuk mengetahui

performance dari masing masing sistem yang ada di provider telco. Yang nanti

digunakan manajemen untuk menganalisa infrastruktur M Cashback secara

keseluruhan baik itu sitem di sisi internal maupun yang berada diluar (koneksi

internet atau sistem dari provider telco)

4. Target Achivement gauge adalah indicator yang menerangkan berapa persen target

yang tercapai pada saat ini. Informasi ini digunakan untuk menganalisa strategi

bisnis dan perfomance dari perusahaan.

4.4.17 Spesifikasi Fungsi Retailer Report

4.4.17.1 Spesifikasi Sub Fungsi Retailer Report

Nomor Fungsi : F013

Deskripsi : Fungsi untuk menghasilkan report Top up by Retailer

Jenis : Report Master-Detail

1. Spesifikasi Data

Jenis Data :Ouput

Tabel :Topup

Sintaks Sql :

Page 71: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

125

Top up by Telco

ALTER proc [dbo].[sp_TopupbyTelco] (@start datetime, @end datetime) as select tc.name,sum(sucesstopup) as TotalTopup from dbo.TopupFact t with (nolock) join dbo.DimCode_Type ct with(nolock) on ct.oid=t.codetype join dbo.DimTelco tc with(nolock) on tc.oid=ct.telco where top update between @start and @end group by tc.name order by sum(sucesstopup) desc Success

ALTER proc [dbo].[sp_TelcoSuccess] ( @telco nvarchar(50), @date datetime ) as select top 7 topupdate,100*convert(numeric(5,2),convert(float,sum(sucesstopup))/convert(float,sum(Topup))) as SuccessTopup from dbo.TopupFact t with (nolock) join dbo.DimCode_Type ct with(nolock) on ct.oid=t.codetype join dbo.DimTelco tc with(nolock) on tc.oid=ct.telco where tc.name=@telco and topupdate<=@date group by topupdate,tc.name having sum(sucesstopup)>5 order by topupdate desc

Top up by Date

ALTER proc [dbo].[sp_TopupbyDate] as select top 7 topupdate ,sum(sucesstopup) as TotalTopup from dbo.TopupFact t with (nolock) group by topupdate order by topupdate desc

Page 72: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

126

Target vs Achievement

create proc [dbo].[sp_RetailerTargerVSAchievement] ( @retailername nvarchar(50), @date datetime) as select top 10 retailername,topupdate, Target,topup as Achievement from dbo.ViewTopupTarget tt join dbo.DimTarget t on t.retailer=tt.oid and t.year=tt.topupyear where retailername=@retailername and topupdate<=@date order by topupdate desc Top 10 stores

ALTER proc [dbo].[sp_RetailerTopup10] ( @retailername nvarchar(50), @start datetime, @end datetime) as select top 10 ROW_NUMBER() OVER (order by sum(sucesstopup) desc)as [No],s.name as 'Store Name',sum(sucesstopup) as TotalTopup from dbo.TopupFact t with (nolock) join dbo.DimStore s with (nolock) on s.oid=t.store join dbo.DimStore_Group sg with (nolock) on sg.oid=s.storegroup join dbo.DimRetailer r with (nolock) on r.oid=sg.retailer where topupdate between @start and @end and r.name=@retailername group by s.name

Page 73: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

127

2. Layout Layar

Y-A

xis

Y-A

xis

Gambar 4.17 Layout halaman retailer report

Page 74: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

128

3. Spesifikasi Objek

Id_Objek Jenis Keterangan

chartTopupbyTelco Chart Merupakan chart top up by Telco

chartSuccess Chart Merupakan chart top up Success VS Automatic

chartTopupByDate Chart Merupakan chart top up by Date

chartTargetVSAchievement

Chart Merupakan chart target VS achievement

chartManualCredit Chart Merupakan Chart Pengisisan Manual credit

grvTopTenStore grid view Merupakan daftar sepuluh toko dengan penjualan terbaik

ddlRetailer dropdown list

Merupakan pilihan retailer

ddlTimeDimension dropdown list

Merupakan pilihan dimensi waktu

Tabel 4.31 Detail spesifikasi objek fungsi retailer report

4. Petunjuk penggunaan layar.

Desain layar retail report ini berfungsi untuk menampilkan informasi dari sales

performance dari masing masing retailer. Informasi dan cara penggunaannya adalah

sebagai berikut :

1. pilih tanggal awal dari laporan yang anda ingin tampilkan pada layar pada

combo date. Secara default combo date akan mengarah pada tanggal hari ini

2. Lalu anda pilih interval waktu yang anda inginkan pada combo time

dimension, yang berisi pilihan mingguan, bulanan dan tahunan.

Page 75: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

129

3. Lalu pilih retailer yang anda ingin tampilkan dengan memilih dari combo

retailer.

4. Setelah memilih telco maka otomatis tampilan layar berubah menampilkan

informasi performance retailer pada masing masing grafik

5. Grafik top up by telco, grafik ini menampilkan informasi penjualan produk

produk telco pada retailer, informasi pada grafik ini berguna untuk

menganalisa produk yang paling laku pada retailer.

6. Grafik success, grafik ini menampilkan percentase top up yang berhasil

dilakukan secara otomatis dari masing masing telco. Informasi ini berguna

untuk menganasisa performance dari sistem m cashback, telco dan

infrastructure retailer

7. Top up by date, grafik ini menampilakan performance penjualan produk telco

dari masing masing retailer

8. Grafik target vs achievment, grafik ini menampilakan perbandingan antara

target yang di tentukan dengan hasil penjualan yang di lakukan. Informasi ini

berguna untuk mengatur strategi penjualan dan analisa performance dari

masing masing retailer.

9. Grafik manual credit. Grafik ini menampilkan percentase produk telco yang

harus di lakukan secara manual. Informasi ini berguna untuk mengalisa

performance dari sistem m-cashback dan sistem telco.

Page 76: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

130

10. List top ten store, adalah urutan urutan toko retailer yang paling banyak

melakukan penjualan top up. Informasi ini dapat digunakan untuk melakukan

promosi atau pemberian award pada toko sebagai salah satu strategi

marketing.

4.4.17.2 Spesifikasi Sub Fungsi Retailer Report Detail Per Telco

Nomor Fungsi : F014

Deskripsi : Fungsi untuk menghasilkan report Top up Retailer detail per

Telco

Jenis : Report Master-Detail

1. Spesifikasi Data

Jenis Data :Ouput

Tabel :Top up

Sintaks Sql : ALTER proc [dbo].[sp_RetailerTopupbyDenom] ( @retailername nvarchar(50), @telco nvarchar(50), @start datetime, @end datetime) as select ct.name,sum(sucesstopup) as TotalTopup from dbo.TopupFact t with (nolock) join dbo.DimCode_Type ct with(nolock) on ct.oid=t.codetype join dbo.DimTelco tc with(nolock) on tc.oid=ct.telco join dbo.DimStore s with (nolock) on s.oid=t.store join dbo.DimStore_Group sg with (nolock) on sg.oid=s.storegroup join dbo.DimRetailer r with (nolock) on r.oid=sg.retailer where topupdate between @start and @end and r.name=@retailername and tc.name=@telco group by r.name,tc.name,ct.name having sum(sucesstopup)>5

Page 77: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

131

order by sum(sucesstopup) desc

2. Layout Layar

Gambar 4.18 Layout halaman retailer report detail per Telco

3. Spesifikasi Objek

Id_Objek Jenis Keterangan

chartTop upbyDenom Chart Merupakan chart top up by Denom

Tabel 4.32 Detail spesifikasi objek fungsi retailer report

4. Petunjuk penggunaan layar.

Page 78: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,
Page 79: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,
Page 80: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

134

Top up Success

ALTER proc [dbo].[sp_TelcoSuccess] ( @telco nvarchar(50), @date datetime ) as select top 10 topupdate,100*convert(numeric(5,2),convert(float,sum(sucesstopup))/convert(float,sum(Topup))) as SuccessTopup from dbo.TopupFact t with (nolock) join dbo.DimCode_Type ct with(nolock) on ct.oid=t.codetype join dbo.DimTelco tc with(nolock) on tc.oid=ct.telco where tc.name=@telco and topupdate<=@date group by topupdate,tc.name having sum(sucesstopup)>5 order by topupdate desc

Top up by Date

ALTER proc [dbo].[sp_TelcoTopupbyDate] ( @telco nvarchar(50), @date datetime) as select top 7 topupdate ,sum(sucesstopup) as TotalTopup from dbo.TopupFact t with (nolock) join dbo.DimCode_Type ct with(nolock) on ct.oid=t.codetype join dbo.DimTelco tc with(nolock) on tc.oid=ct.telco where tc.name=@telco and topupdate<=@date group by topupdate order by topupdate desc Top up Trends

ALTER proc [dbo].[sp_TelcoTrends] ( @telco nvarchar(50), @date datetime) as select top 10 topupdate,convert(numeric(5,2),(1-(select convert(float,sum(sucesstopup)) from dbo.TopupFact t2 with (nolock)

Page 81: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

135

join dbo.DimCode_Type ct2 with(nolock) on ct2.oid=t2.codetype join dbo.DimTelco tc2 with(nolock) on tc2.oid=ct2.telco and ct2.telco=tc.oid where t2.topupdate=dateadd(d,-1,t.topupdate))/convert(float,sum(sucesstopup)))) as Trends from dbo.TopupFact t with (nolock) join dbo.DimCode_Type ct with(nolock) on ct.oid=t.codetype join dbo.DimTelco tc with(nolock) on tc.oid=ct.telco where tc.name=@telco and topupdate<=@date group by topupdate,tc.oid order by topupdate desc Telco Top up Speed

ALTER proc [dbo].[sp_TelcoTopupSpeed] ( @telco nvarchar(50), @date datetime) as select top 10 topupdate ,avg(ElapsedTimeTopup) as TotalTopup from dbo.TopupFact t with (nolock) join dbo.DimCode_Type ct with(nolock) on ct.oid=t.codetype join dbo.DimTelco tc with(nolock) on tc.oid=ct.telco where tc.name=@telco and topupdate<=@date group by topupdate order by topupdate desc Telco Manual Credit

ALTER proc [dbo].[sp_TelcoManualCredit] ( @telco nvarchar(50), @date datetime ) as select top 7 topupdate,convert(numeric(5,2),100*(1-convert(float,sum(usertopup))/convert(float,sum(Topup)))) as ManualCredit from dbo.TopupFact t with (nolock) join dbo.DimCode_Type ct with(nolock) on ct.oid=t.codetype join dbo.DimTelco tc with(nolock) on tc.oid=ct.telco where tc.name=@telco and topupdate<=@date

Page 82: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

136

group by topupdate,tc.name having sum(sucesstopup)>5 order by topupdate desc Telco List

ALTER proc [dbo].[sp_GetTelco] as select name from dbo.DimTelco

2. Layout Layar

Y-A

xis

Y-A

xis

Y-A

xis

Y-A

xis

Gambar 4.19 Layout halaman telco report

Page 83: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

137

3. Spesifikasi Objek

Id_Objek Jenis Keterangan

chartTopupbyRetail Chart Merupakan chart top up telco by retail

chartSuccess Chart Merupakan chart top up Success by telco

chartTopupByDate Chart Merupakan chart top up by Date

ChartTrend Chart Merupakan chart target VS achievement

chartSpeedAverage Chart Merupakan chart trend pengisian pulsa secara menurut telco

Manual Credit Gridview Merupakan daftar sepuluh toko dengan penjualan terbaik

Tabel 4.33 Detail spesifikasi objek fungsi telco report

Desain layar ini berfungsi untuk menampilkan informasi penjualan dari masing

masing telco secara detail berdasarkan interval waktu yang di inginkan. Cara

penggunaannya adalah sebagai berikut :

1. pilih tanggal awal dari laporan yang anda ingin tampilkan pada layar pada

combo date. Secara default combo date akan mengarah pada tanggal hari ini

2. Lalu anda pilih interval waktu yang anda inginkan pada combo time

dimension, yang berisi pilihan mingguan, bulanan dan tahunan.

3. Lalu pilih telco yang anda ingin tampilkan dengan memilih dari combo telco.

4. Setelah memilih telco maka secara otomatis layar akan menampilkan

informasi yang anda butuhkan dilayar dari mulai informasi

Page 84: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

138

- Grafik top up by retailer, grafik ini menampilkan informasi dari seluruh

produk telco yang di jual oleh retailer, informasi ini di gunakan oleh

managemen untuk mengetahui informasi produk yang paling laku pada

setiap retailer. Dan dapat digunakan untuk melakukan segmentasi pasar.

- Grafik success percentage, grafik ini menampilkan informasi berapa besar

top up yang berhasil dilakukan secara otomatis dari masing masing telco

berdasarkan retail yang menjualnya. Informasi ini berguna untuk

menganalisa infrastructure dari masing masing retailer.

- Grafik top by date, grafik ini menampilkan informasi total penjualan

perhari dari produk telco. Informasi ini berguna untuk mengetahui jumlah

penjualan produk dari telco dapat digunakan untuk menganalisa trend

penjualan produk.

- Grafik trend, grafik ini menampilkan informasi trend penjualan produk

telco, informasi ini dapat digunakan oleh marketing maupun manajemen

untuk melakukan promosi.

- Speed average / second, grafik ini menampilkan informasi kecepatan dari

masing masing telco. Informasi ini dapat digunakan untuk menganalisa

performance dari sistem kita dan telco.

- Grafik manual credit, grafik ini menampikan informasi berapa banyak top

up yang dilakukan secara manual. Informasi ini digunakan untuk

menganalisa performance dari sistem dan telco dan dapat juga di gunakan

sebagai indicator sales performance.

Page 85: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

139

4.4.19 Spesifikasi Fungsi Comparison Report

Nomor Fungsi : F016

Deskripsi : Fungsi untuk menghasilkan report Comparison Telco

Jenis : Report Master-Detail

1. Spesifikasi Data

Jenis Data :Ouput

Tabel :Top upfact

Sintaks mdx :

Retailer top up by date

select non empty [Dim Store].[Dim Retailer - Name].members on rows,non empty [Dim Code Type].[Dim Telco - Name].members on columns from [M System DM] where ([Measures].[Sucess Topup],[Dim Time].[Topup Date].&[{0}])

Retailer Top up by Success

WITH MEMBER [MEASURES].[SUCCESS PERCENTAGE] AS '[Measures].[Sucess Topup]/[Measures].[Topup]' select non empty [Dim Store].[Dim Retailer - Name].members on rows,non empty [Dim Code Type].[Dim Telco - Name].members on columns from [M System DM] where ([MEASURES].[SUCCESS PERCENTAGE],[Dim Time].[Topup Date].&[{0}])

Retailer Manual Credit

select non empty [Dim Store].[Dim Retailer - Name].members on rows,non empty [Dim Code Type].[Dim Telco - Name].members on columns from [M System DM] where ([Measures].[Manual Topup],[Dim Time].[Topup Date].&[{0}])

Page 86: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

140

Retailer Top up by Speed Average

WITH MEMBER [MEASURES].[minutes topup] AS '[Measures].[Elapsed Time Topup]/([Measures].[Topup]*60)' select non empty [Dim Store].[Dim Retailer - Name].members on rows,non empty [Dim Code Type].[Dim Telco - Name].members on columns from [M System DM] where ([Measures].[minutes topup],[Dim Time].[Topup Date].&[{0}])

Telco top up by date

select non empty [Dim Store].[Dim Retailer - Name].members on columns,non empty [Dim Code Type].[Dim Telco - Name].members on rows from [M System DM] where ([Measures].[Sucess Topup],[Dim Time].[Topup Date].&[{0}])

Telco Success Percentage

WITH MEMBER [MEASURES].[SUCCESS PERCENTAGE] AS '[Measures].[Sucess Topup]/[Measures].[Topup]' select non empty [Dim Store].[Dim Retailer - Name].members on columns,non empty [Dim Code Type].[Dim Telco - Name].members on rows from [M System DM] where ([MEASURES].[SUCCESS PERCENTAGE],[Dim Time].[Topup Date].&[{0}])

Telco Manual Credit

select non empty [Dim Store].[Dim Retailer - Name].members on columns,non empty [Dim Code Type].[Dim Telco - Name].members on rows from [M System DM] where ([Measures].[Manual Topup],[Dim Time].[Topup Date].&[{0}])

Telco Top up by Speed Average

WITH MEMBER [MEASURES].[minutes topup] AS '[Measures].[Elapsed Time Topup]/([Measures].[Topup]*60)' select non empty [Dim Store].[Dim Retailer - Name].members on columns,non empty [Dim Code Type].[Dim Telco -

Page 87: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

141

Name].members on rows from [M System DM] where ([Measures].[minutes topup],[Dim Time].[Topup Date].&[{0}])

2. Layout Layar

Gambar 4.20 Layout Layar Comparison Report

3. Spesifikasi Objek

Id_Objek Jenis Keterangan

ddlRetailer Dropdownlist List pilihan untuk Dimension

ddlReportType Dropdownlist List pilihan untuk Tipe Report

dpDate Datetimepicker List pilihan untuk tanggal

ddlTime Dropdownlist List pilihan untuk dimensi waktu

Tabel 4.34 Detail spesifikasi objek fungsi Comparison report

Page 88: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

142

4. Petunjuk penggunaan layar

Desain layar ini berfungsi untuk menampilkan perbandingan antar telco maupun

antar retail, informasi ini berguna untuk menganalisa performance penjualan top up.

Cara penggunaan layar ini adalah sebagai berikut :

1. pilih dimensi repot ditampilkan berdasarkan telco atau berdasarkan retailer

2. pilih report type berdasarkan hal yang ini anda bandingkan

3. untuk memilih tanggal awal yang anda inginkan pilih tangggal pada combo date.

4. Untuk memilih interval waktu anda pilih pada combo time dimension (day, week,

month, year)

5. Setelah itu tekan tombol submit, maka secara otomatis layar akan menampilkan

informasi perbandingan yang anda pilih pada dimension report dan report type yang

anda pilih, contoh dimesion report : retailer dan report type : success top up.

4.4.20 Spesifikasi Fungsi Period Snapshot Report

Nomor Fungsi : F017

Deskripsi : Fungsi untuk menghasilkan report Periode Snapshot

Jenis : Report Master-Detail

Page 89: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

143

1. Spesifikasi Data

Jenis Data :Ouput

Tabel :Top upfact

Sintaks sql :

Snapshot Top up

ALTER proc [dbo].[sp_RetailerTelcoTopup] ( @retailername nvarchar(50), @telco nvarchar(50), @start datetime, @end datetime) as select day(topupdate) as DayTopup,sum(Topup) TotalTopup from dbo.TopupFact t with (nolock) join dbo.DimCode_Type ct with(nolock) on ct.oid=t.codetype join dbo.DimTelco tc with(nolock) on tc.oid=ct.telco join dbo.DimStore s with (nolock) on s.oid=t.store join dbo.DimStore_Group sg with (nolock) on sg.oid=s.storegroup join dbo.DimRetailer r with (nolock) on r.oid=sg.retailer where topupdate between @start and @end and r.name=@retailername and tc.name=@telco group by r.name,tc.name,topupdate

Snapshot Success Percentage

ALTER proc [dbo].[sp_RetailerTelcoSuccess] ( @retailername nvarchar(50), @telco nvarchar(50), @start datetime, @end datetime) as select day(topupdate) as DayTopup,100*convert(numeric(5,2),convert(float,sum(sucesstopup))/convert(float,sum(Topup))) as SuccessTopup

Page 90: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

144

from dbo.TopupFact t with (nolock) join dbo.DimCode_Type ct with(nolock) on ct.oid=t.codetype join dbo.DimTelco tc with(nolock) on tc.oid=ct.telco join dbo.DimStore s with (nolock) on s.oid=t.store join dbo.DimStore_Group sg with (nolock) on sg.oid=s.storegroup join dbo.DimRetailer r with (nolock) on r.oid=sg.retailer where topupdate between @start and @end and r.name=@retailername and tc.name=@telco group by r.name,tc.name,topupdate

Snapshot Manual Credit

ALTER proc [dbo].[sp_RetailerTelcoManualCredit] ( @retailername nvarchar(50), @telco nvarchar(50), @start datetime, @end datetime) as select day(topupdate) as DayTopup,100*convert(numeric(5,2),convert(float,sum(manualtopup))/convert(float,sum(Topup))) as ManualTopup from dbo.TopupFact t with (nolock) join dbo.DimCode_Type ct with(nolock) on ct.oid=t.codetype join dbo.DimTelco tc with(nolock) on tc.oid=ct.telco join dbo.DimStore s with (nolock) on s.oid=t.store join dbo.DimStore_Group sg with (nolock) on sg.oid=s.storegroup join dbo.DimRetailer r with (nolock) on r.oid=sg.retailer where topupdate between @start and @end and r.name=@retailername and tc.name=@telco group by r.name,tc.name,topupdate

Page 91: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

145

2. Layout Layar

Gambar 4.21 Layout Period Snapshot Report

3. Spesifikasi Objek

Id_Objek Jenis Keterangan

ddlRetailer Dropdownlist List pilihan untuk Dimension

ddlReportType Dropdownlist List pilihan untuk Tipe Report

dpDate Datetimepicker List pilihan untuk tanggal

ddlTime Dropdownlist List pilihan untuk dimensi waktu

Tabel 4.35 Detail spesifikasi objek fungsi Period Snapshot report

4. Petunjuk penggunaan layar

Design grafik ini berfungsi untuk menampilakan perbandingan kondisi penjualan

sekarang dengan data bulan lalu dan data tahun lalu dengan interval yang sama.

Page 92: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

146

Informasi berguna untuk menganalisa performance retail dan performance penjualan

produk top up. Cara penggunaannya adalah sebagai berikut :

1. pilih retail yang anda ingin bandingkan dengan memilih pada combo retailer

2. lalu pilih telco yang anda inginkan bandingkan dengan memilih pada combo telco.

3. Pilih tanggal awal yang anda inginkan dengan memilih pada combo start date.

4. Pilih tanggal akhir yang anda inginkan dengan memilih pada combo end date.

5. Lalu pilih data yang anda ingin bandingkan dengan memilih pada combo measure

(top success, percentage, manula cerdit)

Page 93: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

147

4.4.21 Spesifikasi Fungsi Exception Report

Nomor Fungsi : F018

Deskripsi : Fungsi untuk menghasilkan report Exception

Jenis : Report Master-Detail

1. Spesifikasi Data

Jenis Data :Ouput

Tabel :Topupfact

Sintaks sql :

Exception Success Top up Retailer

ALTER proc [dbo].[sp_RetailerSuccess] ( @retailername nvarchar(50), @start datetime, @end datetime) as select tc.name as Telco,100*convert(numeric(5,2),convert(float,sum(sucesstopup))/convert(float,sum(Topup))) as SuccessTopup from dbo.TopupFact t with (nolock) join dbo.DimCode_Type ct with(nolock) on ct.oid=t.codetype join dbo.DimTelco tc with(nolock) on tc.oid=ct.telco join dbo.DimStore s with (nolock) on s.oid=t.store join dbo.DimStore_Group sg with (nolock) on sg.oid=s.storegroup join dbo.DimRetailer r with (nolock) on r.oid=sg.retailer where topupdate between @start and @end and r.name=@retailername group by r.name,tc.name having sum(sucesstopup)>5 order by sum(sucesstopup) desc

Page 94: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

148

Exception Manual Credit Retailer

ALTER proc [dbo].[sp_RetailerManualCredit] ( @retailername nvarchar(50), @start datetime, @end datetime) as select tc.name as Telco,100*convert(numeric(5,2),convert(float,sum(manualtopup))/convert(float,sum(Topup))) as ManualCredit from dbo.TopupFact t with (nolock) join dbo.DimCode_Type ct with(nolock) on ct.oid=t.codetype join dbo.DimTelco tc with(nolock) on tc.oid=ct.telco join dbo.DimStore s with (nolock) on s.oid=t.store join dbo.DimStore_Group sg with (nolock) on sg.oid=s.storegroup join dbo.DimRetailer r with (nolock) on r.oid=sg.retailer where topupdate between @start and @end and r.name=@retailername group by r.name,tc.name having sum(sucesstopup)>5 order by sum(sucesstopup) desc Exception Top up Speed Retailer

ALTER proc [dbo].[sp_RetailerTopupSpeed] ( @retailername nvarchar(50), @start datetime, @end datetime) as select tc.name as Telco,convert(numeric(5,2),convert(float,avg(ElapsedTimeTopup))/60) as TopupSpeed from dbo.TopupFact t with (nolock) join dbo.DimCode_Type ct with(nolock) on ct.oid=t.codetype join dbo.DimTelco tc with(nolock) on tc.oid=ct.telco join dbo.DimStore s with (nolock) on s.oid=t.store join dbo.DimStore_Group sg with (nolock) on sg.oid=s.storegroup join dbo.DimRetailer r with (nolock) on r.oid=sg.retailer where topupdate between @start and @end and r.name=@retailername

Page 95: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

149

group by r.name,tc.name having sum(sucesstopup)>5 order by sum(sucesstopup) desc Exception Success Top up Telco

ALTER proc [dbo].[sp_TelcoSuccessbyDate] ( @telco nvarchar(50), @start datetime, @end datetime) as select r.name as Retailer,100*convert(numeric(5,2),convert(float,sum(sucesstopup))/convert(float,sum(Topup))) as SuccessTopup from dbo.TopupFact t with (nolock) join dbo.DimCode_Type ct with(nolock) on ct.oid=t.codetype join dbo.DimTelco tc with(nolock) on tc.oid=ct.telco join dbo.DimStore s with (nolock) on s.oid=t.store join dbo.DimStore_Group sg with (nolock) on sg.oid=s.storegroup join dbo.DimRetailer r with (nolock) on r.oid=sg.retailer where topupdate between @start and @end and tc.name=@telco group by r.name,tc.name having sum(sucesstopup)>5 order by sum(sucesstopup) desc Exception Manual Credit Telco

ALTER proc [dbo].[sp_TelcoManualbyDate] ( @telco nvarchar(50), @start datetime, @end datetime) as select r.name as Retailer,100*convert(numeric(5,2),convert(float,sum(Manualtopup))/convert(float,sum(Topup))) as ManualTopup from dbo.TopupFact t with (nolock) join dbo.DimCode_Type ct with(nolock) on ct.oid=t.codetype join dbo.DimTelco tc with(nolock) on tc.oid=ct.telco join dbo.DimStore s with (nolock) on s.oid=t.store join dbo.DimStore_Group sg with (nolock) on sg.oid=s.storegroup

Page 96: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

150

join dbo.DimRetailer r with (nolock) on r.oid=sg.retailer where topupdate between @start and @end and tc.name=@telco group by r.name,tc.name having sum(sucesstopup)>5 order by sum(sucesstopup) desc Exception Topup Speed Telco ALTER proc [dbo].[sp_TelcoTopupSpeedbyDate] ( @telco nvarchar(50), @start datetime, @end datetime) as select r.name as Retailer,100*convert(numeric(5,2),convert(float,avg(ElapsedTimeTopup))/60) as TopupSpeed from dbo.TopupFact t with (nolock) join dbo.DimCode_Type ct with(nolock) on ct.oid=t.codetype join dbo.DimTelco tc with(nolock) on tc.oid=ct.telco join dbo.DimStore s with (nolock) on s.oid=t.store join dbo.DimStore_Group sg with (nolock) on sg.oid=s.storegroup join dbo.DimRetailer r with (nolock) on r.oid=sg.retailer where topupdate between @start and @end and tc.name=@telco group by r.name,tc.name having sum(sucesstopup)>5 order by sum(sucesstopup) desc

2. Layout Layar

Page 97: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

151

Gambar 4.22 Layout Layar Exception Report

3. Spesifikasi Objek

Id_Objek Jenis Keterangan

ddlRetailer Dropdownlist List pilihan untuk Dimension

ddlReportType Dropdownlist List pilihan untuk Tipe Report

dpDate Datetimepicker List pilihan untuk tanggal

ddlTime Dropdownlist List pilihan untuk dimensi waktu

Tabel 4.36 Detail spesifikasi objek fungsi Period Snapshot report

4. Petunjuk penggunaan layar

Desain layar ini berfungsi untuk menginformasikan jika terjadi ada perubahan

signifikan yang melebihi batas minimun yang ditetapkan dari masing masing report.

Layar ini muncul jika kita mengakses alert berupa blinking grafik bar yang muncul dari

masing masing grafik bar yang ada pada layar yang sedang aktif. Pada layar ini mumcul

Page 98: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

152

grafik success percentage, manual credit dan top up speed. Dari informasi grafik ini

user dapat menganalisa apa yang mengakibatkan terjadi alarm pada grafik tersebut.

Page 99: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

132

Desain layar retailer report per telco ini muncul pada saat kursor berada pada grafik

bar telco untuk menampilkan grafik informasi detail dari masing masing produk telco

yang terjual.

4.4.18 Spesifikasi Fungsi Telco Report

Nomor Fungsi : F015

Deskripsi : Fungsi untuk menghasilkan report Top up Telco

Jenis : Report Master-Detail

1. Spesifikasi Data

Jenis Data :Ouput

Tabel :Topup

Sintaks Sql :

Top up by Retailer

ALTER proc [dbo].[sp_TelcoTopupbyRetailer] ( @telco nvarchar(50), @start datetime, @end datetime) as select r.name,sum(sucesstopup) as TotalTopup from dbo.TopupFact t with (nolock) join dbo.DimCode_Type ct with(nolock) on ct.oid=t.codetype join dbo.DimTelco tc with(nolock) on tc.oid=ct.telco join dbo.DimStore s with (nolock) on s.oid=t.store join dbo.DimStore_Group sg with (nolock) on sg.oid=s.storegroup join dbo.DimRetailer r with (nolock) on r.oid=sg.retailer where topupdate between @start and @end and tc.name=@telco group by r.name,tc.name having sum(sucesstopup)>5 order by sum(sucesstopup) desc

Page 100: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

153

4.5 Layar Implementasi

4.5.1 Layar Login

Gambar 4.23 Layar Login

Page 101: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

154

4.5.2 Layar Home

Gambar 4.24 Layar Home

Page 102: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

155

4.5.3 Layar Summary

Gambar 4.25 Layar Summary

Page 103: Perancangan Digital Dashboard pada PT M Cashback Indonesiathesis.binus.ac.id/Asli/Bab4/2009-1-00448-SIAS Bab 4.1.pdfBahasa Pemrograman C# 2.0 Teknologi Visual dan Grafis ASP.NET, Ajax.NET,

156

4.5.4 Layar Retailer

Gambar 4.26 Layar Retailer