oleh sak ur skripsi sebagai salah satu syarat untuk...

103
APLIKASI MESSAGE SERVICE BERBASIS WEB MENGGUNAIUN SMS GATE\VAY (STUDI I(ASUS PADA PT. ARTI-IA PRIMA MANDIRI) Oleh SAK UR 101091023297 Skripsi Sebagai Salah Satu Syarat Untuk Memperolr,:h Gelar Srujana Komputer Fakultas Sains dru1 Teknologi Universitas Islam Negeri SyarifHidayatullah Jakarta FAl(ULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM SYARIF HIDAYATULLAH JAI(ARTA 1426 H/2005 M

Upload: truongkhanh

Post on 09-Aug-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

APLIKASI MESSAGE SERVICE BERBASIS WEB MENGGUNAIUN SMS GATE\VAY

(STUDI I(ASUS PADA PT. ARTI-IA PRIMA MANDIRI)

Oleh SAK UR

101091023297

Skripsi Sebagai Salah Satu Syarat Untuk Memperolr,:h Gelar

Srujana Komputer

Fakultas Sains dru1 Teknologi Universitas Islam Negeri SyarifHidayatullah Jakarta

FAl(ULTAS SAINS DAN TEKNOLOGI UNIVERSIT AS ISLAM NEGER~I

SYARIF HIDAYATULLAH JAI(ARTA

1426 H/2005 M

APLIKASI MESSAGE SERVICE BERUASIS WEB MENGGUNAKAN SMS GATEWAY

(STUDI KASUS PADA PT. AR.TIIA PRIJ\1CA MANDilU)

Skripsi Sebagai Salah Satu Syarat Untuk Memperoleh Gelar

Sarjana Komputer Pada Fakultas Sains dan Teknologi UlN Jakarta

Oleh SAK UR

101091023297

Menyetujui,

Pembimbing II

\

Zainul Arham, S.Kom., M.Si Ir. Bakri. La Katjong, MT., M.Kom

Mengetahui

Ketua Jurusan Teknik Informatika,

Ir. Bakri La Katjong, MT., M.Kom NIP. 470 035 764

JURUSAN TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UIN SYARIF HIDAYATULLAH JAKARTA

Dengan ini menyatakan bahwa skripsi yang ditulis oleh:

Nama

NIM

Program Studi

Judul Skripsi

:Sakur

; 101091023297

: Teknik Informatika

: Aplikasi Message Service Berbasis W1eb Menggunakan

SMSGateway

(Studi Kasus Pada PT. Artha Prima Mandiri)

Dapat Diterima sebagai syarat kelulusan untuk memperoleh gelar Sarjana

Komputer pada Jurusan Teknik Infonnatika, Fakultas Sains dan Teknologi UIN

Syarif Hidayatullah Jakarta.

Jakarta, Juli 2005

Menyetujui,

Dosen Pembimbing

Pembimbing I Pembimbing II

Zaitrnl Arham, S.Kom., M.Si Ir. Bakri La Ka1jong, MT., M.Kom

M.engetahui,

Dekan, < >:·~l\k;tj.1~!5 ·s~ins dan Teknologi

DR, Sybpiansya Jaya Putra. M. Sis NIP.150317965

Kenia Jurusan Teknik Infonnatika

~'JvZ~-r-./t// l .. · ~-------·

Ir. Bakri La Kationg, MT., M.Kom NIP. 470 035 764

PERNYATAAN

DENGAN INI SAYA MENYATAKAN BAHWA SKRU>SI INI BENAR­BENAR HASIL KARYA SENDIRI YANG BELUM PERNAH DIAJUKAN SEBAGAI SKRIPSI ATAU KARYA ILMIAH PADA PERGURUAN TINGGI ATAU LEMBAGA MANA PUN

Jakarta, Juli 2005

Sak ur 101091023297

ABSTRAK

SAKUR, Aplikasi Message Service Berbasis Web Menggunakan SMS Gateway (Studi Kasus Pada PT. Artha Prima Mandiri). (Di bawah bimbingan ZAINUL ARHAM dan BAKRI LA KAT JONG)

Perkembangan teknologi komunikasi saat ini telah berkembang pesat. Satu teknologi komunikasi yang kini berkembang ialah Short Message Service (SMS). Sms telah menjadi aplikasi yang terpopuler saat ini. Tanpa disadari bahwa SMS adalah aplikasi yang mudah untuk digunakan sehingga banyak bidang dalam dunia teknologi infonnasi menggunakan tool ini sebagai media dalam berkomunikasi khususnya dalam bentuk teks singkat. Hal ini dikarenakan harganya yang tetap atau konstan, kesopanan, dan handal yang dapat mengetahui status pengiriman.

Dengan perkembangan tersebut diperlukan aplikasi yang dapat diintegrasikan dengan SMS ini. Dengan alasan-alasan diatas dan trend sekarang maka mutlak SMS ini merupakan kebutuhan yang diperlukan.

Aplikasi yang dapat dikembangkan dengan SMS ini tidak hanya menutup satu bidang saja tetapi bisa dilakukan diberbagai bidang. Aplikasi SMS dalam perusahaan retail ini digunakan untuk membantu dalam mengirimkan pesan singkat kepada customer sehingga meningkatkan pelayanan kepada customer. Aplikasi SMS gateway yang terhubung ke komputer mernpunyai fasilitas yang sederhana dan mudah digunakan. Tujuan pengenibangan ini adalah mempermudah dalam berkomunikasi yang cepat dan murah serta dapat mengirimkan ke beberapa penerima.

Teknologi yang digunakan dalam pengembangan ini, dari sisi perangkat keras yaitu komputer PC, GSM modem dan Handphone, sedangkan untuk perangkat lunaknya yaitu gammu yang digunakan untuk berk:omunikasi dengan SIM Card. Dengan sedikit pemrograman menggunakan PHP dan data disimpan menggunakan database MySQL.

KATA J>ENGANTAR

Puji syukur kami panjatkan ke hadirat Allah SWT, karena atas berkat dan

rahmat-Nya Skripsi dengan judul: Aplikasi Message Service Berbasis Web

Menggunakan SMS Gateway (Studi Kasus Pada PT. Artha Prima Mandiri)

diselesaikan dengan baik.

Penulisan skripsi ini dimaksudkan untuk melengkapi clan memenuhi syarat

yang telah ditetapkan dalam memperoleh gelar sarjana di Universitas Islam

Negeri Syarir Hidayatullah Jakarta.

Pada kesempatan ini kami juga hendak mengucapkan terima kasih kepada

pihak-pihak yang memberikan bimbingan, bantuan, clan duh.'Ullgan kepada saya

selama penulisan skripsi ini. Secara khusus saya ucapkan terima ikasih kepada:

I. Bapak Dr. Syopiansyah Jaya Putra, M.Sis, selaku Dekan Fakultas Sains dan

Teknologi

2. Bapak Zainul Arham, S.Kom., M.Si, selaku Pembimbing I yang secara

kooperatif telah memberikan bimbingan, bantuan, dan dukungan, baik secara

moral maupun secara teknis.

3. Bapak Ir. Bakri La Katjong, MT., M.Kom, selaku Ketua Jurusan Teknik

Informatika sekaligus sebagai Pembimbing lI yang telah memberikan nasihat

dan bimbingannya, te1ima kasih atas koreksinya yang membangun.

4. Kedua Orang Tua dan Keluargaku tercinta yang telah memberikan kasih

sayang yang tak ternilai sehingga aku dapat menyelesaikan skripsi ini.

5. Thu Paquita Wijaya dan Yayasan Emilatil Abbasiyah yang telah memberikan

beasiswa pendidikan sehingga saya dapat menyelesaikan pendidikan.

6. Bapak Yudi, S. Kom, selaku Direktur PT. Esolusi Indonesia yang telah

memberikan kesempatan untuk melakukan penelitian pada PT. Artha Prima

Mandiri.

7. Staff Karyawan PT. Esolusi Indonesia, Mas Imam, Mas Panji, Mas Denny,

Mas Pandi, Mpo' Ria, Mba' Dini yang telah membe1ikan dukungannya.

Terima kasih.

8. Kekasihku yang telah memberikan motivasi, masukan, dan dukungannya

untukku. Terima kasih atas waktu yang diluangkannya selama ini untuk

rnenernaniku. Syukron katsiron ya Ukhti. Jshhir Wastaqimu.

9. Naili Ulva Sa' dah, M. Khoriq, Abdul Mutholib, Sayyida, Siti Ha jar, Novi

Romawati, Ila, yang telah turut rnembantu dan memotivasi saya untulc

menyelesaikan skripsi ini.

l 0. Ternan-teman mahasiswa yang secara langsung rnaupun tidak langsung yang

telah memberikan bantuan dan dukungan moril dalam skipsi ini.

Pada kesempatan ini saya ingin memohon maaf yang :sebesar-besarnya

kepada semua pihak apabila sewaktu rnenjalankan penelitian ini ada hal-hal yang

kurang berkenan dari pihak kami. Saya juga menyadari bahwa kaiya ini belumlah

sempurna, maka kami sangat mengharapkan kritik dan saran dari pembaca dan

pihak lain untuk penulisan skripsi selanjutnya yang lebih baik.

Akhir kata saya berharap agar penelitian mi dapat bermanfaat bagi

pembaca sekalian. Amin.

Oputat, Juli 2005

Sakur 101091023297

DAFTARISI

Halaman Judul Luar ........................................................................................ .

Halaman Judul Dalam...................................................................................... ll

Halaman Pengesahan Pembimbing ........................................... .. ..................... iii

Hal a man Persetujuan...... .. . . . . .. .. . . . . . . . .. .. . .. . . .. . . .. . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. iv

Halaman Pernyataan .. . .. ... ... . .. ... . . . ... .. . .. .. ... ....... .. .. .. . . ... .. . . . .. . . ... .. ... . . . ... . . . .. .... .. ... v

Abstrak............................................................................................................. vi

Kata Pengantar. ... ... .. . .. . . . ... .. . .. . .. . . . . .. .. . . . . . . . . . . . . . .. . . . . . . . . . . .. . . . . . . . . . . . . .. . . .. . . ... . . . . . . . . . .... vii

Daftar Isi..... .. . . . . . . . . . . . . . . .. . . . . .. . .. .. . . . . . . . . . . . . . . . . . . .. . . . .. . . . . .. . . . ... . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . x

Daftar Tabet ..................................................................................................... xiii

Daftar Garn bar.................................................................................................. xiv

Daftar lam pi ran . . . . . . . ... . . . .. . . .. .. . . . . .. . . . . . . . . . .. . .. . .. . . . . . . .. . . . . . . . .. . . . . . . . .. . . . . . . . . . . . . . .. . . .. . . . . . . . xv

BAB I PENDAHULUAN

1.1 Latar Belakang Masalah ............................................................. .

1.2 Rwnusan Masalah................................................... ................... 4

1.3 Ruang Lingkup............................................................................ 5

1.4 Tujuan dan Manfaat Penulisan........................................... ........ 5

1.5 Metodologi Penelitian................................................................. 6

1.6 Sistematika Penulisan ................................................................. 8

BAB II LANDASAN TEORI

2.1 Seki las Tentang PT. Artha Prima Mandiri.................................. I 0

2.2 Konsep Dasar SMS Gateway...................................................... 11

2.3 Daur hidup sistem (System Development Life Cycle)............... 21

2.4 Tools Analisis yang digunakan ................................................... 24

2. 5 Perancangan Input I Output......................................................... 24

2.6 Apache Web Server.................................................... ................. 25

2.7 MySQL ........................................................................................ 27

2.8 PHP ............................................................................................. 29

2.9 Gammu ......................................................................................... 30

BAB III METODOLOGI PENELITIAN

3.1 Tempat dan Waktu ...................................................................... 31

3.2 Bahan dan Perangkat.. ................................................................. 31

3 .2.1 Bahan ........................................................................ , .. .. .. . . 31

3.2.2 Perangkat......... ...................... ...................... ....... ... ...... ...... 31

3.3 Metode ........................................................................................ 33

3.3.1 Persiapan .......................................................................... 33

3.3.2 Prosedur............................................................................. 33

BAB IV HASIL DAN PEMBAHASAN

4.1 Analisa Kebutuhan Si stem........................................................... 44

4.2 Rancangan Input........................................................................... 44

4.4 Rancangan Output. ....................................................................... 47

4.5 Alur Proses SMS .......................................................................... 48

4.6 Proses Sistem Basis Data SMS .................................................... 50

4. 7 Mengetes Sistem .. .... . .. .. .. .. . .... . .... .. .. . .. . .... .. .. .. .. .. .. . . .. .. .. .. .. .. . .. .. ... ... 51

4.8 Kelebihan Sistem ....................................................... .................. 53

4.9 Keterbatasan sistem...................... .. .. ... ... .... . .. . .. . .. . .. .. .. .. .. . .. .. .. .. .. .. 54

BAB V KESIMPULAN DAN SARAN

5. I Kesimpulan . .. .. . .. .. . .. . .. . .. .. .. .. .. .. . . .. .. . .. .. . . ... .. . . .. . .. .. . .. .. . .. . .. .. .. .. . .. .. .. .. 5 5

5.2 Kesimpulan .................................................................................. 56

DAFT AR .PUST AKA..................................................................................... 57

LAMPIRAN-LAMPIRAN ............................................................................ 58

DAFTAR TABEL

Halaman

Tabel 1 : Item................................................................................................... 39

Tabel 2 : Customer........................................................................................... 40

Tabel 3 : Invoice Header.................................................................................. 40

Tabel 4 : Invoice Detail.................................................................................... 40

Tabel 5 : Inbox ................................................................ ......... ........................ 40

Tabel 6 : Outbox..................................................................... .............. ............ 41

Tabel 7 : Sentitems............................................................................... ............ 41

DAFTAR GAMBAR

Halaman

Gambar I : Grafik Pertumbuhan Penggunaan SMS

Gambar2

Gambar3

Gambar4

Gambar 5

Gambar6

Gambar 7

Gambar8

Gambar9

Gambar 10

Periode Jan 2003 - Dec 2004.................................................... I

: Gambar Struktur Organisasi PT. ArthaPrima Mandiri............ 10

: Arsitektur Sistem GSM............................................................. 13

: Mekanisme store dan forward pada pengiriman SMS.. .. . . . . .. . . . . 14

: Struktur time slot dan frame pad a sistem GSM ...... .. . .. . . . . .. . .. .. . . 16

: Perangkat Keras ........................................................................ 33

: Flow of Document Sistem yang berjalan................ ................. 36

: Diagram Alir Data..................................................................... 41

: Tampilan input invoicing.......................................................... 45

: Tampilan input ponsel................................................ ............ ... 45

Gambar 11 : Relation Table ........................................................................... 47

Gambar 12 : Tampilan list invoicing............................................................. 48

Gambar 13 : Tampilan di ponsel.................................................................... 48

Gambar 14 : Proses kerja perangkat lunak ................. .................. ... ..... ......... 50

Gambar 15 : Skemajaringan perangkat lunak ............................................... 50

Gambar 16 : Proses pra transaksi ............................................. ...................... 51

Gambar 17 : Proses ketika transaksi . . . . .. .. . . . .. . . . . . . . . .. . .. . . . . . . .. . . . . . .. . .. . . . . . . .. . . .. ... . . . 51

Garn bar 18 : Proses pasca transaksi . . ..... .. . . .. .. . .. . . . . .. ... . . . .. . ... .. . ... . . ..... .. ... . . . . . . .. . 53

DAFTAR LAMPIRAN

Halaman

Larnpiran l : Daftar biaya SMS operator GSM .............................................. 58

Lampiran 2 : Sirnbol-sirnbol dalam flow map................................................ 59

Larnpiran 3 : Tentang Gamrnu........................................................................ 61

Lampiran 4 : Tampilan input dan output program......................................... 73

Lampiran 5 : Source code ............................................................................... 77

BABI

PENDAHULUAN

1.1 Latar Belakang

Aplikasi SMS (Short Message Service) telah diakui merupakan

aplikasi messaging yang paling populer di dunia. Hal ini. dibuktikan dengan

sukses tak terduga seperti ditunjukkan grafik pertumbuhan penggunaan SMS

selama beberapa bulan terakhir (gambar I) hingga bulan Desember 2004

terhitung rata-rata terdapat 20 milyar kiriman SMS per bulan (sumber:

www.gsmworld.com).

"''·~ ... ______________ _

26 Ji .- i

30

I

10

6 fi--. -··

2-------

Gambar 1. Grafik Pcrtumbuhan Penggunaan SMS

Periode Jan 2003 - Dec 2004

SMS telah menjadi lahan yang menjanjikan untuk. meraih peluang

bisnis di pasar konsumen maupun industri di dunia. Dari jumlah kiriman SMS

1

2

di dunia 90% masih merupakan kiriman jenis person to person. Namun

demikian, SMS sangat potensial untuk dikembangkan menjadi aplikasi

berbasis industri dengan berbagai macam layanan, seperti location-based

service, periklanan, voting, games, entertainment, dan sebagianya

(Buckingham, 2001).

SMS pada awalnya tidak terhitung sebagai layanan penting dalam

jaringan GSM (Global Systems for Mobile communications) karena SMS

dikembangkan terutama sebagai alat pengirim informasi data konfigurasi dari

handset GSM dan tidak lebih dari sekedar layanan tambahim daripada sebagai

bagian dari protokol jaringan. Namun demikian pada akhimya SMS menjadi

sukses secara tak terduga sebagai layanan messaging paling populer di dunia.

Hal ini tentunya memberikan pendapatan ekstra bagi operator jaringan yang

akan memperoleh bayaran untuk tiap kiriman SMS melalui jaringannya.

Keberhasilan dan popularitas SMS antara lain disebabkan oleh:

a. Harga per kiriman tetap/konstan

Biaya telepon bervariasi sedangkan beban biaya kiriman SMS

tetap/konstan. Hal ini berpengaruh terutama kepada pelanggan yang

menggunakan kartu GSM pra-bayar yang mempunyai kredit pulsa

terbatas pada telepon selulemya (Lampiran I).

b. Kesopanan

Apabila kita hendak menggunakan telepon seluler di tempat

umum, maka berbicara menggunakannya dirasakan tidak sopan, namun

3

sebaliknya berkirim pesan menggunakan SMS adalah lebili sopan dan

privacy lebih terjaga.

c. Tidak mengganggu penerima

Seperti halnya e-mail, SMS sebagai alat komunikasi tidak

mengganggu penerima, karena penerima bisa memutuskan kemudian

kapan dan dimana dia akan menjawab pesan tersebut.

d. Handal (reliable)

Jaringan GSM secara umum diakui kehandalannya dalam

mengirimkan data, dan SMS mewarisi kehandalan tersebut. Tidak seperti

pager, ketika pesan SMS terkirim dan masuk ke gateway dan gateway

berhasil mengirimkannya ke nomor tujuan, gateW£!Y kemudian mengirim

pesan aclmowledgement ke pengirim bahwa pesan tdah terkirim (Ray,

et.al., 200 I).

Perusahaan PT. Artha Prima mandiri adalah perusahaan yang bergerak

dibidang penjualan barang spare part berbagai jenis mobil. Perusahaan ini

mempunyai customer yang secara geografis letaknya jauh sehingga apabila

bertransaksi tidak adanya konfirmasi oleh perusahaan terhadap customer

tentang pengiriman barang tersebut. Konfirmasi yang dilakukan sekarang

adalah dengan melakukan komunikasi menggunakan media telepon yang

kadang responnya terlambat. Biaya telepon itu pun mahal karena letaknya

jauh sehingga biayanya termasuk interlokal. Kadang customer yang ditelepon

sedang tidak berada ditempat.

4

Dengan adanya perkembangan aplikasi handphone tersebut penulis

ingin memanfaatkan teknologi aplikasi SMS tersebut dan menghubungkan

dengan web server untuk keperluan perusahaan retail dalam hal ini adalah

konfirmtrsi pengiriman barang seperti Invoicing dan tagihan jatuh tempo

hutang.

Aplikasi ini memtidahkan perusahaan dalam mengirimkan konfirmasi

pengiriman barang dan konfirmasi jatuh tempo tagihan rnenggunakan SMS.

Pengiriman SMS ini dapat dilakukan secara langsung secara satu per satu,

tetapi karena customer-nya banyak sehingga menyulitkan dalam mengirimkan

SMS secara kepada seluruh customer secara bersamaan .. Dengan demikian

rasa kepercayaan dan kepuasan bagi customer, dan menambah keuntungan

bagi perusahaan.

1.2 Rumusan Masalah

Rumusan masalahnya adalah sebagai berikut:

• Bagaimana cara mengembangkan aplikasi SMS dalam menunjang struktur

personal dalam perusahaan.

• Bagaimana merancang aplikasi SMS dalam menunjang sistem informasi

yang sudah ada.

• Bagaimana merancang sebuah program berbasis web yang dapat

mengirimkan message (pesan) singkat melalui Hane/phone atau GSM

Mode11I sebagai gateway dari komputer.

5

1.3 Ruang Lingkup

Dalam skripsi ini saya akan membahas bagaimana merancang

program berbasis web yang dapat mengirimkan konfirmasi transaksi

penjualan dan pemberitahuan jatuh tempo tagihan pembayaran hutang yang

berupa pesan SMS gateway menggunakan PHP Scripting Language, MySQL,

dan GSM Modem pada PT. Artha Prima Mandiri.

1.4 Tujuan dan Manfaat Penulisan

Berdasarkan masalah di atas, maka skripsi yang be'.judul "Aplikasi

Message Service Berbasis Web Menggunakan SMS Gateway (Studi Kasus

Pada PT. Artha Prima Mandiri)" dengan manfaat dan tujuan sebagai berikut:

1.4.l Tujuan

1) Tujuan Umum

Dapat menghasilkan software yang dapat mengirimkan

pesan singkat (SMS) kepada customer dengan cepat dengan

menggunakan sistem yang sudah ada.

2) Tujuan khusus

Untuk mengembangkan pemrograman sistem yang lebih

praktis dan cepat dalam pengaksesan data dalam menggunakan

teknologi komunikasi yang ada.

1.4.2 Manfaat

• Perusahaan

Meningkatkan kepercayaan pelanggan

Meningkatkan daya saing pemsahaan

Mengurangi biaya operasi untuk konfirnmsi

• Konsumen

6

Menumbuhkan kepercayaan customer kepada pemsahaan

sehingga proses bisnis dapat meningkat pula.

• Penulis

Untuk penulis, pengembangan program ini akan

meningkatkan kemampnan penulis dalam menganalisis,

merancang, dan mengembangkan aplikasi dengan

mengimplementasikannya dalam satu program

1.5 Metode Penelitian

Dalam rangka menyusun skripsi ini, diperlukan data-data informasi

yang relatif lengkap sebagai bahan yang dapat mendukung kebenaran materi

uraian pembahasan. Oleh karena itu sebelum menyusun skripsi ini, dalam

persiapannya terlebih dahulu dilakukan riset atau penelitian untuk menjaring

data-data atau bahan materi yang diperlukan.

1.5. l Metode Pengumpulan Data

Adapun metode pengumpulan data-data inforn1asi yang

diperlukan adalah sebagai berikut:

7

I) Metode Observasi

Dilakukan dengan cara rnelihat obyek penelitian secara

langsung di lapangan berhubungan dengan penyusunan skripsi ini.

2) Metode Wawancara

Dilakukan dengan rnewawancari seseorang yang paharn hal

ini atau rnelakukan diskusi dengan orang-orang atau ternan yang

rnengerti rnateri bahasan guna rnencari bahan rnasukan dan data

pendukung untuk penyusunan skripsi ini.

3) Metode Studi Pustaka (Library Research)

Studi pustaka yaitu teknik pengumpulan data dengan cara

rnembaca atau mencari literatur- literatur baik berupa buku, serta

tulisan- tulisan yang ada kaitannya dengan judul untuk rnernbantu

penulisan tugas akhir.

l.5.2 Mctodc Pendckatan Tcrstruktur

Dalam penyusunan tugas akhir ini menggunakan metode

pendekatan terstruktur dengan tiga tahap dalam metode Sistem

Development Live Cycle (SDLC), yaitu:

Tahap analisis, perancangan dan penerapan sistern

I. Tahap Analisis

Pada tahap analisis dilakukan:

• Survei atas sistem yang sedang berjalan

8

• Analisis sistem yang sedang berjalan dengan menganalisis

input yang ada, kebutuhan sistem, kelemahan dan kelebihan

sistem yang sedang beijalan, dan menganalisis masalah yang

ada dengan altematif pemecahan masalah, serta menganalisis

proses sistem yang sedang berjalan. Tools yang digunakan

untuk analisis system yang beijalan yaitu Flow Map.

Hasil dari analisis ini akan menjadi masukan dalam

perancangan sistem yang diusulkan

2. Tahap Perancangan

Pada Tahap Perancangan penulis merancang sistem yang

diusulkan dengan tahapan sebagai berikut:

• Membuat skema alur sistem yang dimodifikasi

• Pembuatan Rancangan layar tampilan sebagai Perancangan

Input dan Output.

3. Tahap Penerapan atau Pemrograman

Pada tahap penerapan ini dilakukan transfer hasil

perancangan ke coding bahasa pemrograman. Dimana akan

digunakan bahasa pemrograman PHP dan MySQL sebagai

database-nya.

1.6 Sistematika Penulisan

Dalam skripsi ini, pembahasan yang penulis sajikan terbagi dalam

lima bab yang secara singkat akan diuraikan sebagai berikut:

BAB!

BABU

BAB III

BAB IV

BABY

9

PENDAHULUAN

Dalam bab ini akan diterangkan tentm1g Jatar belakang

masalah, tujuan penulisan, ruang lingkup dan batasan

masalah, metode penelitian dan sistematika penulisan.

LANDASAN TEORI

Bab ini akan menjelaskan secara si.ngkat teori yang

diperlukan dalam penulisan suatu aplikasi sistem informasi

dan SMS Gateway .

METODOLOGI PENELITIAN

Pada bagian ini akan diuraikan tentang masalah-masalah

atau materi yang dibahas dalam sistem yang akan dibangun

HASlL DAN PEMBAHASAN

Pada bab ini akan dibahas implementasi aplikasi message

service untuk mengurangi permasalahan yang sistem yang

sudah ada.

PENUTUP

Bab ini merupakan bab terakhir dari selu:ruh rangkaian bab

yang ada diskripsi ini, maka dalam bab ini akan temmat

simpulan dari basil bahasan selumh bab serta saran-saran

yang kiranya dapat bermanfaat

BAB II

LANDASAN TEORI

Pada bab ini akan diuraikan sekilas tentang PT. Artha Prima Mandiri dan

teori-teori umum maupun khusus yang berhubungan dengan penelitian tugas

akhir seperti konsep dasar SMS Gateway, Bagan Alir, Perancangan Sistem,

Perancangan Database, Perancangan Input! output, Apache, PI-!P,, MySQL.

2.1 Sekilas Tentang PT. Artha Prima Mandiri

PT. Atha Prima Mandiri sebuah perusahaan yang bergerak di bidang

penjualan spare part mobil diantaranya kaca spion, autolamp, ban, dan

aksesories mobil. Perusahaan ini mempunyai profit yang cukup baik sehingga

berencana untuk membuka cabang di luar daerah. Perusahaan ini mempunyai

struktur organisasi yang tidak terlalu banyak. Berikut gambar struktur

organisasi PT. Artha Prima Mandiri

Direkiur

Bag. Keunngan Bag. Penjualan [ Sekrltaris J

Karyawan

1. Direktur

Fungsi dan tanggungjawab Direktur:

• Mengawasi dan mengontroljalannya perusahaan.

• Mengawasi kegiatan pemsahaan secara keseluruhan.

• Bertanggungjawab terhadap apa yang terjadi didalam perusahaan.

• Menentukan struktur organisasi.

2. Bagian Keuangan

Bertanggungjawab menangani masalah keuangan perusahaan,

membuat laporan keuangan, serta bertanggungjawab terhadap keuangan

perusahafiil.

3. Bagian Penjnalan

11

Bertanggung jawab menangani masalah penjualan barang kepada

Customer. Bagian penjualan ini juga sebagai admin dan operator sistem.

4. Sekretaris

Bertanggung jawab menangani pembuatan surat dan menangani

arsip-arsip perusahaan

5. Karyawan

Melakukan aktivitas membantu pengiriman barang, dan lain-lain.

2.2 Konsep Dasar SMS Gateway

2.2.l Arsitektur dan Teknologi SMS

SMS atau Short Message Service pada awal diciptakan adalah

12

sebuah komite dari Conference of European Posts and

Telecommunications yang ditunjuk untuk mengembangkan

komunikasi nirkabel dan kemudian lebih dikenal sebagai Global

Systems for Mobile communications (GSM), dikembangkan pertama

kali di Eropa dengan frekuensi utama 900MHz merupakan sistem

komunikasi digital nirkabel generasi kedua (2G). SMS semula

hanyalah merupakan layanan yang bersifat !complementer terhadap dua

layanan utama sistem GSM (atau sistem 2G pada umumnya) yaitu

layanan voice dan switched data. Namun karena keberhasilan SMS

yang tidak terduga, dengan ledakan pelanggan yang

mempergunakannya, menjadikan SMS sebagai bagian integral dari

layanan sistem.

Sebagai bagian dari sistem GSM, SMS adalah layanan yang

sebenamya merupakan bearer sevice atau packet pengirim dari data

GSM. Bearer service ini bekerja pada layer fisik yang merupakan

layer terbawah dari protokol aplikasi data GSM. Arsitektur sistem

GSM sendiri adalah seperti tergambar dalam gambar 3 (Andersson &

Cristo ff er, 2001 ).

Handseat GSM

Handscat GSM

serviceLh

Base Station Controller (BSC)

Mobile Switching Center (MSC)

Garn bar 3. Arsitektur sistem GSM

~ ~~ Application WAP

Server Gateway

)

13

SMS merupakan layanan messaging yang pada umumnya

terdapat pada setiap sistem jaringan wireless digital. SMS adalah

layanan untuk mengirim dan menerima pesan tertulis (teks) dari

maupun kepada perangkat bergerak (mobile device). Pesan teks yang

dimaksud tersusun dari huruf, angka, atau karakter alfanumerik. Pesan

teks dikemas dalam satu paketlframe yang berkapasitas maksimal 160

byte yang dapat direpresentasikan berupa 160 karakter huruf latin atau

70 karakter alfabet non-latin seperti alfabet Arab atau Cina.

SMS adalah data tipe asynchoronous message yang pengiriman

datanya dilakukan dengan mekanisme protokol store and forward. Hal

ini berarti bahwa pengirim dan penerima SMS tidak perlu berada

dalam status berhubungan ( connectedlonline) satu sama lain ketika

akan sating bertukar pesan SMS. Pengiriman pesan SMS secara store

14

andfonvard berarti pengirim pesan SMS menuliskan pesan dan nomor

telepon tujuan dan kemudian mengirimkannya (store) ke server SMS

(SMS-Center) yang kemudian bertanggung jawab untuk mengirimkan

pesan tersebut (jonvard) ke nomor telepon tujuan. Hal ini mirip

dengan mekanisme store and forward pada protokol SMTP yang

digunakan dalam pengiriman e-mail internet. Keuntungan mekanisme

store andfonvard pada SMS adalah, penerima tidak perlu dalam status

online ketika ada pengirim yang bermaksud mengirimkan pesan

kepadanya, karena pesan akan dikirim oleh pengirim ke SMSC yang

kemudian dapat menunggu untuk meneruskan pesan tersebut ke

pc'fierima ketika ia siap dan dalam status online dilain waktu. Ketika

pesan SMS telah terkirim dan diterima oleh SMSC, pengirim akan

menerima pesan singkat (konfirmasi) bahwa pesan telah terkirim

(message sent). Hal-ha! inilah yang mertjadi kdebihan SMS dan

populer sebagai layanan praktis darj sistem telekomunikasi bergerak

(Ray et al., 2001 ).

pcngirim

.... Wire!cs? Networks"'"· '.,.· .. -·if '"£fl.···-• SMS Center

Garn bar 4. Mekanisme store danforwn'rd pada pcngiriman SMS

Pencrima

Keterbatasan SMS adalah pada ukuran pesan yang dapat

dikirimkan, yaitu maksimal sebesar 160 byte. Keterbatasan ini

15

disebabkan karena mekanisme transmisi SMS itu sendiri. SMS pada

awalnya adalah layanan yang ditambahkan pada sistem GSM yang

digunakan untuk mengirimkan data mengenai konfigurasi dari handset

pelanggan GSM. SMS dikinnkan menggunakan signalling ji·ame pada

kanal frekuensi atau time slot frame GSM yang biasanya digunakan

untuk mengirimkan pesan untuk kontrol dan sinyal setup panggilan

telepon, seperti pesan singkat tentang kesibukan jaringan atau pesan

CLI (Caller Line indentijication). Frame ini bersifat khusus dan ada

pada setiap panggilan telepon serta tidak dapat digunakan untuk

membawa voice atau data dari pelanggan. Ukuran frame pada sistem

GSM sendiri adalah sebesar 1250 bit (l 60 byte) (gambar 5). Karena

hanya menggunakan satu frame inilah pengiriman pesan SMS menjadi

sangat murah, karena beban biaya hanya dihitung dari penggunaan satu

frame melalui kanal rekuensi. Pengiriman SMS menggunakan frame

pada kanal frekuensi adalah berarti SMS dikirim oleh pengirim ke

nomor telepon tertentu yang bertindak sebagai SMSC (SMS-Center)

dan kemudian SMSC bertugas untuk meneruskannya ke penerima.

Pengiriman SMS berlangsung cepat karena, seperti terlihat pada

gambar 4. SMSC selain terhubung ke LAN aplikasi juga terhubung ke

MSC (Mobile Switching Network) melalui SS7 (Signaling System 7)

yang merupakan jaringan khusus untuk menangkap frame kontrol dan

sinyal. Mekanisme pengiriman pesan singkat SMS yang serupa juga

16

cdmaOne. Beda antara sistem jaringan satu dengan yang lainnya

adalah ukuran dari pesan SMS itu sendiri yang bergantung pada

ukuran.frame yang digunakan pada masing-masing sistem. Pada sistem

TDMA dan PDC ukuran pesan SMS sama dengan sistem GSM, yaitu

160 byte dan pada cdma-One ukuran pesan SMS sebesar 256 byte.

(Dornan & Andy, 2001)

!Ale! c io iejF jo !H j 1 jJ.jK IL jMjN I~ ... ... ....

~""' ....... "'"4-P-,,;r .... , -Frama-

? ~~ ; ,,

~~ ,, ;I Frame= 1250 bit:i: 160 b~ '....,..,

I ij 2 j ~ 14 j6jce j 1 je j 1 J 2 j -lime Sbt = 156,2:5 bt (1 Frartlll = 8 Tirne. Slot)

D Frarrn 'Wioe/ llit:a

[] Frarro

-_ Kontrol & Sin~I

Gambar 5. Struktur time slot dauframe pada sistem GSM

Pada akhirnya SMS menjadi layanan messaging yang populer

dan digemari oleh pelanggan telepon seluler. Layanan SMS dapat

diintegrasikan dengan layanan GSM yang lain seperti voice, data, dan

fax, dan karena itu pesan SMS selain digunakan untuk pengiriman

pesan person to person juga digunakan untuk notifikasi voice dan fax

mail yang datang kepada pelanggan. Selain itu SMS juga berharga

murah, bersifat simpel dan personal, serta dalam pengoperasiannya

tidak terlalu mengganggu kesibukan pemakainya, karena mereka dapat

mengirim atau menerima pesan pada waktu yang mereka kehendaki.

17

2.2.2 Pengertian SMS Gateway

SMS Gateway adalah sistem yang menghubungkan SMS dengan

sistem komunikasi lain (TCP/IP, UDP, dan banyak lagi). Singkatnya

SMS Gateway berfungsi sebagai encoder-decoder antar protokol

komunikasi (SMS, Protokol lain). Ada dua macam format SMS, yaitu

Text Mode dan PDU Mode. Format PDU lebih umum digunakan pada

Handphone. Format PDU disebut juga format biner. Dengan

kemampuan encode-decode ini, kita dapat lebih mudah memasuki

teknologi MMS untuk aplikasi lainnya (http://www.forurnponsel.com!).

2.2.3 Tahap Perkembangan Aplikasi SMS

Aplikasi SMS berkembang seiring dengan kepopuleran SMS itu

sendiri. Aplikasi SMS dikembangkan pertama kali oleh operator network

sebagai bagian dari layanan aplikasi jaringan. Namun demikian dengan

tersedianya API (Application Programming Interface) untuk

pemrograman aplikasi SMS membuat berkembangnya aplikasi-aplikasi

SMS dari pengembang pihak ketiga (Buckingham & Simon, 2001 ).

Berikut ini adalah sejarah berkembangnya aplikasi SMS yang

dimulai dari dibangunnya SMS Center generasi pertama yang

dikembangkan perusahaan telekomunikasi CMG di atas jaringan GSM

di Eropa.

18

1. Notifikasi Voice-mail dan SMS Mobile Terminate Adalah aplikasi

pemberitahuan datangnya voice-mail dan pengiriman pesan satu

arah dari operator ke perangkat mobile pengguna.

2. SMS Mobile Originate, Adalah kemampuan komunikasi SMS

secara dua arah, yaitu pelanggan dapat mengirim pesan SMS

kepada pelanggan yang Iain. Diluncw·kannya aplikasi ini

menaikkan penggunaan SMS sebesar 25% dari semula.

3. Notifikasi E-mail, Service e-mail yang menyertikan nomor telepon

seluler sehingga pelanggan akan mendapat pemberitahuan apabila

datang e-mail ke account pelanggan. Layanan ini menaikkan

penggunaan SMS sebesar 20%.

4. Layanan Informasi, Layana:n penyediaan informasi umum yang

dikirimkan lewat pesan SMS, berupa informasi: berita, pe1jalanan,

cuaca, berita olah raga, horoscope, dan lain-lain. Karena kerumitan

dalam pembangunan dan seting server penyedia layanan, layanan

ini berkembang relatif lambat dan hanya menaikkan volume

penggunaan SMS sebesar I 0%. Berikut ini adalah layanan

informasi yang diurutkan dari yang paling sering digunakan oleh

pelanggan: informasi nomor telepon, mobile chatting, logos,

ringing tones, humor, horoscope, stock, info TV, info musik, info

cuaca, info bank, berita hangat

5. Program Partner Bisnis. Operator jaringan mulai membuka

19

berdasarkan spesifikasi dan kebutuhan sebuah perusahaan. SMS

Center dibangun untuk membantu proses bisnis dan komunikasi

yang ingin dibangun perusahaan menggunakan SMS. SMS Center

ini dibangun pada awalnya ditujukan untuk mengembangkan

jaringan komunikasi dan usaha dari perusahaan operator jaringan

tersebut. Layanan ini dapat menaikkan volume SMS hingga 20%.

6. SMS Center Generasi Kedua, SMS Center ini dibangun atas

kebutuhan terhadap perangkat dan aplikasi yang dapat

menampung traffic SMS dengan adanya kenaikan volume

penggunaan SMS. Diharapkan dengan adanya SMS Center

generasi baru kehandalan dan kualitas layanan SMS dapat

dipertahankan bahkan dinaikkan. Pada tahap ini terbukti kualitas

layanan dirasakan meningkat dan volume penggunaan SMS

meningkat 10%.

7. SMS lnternetworking Merupakan kerjasama antar operator yang

memungkinkan pelanggan dari lain sistem jaringan dapat saling

bertukar kiriman SMS, seperti halnya pelanggan dari jaringan satu

dapat mengakses voice-mail pelanggan dari jaringan yang lain.

Sebelumnya SMS hanya dapat dikirim kepada pelanggan lain yang

berada dalam satu jaringan. Layanan ini dirasakan sangat

bermanfaat dan mampu melonjakkan volume SMS hingga 50%.

8. SM'S untuk pelanggan Pra-Bayar. Dengan layanan ini diharapkan

pelanggan pra-bayar dapat turut menikmati lavanan SMS lrnrPn~

20

sebelumnya hanya pelanggan pasca-bayar saja yang dapat

menggunakan SMS. Diluncurkannya layanan ini membuat volume

penggunaan SMS melonjak I 00%, dan hal ini sudah diperkirakan

karena pelanggan pra-bayar pada umumnya adalah pelanggan dari

kaum muda usia yang sangat menggemari layanan untuk saling

berkirim SMS. Sebagai contoh, pada jaringan Vodafone di Inggris,

walupun jumlah pelanggan pasca-bayar lebih banyak dari

pelanggan pra-bayar, pelanggan pra-bayar menggunakan layanan

SMS 2 kali lebih sering daripada pelanggan pasca bayar.

9. Predictive Text Input Phones, Merupakan aplikasi yang terdapat

pada handphone pelanggan yang berisi algoritma yang dapat

memperkirakan kata-kata yang akan digunakan untuk menyusun

kalimat dalam pesan SMS. Aplikasi ini sangat membantu karena

penggunaan SMS person to . person masih mendominasi

penggunaan SMS, dan untuk itu pelanggan membutuhkan aplikasi

yang dapat mempennudah dan mempercepat proses penulisan

pesan menggunakan tombol-tombol telepon. Diluncurkannya

aplikasi ini menaikkan 25% volume penggunaan SMS.

I 0. Standardisasi Protokol. Dengan adanya standarisasi protokol

seperti WAP dan SIM (Subscriber /denti~)I ivfodule, kartu yang

berisi data-data network ID operator, telepon operator, PIN

(Personal Identity Number) maupun data-data pengguna seperti

phonebook atau SMS) Toolkit, maka akan memberi oeluamr lebih

21

besar kepada pengembang aplikasi dan content developer untuk

membangun aplikasi SMS sesuai dengan standar dan dapat

dioperasikan di jaringan. Dengan perkembangan ini membuat

layanan aplikasi menjadi bervariasi dan semakin menarik

pelanggan, dan menaikkan volume SMS hingga 15%.

11. Pengembangan Perangkat Keras pendukung layanan messaging.

Perangkat keras pendukung seperti QWERTY keyboard yang

dapat dipasang pada handphone untuk mengetikkan pesan SMS

secara cepat dapat menaikkan volume layanan SMS hingga 15%.

2.3 Daur hid up sistem (System Development Life Cycle)

Menurut Budi Sutedjo (2002) Metode daur hidup ini terdiri dari

beberapa tahapan proses, yaitu: tahap perencanaan, analisis, perancangan,

penerapan, evaluasi, penggunaan dan pemeliharaan. Sementara itu dalam

setiap tahapnya dilakukan pendokumentasian atas segala yang telah dilakukan

atau disepakati dalam setiap tahap tersebut. Setiap langkah tahapan SDLC

yang telah selesai harus dikaji ulang (review), ini untuk memastikan bahwa

langkah telah dikerjakan dengan benar dan sesuai dengan harapan. Jika tidak

maka langkah tersebut harus diulang atau kembali kepada langkah

sebelumnya.

2.3.1 Tahap Analisis

Tahap analisis dapat didefinisikan sebagai suatu penguraian

22

komponennya clengan maksucl untuk mengidentifikasikan clan

mengevaluasi permasalahan, kesempatan, hambata:n yang terjacli clan

kebutuhan- kebutuhan yang cliharapkan sehingga sistem yang

diusulkan perbaikan- perbaikannya.

Tahap analisis merupakan suatu tahap yang kritis clan sangat

penting, karena kesalahan cliclalam tahap ini akan menyebabkan juga

kesalahan clitahap selanjutnya.

1. JdentifY, yaitu mengiclentifikasi masalah

2. understand, yaitu memahami kerja clari sistem yang acla

3. Analize, yaitu menganalisis sistem

4. Report, yaitu membuat Japoran hasil analisis

2.3.2 Tahap Perancangan

Tahap perancangan clapat cliartikan sebagai berikut:

I. Tahap setelah analisis clari siklus pengembangan sistem (SDLC)

2. Penclefinisian clari kebutuhan- kebutuhan fungsional

3. Menggambarkan bagaimana sistem clibentuk

4. Berupa penggambaran, perencanaan clan pembuatan sketsa atau

pengaturan clari beberapa elemen yang terpisah kedalam satu

kesatuan yang utuh clan berfimgsi.

5. Termasuk menyangkut konfigurasi clari komponen-komponen

perangkat Iunak clan perangkat keras clari suatu sistem.

23

Adapun tujuan dari perancangan sistem secara umum adalah

memberikan gambaran secara umum kepada user tentang sistem

yangbam.

Sedangkan tujuan perancangan sistem lebih rinci lagi adalah:

1. Untuk memenuhi kebutuhan pemakai sistem

2. Untuk memberikan gambaran yangjelas dan rancang bangun yang

lengkap kepada pemogram komputer dan ahli- ahli teknik lainnya

yang terlibat.

2.3.3 Tahap Penerapan

Tahap ini mempakan kegiatan implementasi rancangan yang

telah disusun agar dapat diwujudkan. Proses implementasi ini untuk

prosedur dalam teknologi komputer akan menggunakan bahasa

komputer. Pada tahapan ini dilakukan pembuatan source code dari

sistem yang telah dibangun.

2.3.4 Tahap Evaluasi

Pada tahap ini dilakukan uji coba sistem yang telah selesai

disusun dan diterapkan di pemsahaan. Proses ini digunakan untuk

memastikan bahwa sistem tersebut sudah benar sesuai karakteristik

yang d itetapkan clan tidak ada kesalahan-kesalahan yang terkandung

didalamnya.

24

2.3.5 Tahap Pcnggunaan dan Pemeliharaan

Tahap penggunaan dan pemeliharaan adalah suatu tahap

dimana sistem yang telah diuji coba dapat mulai digunakan untuk

menangani prosedur bisnis yang ada. Selan1a sistem digunakan

pengembang sistem harus memperhatikan masalah pemeliharaan

sistem, ha! tersebut penting untuk memelihara data clan informasi yang

telah dihimpun.

2.4 Tools Analisis yang dignnakan

Adapun tools yang digunakan dalam tahap analisis antara lain:

2.4.1 Bagan Alir (Flow Map)

Flow Map atau bagan alir dokumen (alir formulir) merupakan

suatu bagan alir yang menunjukan arus laporan dan formulir termasuk

tembusan- tembusannya. Bagan alir dokumen ini menunjukan simbol­

simbol yang sama dengan yang digunakan dalam bagan alir struktur

(Lampiran 2).

2.5 Pcrancangan /11put/Output

2.5. t Pcrancangan /11put

Input adalah informasi dalam bentuk formulir input, tampilan

layar, dokumen- dokumen jaringan interaktif. Yang mana bentuk­

bentuk tersebut didasarkan pada hal-hal yang menurut pikiran kita

merupakan suatu ha! yang penting untuk bentuk. Adapun bentuk dari

suatu input yang baik dapat dilihat dari keefektifannva. keteoatannva.

25

serta kemudahan dalam penggunaanya dan tampilan layar yang

sederhana dan menarik.

2.5.2 Pera1lcangan Output

Output adalah infomasi yang telah dikirim kepada

pengguna melalui sistem informasi lewat intranet, extranet, atau World

Wide Web. Output dapat diwujudkan dalam beberapa bentuk, misalnya

hard copy tradisional dari laporan cetakan atau soft copy seperti layar

komputer.

Output dapat berupa Output cetakan dan Output layar. Pada Output

cetakan informasi yang dihasilkan dapat berupa laporan. Dimana

sumber informasi yang bisa dimasukan ke dalam laporan dapat berupa

kamus data.

2.6 Apache Web Server

Apache merupakan turunan dari web server yang dikeluarkan oleh

NSCA (http://hoohoo.nsca.uiuc.edu) , yaitu NSCA HTTPd sekitar tahun

1995-an. Pada dasarnya, Apache adalah "A PatCHy" (patch) dan pengganti

dari NCSA HTTPd. Apache Web Server merupakan tulang punggung dari

World Wide Web (WWW). Web server menunggu permintaan dari client yang

menggunakan browser, seperti Netscape Navigator, Internet Explorer,

Modzi!la, Lynx, dan Jain-lain. Web server dalam berkomunikasi dengan

kliennya menggunakan protokol HTTP (Hyper Text Transfer Protocol!.

26

Apache berada di bawah GNU, General Public License yang bersifat fi·ee

sehingga Apache dapat di download gratis pada alamat

http://www.apache.org. saat ini Apache banyak digunakan sebagai web server

untuk portal-portal besar. Adapun pertimbangan dalam memilih Apache

adalah:

I. Apache termasuk dalam kategori.free software (software gratis)

2. Instalasi Apache sangat mudah

3. Mampu beroperasi pada banyak platform sistem operasi, seperti AUX 3.1,

BSDI 2.0, Free BSD 2.1, HP-UX 9.07, IRIX 5.3, Linux, Solaris X86,

Windows dan lain-lain.

4. Mudah dalam pengkonfigurasian karena Apache hanya mempunyai empat

file konfigurasi.

5. Apache mudah dalam penambahan peripheral lainnya hanya ke dalam

platform web server, misalnya menambahkan modul.

Ada beberapa chi khas dari Apache, yaitu:

I. Apache sangat cepat dalam merespon client melebihi server NCSA.

2. Apache menyediakan fitur untuk multi banned dan virtual se111er.

3. Apache mempunyai level-level pengamanan.

4. Apache mempunyai komponen dasar terbanyak di antara web server lain,

Apache tennasuk dalam web server yang terlengkap.

5. Performasi dan konsumsi sumber daya dari web server Apache tidak

terlalu banyak sekitar 20 MB untuk file-file dasar dan setiap daemon-nya

hanya memerlukan sekitar 950 KR miemori nPr rh;/rl

27

6. Mendukung transaksi yang aman (secure transaction) menggunakan SSL

(Secure Socket Layer).

7. Banyak dukungan melalui web

8. Kompatibilitas yang tinggi.

2.7MySQL

MySQL adalah sebuah database server buatan TeX Data Konsultan AB,

Swedia. Database MySQL banyak digunakan di internet karena

kehandalannya. MySQL tidak membutuhkan ruang harddisk yang besar untuk

aplikasinya, dan mudah digunakan pada database server, sangat ideal untuk

aplikasi yang kecil dan menengah. Keistimeaan MySQL adalah seperti di

bawah ini:

I. Standards supported

MySQL mendukung level masukart ANSI SQL-92 dan ODBC

level 0-2 SQL standar

2. Language support

Databases mysqld dapat menampilkan pesan error dalam bahasa

Czech, Belanda, Inggris, Estonia, Prancis, Jerman, Hongaria, Italia,

Norwegia dan lain-lain. MySQL menggunakan IS0-8859-1, karakter

tertentu untuk data dan pengurutan. Karakter tertentu untuk data dan

pengurutan dapat dipilih ketika mengkompilasi source.

28

3. Bahasa Pemrograman API untuk mengakses database

Aplikasi database MySQL data ditulis dengan bahasa tertentu

seperti C, Perl, PHP dan lain-lain.

4. Large Table

MySQL menyimpan masing-masing tabel dalam database seperti

file, terpisah daiam direktori database. Ukuran maksimum tabeI berkisar

antara 408 dan sistem operasi mendekati ukuran.file maksimum.

5. Kecepatan, Kekuatan, dan Kemudahan digunakan

MySQL Iebih cepat tiga atau empat kali dari database komersiaI

yang Iain. MySQL sangat mudah untuk dikendalikan dan tidak

membutuhkan database administrator terlatih untuk menginstal MySQL.

6. Cost Advantage

MySQL adaiah database relasionaI yang open source.

Didistribusikan secara gratis untuk Unix/Linux dan OS/2 dan Windows.

Waiaupun MySQL adalah sistem database yang komprehensif, kita

juga harus waspada pada keterbatasannya. Ada keistimewaian dari databases

yang tidak dapat dilakukan dan dihilangkan pada MySQL. Sebagian dari

aplikasi database berbasis web dapat dituliskan tan;pa menggunakan

keistimewaan tersebut. Namun, jika aplikasi membutuhkan fitur ini untuk

menampilkan hasil akhir database, harus menggunakan database lain seperti

PostgresSQL, Oracle, Interbase dan Iain-lain yang mendukung fitur ini.

29

2.8PHP

PHP merupakan PHP· Hypertext Preprocessor, bahasa interpret1:r yang

mempunyai kemiripan dengan Bahasa C dan Perl yang mempimyai

kesederhanaan dalam perintah. PHP dapat digunakan bersama dengan HTML

sehingga memudahkan dalam membangun Aplikasi web dengan cepat. PHP

dapat digunakan untuk meng-update database menciptakan database dan

mengerjakan perhitungan matematika. Serpti halnya dengan program open

source laninnya, PHP dibuat di bawah GNU, General Public Lisence yang

dapat di download gratis melalui situs http://www.php.net. Awalnya, PHP

diciptakan oleh Andi Gutsman untuk menghitung berapa banyak pengunjung

yang mengakses homepage yang dibuatnya. Namun, seiring dengan

perkembangan Internet, dirilis PHP/FI dan selanjutnya PHP2:. dari sekelompok

orang yang bernama Rasmus Lerdorf, Andi Gutsman, Z·eev Suraski, Stig

Bakken, Shane Caraveo dan Jim Winstead, diri!is PHP3 yang mengalami

penyempumaan dari PHP/FI dan PHP2. PHP3 telah mampu digunakan untuk

membangun aplikasi web dengan koneksi database yang cukup banyak. PHP3

sangat baik digunakan untuk website yang tidak begitu kompleks. PHP4

adalah versi pengembangan dari PHP3 dengan menambah fungsi-fungsi

seperti Zend Engine http://www.zendcom sehingga lebih cepat, kuat, stabil,

mudah untuk berinteraksi dengan berbagai aplikasi pendukung lainnya. Versi

terakhir sekarang ini adalah PHP5 yang didalamnya terdapat SQL Lite yang

dapat berfungsi sebagai Database dengan fungsi-fungsi sederhana. PHP

30

banyak mendukung database, seperti MySQL, PostgrnsSQL, Interbase,

ODBC, mSQL, Oracle, Sybase (Indrajit et al., 2002).

2.9Gammu

Untuk menghubungkan komputer dengan GSM A1odem sebagai

program yang menerima dan mengirimkan SMS digunakan program aplikasi

yaitu Gammu (http://www.gammu.org), selain program ini juga bisa

digunakan kannel (http:!lwww.kannel.org) atau java server wap. Ganunu

merupakan program open source yang ditulis dengan bahasa C. Ganunu dapat

dijalankan di Operating System MS windows atau Linux. Gammu yang

digunakan dalam sistem ini adalah gammu ver 1.0.

Kelebiliau Gammu ini adalah mudah meugkonfigurasi, file

konfigurasinya hany dua bual1 yaitu gammurc dan smsdrc. Proses pembacaan

data dari SIM Card cepat sehingga SMS dapat cepat direspon.

Kelemahan Gammu ini adalah sekarang baru mendukung

penyimpanan dalam bentuk textjiles dau MySQL sehiugga belmn digunakan

untuk database lain. Gammu ini juga membutuhkan memori yang cukup besar

sehingga apabila terlalu banyak proses di dalamnya mak.a komputer akan

hang. Lebih lengkap tentang gammu ini lihat lampiran 3.

BAB III

METODOLOGI PENELITIAN

3.1 Tempat dan Waktu

Pelaksanaan penelitian ini dilaksanakan di PT. Artha Prima Mandiri, JI.

Gunung Sahari Jakarta Pusat. Waktu pelaksanaan penelitian mulai bulan 2

Maret 2005 sampai bulan 24 Juni 2005.

3.2 Bahan dan Perangkat

3.2.l Bahan

Bahan atau obyek penelitian ini adalah data .. data yang berkaitan

dengan sebagian sistem penjualan yang berjalan seperti item, identitas

customer, invoicing, sales order, dan tagihan.

3.2.2 Perangkat

Peralatan penelitian terbagi menjadi dua yaitu perangkat keras dan

lunak yaitu:

I . Perangkat Keras

Sebagaimana terlihat pada gambar 6 penelitian tm

digunakan perangkat keras:

a. GSMModem

• Model : iTegno 3000

32

" Size/Weight : 93mm x 64mm x !2mm/58g, Embedded

antenna,

• GPRS Class 10:

Coding scheme CS 1 to CS4

- Max. packet-switched data transmission speed:

85.6kbps

Dual band GSM (ETSI GSM Phase 2+):

Class 4 (2W@ 900Mhz)

Class 1(IW@1800Mhz)

• Manufacture Technology : China

b. Handphone

" Type/Merk : Nokia llOO

• Spesification : GSM Dual Band 900/1800 Mhz

c. Perangkat PC

• Prosessor

• Memori

: Intel Pentium 393 Mhz

: DD RAM I 92 Mhz

• Motherboard : ASUS P4PE

• VGA

• Monitor

• Asesories

2. Perangkat Lunak

: AGP 4x, nVidia 16 Mb

: LCD 14" inch

: Keyboard, Mouse

Dalam penelitian ini digunakan perangkat lunak:

b. Mysql ver 4.0.l 6nt

c. PHP 4.3.4

d. Gammu ver 1.0

Server Web

Komurnknsi SMS lnterak!if 2 Arnh

)~ tj 1~1 ·'. l i~l . ..~ .... :!J' \>• f ~ ~.,

Gambar 6. Jaringan perangkat keras

3.3 Metode

3.3.1 Persiapan

33

Penelitian ini dimulai dengan survei atau observasi ke PT. Artha

Prima Mandiri dengan cara mewawancarai untuk mengetahui

permasalahan. Hasil wawancara pada lampiran 4.

3.3.2 Prosedur

Penelitian ini dibagi menjadi tiga tahap yang scsuai dengan

topik penelitian, yaitu tahap analisis, tahap perancangan, dan tahap

penerapan program.

34

Tahap I: Tahap analisis

Tahap Analisis merupakan tahap untuk menganalisa sistem

yang sedang berjalan, dimana pada sistem yang se:dang berjalan dari

basil studi lapangan yang telah dilakukan pada sistem yang berjalan di

PT. Artha Prima Mandiri ini terdapat masalah dalam hal konfomasi

penagihan kepada konsumen.

Adapun basil analisis sistem ini adalah sebagai berikut:

1. Flow Map sistem yang sedang berjalan pada PT. Artha Prima

Mandiri dalam bentuk phisical.

Tujuannya yaitu untuk mengetahui pro:;e<lur sistem yang

berjalan sehingga dapat lebih mudah untuk mengetahui kekurangan

dan kelebihan dari sistem yang ada.

2. Identifikasi pennasalahan yang ada.

Identifikasi pennasalahan ini bertujuan untuk mengetahui

permasalahan- permasalahan yang ada pada sistem yang be1jalan

agar dapat diberikan solusi pemecahan masalah untuk perbaikan

sistem.

3. Penyelesaian dari masalah yang dihadapi

Merupakan suatu usulan penyelesaian rnasalah yang ada

pada PT. Artha Prima Mandiri

Proses transaksi penjualan PT. Artha Prima Mandiri dilakukan

dengan tahapan sebagai berikut:

35

I. Customer memesan barang secara langsung datang ke toko atau

melalui pesanan via telepon atau Fax.

2. Transaksi yang dilakukan secara tunai langsung cliproses sedangkan

transaksi penjualan yang melalui pemesanan dan pembayaran

secara kredit dilakukan pencatatan.

3. Kemudian operator mengecek stok barang di toko, apabila stoknya

tersedia maka akan dilanjutkan ke proses Invocing yang selanjutnya

pencetakan Invoice Form. Apabila pembayarannya dilakukan secara

kredit maka Manager akan mengecek utang customer yang

bci'sangkutan. Manager akan melakukan approvement terhadap

transaksi mt. Apabila manager rnenyetujui transaksi ini maka

customer boleh rnelanjutkan transaksinya, tetapi apabila ditolak

maka customer harus rnelunasi tagihannya.

4. Proses data invoicing ini kemudian disimpan dan dicetak sebagai

bukti proses transaksi.

Berikut ini gambar flow map sistem penjualan yang berjalan

pada PT. Artha Prima Mandiri. Flow Map yang digambarkan

rnerupakan dalam logical process.

36

Customer Order Kredit Toko Pengiriman

Penjualnn

--

Gambar 7. Flow Of Document sistem yang berjalan

37

Kendala yang sering dihadapi dalam sistem penjualan ini adalah:

1. Untuk pengecekan suatu barang oleh customer,. customer harus

menelpon atau kirim fax, karena suatu ha! komunikasi ini responnya

lam bat.

2. Nomoi" Faktor dan Total transaksi penjualan karena suatu hal customer

lupa sehingga tidak mengetahui jumlah tagihan yang harus dibayarkan.

3. Transaksi penjualan yang dilakukan dengan kredit membuat

banyaknya tagihan yang piutang dagang yang menumpuk karena

tagihan tersebut belum dibayarkan oleh customer. Penumpukan

tagihan yang belum dibayar ini salah satu penyebabnya adalah

customer tidak mengetahui utangnya sudah jatuh tempo.

Pemberitahuan konfirmasi tagihan dilakukan oleh perusahaan dengan

menggunakan fax, email, dah telepon. Ketika menggunakan fax,

karena suatu ha! kadang kertasnya rusak atau tufo:annya tidak jelas

sehingga menyulitkan untuk membaca. Ketika menggunakan telepon

kadang customer yang dihubungi tidak berada ditempat atau line

telepon customer sedang sibuk. Sedangkan menggunakan email,

kadang customer karena suatu hal malas untuk mengecek email barn

sehingga informasinya tidak sampai dan tidak semua customer

mempunyai akses internet.

38

Dengan melihat kendala-kendala di atas maka perlu altemative­

altematif solusi yang digunakan untuk mengembaugkan sistem yang

minimal dapat mengurangi kendala-kendala diatas:

1. Menampilkan inforrnasi barang dalam bentuk pe:san SMS sehingga

memudahkan customer untuk mengetahui barang yang ingin

dipesannya.

2. Mengirimkan konfirrnasi pemberitahuan bernpa SMS adanya

transaksi penjualan ke customer.

3. Sistem dapat mengirimkan remainder (peringatan) kepada

customer yang sudahjatuh tempo hutang pembeliannya pesan SMS

secara berkala dalam waktu tertentu.

Fungsi utama aplikasi message service ini adalah memberikan

inforrnasi barang, konfirrnasi pemberitahuan transaksi penjualan dan

konfirrnasi jatuh tempo kepada customer berupa pesan SMS yang dapat

diakses melalui media ponsel atau handphone.

Tahap II : Tahap Perancangan

Tahap selanjutnya dari SDLC setelah menganalisis masalah pada

sistem yang berjalan, dan memberikan usulan penyelesaian masalah

adalah tahap perancangan sistem yang bertujuan untuk mengatasi

perrnasalahan- permasalahan yang ada. Pada tahap ini gambaran sistem

yang diusulkan digambarkan dengan menggunakan tools sebagai

berikut:

lnvoiclng I Sales order I T agihan I Sales » Invoice

InvoJcc Ho t·

ClDTency ..­

Customer 1

Destination

COntact Person"'

"~ L

~Jf!'11Af'l:1/Q!f200? _____ ~-IIDR- Ruplah :!J EKChangeRfttc..-

AddRow orpr~AlT+R

Brand

Jenl5 Kcnd11ra11n

"°"" Stodr.

Unit

Packing

Harga

r•nnl

45

Period:/:> July 07, 2005·00:16 AM

·i'titol

0' 0

Total 0 TraruMtloo

0 Discount ;)%

Sub Total

'"" l)% 0

Gr11nd Total

PT' Artha Prima Moodlrl • Webvislon Dl~tribttlon • l}t!\'tlloped by PT. Eso!us! IndonMlll

Garn bar 9. Tampilan input invoicing

Barang Ban

Gambar 10. Tampilan input pousel

46

4.3 Rancangan Basis Data

Entitas rancangan basis data yang digunakan untuk aplikasi sistem ini

terdiri atas:

I. Entitas Customer terdiri atas customercode, customername, handphone

number.

2. Entitas barang terdiri atas item code, item name, price, stok, item type,

year.

3. Entitas Invoicing terdiri atas invoice number, invoice date, customer code,

item code, quantity, price, total transaction, ppn, discount, grand total.

4. Untuk entitas SMS terdiri dari sender number, sender time, message text.

Rancangan basis data ini sederhana sehingga dapat. ditambah sesuai

dengan kebutuhan sistem. Customer dapat melihat infomiasi dari sistem yaitu

itemcode, item name dan price, yang dapat ditambahjika perlu.

Berikut gambar relation table untuk pengiriman konfirmasi SMS

transaksi penjualan

Customercode Totaltransaction

1ii~\~lili\~ Invoice no

'----1 itemcode Qualit bqunus Price

4.4 Rancangan Output

Gambar 11. Relation table

47

~s .. ;;/·· ·:i :,::.; ;:i\ifl:l•:;;:ii:::'.;'·· ms .. ,. ,, . :h":':"+•····"·· -'·''."-""·"-'-''-'.-,.,,,,,._""-·

Destination no Text messa e

rc:t1stol11er::::;~Jic~i1 Customercode Customername Address H no

Rancangan output yang dihasilkan disesuaikan dengan kebutuhan

sistem. Informasi yang dikirim untuk konfirmasi SMS transaksi penjualan

kepada customer berupa invocing number, invoice date, grandtotal. Selain di

handphone customer output juga dapat ditampilkan pada layar komputer.

Output dikomputer ini juga dapat dalam bentuk print out yang berfungsi

sebagai faktur. Berikut tampilan output dari sistem pada layar komputer.

BAB IV

HASIL DAN PEMBAHASAN

Dengan hasil analisa dari sistem yang ada maka penulis dalam bab ini

akan menguraikan sistem yang akan dikembangkan. Pengembangan sistem yang

dikembangkan sesuai dengan kebutuhan dan ruang lingkup skripsi ini.

4.1 Analisa Kebutuhan Sistem

Sistem yang dikembangkan akan menghasilkan spesifikasi kebutuhan

sebagai berikut:

I. Dapat mengirimkan informasi data barang kepada customer melalui media

Handphone.

2. Dapat mengirimkan infonnasi transaksi peajualan ke customer melalui

handphone.

3. Secara berkala sistem akan mengirimkan konfirmasi tagihan kepada

customer yang belum melunasi tagihan.

4.2 Rancangan Input

Dalam pemrosesan sistem ini perlu informasi yang diinput. Input tersebut

digunakan untuk proses transaksi penjualan dan informasi kepada customer

yang dapat diakses melalui handphone. Gambar berikut contoh tampilan input

transakasi invoicing untuk data penjualan barang. Tampilan input lainnya Iihat

lampiran 4.

43

d. Gammu

Gammu dalam ha! ini berfungsi untuk membaca data

SMS dari SIM card yang diterima operator.

2. Perangkat Keras

a. Komputer Server web

Komputer yang digunakan untuk server minimal

Pentium I 233 MHz, RAM 64 Mb.

b. Komputer Client (optional}

Apabila di perusahaan ingin dibuat sebuah sistem yang

terintegrasi dengan jaringan intranet maka dapat dikembangkan

karena program ini berbasis client-server.

c. Printer (optional)

Perangkat m1 digunakan untuk menct!tak faktur, atau

pesan dari customer.

d. GSMModem

Perangkat ini digunakan sebagai gateway yang

mengirimkan SMS dari !computer ke operator GSM. Perangkat

ini harus dipasang SIM Card. GSM Modem ini dapat digantikan

fongsinya dengan Handphone. Cara koneksi Handphone ke

komputer dapat menggunakan kabel data (U:SB/Serial), Infra

red, Bluetooth.. Kecepatan datanya pun cepat apabila

menggunakan GSM Modem.

42

berupa kode item, nama item dan harga, kemudian dikirimkan ke user

dalam bentuk SMS. Customer juga akan menerima pesan SMS apabila

melakukan transaksi penjualan, dan secara berkala akan menerima

pesan SMS konfirmasi tagihan yang jatuh tempo. Admin sebagai

pengelola dapat melakukan editing terhadap data customer, data item,

data sales, dan data SMS, serta dapat melihat data customer, data item,

data sales dan data SMS

Tahap III: Tahap penerapan

Aplikasi message service dalam sistem ini d.igunakan perangkat

yang sudah diterapkan sebelumnya

1. Perangkat Lunak

a. Apache Web Server

Fungsi Apache m1 adalah sebagai program

mengeksekusi program PHP. Digunakannya Apache ini karena

PHP lebih stabil dalam pengeksekusiannya.

b. PHP

Fungsi PHP ini adalah program untuk mengeksekusi

file-file PHP agar bisa ditampil ke dalam browser internet.

c. MySQL

MySQL ini berfungsi untuk peny1mpanan data dari

SMS yang masuk dan transaksi penjualan.

41

Tabel 6. Tabel Outbox

Field Name Tipe Size Keteranean DestinationNo Varchar 20 Nomor Tuiuan Date Date Tan!!!!al Message Varchar 160 Isi Pesan SMS

Tabel 7. Tabel Sentitems

Field Name Tipe Size Keteraugan DestinationNo Varchar 20 Nomor Tujuan Date Date Tamma! Message Varchar 160 Isi Pesan SMS Status Varchar 20 Status Sending

4. Perancangan Proses

Proses dari sistem m1 dapat digambarkan dalam suatu

diagram alir data.

Customer

Kode barang atau nama barang

Itemcode/itemname/price; Konfinnasi transaksi; Konf. Jatuh tempo;

Sistem informusi penjualan

Info SMS; Info Sales; Info customer; Info barang; ~

_,. admin +----

·-----' Data customer; Data Salet; DataSMS; Data barang;

Gambar 8. Diagram Alir Data

Dari gambar tersebut dapat diuraikan bahwa user mengirimkan

pesan SMS berisi kode barang atau nama barang ke dalam sistem

melalui HP, kemudian sistem akan melakukan pencarian berdasarkan

40

Tabel 2. Tabet Customer Primary Key : CustomerCode

Field Name Tipe Size Keteranean CustomerCode Varchar 32 K:ode Customer CustomerName Varchar 50 Nama Customer Address I Varchar 255 Alamat 1 Address2 Varchar 255 Alamat2 CitvName Varchar 32 NamaKota CountrvName Varchar 32 NamaNegara Phone Varchar 20 Nomor Telepon Handphone Varchar 20 Nomor Handvhone Fax Varchar 20 Nomorfax ContactPerson Varchar 20 Kontak Email Varchar 255 Alamat email

Tabet 3. Tabet Invoice Header P1·imarv Key : InvoiceNo Field Name Tipe Size Keteranean InvoiceNo Varchar 50 Nomor Invoice InvoiceDate Date Tan11:1ral Transaksi CustomerCode Varchar 32 Kode Pelanggan Tota!Transaction Float Total Transaksi Discount Float Diskon Subtotal Float Sub total PPN Float Pajak GrandTotal Float Total ~ang dibavar

Tabel 4. Tabet Invoice Detail

Field Name Tipe Size K·eteranean InvoiceNo Varchar 50 Nomor Invoice Item Code Varchar 32 Kodeltem Qualitv Int 11 Jumlahitem Price Float Barga

Tabet 5. Tabet Inbox

Field Name Tipe Size K1iteranean SenderNo Varchar 20 Nomor Pengirim Date Date Tanggal ?\.fo..,.t'>nrr"'

,, ___ , ___ un T • -,..~ r~

39

1. Perancangan Input

Input sistem berupa data customer, datrn penjualan yang di-

input melalui keyboard, data SMS yaitu Nama Barang yang

diperoleh dari handphone berupa pesan SMS.

2. Perancangan Output

Output yang diharapkan dari sistem ini adalah informasi

barang, konfirmasi pemberitahuan konfirmasi transaksi penjualan,

dan remainder (peringatan) jatuh tempo tagihan berupa pesan SMS

dan info1masi pesan masuk, pesan keluar, pesan terkirim.

3. Perancangan Database

Perancangan database ini untuk membuat struktur label yang

digunakan dalam penyimpanan data dan pesan konfirmasi. Basis

data untuk sistem ini menggunakan MySQL. Tabel diambil dari

sistem penjualan yang sudah ada kemudian ditambahkan untuk tabel

SMS. Berikut tabel-tabel yang digunakan:

Tabel 1. Tabel Item

Primary Kev : ItemCode Field Name Tine Size K•eteran2an Item Code Varchar 32 Kodeltem ItemName Varchar 32 Namaltem Vehicle Varchar 32 Merk Item Category Varchar 32 Kategori Unit Varchar 5 Satuan SalesPrice Float Harga Jual PurchasePrice Float HargaBeli Quantity Int Jumlah Packing Year Varchar 4 Tahun

48

PCflod: I> July 07, 2005- 00;16 AM

New Invoice Search: GO

No. Invoice No Invoke Date (WTeflCY CU,;tomer CuotlK:t Person Deiuiptkm

1. 00000003/JMJAPM/07/2005 2005-07-07 IDR blJ inod}lih ti.la

PT. Artha Prima MMWI • Webvislan Oi!itriblbon • Diwalopod by PT, Esolusi Indonesia

Gambar 12. Tampilan list invoicing

4.5 Alur Proses SMS

1. Pencarian Item

IT001/Ban Mobil/2000

Gambar 13. Tampilan di ponsel

a. input keyword contoh : itemname

b. eek keyword

49

c. jika keyword terdefinisi eksekusi perintah SQL: "SELECT

itemnc.me,itemcode,price FROM item WHERE itemname LIKE

'itemnme"'. Kemudian hasilnya simpan ke variable misalnya isi,

masukan variable tersebut ke dalam tabel outbox yang berisi nomor

tujuan dan isi. Nomor tujuan di ambil dari nomor pengirim. Jika

pencarian tidak ditemukan kirim pesan dengan cara memasukan data

ke outbox yaitu field nomor tujuan, dan isi pesan. (isi pesan: "data

tidak ditemukan")

d. Jika keyword tidak terdefinisi kirim pesan dengan cara memasukan

data ke outbox yaitu field nomor tujuan, dan isi pesan. (isi pesan: "kata

kunci tidak terdefinisi")

2. Pengiriman konfirmasi penjualan

a. Ambil data penjualan (no invoice, tanggal mvo1ce, total, no

handphone) dari tabel invoice.

b. Kemudian masukkan ke tabel oubox yaitu field no handphone dan isi

pesan (isi pesan : "no invoice, tanggal invoice, total")

3. Pengiriman konfirmasi Jatuh Tempo

a. Ambil data penjualan (no invoice, tanggal invoice, total, no

handphone) dari tabel invoice yang tanggal invoicenya ditambah satu

bulan sama dengan tanggal hari ini.

50

b. kemudian masukkan ke tabel oubox yaitu field no handphone dan isi

pesan (isi pesan : "no invoice, tanggal invoice, total")

4.6 Proses Sistem Basis Data SMS

Pengembangan aplikasi tersebut dikembangkan dari perangkat lunak

dan perangkat keras.

GSM Modem - -11

~-

t

Keterangan:

Gammu i--. DB ~· Program utama

.,.___ -

Ponsel

Gambar 14. Proses kerja perangkat Lunak

Pesan yang telah diproses oleh perangkat lunak akan dikirimkan

melalui GSM Modem, kemudian akan GSM Modem ini akan

mengirimkan SMS ke Operator Seluler yang akan dikirimkan ke penerima.

Server Web

Korntlfi1kasi sr~ts lnteraktif 2 Arah

Gambar 15. Skema jaringan GSM Modem

Keterangan:

51

Untuk penghubung jaringan komputer dengan operator ponsel

digunakan GSM modem

4. 7 Mengetes Sistem

Untuk mengetahui proses sistem maka perlu dilakukan pengetesan.

Pengetesan dilakukan dengan tiga prose, yaitu proses pra transaksi, transaksi,

dan pasca transaksi.

1. Proses Pra Transaksi

~j~ Mcncari item dengan knta kunci "ban"

Sistcm mcmproscs 1mtuk mengqUCI)' kala tcrsebut

g~ Mengirim

Twnpil:

'""' ilemlt111n:a item/hafg11

!TOOi/Ban Mobil/Rp 20000

52

Dari gambar 16 diperoleh keterangan sebagai berikut customer

sebelum memesan barang dapat mengecek barang yang akan dipesan

melalui pengiriman SMS. Kode kunci isi text ini sudah ditentukan

sehingga customer tingga mengikutinya saja. Kode: kuncinya adalah

Barang<spasi>nama barang. Setelah pengiriman maka sistem akan

mencari kata kunci yang dikirim, apabila kata kum;i yang dicari ketemu

maka sistem akan mengirimkan informasi kepada customer bernpa

informasi itemcode, itemname, price.

2. Proses Transaksi

mengirimknn pesan konfirmusi

Gambar 17. Proses ketika transaksi

Terima Kll!liti Anda Me!akukrul Transaksi De:ngan No Invoice, Tanggal Tmnsaksi. s~samya Trunsaksi

Setelah bagian penjualan melitkukan transaksi penjualan dengan

menginput semua order penjualan, kemudian sistem akan memproses dan

mengirimkan konfirmasi proses transaksi kepada customer. Isi pesamiya

berupa ucapan terima kasih dan keterangan nomor invoice, tanggal

53

invoice, dan total transaksi. Hal ini untuk memberitahu customer tentang

tunggakan yang harus dilunasi pada akhir bulan.

3. Proses Pasca Transaksi

Sistem secara oton1atis mengirimkan pesan konfirmasi tagihan jatuh tempo

·---' '"< ---

u·=a;· 001/ m

Mabil/2/1'--------. 0

~ ~ '" Yth. Bpk. <nama ----------- customer>)

-~ti~~;_ ~~~~~~~1~8ini telahjatuh tempo, harap melunasinya. ,..., ' H ..

Gambar 18. Proses pasca transaksi

Untuk proses pengiriman pesan konfirmasi jatuh tagihan akan

dilakukan secara berkala yaitu tiap akhir bulan, ini dilakukan secara otomatis

oleh sistem, user hanya menentukan tanggal pengiriman pesan tersebut.

Format pesan SMS-nya adalah "Yth. Bpk. <nama customer>, tagihan anda

untuk bulan ini telah jatuh tempo, harap melunasinya. Terirna Kasih. APM"

4.8 Kelebihan Sistem

Aplikasi ini dapat memberikan informasi konfirmasi kepada customer

dan sangat bermanfaat untuk perusahaan karena dapat mengirimkan pesan

kepada beberapa customer secara bersamaan. Selain itu juga dapat

54

menampung jumlah pesan yang besar karena data tersebut langsung

tersimpan dalam penyimpanan yang besar.

4.9 Keterbatasan sistem

Aplikasi ini masih sederhana dan masih merniliki keterbatasan

diantaranya:

1. Pesan yang dikirim dan ditampilkan masih sedikit, maksimum 160

karakter.

2. Pengiriman kepada banyak customer membutuhkan waktu yang bisa

relatif lama karena sistem belum tl'rhubung ke SMS center secara

langsung tetapi melalui GSM Modem.

BABV

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Dengan adanya teknologi SMS Gateway untuk mengirimkan message

konfirmasi transaksi penjualan dan konfinnasi jatuh tempo tagihan kepada

customer yang diaplikasikan pada PT. Artha Prima Mandiri diharapkan

menumbuhkan kepercayaan customer kepada perusahaan serta

miscommunication sehingga proses transaksi berjalan dengan baik. Aplikasi

SMS Gateway ini dapat mengirimkan pesan secara berkala dan dapat

dikonfigurasi sesuai kebutuhan.

5.2 Saran

Teknologi SMS ini masih dalam pengembangan sehingga akan banyak

sekali yang akan dihasilkan. Saran penulis sebagai berikut:

1. SMS dikembangkan untuk pemesanan dengan menggunakan SMS dan

secara Iangsung diproses oleh sistem lalu sistem akan memberikan pesan

kepada bagian penjualan secara langsung.

2. Aplikasi SMS ini dapat dikembangkan tidak hanya dibidang penjualan

tetapi dibidang lain seperti pendidikan, pemerintahan, sehingga tidak

terbatas pada pengembangan dalam skripsi ini saja.

56

3. Untuk perkembangan selanjutnya digunakan MMS (Multimedia Message

Service) untuk pengiriman pesan karena isi pesan akan lebih banyak

sehingga dapat menampilkan pesan informasi dari sist\:)ll yang rinci.

4. Program gammu hanya bisa berkomunikasi dengan Text files dan MySQL,

penulis menyarankan ganlffiu dapat dikembangkan untuk berkomunikasi

dengan database Jain seperti Oracle, DB2, mSQL.

DAFTAR PUST AKA

Andersson, Cristoffer. GPRS and 3G Wireless Applications: Professional Developer's Guide. John Wiley & Sons, 2001.

Buckingham, Simon. Success 4 SMS White Paper. http://www.yes2sms.com, 2001

Doman. Andy, The Essential Guide to Wireless Communication Applications. Prentice Hall Inc., NJ, 200 !.

Hartono, Jogiyanto. Analisis dan Desain Sistem Informasi: Pendekatan Terstruktur teori dan Praktek Aplikasi Bisnis. Edisi II, Andi Offset, Y ogyakarta, 1999.

Indrajit, Richardus Eko, Bambang N. Prastowo dan Muhammad Syukri. Aplikasi Web Database menggunakan PHP & MySQL. PT. Elex Media Komputindo, Jakarta, 2002.

Paul, DuBois. MySQL lv!anual. December 1999. http://www.mysgl.com/docs, 2 Maret 2005, Pukul 21.00 WIB

Ray, Pattick Rein dan Frank Groffer. Professional Java 11obile Programming. Wrox Press Inc., 200 I.

Stig, Srether Bakken. PHP Manual. 15 April 2004, http://www.php.net/docs.php, 2 Maret 2005, Pukul 21.00 WIB.

Sutanta, Edhy. Sistem Basis Data. Graha Ilmu, Yogyakarta, 2004.

Sutedjo, Budi. Perencanaan dan Pembangunan Sistem Infomiasi. Andi Offset, Y ogyakarta, 2002.

LAMPIRAN - LAMPIRAN

Lampiran 1. Daftar Biaya SMS Operator GSM

-No 011erator Biaya (Rp) Keterang:1H1

I. Telkomsel

- Halo 250 SMS internasional Rp. 250

- simPATI 350 SMS internasional Rp. 600

- AS 250 300 ke Simpati dan HALO

300 ke Operator Jain

1000 SMS Inernasional

2. Indosat

- 1M3

Bright 350 SMS intemasional Rp. 250

Ke Excel 350

Smart 350 SMS intemasional Rp. 250

3. - Mentari 350 SMS intemasional Rp. 350

- Matrix 350 SMS intemasional Rp. 500

4. Pro XL

- Bebas 350 SMS internasional Rp. 500

- Jempol 299 SMS internasional Rp. 499

- Xplor 350

• Harga tersebut merupakan harga stab ii tidak dalam masa promosi

• Sumber: Tabloid PULSA Edisi 57 Th. III I 2005 I I - 14 Juli

Lampiran 2. Simbol- simbol dalamjlow map (Jogiyanto mW:, 1999)

No Simbol Na ma Keterangan

1. Simbol Dokwnen piroses manual,

[ _J mekanik atau

komputer

2. Simbol Kegiatan menunjukan

LJ manual I pekerjaan yang

dilakukan secara

manual.

3. v Simbol simpanan file non komputer

offiine yang diarsip

w b<~rdasarkan urut Urutan angka

angka

w (numerical), urut Urutan Huruf

huruf

~ (alphabetical)

Urutan Tanggal atau urut tanggal

( cronological)

4. Simbol Proses proses yang

I I dilakukukan

secara

1 .. ,...---···~_: ___ :

60

5.

EJ Simbol Harddisk Menunjukkan

input/ output

menggunakan

harddisk.

6.

CD Simbol Drum menunjukan input!

Jvfagnetic output

menggunakan

drum magnetic

7. Simbol Garis Alir Simbol Garis Alir .. ir .. menunjukan arus

dari proses

8. Simbol menunjukan

0 0 penghubung p<~nghubung ke

halaman yang

masih sama atau

halaman lain

Lampiran 3. Tentang Gammu

1. What is this?

Gammu is project, where are created applications, scripts and drivers used for managing all possible functions in cellular phones and similiar de:vices.

Currently it provides stable and mature codebase for many models available in market and gives functions unavailable in many other similiar projects. Long and continuous developing is rather oriented for making shared AP! for this class of devices than for making support for single phone model (which won't be continued too long)

2. Supported devices

Gammu currently supports:

• majority of Nokia phones from DCT3 generation with Nokia operating system - for example Nokia 3210, 3310, 3315, 3410, 5110, 5130, 6110, 6130,6150,6210, 7110,8210

• majority of Nokia phones from DCT4 generation with Nokia operating system - for example Nokia 3100, 3510, 3510i, 6220, 6230, 6310, 63 !0i, 6510,6610, 7210,8310

• many AT devices - for example many Siemens, Sony Ericsson, Nokia, Alcatel models

• Alcatel from BE5/BF5/BH4 generation· for example 501, 511, 512

• some functions with OBEX and Symbian devices

We work on extending this list. For details and latest list please look into binary and source releases.

3. Connections

,~,,w_; . .w_", • .--, .• "'''·''""' .... ,;_,:.;,;.;,.,"'·''"'"~·.'"'"·""""'""'·'··'""""''···-··"''"'"''"'-"''·'''·'·''''·"''"''"""''"''''""'"'"''"'''·''"'"''''"""'''''''i.v.'>;.;;.""'""'-'·;;.:.'."""'"'""""'''"''''"'"'·""·'"·"'"·'''"'''''''"·"·'~ ii Connection ·I Note · il

i~~~~::::·::::::.:::::~.:::::::::::::::·;:::::.:·~::::§iL;I~~1;:::::'.:=:::::::::::::::::~:·::::::::::~::,::::::::::::~::~:J! 1 l • Nokia 9210/921 Oi can work in this mode with !I .: I DLR2 cable after enabling FBUS mode in :1 j ii netmonitor menu l

'i :i • some Nokia 3310/3330 FBUS cables with ii

j ! Nokia 5510 (because of5510 hardware limits, \!

I l ~~~~;;;;geF~~s~~~~~i:f.~)1:ii!0~~o (the ·I

62

;.;•.V.i.\','.\;,.;.,;:,;,;,;.v;."""'-'"'-'·'''·''•w·"'""'-""'-''-'"''"·"''""'''""'"'.'·''.''";;. .. ;;;_;,o,;_,;;.-_-....;,;,;;~,; •• ;,,,,;.;; .. ;,;,,;,,,w.\'.""'-'"''·''''''":.;...'"",;~,_.,..,·~.,-....'.;,;,;.";·"''-'"""'"'"'""'"'""''".'.>".'w·''''·'""'"""'-w"V.·;,w,,,":'

\l\.ill1J~ ............................ !this cableandconnection is not veiy stable .. .. . ......... !!

}~~!~:::::·.::.::::=:·=::.':::::·:~.::·::::::1~~~f~~!~Y1~dr~;:~~:;:;~~=~~~~;:=~··:··~:::.·1 j ]9210/921 Oi with DLR-2 AFTER enabling FBUS mode·! 'I \from netmonitor in phone menu (netmonitor must be '.1.

·~='''''''"''''''''"'''''''"'''''"'""'""'·!7B~!?,t~.1,~~~~L~J?~l~ .. ~'\l~"'~~~l'.),,"'""""''''"''''"""''''"ll )!DLR3/DLR3P \although they have plugs compatible with Nokia 5110, :i ! )5130, 5190, 6110, 6130, 6150, 6190 emd compatible, I ii !can't be used with these models because of some phone:!

·.'.,,· .·.·.·.·,·.·.·.·.·.·.·······.!.h •.• .i .. rr •.. ·.· .. ·.d •...• w ....... ~.·.·.·.e ... ·.·.·.·.·1 •.• 1.·.m ... ·.·.·.·.·1.· ..• t ... s ... · •• ·.·.·,·.·.················.······· .·.·.·.·.·.·.·.·.·,·.·.·.·.·.·.·.·.·.·.·! •• :;"'"'"':'"::;:,;:;~;:,::<;"' :::;::;·:;, ·"'""""":;::; .. .. .. .. .. ::;-:""'"'"'"·;;.:;;;;o:;:;:o;,;<:::<:::;;-::y:<;:;.";;";<::;;,;::-;:;;-;m ,

I ~~~ ~ ;f ""''"''"';''''"''''"'''""'''"'::;:::::::::::::<::::;·,•- '' :::c::.: ·'''''.-' :<;;,:::;;;:;:;l;;;,;::::<m:;m;::,;:.::;;.:;::;;;:;;,::;::;::::<:<::w;;;:"::::;::;;""''"""'''""'''''''''""'''"'''" ''''''"""""'''''''''""""'~: 1DKU5 clones with !support depend on availability of driver for cable for !

i!~~~~~s~}e.~""""" .... , '"" ...... ~.·.;~~;~~· .. N;ki~"33oo"':'oi(u2"~~t;I~·,1;t~~~;;'ihi;"""" , .... j ' 'l

i .. . . !model for uploading1nusic only ... . . . . . . . . . . :; !~th;~usi·;;b"1; ........... ,- ...... ,,~ .. -·:;-·--;;;:~~us~~:,~~:pa~~~1~·::~;;~:~~~::U<l"h~: .. ·1 \ ! drivers able to set emulated serial port j

4. Available functions

original USB cables with Nokia 55 I 0, 3300 are!! not supported (they're designed for uploading ' music only in these models; Gammu is !

" designed for giving access to other functions over FBUSIMBUS cable connected under battery)

For now there is available command line version, GUI (Wammu), shared library for using in own applications and some scripts. Using them you can manage such functions:

63

c~·"'-""'·''""'"'·''"'·"""·=""'"'"""''""'"·""'''=·-'··"-'"""'"'"'"'""""''""'"""'''"''"""""""·''"''''"~" .•.• ,,,.,",,·""·"-·"·····' 1sms il(AT, Alcatel BES/BF5/BH4 and Nokia devices) !I I 'l • support for various formats like ii :~ " :' l il o EMS (!Melody/text ii 1 1 formatting/linking/bitmaps/OD I) fj :~

ii J :i :i ~}

:I "

" i

o Smart Messaging 2.Cl/3.0 (profiles/bitmaps/ringtones)

\l o WAP/MMS settings and bookmarks i

(Nokia and SonyEricsson style) i ii

o VCARD l.ONCARD 2.1/VCALENDAR/VTODO

o linked sms

o WAPpush

and other

getting sms from device:

o Gammu can LINK read sms and reproduce original SMS contenst. With it it's possible for example to

j

' ' "i ·~ 'l

il

j

have full EMS support with phones, !! which normally don'1t have it in \j firmware (like Nokia.s) "

;1

o With Nokia phones with internal SMS JI memory you can get contenst of all :1 SMS folders (including Drafts and :I Templates folder) j

setting sms

sending sms

enabling or disabling email/voice/fax indicators in recipients' phone

replacing some SMS in recipients' phone

.,

64

:f;"'""'"'"'"·'-"''"'"''·''·'·'·'"'·"'·'''";.,=.,;"''"".-."'""''"'=·'"""''"''i('''" ... '""'""''''''·'-'·''"'·""""'-•'=.:.;;;;.":.v;.;.;.,;.:_;;.:;;.;.._;;;.;.;;.t;";;;_;;.""'"'"'''"'""''-''''""'"''''''"'"""""'''"""""'''"'"""""'11

ij ii • voice tag assigments I .. ~

j~

!1 ii ~i

"

• •

all types of text notes and phone number types

SMS list assign1ents

caller groups assigments '~ ii ;~ \\ :: • speed dials for DCT3/DCT 4 phones i

H

!t'""·'''·""'""~"'''""'"";;;;c••;;;.;;;;;;.c";"'·'"·"'J!,=;'"''·""'""~'=•o•==oc~;.•;c;c.;;;o~;;~;;;~;cc""""'"'''"·"'°"''·"'''"''"''"''''''J •icall lists (dialled, missed, j!(AT and Nokia DCT3/DCT4) \i

Jreceivedcalls) . . . . .... . lL .. . .. . .. . . ....... . . . .. . .. . . . .. . . . . . . \( :f"""'...,'""'"'"·'"'·""..,·'"·"'""·""""'"""""'·'"""""'"·'""·'"'·'··'"·'"''·"·"'·"·~:--·vA""'"""""'"""''"" ... '"'""'"'·""""'"m'''•'•"'"''·'"""'"""""'·""'"'""'·'"'"'M'.•".'"•""""""""""''"'""'""'·'·-"•'·"'·'''-·-·A.

1call, SMS, USSD and Cell :j(Nokia phones and partially AT dev1ices) :t !)Broadcasting events .. :; l !!You can receive informations, when phone receive :! 'I ITsms or make call, you can enable rec:eiving some CB i

L ... . . . . . . . . . .ichannelsor see, \Vhatisanswerfor ussp code . . I r··'·"'"""'"···'·-'·.Mv.".'"""""'"·"''"'°'""""'"'"•'•"·'"·"'·"'''·'"w;.vc;.w.•;.'"'·"•""i("''"'"•""•'"·'"•"'"·'"'"'"'-'"'"-"-''"•W"·'"'"'""''"""""'"''w.v.w.v.";.w.•.w;.w•.<.wm.w,,,,.,,,,,_,._, .. _.w .. .,.,_,._.,._.".,.""'·'"·"·W-'•'·"'."·"'·''·W.<.""''"·':l

!caller groups . ![(Nokia DCT3/DCT4) . . . 'i F~1~;,,;:~·~;d,,;,,,,,,,,,,,,,,,,,,,,_,,,,,,,, .... ,, .. :1a:r;~~1·ibff"8~tti;8"&~m,,N~k~-63iai6~1oi"~~~fibli"" 11

I ·:support for phones with voice records m filesystem " !1 Hike Nokia 6220 il :~ ..... ::rn:.:v::::.::;:v::,::::.: ::::::.::.::.:::<: ::::::::':":.:::::;: '"''' :-::-:o~):m:;,:.::m::vm:.:;:;;:.:o:m::v::<:-::-:;:::::m-::::-::::::.:::-:::::.:-::o:<=:v:::.::::.:v:.;;-:-:::::.::-::;:;::.:::m::::mv::::o:-:::::1::-::.::::.:<:v::::::.:::.::.: :\j ji~gos :](Nokia DCT3/DCT4 and some Siemens) !l :~ ii

ii • setting and getting mono logos in various ii ! !\ formats (2 color BMP/WBMP/NLM/OTA !! i and others) l :; " 't

'1

'! • setting animated startup logos available in f! JI Nokia 3210/3310/3315 :I

ii • setting and getting color logos for DCT 4 - is \\ :: connected mainly with uploading files to .! 'J phone filesystem and assigning them to some !I .! types oflogos (it's done this way in Nokia ii " DCT4), Gammu doesn't hav(~ problem with '1

j E this :1

l;!";;t~"p"t;;;7;1;~1;;"""'""""""~kN~kl~DCT3iDcT4)"~=;;==m;;;;;;;;;;;;;;;=;;;;~;~;;;;m;=;;;;;;;;;;;;;;jl !welcome note ii ! f•,.;.,,;,;..;.•.Vm.'-.•;;,,,.;.,_;.,,,,v;;; .• ;.••.•i.'i . .;,"W.v;.'.• .• .-•• ;;.,wim.v.,•.,;w,.:,,,,:,_:,_:/)..v;;;;;.;,;_;,;;;.-.ih.\WM",.;;;,;..,,,:_:;.w.,,;.:,_;,;,;,,,;;.,.;, •• w.:..'.';.<,,;",•""'""'·""·'"·"·"·"·';,;,;,,,;.., .. .'i.'.'-'.•;,;.,,...w,_;._;;,,;.:,,,;M.,;..;;.•,,;..;_;;;.;_;_;;;.•,;..;,,,,',.,,.\\

}wallpaper . . . .. .. . ... . .. ..... ... . Ji(colorNo~iaDCJ4) ... ................. ..... ................ ... . ...................... ) :"'·'·-·;~·.vAv,w.-,w.·.-~w.Y.".W<.W"W""'''''""·W.WNN.-..,;,,,,.,.,,,.,w.· ... •,,_.,.,?"""""'"'·"·'""''''""''"''"'""''""•"'"''•'W"'·""'"''"''"'-W"W-''·''"'·.,"'~"""""·"·""""'"'''""'·"."·''W-"""""'''';,.,"'_.,.w.w.-.·;.w ... ·.w.-.-;.·.w.'w:~

Jringtones '!(Nokia DCT3/DCT4 and some Siemens) ii :1 ·1 • full support for Nokia Smart Messaging i! i • support for MIDI files in phone memory (for l ,i PV!lmnl,:..i'nl\Tnlrin 1~1()\ -

65

"'-'""•''•-'•"'-""·'""'"'""''"''•'"-'•"-"''W<'","'"·""'',;,,w.,;«,•-'W•"•it'"-''""'·''•'·'"•'"·'"'·"·'""''''',WW•"·'"''"'"''·'',\W,;,.,,;,;"'"'""'·"'"'""'·''·'"•""·'"'''·\;•,\\;,:,,-..,,,,,,.,,,;.,\,\Wo>'•'''""'"·'''''·"-·"',\\v,w.v.-,'-'"'':~

I !i • support for ringtones in filesystem (Nokia :i 1 1 oc~ I .. 'i~';!';~;J;";~"""""""'''"'''''"."""""'''""'"'l~'~p~~;t;~~l~d~~:''""'""""'"""'""''""'~""'"''""'~""''"'"''''"'''""'"""'"'': < :~ ! ~ • Alcatel BE5/BF5/BH4 in binary mode :

n " ii

• Siemens (initial support)

• Sony Ericsson T310 (initial support)

• Nokia DCT3 (5 versions - for 6110, 3310, 5210, 8210, 6210 and compatible)

;

j 'i t "'

'j " :~

•. I.' • Nokia DCT4 (3 versions - for 631 Oi, 3510, :; · ;; 6610 and compatible) ;! l,,;;;,,;,n., ... .;._, .• w..,,,,,,.,,,,,-,,mmm;."<'"mn,Y."''"''""""'"m",''•W>}.L;..,;;;;;,.,.,.,,..,,,;,,,; •• '.WH';,.;;;;;,,,;,.,,;,_;,;;;,;;,,'.~',.;;;;;;;;,,;;;;;,,',Vv;,...;,;;;;;.',,.,.,,.,,,,W;,,N,~;;;,..;,;.;;;;,,.;;;,,,,,,m,.wu.·'-'·'i•'cNimu'"""'.ii

iToDo \Support includes: '! 'l ;( :;

• • Sony Ericsson T310 (initial support) J (; :i " :i :; :; . Alcatel BE5/BF5/BH4 in binary mode

!! :;

[j

• Nokia DCT4 (2 versions - for 631 Oi, 6610 and compatible)

''""""""(-';tO\m ·· ·cc"'''"":"·-'\'"""'""'"'"""'""'""o~: '"''"""'""''""'""""' """"'"'"""'""···· ·

. .. , .... 1;£ES:I~ .. P .. ~~~,~~2,.,. .. !;(Nokia DCT4)

., .. • getting/setting files in some Nokia Symbian i

devices (it includes support for Nokia 3650 internal memory/MMC over FBUS cable connected under battery)

• getting/setting files with Nokia Series 40. It 'i includes:

o Gallery

o Java applications/Java games

o Tones

66

f"""'··~->V•"•"-''•''-W,,,•.•c,•,""'•W •• mW,y,'-''•"•'"·'""''-''"W•"•''"-"•'·•'•' '''"·"°·if''''"•"-'''"·'"·".V·'",;,;,:,;;_;;,,;;.:_:,;.,;;,.;,,,"''"''';'·'·"'''''"''""''""·'"'"·'''·'"·''V."'''''·''"''"'"•'•"''"W"'"' '''-"""'"•'-W,",W.""' c.'c.'.''"·'"A',;'1l

; :: o voice records i -~ ., ..

o some logos )~

o phone Inbox

• making calls

\l )f ~! 1;;;;;11;g··~;;1~~;·p·h~~~ ·········;(N~kJ~DCT31D'cr4) ············ ................... · .. !menus ii } .:

'.! u -~ :{

• answering calls

• netmonitor for Nokia DCT3

• ALSmenu

! iiand others , .;_;.;;.;;.,;:._"°'"-.'."'-"'"''""''-'·-'.v.w.v.•.v,,w;.=w.w.•"'""w"'"'·"'""''•'"-'".;,i}V.'.'~";;.;,;;.";.;;_;;.,;;,,(V.;-.=;.,"""",...;;."""'''-'"·"'·'"'W.w.;,""""'""'·''""'""'W..,_,:_"~;,,,.,,,W.'•'•'-..W•>"N-'"'"'""-"·""''·" •'"-V·"'"'w.'.;)

!testing phone '[(Nokia DCT3/DCT4) {V,-... ,-,,w,•,w.wc.-.•,,>'.·""'-'"·'·.w.W.>".W,,.,,.,.,,.w;v,.w.•.w.w • ••• ····-· "•""'"''·""'".w.•.•.•,;_;_~.·;.-;.·.-,.w.;,;•;c;c;.-• .;,,,.;;,w.";.•.-.".;;.", .. w ... v; •;.·.--·.V.-,..,,;, •• •.;w,'."•".'.';.•.;v.V . .,-,..; •• ; ... -.•."•'•W-•·-w,•N.w.w.•,•';c."."·' ·····''>"--.-.. ;.-.•.-,•.•' '•' ·

\uetmonitor (GSM network! • full netmonitor handling (Siemens and Nokia I! jinfo/debugging) and phouei1 DCT3)

1::,::::"•dwore I, :

:i -

more simple info about network and phone work available for other devices too.

DEBUGGING finnware with Nokia DCT3 :?'"""'""'"'"""'""""'"""""""""'""""";:;:;::<·:: ·t ""'"'""""""' ''"""""'"'"""'" :;:::>:t ::-:::o:::<::::::-O<"-'~"'"···· · ·····-·-···· c·o-;:::::;;

;1wAP/MMS settings ' • Nokia DCT3 (everything supported, but there j ; are possible problems with some concrete :: j phones, because there is big mess in protocols!! i and info returned by phones)

\! • Nokia DCT4 (phones with proxies like 6220 ii , \, and without proxies like 63 IOi, 35 !0i) i \,•.•;.o,•;;.•.w;.w.m•.•.•>w.•,"v.v.;;v.;;""""·""-cw,•,;•,•.-.•.•-••-''·' ;;.:;_;:_:.;_:_:;.:.:;;• ... -=<.,,,_.,..,.._.,v.•.v,;w.w.vm>;;;.;•;..,,_,"""""'"''""'-""Y·"'-'"'·'"''·'"'".W.W.".•.·-·.~·;.;•;;.•.;w.;•.w.;•;.•.•.•;."W.V.".".•;.w.•"-"''-"'-"-"-"·''-"·'"""-""'-'"·' .::.:;_;~:.,j:"

iWAI' b()okllll!rl{S.......... . ............ ''(J:':JC>~i!l I:>C::'I3. !l!l.d. .. P9I4).................... .! l§i~~~1L~:~~t:i~iif ~:~~::~. ::JtE~¥l~:P:sf i::i~~~E~. ::::::: .,::.::·:::.::::~,.::·:·:::::::. :.:J ::g,,:i;:~,~~,~,~~'~'~ .. R~t~.1:1~,,,,,,,,,,,,,.:!lli,?.~l,~}2,£.Ii!==,,,,,,,,,,,, .. ,,,. .. ,, .... ,,,,.,,,,,,=,,, .. ., ... , .. ,, .. ,,,,,,,",,J !making backup/restore for!! ;various settings described labove :\

• making full backup/restore of Nokia DCT3/DCT4 to/from text format (Gammu specific fo1TI1at with checksum and full Unicode handling)

68

In the past there were few people and companies, who provided it to author of this www and because of it there were many written things in this and other projects:

I. Tomasz Motylewski

2. Ondrej Rybin

3. Multi-COM

4. Tom Nelson

5. Griffin Team

6. MatrixTeam

7. KompuNet

8. Lorenzo Ciani

9. Adam Lange

10. Michele Rossetti

11. Alain Bitam

12. Johan Helsingius

13. A Leg

14. Troy Engel

If you want to join this list, please contact or DONATE. Please note, that this help will go to author of this www. He can do many things for this type of help ... Examples:

• writing some specific functions under GPL/other license

• giving some other help in understanding Nokia/ AT/other protocols

• putting some banner(s) or other advertising on this www

If you want to donate extending Gammu is some area and you're not sure, who developed this area, please ask first for example on Gammu mailing list.

8. How can I help and what is really required NOW ?

There are many ways:

• testing and submiting bugs reports

• suggesting extensions

• providing some hardware (phones, cables, parts for PC used for development, some other) or software (documentations, licenses for software used for development, some other) help

69

• DONATING (even small sum of money will be big help}jo author of this www OR OTHER GAMMU DEVELOPERS

Here are things, which could help author of this www in making some support from his side:

• Siemens devices (series 35, 45, 55)

• Ericsson devices (the best T6 l 0)

• HDD 40 GB 2,5 inch

• Windows 98 I XP license

• original DAU-4F cable for N3l10

• NCDS for N3110

• (original)MBUS forN2110

9. Links

• Mirror provided and updated by reflektor.cz and Marcin Wiacek (Czech Republic, Europe)

o Source from latest stable version (gzip)

o Binaries for win32 from stable version (sometimes from older source version) (zip)

o ChangeLog ending with latest stable version

o Directory with earlier stable source tarballs (gzip files)

o Directory with current test versions (gzip files)

• Mirror provided and updated by Michal Cihar (Czech Republic, Europe)

o Source from latest stable version (gzip)

o Source from latest stable version (bzip2)

o Binaries for win32 from stable version (sometimes from older source version) (zip)

o Directory with earlier stable source tarballs (bzip2, gzip files and md5 checksums)

o Directory with current test versions (bzip2, gzip files and md5 checksums)

• Wammu (GUI for Gammu written by Michal Cihar)

• Archive of mailing list (starting from 28 Sept 2002)

• Project page in FreshMeat (includes mailing annoucements about new versions)

• Ready Debian packages (thanks to Michal Cihar)

• Ready RPM packages (thanks to Troy Engel) and mirrors: Mirror 1, Mirror2

• RSS channel (another after mailing list method of getting informations about latest stable AND test versions)

If you waut extend this software or help in creating, please write me

10. Mailing list

70

This is mailing list connected with MyGnokii(2)/Gammu projects. It allows to contact with authors of this software, sharing experiences or discussing about some GSM mobile phones topics. Here are sent accoucements about each new test and stable version.

First you have to register: use http://lists.sourceforge.net/lists/Jistinfo/gammu­users to make it.

Archive oflist (starting from 28 Sept 2002)

11. Manifest and history

After preparing some source and ideas for Gnokii and developing MyGnokii author of this www decided to create new project- MyGnokii2. It was started somewhere in April 2002 and written from scratch.

The main reason for making it were problems available in previous projects. It was required to make some solutions faster, smaller and better. Here were some start targets:

• using Unicode everywhere

71

• no more wmecessaiy source and adding source from C libraries (ANSI C compatibility)

• support for free C compilers on various portable devices and various OS in personal computers

• good documentation for protocols and source

• no unnecessary rewrites

• translating binaries using external text files

• less stupid errors existing because of obsolete structures

• when something can be done better, it's implemented, tested, later included into source (not included without testing).

They're generally reached.

During developing there was chai1ged project naine from MyGnokii2 to Garn mu (GNU All Mobile Management Utilities), because it is more different than shared with Gnokii and Gnokii developing methods. It was done with ve:rsion 0.59 released 5-10-2002.

Project started by Marcin Wiacek became more popular. Gainmu core was ai1d is used less or more legally in some other software. Some other people actively started to help in extending it and we have what we have. Many thanks go to Walek, Michal Cihar and others ...

Somewhere near December 2003 project was stopped for a momt:nt. Reason for it was simple: no money for buying some hardware required for extending it. Some time pressure and no sensible views for other solutions made, lthat author of this site tried to change license from GPL to LGPL.

Changing license wasn't done excellent. Discussion about it was sometimes on very low level (flaine wars and similiar horrible things) All idea unfortunately failed. Situation of project changed a little different in this moment:

There are done updates and fixes, but not so fast in all domains (everything because oflack of hardware). In other words: some functions for some latest models can be unavailable for longer time. In this moment (June 2004) it's visible with Siemens, Sony Ericsson a!ld some Nokia 40 Series phones (6230) ...

It made, that author of this www started some time ago new project called Gammu+, which will be written in C++ and because of it will have avoided some disadvfilltages available in Gammu because of using C language. !Cfammu+ will be with own license, which will allow to use it without ANY limits for commercional use a!ld will allow to find some money for extending it.

Please note, that Gammu+ is rather future. For now developing i:; done mainly with Gammu. Project grows. Author of this www want to:

• end graphic user interface

• provide direct support for Symbian devices (without installing anything additional in phone)

• fix and extend this software to have full compatiblity with devices available in market - for example, with Nokia 6230 and others

Unfortunately, there are still searched sponsors. Without them development can stop

Mygnokii2/Gammu HomePage and mailing list MyGnokii/Gammu/Gammu+

72

Last updated 8 November 2004. Available in extended & updated version on Gammu.net portal.

Lampi ran 1. Tampilan Input dan Output Program

Tampilan Login

Period: I> July 09, 2005 • 07:33 AM

Webvision Distribution

PL Artha Prima Mandiri· WebvWon Distribution· Developed by PT, Esolusl Indonesia

•J, ________________________ _ ---~l . .tJ

Tampilan Halaman Utama

er I Vehlde I City [country I Currency I Customer I Group Module l Item I Item Type J Sales Price list I Salesman [

etup » Customer Management

Manage customer

Kode

Alamat

Kota

Tclepon 1

[ontact Per.,on

AlamatEmail

Nama

ls;;i;ct Kot.5 .:J Ko de Pos

HandPhone

Negara \Serbia

Period: I> July 07, 2005·08:17 AM

PT. Artha Prima Mandiri - webv1sion Distribution· 0¢veloped by PT, Esolusi Jndonc51a

Tampilan Input Data Customer

r--:=-~ctu:-=·~--~-~-~;"·d ; "'Jn,;l 'I User I Vehicle ! Gfy ! Country I CUrrency ! Customer I Group Module I Item I Rem Type ! Sales Price list I Salasman I

Setup »Customer Management

I New Customer Search:

No. Cm•tomer Code

GO

Customer Name Address

I. CST002 Ab<!; aput:at

2. 00001 bu l<hodiiah "" 3. 000009 khoriq BambuApus

Oputat

4. 123123 Pak Zainul Oseeng Parung

-------~1.>I

Period: I> July 07, 200S • 08: 17 AM

0 00888113482

oan1 00128947537

6666 085216270073

onaa9999 Ofll2321'l252

Phone

PT, Artha Prima Mandiri· Webv!sion Distribution· Developed by PT. Esolusl Indonesia

Tampilan List Customer

Jnbox I Sent Items I SMS Send I Outbox I

SMS i. SMS Send

SendSMS

Phonebook

Message

Petlod: I :t July07, 2005- 08J9AM

_j

.J 160 You may enter up to 160 characters

Send S."15

Jnbox ! Sent Items I 5tr15 Send I Outbox I

SMS 1tJnboa

New 5MS mc~suyc Search:

No- Sender No

!. +6281510104359

2. +6281808705175

3. +6285216270073

4. +62811%0297

s. +62611960297

PT, Artha PM!a Mandiri· webvision Distribution· Developed by PT, Erolusi Indonesia

______ __J !J

Tampilan Mengirim SMS

----------·-----------------·-------Period; I:. July 09, 2005 • 07:37 AM

GO

Date Message

20050700162044

20050707131215

20050707131156

20050707120718

20050707113721 buangban

PT, A1tha Prima Mandiri - Webvlsion Distribution • DeveloP-Od by PT. Esok1si Indonesia

Tampilan lnbox SMS List

',;]~· SMS Period; I> July 07, 2005 - 08:20 AM

!nbox I Sent Items I SMS Send I Outbox 1

SMS 11- Send Items

New 5MS IHCSSiHJe Search: GO [l]-2!Next

No. Destination No Date Message Status

Anda Telah me!akukan Tronsaksi Pembe!i.m deooan No: I. 08800113482 20050707081042 00000003/IM}APM/07/2005, TQI: 2005·07·7, Tot~: Rp, 38'1000. TerlrM KMih Se~NoReport

{APM)

z. 08123214252 20050701 !73814 Hallo pa Kabar SendinqOKNoReport

J, +628123211252 200S0701172903 ITM911 l I/Ban Mobil/32000.00 SendlflQOKNoHeport

Anda Telah melahikan Transaksi Pembe!ian deogan No:

" 08123214252 20050701172550 00000002/lM/APM/07/2005, Tgl: 2005-07-t, Total: Rp. 311040. Terima Kasii SendinQOKNoReport (APM)

S. +6281808090969 20050701145816 ITM911 l l/Ban Mobi/32000.00 SendingOKNoReport

" 200507011'15538 kata kunci belum oda SendingError

7. 20050701145523 k.!ltll kuici belwn adll

a. +6288B811J'i82 20050630222221 halo sayang apa kd!w7 dengan rahmat a!!ah ruooga enokllu dil.orima disisinya SendingOKNoReport

9. +626888113482 20050630222021 Terima Kasih at as Kunjt.JnQan Anda. 5e!TIOQ3 Selamat Sampai Tujuan Senill"ivOKNoRepmt

10. +62888(3113482 20050630214 726 kata kunci belum a& SendingOKNoReport

[l]-2!Next

PT, ArthaPrima Milf'ldtr! • Webllision Distribution· Developed by PT. Esolusi Indonesia

Tampilan Send Items SMS

Lampiran 5. Source Code

#----Narna File #----class ini #----srns

Srns.class.php---------------------­digunakan untuk rnenerirna dan rnengirirn

<?php class sins ''"xt:ends main

var $ errors; var $-state; vnr $-pages; var $- rpp; var $Security; function sms ($db_conn "' 0)

$this->_errors "'array{); $this->_pages ~ ''; $this-> state~ ''; $this->-rpp "" APM RPP; global $security;­$this->security "' $security; if ($db ... conn !"" OJ $this-> _db_linkid ~ Sdb_conn;

function sentitems search ($keyword "" "", $page "' 1)

$start Srpp Send "' :;;o;(jl =

~ ($page - 1) ~ Sthis->_rpp;, $this-> rpp; Srpp; -'!~l·:LECT COUNT(fli;•Dtino1tio11!·l11111h<!r) a:; tot;11 Ff\OM :;,.111 itnnw';

~~lh):;-A.!•wry U~~;ql);

$HS•' $tl..is->Fir!:itRow{); if ($RSI 'total'] >~ ll I

$th15-> pn<Je" ~ cei l ($RS!' total'] I .$rppl; ~-:o;ql "SELECT :Oondingf.lateTime, !Ju~{t irwtiu11Nw11bor, Te:~LD(:'~'-id1,d,

St;i.tu;;; t"HGM SBlltitem.5";

inbox";

>_rpp;

if ($keyword !"" '"')

$sq1."" $sql.""

WHERE"; (DestinationNumber Lil<E 't$koyword't')";

Ssql "ORDER BY SendingDateTim0 DESC LIMIT $start,".$this->_t·pp; $this->Query ($sql);

function inbox_sezii:-ch ($keywor·d -.. "", $page = 1)

$start ($page - I) • Sthis->. __ rpp; $rpp "'" $this-> rpp; Send "' Srpp; -$sq.! ,_,. 'Sf::LEC'l' COUNT(!Jondel"l~umber) as total FROM inbo:<': Slh.iu->Quory ([,1:.iql) I $RS~ $this->Fit·.stRoH(); if ($RS{'totnl'I >"' 11 I

$thi.s-:> _pages "' cell [$RS!' total') I .$rppl; $sql "" "SELECT ReceivingDateTlme, SenderNumber, TextDecoded ~--RCM

i( ($key1-Jord != "") I

~~:;q l ' S:>ql •'°'

~'1l!EHS";

{SenderMumbor LiKE '\',$koy\.o/onl'i') ";

$sql - "ORDER BY ReceivingDateTimo DE:SC LIMIT $st3rt,".$thi::o-

Sthis->Query ($sqll;

function outbo:{ __ sean::h ($keyword°""" "", $page" 1)

$start $rpp Send "'

"'" ($page - 1) $this-> l·pp; Srpp; -

... $this-> _rpp;

outbox";

if ($RS['total'J >= ll {

$t:his-> pilges "" ce.i l ($RS!' total'] I $rpp);

78

Ssq l ·;;SELECT Sendi nqf)1il.nT ium, f>e~;t i t11.J\. i.0uNrn11bo r, Text\>o~·u<k1d l"HOM

if ($keyword !'-" '"') {

{

$sql.= $sql.=

WHE:RE"; (Destinationtlurnbei· Lih.'E ''il$keywoi·d't') ";

Ssql " ORDEH BY SendingDateTime DESC LIMIT Sstart, ".Sthi~-_, rpp; Sthis->Query ($sql);

function sms_send_check ($form) I

$de st inationnumber = $this->cl oan post ($ fonn l 'dest.i.na-~ ionnumber' I ) ; $te:{tdecoded = Sthls->clean post "{$form!' te}:Ldecodod' J \; if ( !Sdestinationnumber I J $destinationnumber ,..,,,_ ' ') s·:his->set OtT(•r

('Destination Number tidak boleh kosong'); -

boleh kosonq' l; if ( !$textdecoded 11 Stextdecoded ="' '') Sthis->set_er::or ( 'SMS Mes~;agH tidak

I I $def; L1 nationnumber "" $this->rest i'ict numbo r ($ fonn l 'dost inat.i onnumbc1 r' ) ) ; j f (count ($this->_orrors) -::""' OJ return -ti·ue; else ~·eturn fnlse;

Sdestinationnumbet· "' $this->clean post ($form! 'destina::ionnumber']); $textd0coded "' $this->clenn post -($fonrd 'text decoded'] l; $sql = 'INSERT INTO outbox 7 ; Ssql ."' ' (DestinationNumber, ToxtDecodod) VALUES ('; $sql •"' '\ 1 '. $destinationnun:ber . '\ r, \''. $textd1"c::id0d - '\ r) '; Sthis->Query {$sql);

funct)on sms_product_:>end __ ch8ck ($focm) {

$de st i.n.::itionnumber "" Sthis->clcan post ($form{' de st in at ionnumbe r' J ) ;

Sproductcodo "' $this->cle<J.n post (Storm{' productcode' J:; if (!Sdestinationnumber 11 $ctestinationnurnber "'"" ''l Sthis->set_error

( 'De.:;tinath'"ln NumbGr tida}; boleh kosong'); if ( !$productcode I! $p1:oductcode '~= '') $this->set" eri:or ('Product Code

t idak bolch kos0n9 1); -

if (count ($this->_error·s) <"' 0) return true; 8lse return false;

funci::ion sms_pcoduct_send ($form) // berfungs.i utk add

~;,j(,-;;l .in<1 t iunnum!x.i r 0• .'~Lh is->cJ ea11 pusl ($form! 'de:;t ina t. ionnurnb<.:lr' ) ) ;

$productcode "" $tbis->clean __ post {$form[' pr6ductcodo'));

JI Translate productcode into product message for textdecoded field on outbox $sql •·· 'Sl::L!<~CT produclrnns message FROM produC"t Wl/EHE. productcode ~, \'',

$pcoducLcvdD , '\' '; -$this->Query ($sql); $RS "' $thi:.>->FirstRow(); //data y1:1ng dihasilkan di SRS, dipanggil kumbali di sql statement dibawah ini //Insert ke outbox utk send sms Ssql "" 'INSERT INTO out box '; Ssql."' '(DestinationNumbor, Text Decoded) VALUES ('; $sql."' '\''. $destinationnumbor .'\', \''. SHS['productsms message'] .'\')'; Sthis->Query ($sql); -

# Ini 2 ftmct ion utk upload, check hHsiJ upload, masukkan data dari file ke array dan updat8 db

function srns imoort check (} l - ' -

$Userfile = $ FILES['userfile') ['tmp name']; Suscrfile name""$ FILES['userfile') T•nnme'J; $user.fl J.e - size "' $_FT LES [ 'userfile'] ['size' I; $u:>erfi.l0-type "' $-FlLES['userfile'] ['type'); $U.'.:Wr! il.e~:error "' S_FJLES{ 'user.file'] ! 'orrOl'' J;

79

cnse 1, $this->set _error ('Fi le exceed,;,d upload _max_ fi lesize' l ; brenk;

brea};;

break;

directory');

$usei:file_name");

case 2: Sthis->set error ( 'F.i le exceed·;:.d max file sizo'); - -case 3' Sthis->set - error ('File only p.Jrtially

cuse 4' $this->set - error ('No file upl•Jaded r) ;

if ($userfile_type !~ 'text/plain') [

$this->set_error- ('File is not plain text format');

Supfile '"" UPLOADS_DIR.$us8rfile_name;

if (is_uploaded_file{Suserfile)) [

if ( !move_uploaded_file ($us0rfile, Sup fl.Le)) [

--uploaded');

break;

Sthis->set_error ('Could not move file to destinotion

else

Sthis->set error (nPossible file upload attack. Filename:

if (!count (Sthis-> _errors)) [

return true;

ftinction sms_ .. import ($form)

$userfile ""$ FILES['userfilB'] {'tmp name'); Susorfil(~ nam:?""' $ FILES! 'userfile' l T1 name']; $upfi le ~0 - UPLOADS_ DIR. Su~;erf i lo _nmnc;

Sfp"' fopen(Supfilo, 'r'); $contents "' fread (.$fp, filosize {$upfile)); fclose ($fp);

$contents "' strip Tags ($contents); Sfp "" fopen {$upfile, 'w'); fwrite ($fp, $contents); fclose ($fp);

Simpoct = file ($upfileJ; if (count ($import) "'"'' 0) [

Sthi!>->set error ('No data [ound'l;

for ($x ~· O; $~: < count(Simport); $x++J

$1 ine "" explode ( "\ t", $import! Sx] ) ; $dostin;;itionnumbor.., Sline[O]; Stextdecoded = Sline[l); Ssql ,,_ 'INSERT INTO outbo.x '; Ssql."' '(DestinationNumber, TextDecoded) VALUES ('; Ssql."" '\''· Sdestinationnumber .'\', \''. $textdecoded .'\')'; $this->Query ($sql);

function autot-opiy()

LIMIT 0,1";

$sql ~ "SELECT Sender-Number AS nohp, Text Decoded J\S isi l:'RCM inbox, \:.emp "· $sql ·"' "WHERE L:ist time < UpdatodinDB"; $this->Query ($sql); $data= array(); >-Jhi le (Sthis->ReadRow (}) array_push ($data, $this->Ro1oJDc1ta) ;

$sql = "SSLECT UpdatodinDB l\S waktu F'ROM inbo;~ ORDER BY Updat<:>dinDB D£SC

$sql "' 'UPDATE temp SET '; $sql.= 'last time~'; $sql."' '\". $RS{'waktu'].'\"; St'ni.s->Query ($sql);

for (Si'"'O; Si <count ($data); Si 1·+)

l $split = explode (' ',$data [Si] [ 'isi' l); //for ($j=1;$j< count ($split);Sj++) I I { II Sisi ·"' $split{$jJ." "; I/{

switch(stri:oupper(Ssplit[Oj)) ( case "CE!<":

$ke}'\'1ord '·' $split [l];

80

Ssql = "SELECT ltemCode, ItemName, Sa.lesPriceListIDR ~~ROM

f001 "i

Ssql . "" " i·IHERE I temName Like '%$keyword%'"; Sthis-:>Query (Ssql) ; $RS = Sthis->FirstRow{); Sisi

$RS [ 'ItomCode']. "!".$HS!' ItemName' J , "/".$RS!' SalesPriceListIDR' J;

break; case "SYAKUR": Sisi"""'l'erim.'l. Kasih ai:as Kunjungan Anda. Semoqa

Selam2.l Sc;mp<ii Tujuiln" ;break;

?>

default : Sisi="kata kunci belum ada";break;

$sql '~ 'INSEHT INTO oulbox '; .$sql.·- '(!).?::;lirwtionNumb8t-, 'l'e;.;tDecoded) VJ\LUf~S ('; .$sqJ,=- '\". $dat.:l{$ij('nohp'),'\', \''· $ii3i .'\')'; $Lhi~;->Qucn·y ($sql); $.l.si'""''"';

function ~elecL kata ($keyi.,.,ord- '"')

S!:igl" "SEL8CT ItemCode, Item.N.;ime, SalE•!:iPriceListIDH FROM fOOl"; echo $sgl . '"" " WHERE ItemName Li }:(·l ,' '!,$ koywonH,' "; $this->Query($sql); $HS "' $this->FirstRoi,.1(); echo $isi = $RS[ 'SalesPriceListIDR' J;

81

#----Nama File #----class ini lr----penj ualan

sales.class.php---------------------­digunakan untuk menerima dan mengirim

< ?php cla.c;s sciles extend::; main

vnr $ ___ errors; var ~; st.ii Le· var $ rpp; function sales ($db_conn "' 0)

Sthiii-> _•':rrors ~· ;;irray(); $~.his-> -'~late- ~-- ''; $this-> rpp ""' APM RPP; if {$db=conn != o} $this->_db_linkid

lf<<<<<<<-------------Start Module Back Order--------------------->>>>>>>~

ii<<<<<<< - ---- - --- --- -St a rt Module Invoicing--------- -- - --------->>>>>>>II

function .i.nvo.tcing sOO'arch (Skey1,,rord = "", $page "" 1)

$start

. "f003";

= ($page Sr pp Send

- 1) 4 $this-> rpp; SthiS-> _rpp;

= Srpp; Ssql = 'SELECT COUNT{lnvoiceNo) as total FROM DBPREf .'fl75'; $this->Query ($sql);

SRS if ($RS{'total'J {

= Sthis->l'irstRow( l; >,, 1)

Sthis-> pages "" ceil (SRS ['total'] I $rppl; Ssql - "SELECT InvoiceNo, Invoice Date, Curr·"1ncyCod0, "; $sql "fl 7 5 ,CustomerCode, fOC3 .CustomerNam2, Cont.:ictPer5on, "; $sql .= "InvoiceDescription FROM". DBPHEF ."fl75,". DBPREF

if ($keyword !"" "")

Ssql.= $sql ... $sgl."'

WHERE"; (tnvoicoNo LJJ<I~ ''(.$keyword%' OR "; lnvoicefX1tc Lil<I~ ''li$keywoi-d'i') ";

Ssgl .= " GROUP BY InvoiccNr:>''; $sq.L ,"' 11 OHD8R BY InvoicoD:ite DESC LlMIT $:-llart,".~;thi:;- · ... i'f-'I'; $this->Query ($sql);

function Involcing_J\ddchecl: ($form) {

kosong');

boleh kosong' ) ;

$invoiceno $customercode $salesrnancode .$cucrencycode $collector-code $empJ oyeocodv

""° $thj s->cl•:ian post (.:>form [ 'invoiceno')); $this->clean post ($form [ 'cuslomercode' l); $this->cleun-oost ($form [ '~-;alcsnmncode'));

"' $this->clean -post; ($fonn { 'currencycode' l); ~ $this->clean-post ($forml'collect.::ir.code')); " $tl1i:>->Cl1;Ja11-po~t ($fonn! '{:mployeBcodG' l);

if (empty($invoiceno)) $this->~et_ei·ror ( '<b>J.nvoicE• No</b:> tidak boleh

if (ernpty($customeccode}) Sthis->set_error ( '<b>Customi::r Codo</b> tidal:

Sjumlah = $fonn! 'jmllast'); for{ $~:=0; $x < Sjumlah; $Xtt) {

$itemcode00 "' $this->clean post ($fonn[ 'itemcod200']); Sitemcode = Sthis->clean pOst ($formf'itemcode 1 .$x.'O'll:

82

$this->set error ('l.laran(j baJ:"is '.$y.' Minimum 1 It(<!ll Daran9 haru5 o.d<:i I t idak boleh kosong' l ;

return false; I

if ( !ernpty($itemcodel) {

$quant..ity"' Sthis->clean_p:.st ($form{ 'quantity' .$x. '3']);

if (empty($quantity}) \Sthis->set error ('Quantity Barung baris '.Sy.' harus ada I tidak boleh kosong');

return false; l

if (count ($this-> ecrors) <"- OJ return true; else return false;

function invoicing~add ($fonnl // berfungsi ntl: ildd

$loginnmne '"" $ SESSION!' J.oginname' l; $invoiceno sthis->clean post ($form!' i.1voiceno')); $customercode Sthis->clean Yost: {$form f 'C'Jstomercode' j) : $contactperson "" $this->cleanyost ($form l 'contact person' l) ; Ssale·smancode ,, Sthis->clean post {$form{' soilesmancode' J); $currencycode $this->clean - post ($form [ 'cJrrencycode']); $exchange rate $this->c1eanYost: ($form [ 'exchangerate' l); $co1lectorcode $this->clean post ($form[ 'colJ.ectorcode']); $employeecode $this->clean - post ($form [ 'e;nployeecode' ] ) ; $dri vercode = $this->cle;:in - post ($fonr. [ 'dri vercode' ] ) ; $<>dmincode $th.i s->clean - post ($form [ 'e:nployeecode' ] ) ; $description $this->clean - post ($form{ 'description']); $discountpercent $this->clean post ($f0rm( 'discountpcrcent' j); $discountamount $this->clean - post ($form[' discountamount']); $destination1 $this->clean_post ($form[ 'destinationl')); $destination2 $this->clean post (Sforrc[ 'destination2' J); $subtotal "' $this->clean-post ($form[' subtotal']); $ppnpercent Sthis->cle<:Hl-post ($fonr,[ 'ppnpercent' l); $ppuamount Sthis->clean-post ($form[' ppnamount' l); Sgrandtotal $this->clean-post ($form!'grandtotal']); $invoiccdate ,... $form[' invoiCedate'] ['Year'],'-

'.$form[' invoicedate'] ['Month'].' - '.$form!' invoicedate' J ['Day');

Ssql "' 'INSER'f INTO ' • DDPREF • 'fl 7 S '; Ssql. = ' ( InvoiceNo, InvoiceDate, Custome l-Code, ' ; $sgl.= 'MonthDueDate, YearDueDate, '; $sql. = 'ContactPerson, SalesmanCodfl, CurrencyCode, t:xchanseHate, ' ; $sq] . = 'InvoiceDescrl pt ion, Dest in at ion 1, f:JBHt j nrit ion2, '; $sql."" 'CollectorCodo,AdtninCode, '; $sql.= '1'ota1Transaction, Discount Percent, Discountl\mot.nL, '; Ssql.'"" 'Sub'l'otal, PPNPercont, PPNP>rr,ount, GrandTotal, '; $sql."' 'CreatedBy,CreatedDate, UpdateBy,UpdateDate) '; $sql.= 'VALUES ('; Ssgl."" "' Sinvoiceno', 'Sinvoicedate', 'Scustomercode' .- "; .<;;sql."' "MON'l'H (NOW\ l ) , YEAR {NO\'l{) ) , '$c:ont nctpers0n 1 , ";

$sql .= "' $salesmancode', '$currencycode', '$exchange rate 1 , '$descL·iptjon', "; Ssql.= "'$destinationl','$destination2',"; $sql.~ "'$collectorcode', '$admincode',"; Ssql .= "'$subtotal', '$discountpercro;nt', "; Ssql."" "' Sdiscountamount', '$subtotal',' $ppnperc0nt', '$ppnarnount', "; Ssql."'" "' Sgrandtotal', '$log inname', now (), '$loginnam('1', now() ) "; $this->Query {$sql);

$jurnlab for ($x {

$form[' jmllast']; 0; $x < Sjumlah; Sx++)

$itemcode ($form[' itemcode' .$x. '0']);

$quantity ($form[ 'quantity' .$x. '3' l l;

Swarehousecode ($fonu [ 'warehousecode' , Sx, '12' l ) ;

Speice ($form[' priceidr' .$x. '9'));

if ( !empty{Sitemcod0))

"' Sthis->cl.ean poi:;t

SLhis->clean_post

$this->clean_post

$sql.""' UpdateBy, UpdateDate) VALUES('; $sql •""

"'$invoic0no', '$itemcode', '$quantity', 'SpL·ice', 'Swan;.housecode', ";

$gcandtota-~";

Si m11~ml I• Siny0t1r-Scountercode $fieldno3 ssesi

Ssql."' "' $lo9innamc', now(),' Sloqinnamo', n.ow( l) ";

$this->Query ($sqlJ;

i.;furm[' invoi_cc.;d11tu' J I' M<;nl L' ) ; ~ .$torm!'invoicedat;:;']['Y(~;;,r'l;

"IM"; "APM";

= S SESSI0!1["RS1"J;

Ssql "' 'INSERT INTO '. DBPHEF . 'f099 '; $sql."' ' ( Counter-Code , CountecMontb , CounterYear '· $sql."' 'LastCounter , FieldNoJ , CreatedBy, CreatedDat(•, '; $sql.=o· 'UpdateBy,UpdateDato) '; $sql.= 'VALUES('; Ssql.= "'Scountercode', '$inmonth', 'Sinyear',"; Ssgl."' "' $sesi', '$fieldno3', 'Sloginname' 1 now{ l, 'Slo·~inname', noH()) "; $this->Quer-y (Ssql);

//kirim SMS $textdecoded $textdecoded

"'"Anda TeL'lh melakuk<1n Transaksi Pembelian dengan "· "'""No: $invoiceno, Tgl: Sinvoicedate .. Total: Rp.

$textd;:±coded = ". Terima J<asih (AFM)"; $sql "' 'SELECT Phonel2 as hpno FROM DBPREF • 'f003'; $.':'ql .= " WHERE CustomerCode "' '$customercode' "; $this->Query ($.Sql); sns = Sthis->FirstRow(); $destinationnumber """ $RS! 'hpno');

~~~0:11 "' 'lNSEHT INTO out box '; :'::;ql. - '([)<;:.;l inaL ionNumber, 'l'r~:~l.!),Jcud<;d) VALUE~; ('; $sql ·"" '\'' , $destlnationnwnber . '\', \' '. $teY.ldecoded , '\') '; $tbis->Qw:1cy ($.sql};

funcLion invoicing_detail($invoiceno)

$sql"" "SELECT" FROM f175, f003, f015,f023, f033,f014'·; $sql ·"' WHERE"; $sql."' fl75.CustornecCode "' fOOJ.Custom•"cCode MD"; $sql... fl75.CurrencyCode "' £023.CurrencyCode AND"; $sql."-' fl75.InvoiceNo"' '$invoiceno'"; $this->Query ($sql);

function invoicing_detail2 ($invoicenol

83

$sql FROM f176, f001";

"SELECT fl 76. IternCode, InvoicoQuantity, It.:i!fu'-lame, Price, WarehouseCode

$sql .... .5sql .-""

WHERE:"; InvoiceNo 'Sinvoiceno' AND fl76.Ite:nCode "" fOOl.Jte:nCode

ORDER BY ItemCode"; Sthis->Quory ($sgl);

!)<<<<<<<-------- -- ---End of Module Invoicing--------------------->>>>>>>#

#<<<<<<<-------------Star-t Module Sales Order--------------------->>>>>>>#

. ' fl 79';

function sales_yrdro·c __ seacch (~~keyword "' "", $pago .., lJ

$start = ($page - 1) " Srpp $end $sql

$this-> rpp; "' $thi°S-> _rpp; = Srpp; .., 'SELECT COUNT(S;:ilesOrdorDalo) <ts toL<-ll fl{0,'1

.Sthls->Qu0ry (.$sqll;

84

$this-> pal)(-!S "'ceil ($f<S['total'I I $rpp}; $sql - "SELECT Sal.esOrdc:,rD;;ite, fl79.CustomorCode,

f00:1.Cuslo11:"rHan1<0• FROM £179";

$sqJ LEVT JOIN £003 ON f179.Cust.:;merCode fOOJ. Cllsl:omerCc1de";

f179 a, f003 b";

1 $customercode' n;

if· ($keyword !"-· "")

\~!!EHE"; ~l,-;ql. oc

$5ql ·" $~;ql ·"'

(SalusOrde r-Ciatc Lil<E ''i$koyword'l' UH"; fl ·1~.CustomerCodrJ LIKE ''b$keyword'6') ";

:~:;ql "O!\DJ·:H UY :;a1o~:urdurll;1Lo DE~;r; J,lMJT )~;\t;11L,".::iLhi;--, i-!JJ:>;

$Lbi"->(!uory ($~;qJ);

$sql "SELE:CT SalesOrderDate,CustomerName,ContactPerson, "; Ssql,"" "Destinationl, Destination2, SalesOrderDescript ion, a. Custo111erCode FROP'i

Ssql •"' Ssql.'"

WHERE"; SalesOrderDate '$date' AND a.Customer.Code

$sql, = AND a. CustomerCode..eb .Custome rCode"; .$this->Quecy ($sql);

fun,_ I i<Jll ;;;11!)'-' .. 'JL·Jr:,L·_cfotaiJ.2 ($dule,$,;uslorncrcodo)

$sql "' "SELECT S.alesOrderDate, CustornerCode, f200. IternGode, "; $sql,"' "SalesOrderQusntity, ProcessedQuantity, ItemName FROM f200, fOOl";

$sql .= " WHERE"; $sql."" f200.CustomerCode "' '$customercode' AND"; $.sql."'" SalesOrderDate '$date' AND f200.IterrCode = fOOl.Ite:riCode

ORDER BY IternCode"; .$tbis->Query ($sql);

function sales_ordei-~addcheck {$form)

$custornercode = $this->clean post ($form [ 'customercode' ) ; if (empty($customercode)) $this->::;ot_error ( '<b>Custome1· Code</b> Lid,it bult1h

kosong');

for( $x=O; $x < 5; Sx++J (

SitemcodeOO $itemcode $y

Sthis->clean po~;t (Sform [' iten-,codeOO' J ) ;

$tliis->clean p;sl {$form[' ilcmcodo' .$x, '0']); ~ = Sx+l;

if (empty{$itemcodc00)) $this->set_error ( 'Ba)7ang baris '.Sy.' Minimum l Item Bar.ang han1s ada I tidak boleh kosong');

if (Sitemcode) (

$Cjunntity"' $thi.i->cltJun post ($fonn['quantity 1 .$x.'3')J; if (empty{$quantityJ l $tilis->set_er::or ('Quantity Barang

baLi.s '.Sy.' bat-us ad'J I tidak boleb kosong'); I

if (count ($this-> error-s) <= 0) return true; clso r.oturn false;-

function sales_ordet·_add (Sfonn) // berfungsi utJ.: add dan update

$lo9inname $ SESSION [' log.i.nnome');

$custornercode >clean post (Sform[ 'custornercode' j);

"' $thL;-

$contact po rs on >clcan_post ($form( 'contactperson' l);

$salosordBrdescriplion $destinationl

>clecin_post ($form[ 'destinationl' J);

.$Uii :.;->clLlall_J_,u::;t. {$ i vrm ! 'de~<:r ipt j on' l) ; = $this-

.<;r!e>r.d·; ""'t '"""

$t ~·iint:act iondate $foi:m! 't ransactiondnte' l [ 'Ye~1i:-' l, ' - ', Sform[ 'transGct iond;,te'] ['Month'].' -­'.$form[ 'transactiondat•?'] [ 'Di:ly' I;

Ssql ~ "INSERT INTO f179 "; Ssql."'

"(Sa.lesOi:dorDa t(;•, Cust•)rn0rCode, Sale30rder0ozcr ipt ion, de st in at ionl, dtistlr,;:i.tion2, ";

85

Ssq.l."' "ContactPerson,Ci-c-J::itodBy, CreatedDaLe, l'pdateBy, Ui:;-da.loDalel VALUES ";

$c;;gl.'-'" " ('$transact iondate' , 'Scu.stomercode', 'SsaJ esorde rdeo;c r ipt ion', ";

$sql.a "'Sdesti11ationl', '$destination2',"; $sql ."" "' $contactperson', 'Sloginn:.r:e', noH{), '$Jo•Jinname', nO'd()) ";

Sthis->Query (Ssql); -

ror ($;,: 0; Sx < 5; Sx++)

Sitemcode

Squantlty _,, Sthi:s->cl.:,un_post ($form[ 'quantity' .$x. '3']);

$processed Sthis->clean_post {$form1 'procossed' .$x. '·1')):

i I ( !<•illf'I y(ff. il <.<lll'.'Pd•'))

I $sql "' "INSF:.RT INTO £200 "; $sgl.==

" ( Sal0sOrJe rDc:t:e, CustomerCode, 1 temCode, SalesOrde!:'Quant i ty, "; Ssql.""

"i'i-<.:'C•J.' :·;e,JQu<ir1t i Ly, r:tos i ngSt,"J t us, Cr.:;at1~dBy, Ct·cntedDa t(~, Upda t.r..iBy, Updrt1J,Dil t,,) VJ\L!JED "· $t~ql."'

" ( '.;il r a11t:;icl. i•AJU>it.'~' , '$cu.stumoe:c<2ode' , '$1.temcode' , '$quilnt it y' , ": $sql.=

"':)11ruce:;:'"-'d', 'N', '.S.lc1\_Ji1wwne' ,no1-1(), '.$Joqinnamr.'' ,now())"; $t!1is->Quet·y ($sql);

11 •-<• ,_,..._.:-------------EnJ vl Module Sa 11..i:; Ordvr--------------------->-'-'>> ~>ii

i!<<<<<<<..-------------Star-t Module Invoicing By Dack Or·dor---------------------->>>>>>>Y

function invoicing_by_back __ order-~search ($keyword-... "", $page"" 1)

{$page - 1) •· $this-> rpp; $rpp $th.ls-> r-pp; -$end .$rpp; -$sql 'SELECT COUNT ( InvoiceNo) as total. FROM DBPREF' .'£175'; $U:is->Quer-y ($sqll;

$R:> $this->FirstRow(); if ($RS{'total'] >"' 1)

.$thi.s-> _pnges "- cell ($RS ('total') I ;>r.pp); $~;ql "SELECT lnvoiceNo, BranchCodo, lnvoicoDato, Paymerit'l'enn,

T:;xStatu:::;, C!lrrencyCode, E;~changeRate, CustomerCode, DistributionChannelCode, SalesmanCode, Dri verCode, CollectorCode, Invoic0Description f'ROH ". DBPREF , "fl 75";

if ($keyword != "") I

else (

$sql."" $sql."' $sql.=

$sql.'" $sql ·"'

i'11-!ERE"; ( InvoiceNo LIKE '%$keyHord%' OR "; InvoiceDate LIKE '%$keyword%')";

WHERE"; InvoiceNo L!l-Q: '%IBO%'";

$:oql " GHOUi' BY Invoii.x~No";

$.sql "ORDEH flY Invoice[lato LJMIT ::;;starl,".$t:ii:::;-> rpp; $this->Quel:'y {$.sgl);

#•.<<<<<.<-------------Sta rt Mry·h1 Lo Cu c·rency--------------------->>>>>>> # fiuw1 ·1,,1\ <'.llf te11•:y _: our<:h U:.!'J'Y"Jr-'rd -~ "", .$pillJf' 1)

$.-·t ~It 1_ ($page - 1) ' ~;Llli:o-~'_rpp;

.~;rpp ~;thi~>-> rpJ,,;

.;,end "'" Srpp; -:;.sql "'- 'SELECT COUNT(CurrencyCode) <:ts tutal FROM $this-: Query (.$sql); $RS = $thi.s->Firstt\ow(); jf (~'.RS['totnl'] >= 1)

$this-> pages ceil ($RS ['total'] I Srppl; $sql "' "sr::LECT ' FROM" . DBPf\EF • "f023"; $thi:o->Quei·y ($::;-ql);

11·--< -------------End Module C1u-rency --------------------->>>>>/>!!

D8PREF , ' f023';

ff<<<<<<..;:-------------St :i rt Mod1ile Sale:J History--------------------->>>>>>>~ fnncl i•··n ,,;iJ •'l>_h J :·;t (\ry _,;0;·1tch ($form, Spaqe = 1) !

i.f (count ($this-> _errot·s) <"' 0)

$a"'taldate "'ml:time (0,0,0, $fot·m['a11al')['Month'), $form{ •,-jl·Ja.I'] { 'Dily' J, $tor-m! 'ilwcil' j { 'Yo;tr' J);

Sakhirdate "' mktime (0,0,0, $form[ 'akhir' j ['Month' J, Sfon~{ 'akhi l" 1 J r I Day' I, Sfoni: r I ;:d:hi r' I 1 'Year' l);

if ($nkhl1.-dule < :;>u1<1aldnt(•} l'•'lun1 (;Jls(~;

86

$a1·rnl = Sform{'a1-1al']['.Year'].'-'.~~form!'aw;;il'J('Monl:h'j.'-'.$fonn['awal'J['Duy'];

Sai:hi.r '°' $form[' akhir' J ['Year' l. ' - '.$form(' akhir' J [ 't•fonth']. ' -'.$form!' af.hir' l 1' Day' l;

.';:inVOi(:'.O!lO = $fOnn [ 1 j [lVOi.CCl10') i

S'C'U!o' t

Scu:otn .';-curn $c .. :rc

~;:_,~,".ln

:3.it·e1nc: .s i t O:Jnl!l

$fo!'rn{ 1 c\:sto111on::ode' I; $ fonn [ 'cuslome-rnanw' ) ;

'"' $form( 'cucrencyname' J; $:'arm r '.::ur1·encycode' l ; ~;form! 'sa l cm11;:-Jncode' ) ; .$ [01 m ! 'sa1 csrnnnn;;ime' ) ; Sform [ 'i.temcode' j; ~·fonn l ' i.t0mo::ode' ) ;

' -- ')

$nwc:il dJte("Y-m-d");

1 -- I)

~.iakhit' = date ("Y-m-d"l;

$start = ($·)age - 1) ~- $this-> rpp; $rpp $this-> rpP; $e!Jd $rpp; -$sql 'SELECT COUNT(InvoiceNol ;;,s total ~'ROM

Ssgl WHERE"; $sq! (InvoiceDate >"' 'Sai-ml' AND"; Ssql InvoiceDate <= '$akhir') AND"; Ssql InvoiceNo LIKE '%$invoicenoi' AND"; Ssql CustomerCode LIKE '%$cust%' AND"; $sq1 SalesmanCode LIKE '%$sale%'"; $thls->Query ($sql);

:~HL> "' ~~tld~->[·'ir:itl{ow();

if ($[{~;1'total'J >"' 1)

I $this-> _pages "' cei.l ($RS!' total') I .$rpp);

"SELECT lnvoiceNo, InvoiceDai:e, ";

DBPREF • 'f175';

$sql $sql $sql Ssql $sql Ssql ~;:;1,iJ

Ssgl Ssql $sql $:;ql

CustomerName, CurrencyCode, fl-/5. Sa.les:nanCode, "; ContactPerson, InvoiceDescr.iption FRQ\1 ". DBPREF , "fl 75"; LEFT JOIN f003 ON f175.Customer.Code °" fOOJ.CustomerCode";

"'"·:.

WHERE"; (Invoic0fl.-ite >""' '$nwn1' AND"; lnvoic~JDill.r~ <-'-' '$af:bir') fl.MD"; lnvojceNo !,IKE '£.$.invoiceno!/i' r'lJ-lD"; f175.CustomecCode LIKE ''i,$cuo;t%' AND"; fl 7 5. SalesmnnCodo LIKE ''l;$::;a le%'";

(IHDE!< BY JnvoicoNo LfMl'I' $~;l<1rt,".~:U1i::-> r·pp;

Ii<<<<<~.< -- ------ --- - -S la rt Module Gr"ne rate NumbP r-- -- ---- ----- ------- - >>> > >>> # fu1h~llon neH_oi·der_code ($cod)

I $Ll1i...;y0,1r ditl8 ( 1 YI);

Sthi:"month date ( 'm');

87

$sgl"' "SELEC'1' M!>.X(lastcounter) ;:is newcode FROM". LiBPREr ."f099 ": .$sql.= "WHERE countercodG"''$cod' i.!!ld counteryear='". Sthisyear ."' and "· $sql."' "countennonth""'". Sthif'month."'"; Sthis->Query ($sql); $RS ,. Sthis->fiLotRow(); $RS1,,.,$RS{ 'ne1-.rcode' j+l; S le"'st rLen ( ~RSl) ; .if(Sle°""'l) \$pre='0000000';) 0lseif ($18'"""2) ($pre"'' 000000';) elseif(Sle,,.=3} {$pre""'00000': / elseif ($le"'"'4) [$pre""'0000';) elseif (Sle,.,=5) {Spre"''OOO'; J elseif($lea=6) {$pre•'OO';l else.if($le="'4) !Spre='O';) a lse [Sp re"' '; l Snomor orde i:-=.$pre. $RS1, "!",$cod," I i\.PM/ ''. ~; thLnrronth. "I". -H. h isy8<:1 c; $_SES Sf ON! "HSl" l "'$H.S1 ; $ sr:;;:;1uu1"11urnur ~1nJu•"l-~'11omor \l!"dur; co turn f;]\~; I' ne11cod0' /-! 1;

#·,<<._<<<< -------------t~nd Module Gone rate Number--------------·------->>>>>>> Ji

#<<_<<-<<<-------------Star Module T:igihan--------------------->>>>>>> ii

f»onct:lon tagihar._;:;ddcheck ($form)

$jumlai1 .<;;forml'jumlah'); if {count ($tl1is-> ercors) <s 0) for( Sl-:"-0; SY.< Sjtimlnh; Sx+-r) I

.$itemcode00 " Sthis->clean post ($fonn{ 'ito:i,codoOO' l}; Sitemcode Sthis->clean ... POst (Sform [ 'il8mccde' .$;-:. '0']); $)'"'$~:+ 1;

if (ernpty($itemcode00)) !

han10; aJa I tidak boleh kosong'); $this->set_erroi:- ('Barang bar.is '.Sy.' Minimum 1 ltem 13;-.n-ilng

return ft.1lse; I

if ( !empty($iter.1code})

($forw[ 'qua11tity 1• $x, '3']);

I $q11m1tity .$ this->c lean_post

if (empty($quantity)) {$this->3et_eL·ror ('Quant i.ty Barilng bar is ' . $y. ' haru.s ada I t idak boleh kosong' ) ;

retui:n false;}

if (count ($this-> error·s) <"' 0) return ti-ue; ob_;(, eotut:ri fnluo;

tuncr:ion tagih2.n_add (.$fot'm) // bet·fungsi utk add

$loginname Sinvoiccino

($form{' in\'<...-iic•:ino')); Scustomercode $contact person $salesmancode $currencycode $exchange rate Scollectorcode $employee code $drivercode .)<idmincode

($form I 't.·inpl oy<)C-JC~Od«' ] ) ; Sdes-::ription $discountpercent

$ SESSIO:.l [ 'loginname']; sthis->clean_pvst

.$this->cle;.in post ($form( 'cu~;lomer-cod"' I); "' $this->c lean-post ($form ( 'contact person' ) ) ; "" $this->clo<.1nJ;ost ($for.m[ 'snJe5m;.incode') l;

$this->clean post (~;form j 'cucrencycode' l); Sthi.s->clean -post ($form ( 1 c;xchangerate' ] ) ;

~ $this->clean=post ($form[' col lectorcode' j); "' $this->cl,;ian post {$form[ 'employeecode']);

$this->c.lean post ($form[ 'drivercode' l); ""' Sthfs->c.lear._po::;t

$this->cJoan_post ($fr->nrrf 'description']); $this->clean post ($form[ 'discountoercent' 1 \:

$:'."lhl (•l :1 l

(:)f<,•!lll\ '._,qi>\, i:il' [); f.~ t hi:; - ~C ].,_-,Cl. l.J"-'~' L

88

$f'l'fif"' l\~ur• I $pp1lililli)lllll

(.Sfonn i 'fJ!Jll:1rn.;,unt') J; Sgrandtotal

~:U1i:;->cl1<<rn yu1-;L (~ f(lr111l 'r,f1llf'' i:<>nll 'l); ;;ud·.~->clui.J i_y,,,,,1_

$invoic0d<'!t~l

;this->clean post (:;:form! 'grandtotol')); "'$form['invoiCedate']['Yeat''). 1 -

'.$fonnl' .uivoicedate' l ! 'Month' l. ' - '.$form[' invoicedatB') ['Day'];

:J.c;,11. .= 'lNSEHT INTO'. DBPHEF ,'fl75 '; Ssql , 0• '(InvoiceNo, InvoiceDate,CustomerCode, '; S.sql."'" 'MonthDueDate, YearDu.;,Date, '; $sql,"' 'ContactPerson, Sa lesmanCode, CurrencyCode, ExchangeRate, '; $sql.= 'InvoiceDescription, Destinationl, Dcstination2, '; Ssql.~ 'CollectorCode,AdminCode, '; $sql."" 'Total Transaction, DiscountPei:cent, DiscountAn,ount, '; $.sql.= 'SubTotal, PPNPercent, PPNAmount, GrandTotal, '; $sql.= 'CreatedBy,CreatedDate, UpdateBy,UpdateDate) '; $t1ql..«; 'VAJ,UE:S ('; ;;:oql ·'" "'~'invoiccno', 'Sinvoicodute', '$cu:;t.ornercode', "; $sgl .= "MONTH (NOW () ) , YEAR (NON() ) , '$contactperson', "; $sql."" "'$salesmancode', '$currencycode', '$exchnngel·at0 1

, '$description',"; $sql ·°' "' $de.stination1 ', '$destl nation2', "; .$;;ql. "'$colloct.on~odo', 'Sad111.i.1icodo', n; $sql ,= It

1 $subtotal 1 I I $dl.SC0UiltpO!:C00t 1

f 11 i

Ssql •"" "'$discount amount',' Ssubtotal', 'Sppnpercent', '$ppriamount', "; :;>DqJ . "' "' Sgr;indtotal', '$.l.oginname', now () , '$loginname' , now () ) "; ~:ihi:,- <.•11•11y (f.::;']I);

~>jurnlali = :;'forml':i11tJl;1!.>t'J; fvr (~<;.: O; $x < $jrn11lah; $:~1 1)

.$iterncode $thLo::.->cJ.ean~post.

($fonn[ 'itE<mcode' .$,:. '0' J); $quantity $this->clean_post:

(Sfocm[ 'qc:antity'. Sz:. '3' l); $'cl<lrohousecod0= Sthit->clE;:;n pv~,t

$pt- ice ($fonn{ 'warehous.;co,_fo'. $ ~. 'J ~;');; = St:his->cloa~_posl

( $ f<_; ml{ ' pr i·>~ \ d r' . ~. :~ . ' '::1 ' j ) ;

i ( ( ! empty (Si tome ode)} {

$sql"" 'INSERT INTO'. DBPREF .'f170 '; $sqJ ·"' '{InvolceNo, 1ternCodo, l11voic0Qu.:;nti t.y, Pr ic..;·,' i,isqJ ·" '111;n.d1otJ,JC>Codu,CroaledDy,CronLedDaL•. '· Ssql."" '!Jpdat:eBy, UpdatoUate) VALUE:S ('; $sql.=

"' .-;; Lnvv lc011<.•' , '$ i l omcodr~', '.~:qu.1n Lily', '$pr.ice', '.~:1.;an·h·~;ura1codr;' , ";

?>

Sinmonth ~; i 11y<«1 !

::;<,'<n1JJI •!I•,,.],.

.'~tieJdnuJ

Sses.i.

~;;o-;q l. - "' ~:luq t11lliJ1m;'' JJU\.,t()' ':;;J'-"l i !!II ;lllU'' 11•,)\·1()) ";

$t:his->Query ($sql);

$fonnf 'invoicedate' l I 'Month']; $fn! 111! 1 i l!V•>lr·ndid ••') ! 'Y"ill ') ;·

"JM"; "J\PM";

= s sr:ss16Nf"RSl"J;

Ssql ~ 'INSEHT INTO '. DBPHEf . '£099 '; Ssql."" ' ( CounterCod0 , CounterMont:h , CounterYear , , $sql.= 'Last Counter ' FieldNo3 I CreatedBy, c~-e<.ltedDate, '; $sql..~ 'UpdateBy,UpdateDate) '; .$sql."" 'VALUES ('; ~>::rql."' "' $countercode', '$i.nmonth', '$inyear', "; $sql."' "'$.sesi', '$fieldno3', 'Sloginname' ,now(), '$loginname' ,now() J"; Sthis->Qu.::.ry ($:>ql);