bab 1 - konsep oop ( object oriented programming ) … · bab ini membahas konsep dasar dalam...

79
Materi : Pemrograman Visual I Dosen Pengampu : Jarot Dian Susatyono, S.Kom Dilarang mengcopy atau memperbanyak Modul ini tanpa seijin penulis. 1 BAB 1 - KONSEP OOP (OBJECT ORIENTED PROGRAMMING) DALAM VB Pokok Bahasan : Bab ini membahas konsep dasar dalam pembuatan program aplikasi yaitu konsep Object Oriented Programming ( OOP ). Dalam pemrograman Visual basic 6.0 ini termasuk dalam konsep OOP ataukah tidak. Sebelum memulai membangun sebuah sistem programmer hendaknya terlebih dahulu memahami konsep dasar pemrograman apakah termasuk Pemrograman terstruktur atau Pemrograman berorientasi objek . Pemrograman berorientasi Objek yang dalam istilah Inggris disebut sebagai Object Oriented Programming (disingkat OOP) adalah salah satu pendekatan pemrograman atau paradigma untuk pengembangan / development suatu perangkat lunak komputer dimana dalam struktur perangkat lunak tersebut didasarkan kepada interaksi objek dalam penyelesaian suatu proses . A. OOP dengan Procedural Programming Selain menggunakan paradigma OOP, programer dapat menuliskan struktur kode program yang baik dengan menggunakan Procedural Programming, di mana programer membuat kode program dengan pendekatan procedural dan bekerja dengan function/procedure di dalam aplikasinya. Tetapi, tidak ada jawaban yang benar-benar tepat jika Anda diberi pertanyaan: “apakah sebaiknya menggunakan OOP atau Procedural Programming? ” Karena jawabannya sangat relatif, terutama tergantung pada aplikasi yang ingin Anda buat. Jika Anda mempertimbangkan pemeliharaan dan pengembangan aplikasi yang efisien di masa yang akan datang, mungkin Anda dapat memilih pendekatan OOP. Tetapi, jika aplikasi Anda merupakan program sederhana yang dapat dibuat dengan mudah dan cepat dengan function/procedure, gunakanlah pendekatan Procedural Programming . Semua itu juga tergantung

Upload: others

Post on 03-Feb-2021

25 views

Category:

Documents


0 download

TRANSCRIPT

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    1

    BAB 1 - KONSEP OOP (OBJECT ORIENTED PROGRAMMING) DALAM VB

    Pokok Bahasan :

    Bab ini membahas konsep dasar dalam pembuatan program aplikasi yaitu konsep Object Oriented Programming ( OOP ). Dalam pemrograman Visual basic 6.0 ini termasuk dalam konsep OOP ataukah tidak.

    Sebelum memulai membangun sebuah sistem programmer hendaknya

    terlebih dahulu memahami konsep dasar pemrograman apakah termasuk

    Pemrograman terstruktur atau Pemrograman berorientasi objek.

    Pemrograman berorientasi Objek yang dalam istilah Inggris disebut sebagai

    Object Oriented Programming (disingkat OOP) adalah salah satu

    pendekatan pemrograman atau paradigma untuk pengembangan /

    development suatu perangkat lunak komputer dimana dalam struktur

    perangkat lunak tersebut didasarkan kepada interaksi objek dalam

    penyelesaian suatu proses .

    A. OOP dengan Procedural Programming

    Selain menggunakan paradigma OOP, programer dapat menuliskan struktur

    kode program yang baik dengan menggunakan Procedural Programming, di

    mana programer membuat kode program dengan pendekatan procedural dan

    bekerja dengan function/procedure di dalam aplikasinya. Tetapi, tidak ada

    jawaban yang benar-benar tepat jika Anda diberi pertanyaan: “apakah

    sebaiknya menggunakan OOP atau Procedural Programming?” Karena

    jawabannya sangat relatif, terutama tergantung pada aplikasi yang ingin

    Anda buat. Jika Anda mempertimbangkan pemeliharaan dan pengembangan

    aplikasi yang efisien di masa yang akan datang, mungkin Anda dapat memilih

    pendekatan OOP. Tetapi, jika aplikasi Anda merupakan program sederhana

    yang dapat dibuat dengan mudah dan cepat dengan function/procedure,

    gunakanlah pendekatan Procedural Programming. Semua itu juga tergantung

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    2

    pada Anda sebagai programer, untuk memilih pendekatan yang cocok dan

    lebih baik bagi Anda dalam mengerjakan sebuah aplikasi.

    B. Apakah VB6 menggunakan Konsep OOP ?

    Pada Visual Basic 6.0 (dan Visual Basic versi sebelumnya), banyak

    diperdebatkan apakah bahasa pemrograman Visual Basic termasuk sebagai

    bahasa pemrograman berorientasi object ataukah tidak.

    Pada satu sisi, Visual Basic 6.0 mendukung object dan interface, dan

    juga mengimplementasikan class yang didefinisikan pada class module dan

    disimpan pada file dengan ekstensi .cls. Bahkan implementasi drag and drop

    control yang pasti dikenal oleh setiap programer Visual Basic merupakan

    contoh object yang dapat di-reuse.

    Pada saat Anda meletakkan sebuah control, misalnya sebuah command

    button pada form Visual Basic, Anda telah menciptakan object baru yang

    memiliki members berupa property, method, dan events. Visual Basic 6.0

    juga mengenal keyword private, friend, public, dan static yang digunakan

    untuk mengatur level akses dari elemen yang dideklarasikan. Tetapi, pada

    sisi lain Visual Basic 6.0 dianggap tidak mengimplementasikan inheritance

    dan hanya memiliki fitur object oriented yang terbatas.

    Sebuah class pada Visual Basic 6.0 tidak mendukung untuk

    menurunkan property dan function-nya pada class yang lain. Bagaimana

    dengan polymorphism? Visual Basic 6.0 mendukung polymorphism melalui

    interface pada ActiveX. Pada Component Object Model (COM) yang

    membentuk infrastruktur spesifikasi ActiveX, terdapat multiple interface

    yang memungkinkan komponen software dikembangkan tanpa mengubah

    kode program yang ada. Secara umum, OOP pada Visual Basic 6.0 lebih

    diimplementasikan pada user interface dan kurang memberikan dukungan

    bagi programer untuk mengimplementasikan OOP pada kode program.

    Paradigma ini yang kemudian diubah pada generasi Visual Basic .NET.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    3

    C. Bagaimana dengan VB.Net ?

    Perdebatan apakah Visual Basic merupakan bahasa pemrograman

    berorientasi object ataukah tidak, berakhir pada saat dirilisnya Visual Studio

    .NET dan generasi seterusnya. Pada .NET, Visual Basic murni merupakan

    bahasa pemrograman berorientasi object. Kegunaan OOP yang utama adalah

    memaksimalkan penggunaan kembali kode program (code reuse).

    Saat Anda melakukan drag and drop, prosesnya dikerjakan oleh

    control designer sehingga Anda tidak perlu mengetahui bagaimana object itu

    bekerja. Bahkan Anda bebas menggunakan sebanyak mungkin control dan

    memodifikasi warna, bentuk, judul, bahkan event handling dari object. Dasar

    dari tipe sistem .NET adalah inheritance, yang tidak Anda temui dalam Visual

    Basic sebelumnya. Contoh implementasi inheritance pada .NET adalah

    namespace, .NET mengenal enam tipe kategori yang dapat didefinisikan pada

    namespace:

    1. Classes.

    Merupakan tipe referensi yang didefi nisikan dengan struktur Class .. End

    Class.

    2. Arrays.

    Merupakan tipe referensi yang menyimpan object dari tipe yang lain. Class

    Array didefinisikan pada namespace System pada .NET Framework Class

    Library.

    3. Structures.

    Didefinisikan dengan struktur Structure … End Structure.

    4. Interfaces.

    Didefinisikan dengan struktur Interface … End Interface.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    4

    5. Delegates.

    Merupakan tipe referensi yang mengenkapsulasi method dan didefinisikan

    dengan statement Delegate.

    6. Enumerations.

    Merupakan kumpulan nilai yang berkaitan, didefinisikan dengan struktur

    Enum ..End Enum.

    Masing-masing dari enam kategori tersebut dapat mendefinisikan satu atau

    lebih members. Tipe-tipe members pada .NET adalah:

    1. Fields.

    Merupakan konstanta atau variabel yang mengizinkan akses tipe data. Fields

    dapat didefi nisikan oleh class, structure, dan enumeration. Fields digunakan

    sebagai data yang bersifat read-only, atau sering didefinisikan sebagai

    konstanta. Fields juga dapat berupa variabel read-only yang nilainya

    didefinisikan kali pertama pada class constructor dan tidak dapat diubah lagi.

    2. Properties.

    Property dapat didefi nisikan untuk class, structure, dan interface. Umumnya

    property dapat dibaca (readable) dan ditulis (writable), walaupun dapat juga

    diperlakukan read-only atau write-only.

    3. Methods.

    Merupakan function atau subrutin yang tersedia pada sebuah class, structure,

    interface, atau delegate. Pada sebuah method terdapat parameter atau

    argumen yang dapat dikirimkan by value atau by reference. Bagi programer

    Visual Basic 6.0 sudah tentu tidak asing lagi dengan parameter by value

    maupun by reference yang biasa digunakan dalam pembuatan

    function/procedure. By value berarti perubahan nilai pada variabel

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    5

    parameter yang dikirimkan hanya akan berlaku di dalam function, sementara

    by reference berarti perubahan nilai pada variabel di dalam function akan

    tetap berlaku pada saat function tersebut selesai dieksekusi dan kembali

    pada pemanggil. Dengan menggunakan keyword ByVal atau ByRef, Anda

    dapat menentukan bagaimana parameter dikirimkan.

    4. Events.

    Pada Visual Basic versi sebelumnya, Anda tentu telah mengenal event yang

    menimbulkan istilah event-driven programming. Event merupakan sebuah

    function yang dipanggil untuk merespon kejadian/event tertentu, seperti klik

    mouse, penekanan tombol keyboard, perubahan nilai field pada database,

    dan lain-lain. Umumnya event mengirimkan dua parameter, yaitu object

    yang mengindikasikan sender/pengirim event, dan object yang menyediakan

    informasi pada event tersebut.

    Pada sebuah class, Anda dapat melakukan modifikasi pada method dengan

    cara overriding maupun overloading. Overriding berarti Anda mengubah

    implementasi dari sebuah method, sementara overloading berarti

    menambahkan method baru dengan nama yang sama, tetapi dengan

    pengenal yang berbeda. Overloading mengizinkan Anda memiliki dua atau

    lebih method dengan nama yang sama. Dua method tersebut akan muncul

    pada fasilitas IntelliSense sehingga pengguna dapat memilih method yang

    diinginkan. Bagaimanapun, salah memilih method dapat menyebabkan

    runtime-error, Anda dapat menghilangkan method yang tidak diinginkan

    untuk tampil dengan menggunakan keyword Shadows.

    D. Generic Class

    Inovasi baru generasi .NET adalah fitur yang dikenal dengan generics yang

    menyediakan sejumlah generic class. Untuk memahami kegunaan dari

    generic class, bayangkan Anda ingin membuat berbagai versi sebuah class di

    mana Anda ingin class tersebut bekerja pada lebih dari satu tipe data,

    misalnya class yang dapat bekerja pada tipe data integer, string, dan lain-

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    6

    lain. Dengan generic class, Anda tidak perlu menentukan tipe data yang

    diinginkan hingga Anda menciptakan object-nya di dalam program Anda.

    Anda dapat menemukan generic class pada namespace System.

    Collections.Generic pada .NET Framework Class Library. Selain menggunakan

    generic class yang tersedia pada .NET Framework, Anda juga dapat

    menuliskan sendiri generic class Anda. Dapat disimpulkan keuntungan dari

    generic class adalah:

    1. Keamanan tipe data.

    Generic class memeriksa kevalidan tipe data pada saat compile-time dan

    bukan pada saat run-time. Hal ini mengurangi kemungkinan konfl ik tipe data

    pada saat run-time.

    2. Kinerja yang lebih baik.

    Karena tipe data yang digunakan pada generic class dikenali pada saat

    compile-time, maka tidak diperlukan proses type casting pada saat run-time

    yang tentunya mempercepat waktu proses.

    3. Penggunaan ulang (reuse).

    Anda hanya perlu menuliskan class satu kali dan dapat menggunakannya

    dengan tipe data yang bervariasi.

    E. Partial Class

    Pada .NET versi 2.0, dikembangkan partial class atau class yang terpisah,

    yang memungkinkan Anda untuk memisahkan defi nisi class pada beberapa

    file. Pada saat compile-time, compiler akan mengelompokkan partial class

    tersebut dan memperlakukannya sebagai satu kesatuan. Keuntungan dari

    partial class adalah mengelompokkan pada batas yang jelas antara business

    logic dan user interface. Dengan partial class, kode program yang merupakan

    user interface tidak perlu ditampilkan pada programer, yang pada umumnya

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    7

    tidak perlu mengaksesnya.Partial class juga mempermudah proses

    debugging, di mana kode dipartisi ke dalam beberapa file yang berbeda.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    8

    BAB 2 - PERANCANGAN DATABASE DAN TABEL

    Pokok Bahasan :

    Bab ini membahas perancangan database dan tabel yang akan digunakan sebagai media penyimpanan data dalam pembuatan Aplikasi inventory. Database Management System (DBMS) yang akan digunakan adalah DBMS Microsoft Access.

    Dalam Pembuatan Aplikasi database untuk pengolahan data Inventori

    kali ini yang pertama kali yang haru kita lakukan adalah membuat atau

    merancang sebuah basis data. Basis data atau Database ini nanti digunakan

    sebagai tempat menyimpan dan mengelola suatu data.

    Aplikasi Database Inventory yang akan kita bangun disini,

    menggunakan sebuah basis data dengan beberapa tabel yang terdapat di

    dalamnya. Berikut ini struktur database dan Tabel yang akan kita rancang

    untuk membangun sebuah program aplikasi berbasis basis data.

    A. Membuat Database

    Buatlah sebuah database dengan nama Inventory.mdb, simpan di lokasi

    Folder yang sudah Anda siapkan untuk menyimpan Project Aplikasi ini.

    Ikuti langkah – langkah berikut untuk membuat database dengan Ms

    Access XP,2000,2003.

    1. Buka aplikasi Ms Access melalui menu Window Start � Programs �

    Microsoft Office � Microsoft Access.

    2. Kemudian pada toolbar sebelah kanan pilih Menu Create a New File

    � Klik Icon Blank Database… � Tempatkan File database yang

    Anda buat di lokasi folder yang Anda gunakan untuk menyimpan

    Project.

    3. Beri nama file database yang Anda buat dengan nama

    DBInventory.mdb.

    4. Klik OK.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    9

    B. Membuat Tabel

    Dalam aplikasi Inventory yang akan dibangun ini memebutuhkan beberapa

    tabel yang akan digunakan untuk menampung data – data, berikut ini

    beberapa tabel yang akan digunakan beserta strukturnya :

    1. Tabel Golongan Produk

    Tabel Golongan Produk ini digunakan untuk menampung data golongan –

    golongan produk. Buatlah struktur tabel Golongan Produk sebagai

    berikut dan simpan dengan nama brg_Golongan.

    Struktur Tabel brg_Golongan

    2. Tabel Jenis Produk

    Buatlah Struktur tabel Jenis Produk dan simpan dengan nama

    brg_Jenis. Berikut struktur tabel brg_Jenis.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    10

    Struktur Tabel brg_Jenis

    3. Tabel Produk

    Buatlah struktur tabel Produk dan simpan dengan nama brg_Produk.

    Berikut ini struktur tabel brg_Produk.

    Struktur Tabel brg_Produk

    4. Tabel Barang

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    11

    Buatlah struktur tabel Barang dan simpan dengan nama brg_Barang.

    Berikut ini struktur tabel brg_Barang.

    Struktur Tabel brg_Barang

    5. Tabel Customer

    Buatlah struktur tabel Customer dan beri nama Customer. Berikut ini

    struktur tabel Customer.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    12

    Struktur Tabel Customer

    6. Tabel Pembelian Header

    Buatlah struktur tabel Pembelian Header dan berinama Pembelian1.

    berikut ini struktur tabel Pembelian1.

    Struktur Tabel Pembelian1

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    13

    7. Tabel Pembelian Detail

    Buatlah struktur tabel Pembelian Detail dan berinama Pembelian2.

    berikut ini struktur tabel Pembelian2.

    Struktur Tabel Pembelian2

    8. Tabel Penjualan Header

    Buatlah struktur tabel Penjualan Header dan berinama Penjualan1.

    berikut ini struktur tabel Penjualan1.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    14

    9. Tabel Penjualan Detail

    Buatlah struktur tabel Penjualan detail dan berinama Penjualan2.

    berikut ini struktur tabel Penjualan2.

    10. Tabel Retur Pembelian

    Buatlah struktur tabel Retur Pembelian dan berinama Retur_Beli.

    Berikut ini struktur tabel Retur_Beli.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    15

    11. Tabel Retur Penjualan

    Buatlah struktur tabel Retur Penjualan dan berinama Retur_Jual.

    Berikut ini struktur tabel Retur_Jual.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    16

    12. Tabel Supplier

    Buatlah struktur tabel Supplier dan berinama Supplier. Berikut ini

    struktur tabel supplier.

    13. Tabel Login

    Buatlah struktur tabel Login dan berinama Login. Berikut ini struktur

    tabel Login.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    17

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    18

    BAB 3 - PEMBUATAN PROJECT INVENTORY SYSTEM

    Pokok Bahasan :

    Bab ini membahas pembuatan project Aplikasi Inventory. Dalam pembuatan Project Aplikasi Inventory diperlukan beberapa File diantaranya File Class Modul (yang terdiri dari Class General dan Class GetList) dan File Modul.

    Buatlah Project Baru dengan nama ProjInventory.vbp. dalam pembuatan

    project Inventory System ini, silahkan Anda memilih type Project VB

    Enterprise Edition Control.

    A. Membuat Clas Modul

    Class Modul yang dibuat di dalam proyek Inventory System ini di fungsikan

    untuk membuat suatu prosedur yang dapat di gunakan di dalam objek – objek

    form yang terdapat di dalam proyek Inventory Sistem. Di dalam Proyek

    Inventory Sistem ini terdapat dua buah Class Modul, yang pertama adalah

    Class General dan yang kedua adalah Class GetList.

    1. Class General

    Class General digunakan untuk membuat deklarasi prosedur – prosedur

    diantaranya adalah Prosedur Pengecekan pengisian data Angka,

    Pengecekan Pengisian Data Karakter, Replace Data Karakter, dan

    Prosedur Membuka Koneksi ke Database.

    Untuk membuat Class General, berikut langkah – langkah pembuatan

    Class General.

    a. Klik kanan pada jendela Project Explore, Lalu pilih menu Add �

    Class Modul.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    19

    b. Pada Jendela Properties, pada baris (Name) Anda ketikkan

    cGeneral.

    c. Buka Jendela View Code, ketikkan kode Programnya sebagai

    berikut.

    Kode Program Class General

    d. Simpan dengan nama cGeneral.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    20

    2. Class GetList

    Tambahkan modul baru kedalam project Anda, dengan menggunakan langkah

    yang sama seperti pembuatan Class Modul General di atas, kemudian

    ketikkan kode programnya sebagai berikut.

    Class Modul GetList ini digunakan untuk membuka koneksi ke dalam suatu

    tabel yang ada di dalam Database.

    Kode Program Class GetList

    Setelah Anda ketik kode program di atas, kemudian simpan dan Berinama

    cGetList.

    Kemudian pada jendela Properti, pada kotak Name Anda isi dengan nilai

    cGetList.

    B. Membuat Modul

    Modul adalah sekumpulan Prosedur – prosedur umum dan definisi konstanta

    yang akan digunakan oleh Aplikasi.

    Utnuk membuat modul di dalam aplikais visual basic, cara hampir sama

    seperti cara pembuatan Class Modul di atas. Berikut langkah – langkah dalam

    pembuatan Modul.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    21

    1. Klik kanan pada jendela Project Explore, Lalu pilih menu Add �

    Modul.

    2. Pada Jendela Properties, pada baris (Name) Anda ketikkan Variabel.

    3. Buka Jendela View Code, ketikkan kode Programnya sebagai berikut.

    Kode Program Modul Variabel

    4. Simpan dengan nama Variabel.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    22

    Keterangan kode program di atas.

    Baris perintah di atas, merupakan baris kode program deklarasi variabel

    umum yang digunakan untuk aplikasi.

    Ketiga prosedur di atas, merupakan deklarasi prosedur umum. Untuk

    prosedur Sub Main() digunakan untuk memberikan sifat terhadap objek Form

    Utama yaitu pada judul form di beri teks “Sistem Informasi Inventory”.

    Prosedur yang kedua yaitu prosedur Function FormatNil(Angka as String) As

    String, merupakan deklarasi prosedur untuk membuatkan sebuah fungsi

    untuk mengembalikan nilai dari suatu format Angka.

    Contohnya : Angka yang di inputkan di dalam textbox akan diberikan format

    Angka, kemudian pada saat penyimpanan data Angka yang terdapat di dalam

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    23

    textbox dengan format angka tersebut harus dinormalkan kembali supaya

    data Angka tersebut dapat tersimpan di dalam database.

    Prosedur yang terakhir yaitu Function GenerateNota(N As Double, kode As

    String) As String, merupakan deklarasi prosedur untuk membuatkan suatu

    fungsi yang akan digunakan untuk membuat nomor Urut pada suatu nota.

    Sehingga pengisian nomor nota yang ada di dalam form transaksi nilainya

    akan terisi secara otomatis.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    24

    BAB 4 - MEMBUAT FORM GOLONGAN PRODUK

    Pokok Bahasan :

    Bab ini membahas pembuatan Form Golongan Produk. Form Golongan Produk ini digunakan untuk menampung data – data golongan produk atau kelompok produk.

    Dalam pembuatan desain Form Golongan Produk, Anda membutuhkan

    komponen yaitu MSHFlexGrid. Komponen tersebut harus Anda tambahkan ke

    dalam komponen, karena pada projek tersebut belum terdapat komponen

    MSHFlexGrid. Untuk menambahkan komponen MSHFlexGrid ikuti langkah –

    langkah berikut ini :

    1. Klik menu project � Components…

    2. Setelah tampil jendela Components, berikutnya pada Tabs Controls Anda

    cari komponen Microsoft Hierarchical FlexGrid Control 6.0 (SP4)

    (OLEDB). Lihat Gambar berikut.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    25

    3. Klok tombol OK.

    Setelah komponen MSHFlexGrid Anda tambahkan, berikutnya buatlah desain

    form Golongan Produk seperti gambar di bawah ini.

    Aturlah Objek – objek yang terdapat di dalam desain form Sebagai berikut.

    Komponen Properties Nilai

    Form Name Caption Font Font Size

    frmGolongan Manajemen Data Golongan Tahoma 9

    Label

    Label1 Name Caption

    Label1 Kode Golongan

    MSHFlexGrid

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    26

    Font Font Style Size

    Tahoma Bold 9

    Label2 Name Caption Font Font Style Size

    Label2 Nama Golongan Tahoma Bold 9

    Label3 Name Caption Font Font Style Size

    Label3 Keterangan Tahoma Bold 9

    TextBox

    TextBox1 Name Text

    Text1

    TextBox2 Name Text

    Text2

    TextBox3 Name MultiLine ScrollBar Text

    Text3 True 2 – Vertical

    MSHFlexGrid

    MSHFlexGrid Name Rows FixedCols FixedRows

    Grid 2 0 1

    Command

    Command1 Name Caption

    cmdSimpan &Simpan

    Command2 Name Caption

    cmdPerbaiki &Perbaiki

    Command3 Name Caption

    cmdBatal &Batal

    Command4 Name Caption

    cmdHapus &Hapus

    Command5 Name Caption

    cmdTutup &tutup

    Buka jendela kode program kemudian ketiklah baris kode program di bawah ini.

    Kode Deklarasi Variabel

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    27

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    28

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak

    Modul ini tanpa seijin penulis.

    29

    Setelah selesai semuanya Anda ketik kode program di atas, silahkan Anda

    simpan dan berinama frmGolongan.frm.

    Untuk mencoba form yang baru saja Anda buat, silahkan Anda jalankan dengan

    mengklik toolbar Run ( ). Kemudian Anda coba isikan sembarang data.

    NB : Kalau data berhasil disimpan berarti kode program yang Anda ketik tidak

    ada masalah. Tetapi kalau terjadi error, silahkan Anda cek kesalahan yang

    yang terjadi, lihat dan pahami maksud dari pesan kesalahan yang di tampilkan.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 30

    Modul ini tanpa seijin penulis.

    BAB 5 - MEMBUAT FORM JENIS PRODUK

    Pokok Bahasan :

    Bab ini membahas pembuatan Form Jenis Produk. Form Jenis Produk ini digunakan untuk menampung data – data jenis produk dari suatu data barang.

    Buatlah desain form jenis produk berikut ini.

    Aturlah Objek – objek yang terdapat di dalam desain form Sebagai berikut.

    Komponen Properties Nilai

    Form Name Caption Font Font Size

    frmJenisProduk Manajemen Data Jenis Produk Tahoma 9

    Label

    Label1 Name Caption Font Font Style Size

    Label1 Golongan Tahoma Bold 9

    MSHFlexGrid2

    MSHFlexGrid1

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 31

    Modul ini tanpa seijin penulis.

    Label2 Name Caption Font Font Style Size

    Label2 Kode Jenis Tahoma Bold 9

    Label3 Name Caption Font Font Style Size

    Label3 Nama Jenis Tahoma Bold 9

    Label4 Name Caption Font Font Style Size

    Label4 Keterangan Tahoma Bold 9

    TextBox

    TextBox10 ( textbox Golongan )

    Name Text

    Text10

    TextBox7 ( textbox nama golongan )

    Name Text

    Text7

    TextBox1 Name Text

    Text1

    TextBox2 Name Text

    Text2

    TextBox3 Name MultiLine ScrollBar Text

    Text3 True 2 – Vertical

    MSHFlexGrid

    MSHFlexGrid1 Name Rows Columns FixedCols FixedRows

    MSHFlexGrid1 2 2 0 1

    MSHFlexGrid2 Name Rows Columns FixedCols FixedRows

    Grid 2 2 0 1

    ADODC1

    ADODC1 Name ADODC1

    Command

    Command1 ( tombol Cari Nama Jenis )

    Name Caption

    Command1 Cari

    Command2 ( tombol browse Golongan )

    Name Caption

    Command2 …

    Command3 ( tombol Cari Kode Jenis )

    Name Caption

    cmdSearch Cari

    Command4 Name Caption

    cmdSimpan &Simpan

    Command5 Name Caption

    cmdPerbaiki &Perbaiki

    Command6 Name cmdBatal

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 32

    Modul ini tanpa seijin penulis.

    Caption &Batal

    Command7 Name Caption

    cmdHapus &Hapus

    Command8 Name Caption

    cmdTutup &tutup

    Buka jendela kode program kemudian ketiklah baris kode program di bawah ini.

    Kode Program Lengkap

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 33

    Modul ini tanpa seijin penulis.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 34

    Modul ini tanpa seijin penulis.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 35

    Modul ini tanpa seijin penulis.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 36

    Modul ini tanpa seijin penulis.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 37

    Modul ini tanpa seijin penulis.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 38

    Modul ini tanpa seijin penulis.

    Setelah selesai semuanya Anda ketik kode program di atas, silahkan Anda

    simpan dan berinama frmJenisProduk.frm.

    Untuk mencoba form yang baru saja Anda buat, silahkan Anda jalankan dengan

    mengklik toolbar Run ( ). Kemudian Anda coba isikan sembarang data.

    NB : Kalau data berhasil disimpan berarti kode program yang Anda ketik tidak

    ada masalah. Tetapi kalau terjadi error, silahkan Anda cek kesalahan yang

    yang terjadi, lihat dan pahami maksud dari pesan kesalahan yang di tampilkan.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 39

    Modul ini tanpa seijin penulis.

    BAB 6 - MEMBUAT FORM PRODUK

    Buatlah desain form produk berikut ini.

    Aturlah Objek – objek yang terdapat di dalam desain form Sebagai berikut.

    Komponen Properties Nilai

    Form Name Caption Font Font Size

    frmProduk Manajemen Data Produk Tahoma 9

    Label

    Label1 Name Caption Font Font Style Size

    Label1 Golongan Tahoma Bold 9

    Label2 Name Caption Font Font Style

    Label2 Kode Jenis Tahoma Bold

    MSHFlexGrid2

    MSHFlexGrid1

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 40

    Modul ini tanpa seijin penulis.

    Size 9

    Label3 Name Caption Font Font Style Size

    Label3 Nama Jenis Tahoma Bold 9

    Label4 Name Caption Font Font Style Size

    Label4 Keterangan Tahoma Bold 9

    TextBox

    TextBox10 ( textbox Golongan )

    Name Text

    Text10

    TextBox7 ( textbox nama golongan )

    Name Text

    Text7

    TextBox11 ( textbox Jenis Produk )

    Name Text

    Text11

    TextBox8 ( textbox Nama Jenis )

    Name Text

    Text8

    TextBox1 Name Text

    Text1

    TextBox2 Name Text

    Text2

    MSHFlexGrid

    MSHFlexGrid1 Name Rows Columns FixedCols FixedRows

    MSHFlexGrid1 2 2 0 1

    MSHFlexGrid2 Name Rows Columns FixedCols FixedRows

    Grid 2 2 0 1

    ADODC1

    ADODC1 Name ADODC1

    Command

    Command1 ( tombol Cari Nama Jenis )

    Name Caption

    Command1 Cari

    Command2 ( tombol browse Golongan )

    Name Caption

    Command2 …

    Command3 ( tombol Cari Kode Jenis )

    Name Caption

    Command3 Cari

    Command4 ( tombol Cari Kode Produk )

    Name Caption

    cmdSearch …

    Command5 Name Caption

    cmdSimpan &Simpan

    Command6 Name Caption

    cmdPerbaiki &Perbaiki

    Command7 Name cmdBatal

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 41

    Modul ini tanpa seijin penulis.

    Caption &Batal

    Command8 Name Caption

    cmdHapus &Hapus

    Command9 Name Caption

    cmdTutup &tutup

    Buka jendela kode program kemudian ketiklah baris kode program di bawah ini.

    Kode Program Lengkap

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 42

    Modul ini tanpa seijin penulis.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 43

    Modul ini tanpa seijin penulis.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 44

    Modul ini tanpa seijin penulis.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 45

    Modul ini tanpa seijin penulis.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 46

    Modul ini tanpa seijin penulis.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 47

    Modul ini tanpa seijin penulis.

    Setelah selesai semuanya Anda ketik kode program di atas, silahkan Anda

    simpan dan berinama frmProduk.frm.

    Untuk mencoba form yang baru saja Anda buat, silahkan Anda jalankan dengan

    mengklik toolbar Run ( ). Kemudian Anda coba isikan sembarang data.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 48

    Modul ini tanpa seijin penulis.

    NB : Kalau data berhasil disimpan berarti kode program yang Anda ketik tidak

    ada masalah. Tetapi kalau terjadi error, silahkan Anda cek kesalahan yang

    yang terjadi, lihat dan pahami maksud dari pesan kesalahan yang di tampilkan.

  • BAB 7 - MEMBUAT FORM BARANG

    Buatlah desain form Barang berikut ini.

    Aturlah Objek – objek yang terdapat di dalam desain form Sebagai berikut.

    Komponen Properties Nilai

    Form Name Caption Font Font Size

    frmProduk Manajemen Data Produk Tahoma 9

    Label

    Label1 Name Caption Font Font Style Size

    Label1 Golongan Tahoma Bold 9

    Label2 Name Caption Font Font Style

    Label2 Jenis Produk Tahoma Bold

    Grid

    MSHFlexGrid1

  • Size 9

    Label3 Name Caption Font Font Style Size

    Label3 Produk Barang Tahoma Bold 9

    Label4 Name Caption Font Font Style Size

    Label4 Kode Barang Tahoma Bold 9

    Label5 Name Caption Font Font Style Size

    Label5 Nama Barang Tahoma Bold 9

    Label6 Name Caption Font Font Style Size

    Label6 Keterangan Tahoma Bold 9

    Label7 Name Caption Font Font Style Size

    Label7 Satuan Barang Tahoma Bold 9

    Label8 Name Caption Font Font Style Size

    Label8 Harga/Satuan Tahoma Bold 9

    Label9 Name Caption Font Font Style Size

    Label9 Stock Tahoma Bold 9

    Label10 Name Caption Font Font Style Size

    Label10 Stock Min Tahoma Bold 9

    Label11 Name Caption Font Font Style Size

    Label11 Stock Harus Dibeli Tahoma Bold 9

    TextBox

    TextBox10 ( textbox Golongan )

    Name Text

    Text10

    TextBox7 ( textbox nama golongan )

    Name Text

    Text7

    TextBox11 Name Text11

  • ( textbox Jenis Produk )

    Text

    TextBox8 ( textbox Nama Jenis )

    Name Text

    Text8

    TextBox12 (textbox Produk Barang)

    Name Text

    Text12

    TextBox9 (textbox Nama Produk)

    Name Text

    Text9

    TextBox1 (textbox Kode Barang)

    Name Text

    Text1

    TextBox2 (textbox Nama Barang)

    Name Text

    Text2

    TextBox3 (textbox Harga Satuan)

    Name Text

    Text3

    TextBox4 (textbox Stock)

    Name Text

    Text4

    TextBox5 (txtbox Stock Min)

    Name Text

    Text5

    TextBox6 (textbox keterangan Stock Harus Beli)

    Name BackColor ForeColor

    Textbox6 &H000000FF& ( Merah ) &H000000FF& ( Merah )

    TextBox13 (textbox Keterangan)

    Name Text

    Text13

    ComboBox

    ComboBox1 Name Text

    cmbSatuan

    MSHFlexGrid

    MSHFlexGrid1 Name DataSource Rows Columns FixedCols FixedRows

    MSHFlexGrid1 ADODC1 2 2 0 1

    MSHFlexGrid2 Name Rows Columns FixedCols FixedRows

    Grid 2 2 0 1

    ADODC1

    ADODC1 Name ADODC1

    Command

  • Command1 ( tombol Cari Nama Barang )

    Name Caption

    Command1 Cari

    Command2 ( tombol browse Golongan )

    Name Caption

    Command2 …

    Command3 ( tombol Browse Jenis Produk)

    Name Caption

    Command3 …

    Command4 ( tombol Browse Produk Barang)

    Name Caption

    Command4 …

    Command5 ( tombol Cari Kode Barang)

    Name Caption

    cmdSearch Cari

    Command6 Name Caption

    cmdSimpan &Simpan

    Command7 Name Caption

    cmdPerbaiki &Perbaiki

    Command8 Name Caption

    cmdBatal &Batal

    Command9 Name Caption

    cmdHapus &Hapus

    Command10 Name Caption

    cmdTutup &Tutup

    Tugas!

    Mengacu pada Form Produk, Silahkan Anda buat kode program untuk Form

    Barang di Atas.

    ------------ Selamat Mencoba -----------

  • BAB VIII

    MEMBUAT LAPORAN DENGAN CRYSTAL REPORT 7.0

    Crystal report merupakan program yang dapat digunakan untuk membuat,

    menganalisa dan menterjemahkan informasi yang terkandung dalam

    database atau program ke dalam berbagai jenis laporan yang sangat

    fleksibel. Beberapa kelebihan Crystal Report adalah :

    1. Pembuatan laporan tidak terlalu rumit, sehingga memungkinkan program

    pemula sekalipun untuk membuat laporan tanpa melibatkan banyak kode

    program.

    2. Terintegrasi dengan berbagai bahasa pemrograman lain, sehingga

    memungkinkan pemrogram memanfaatkannya dengan keahlian sendiri –

    sendiri.

    3. Fasilitas import dari hasil laporan yang mengandung format yang populer

    seperti Microsoft Word, Excell, Access, Adobe Acrobat Reader, HTML,

    dan lain sebagainya.

    Element layar Crystal Reports tidak jauh dengan element layar Data Report.

    Hanya saja Crystal Reports dilengkapi dengan fasilitas yang lebih banyak

    untuk mengembangkan berbagai laporan.

    Pada umumnya sebuah laporan sedikitnya terdiri dari lima bagian (Section)

    utama, yaitu :

    1. Report Header yang berisi informasi yang hanya terlihat sekali, pada

    awal laporan, misalnya judul dan tanggal laporan.

    2. Page Header yang berisi tentang informasi yang akan terlihat di atas

    setiap halaman laporan, seperti label heading-kolom.

    3. Group Header yang berisi informasi dari kelompok baru.

  • 4. Details yang berisi informasi yang akan terlihat satu kali setiap record

    dalam tabel atau query yang terkait dengan laporan.

    5. Group Footer berisi informasi setelah seluruh record dari kelompok yang

    dicetak.

    6. Page Footer yang berisi informasi yang akan terlihat di dasar setiap

    halaman laporan, seperti nomor halaman.

    7. Report Footer berisi informasi yang akan terlihat hanya sekali, di akhir

    laporan, seperti ringkasan atau atau rata – rata yang ada di akhir

    laporan.

    Membuat Laporan Penjualan

    Untuk membuat laporan penjualan ataua laporan – laporan yang lain

    dengan menggunaka Crystal Reports, ikuti langkah – langkah sebagai

    berikut :

    1. Buka Program aplikasi Crystal Reports, melalui menu Start �

    Programs � Seagate Crystal Reports � 32-bit Crystal Report

    Designer.

  • 2. Perhatikan gambar di bawah ini, pada jendela Welcome, pilih

    tombol New Report.

    3. Setelah Anda klik tombol New Report, akan tampil jendela Report

    Galery. Pada jendela Report Galery pilih Tombol Standard. Terlihat

    seperti dalam gambar di bawah ini.

    4. Pilih jenis database yang Anda gunakan sebagai sumber datanya,

    kalau menggunakan SQL Server, pilih SQL Server. Perhatikan gambar

    di bawah ini.

  • 5. Kemudian pada kotak dialog Microsoft SQL Server kotak isian Server

    Anda isi nama dari komputer server, UserId Anda isi sa, dan

    Database Anda isi DbPenjualan. Perhatikan gambar di bawah ini.

    6. Selanjutnya Anda klik tombol Ok untuk melanjutkan proses

    berikutnya. Pada proses selanjutnya adalah menyeleksi tabel – tabel

    yang berhubungan dengan output desain laporan yang akan Anda

    buat. Perhatikan kotak dialog Select Tables di bawah ini.

  • 7. Pilihlah tabel – tabel yang akan Anda gunakan sebagai sumber dari

    desain output Laporan yang akan Anda buat. Setelah Anda

    menyeleksi tabel – tabel yang Anda jadikan sebagai sumber dari

    desain Laporan Anda, klik tombol Ok untuk melanjutkan ke proses

    berikutnya.

    8. Proses selanjutnya disini adalah desain relasi antar tabel yang saling

    berhubungan atau terelasi dari tabel – tabel yang Anda seleksi, jika

    jumlah tabel yang Anda seleksi di sini lebih dari satu tabel. Untuk

    lebih jelasnya Anda lihat gambar di bawah ini.

  • 9. Klik tombol Next, untuk melanjutkan ke tahap berikutnya.

    10. Pada tahap selanjutnya adalah tahap untuk menyeleksi nama –

    nama field yang nanti digunakan sebagai output data atau sumber

    data dalam desain Laporan Anda. Klik tombol Add untuk

    menambahkan field yang terpilih saja. Tekan tombol Next untuk

    melanjutkan. Perhatikan Gambar di bawah ini.

  • 11. Setelah Anda klik tombol Next, pada langkah berikutnya di sini

    adalah menentukan field kunci sebagai kunci pengurutan dari data

    yang ditampilkan di dalam desain laporan Anda. Pilihlah field yang

    menjadi kunci pengurutan, selanjutnya Anda tekan tombol Add.

    Selanjutnya klik tombol Next untuk melanjutkan ke tahap

    berikutnya.

  • 12. Tekan tombol Next terus sampai berada pada tahap terakhir, yaitu

    tahap untuk pemberian Judul Laporan sekaligus nama dari laporan

    Anda dan menetukan Style laporan. Berikutnya klik tombol Design

    Report untuk memulai mendesain Laporan Anda.

  • 13. Hasilnya dapat Anda lihat pada gambar berikut.

  • Menghubungkan Form Dengan Crystal Report

    1. Tambahkan Komponen Crystal Report Control ( ), ke dalam Form

    Menu Utama kemudian Anda berinama komponen tersebut dengan nama

    CR.

    2. Jika Komponen Crystal Report Control belum ada di dalam Jendela

    Komponen, silahkan Anda tambahkan dengan cara mengklik menu Project

    � Components.

    3. Kembali ke tampilan desain Menu Utama, kemudian Anda klik menu

    laporan, Laporan Barang.

    4. Ketikkan kode programnya sebagai berikut :

    Keterangan :

    CR : Nama dari Komponen Crystal Report

    ReportFileName : Properti Crystal Report, yang berfungsi untuk memanggil

    File Laporan yang Anda buat dari Crystal Report Designer.

    (Sesuaikan dengan nama file Laporan Anda)

    WindowsTitle : Properti Crystal Report yang digunakan untuk mengganti

    Judul dari Jendela Crystal Report.

    RetrieveDataFile : Properti Untuk merifresh data yang telah tersimpan di

    dalam database supaya tampil ke dalam Crystal Report

    secara uptodate.

    Action = 1 : Propertie yang digunakan untuk menjalankan Crystal

    Report.

  • Membuat Menu Utama

    Form Utama adalah form yang dijadikan sebagai induk dari semua form yang

    ada di dalam proyek. Form utama juga merupakan bagian yang digunakan untuk

    pemanggilan form pengolahan data dan form transaksi. Form utama ini akan

    tampil setelah form login.

    Form utama ini dapat digunakan sebagai pengontrol pemanggilan form – form

    yang ada di dalam proyek berdasarkan kriteria dari masing – masing form yang

    akan dipanggil. Form utama ini bisa disebut sebagai Form Menu, yang mana

    isinya terdiri dari menu – menu yang digunakan untuk memanggil Form yang

    akan digunakan di dalam Aplikasi ini. Menu yang digunakan di dalam Form

    Utama ini menggunakan tipe Menu Pull Down

    Buatlah desain menu utama Aplikasi Inventory Anda sebagai tampilan awal dari

    Aplikasi Inventory Anda. Berikut bentuk desain tampilan Menu Utama.

    Berikut ini langkah – langkah pembuatan menu Utama di atas.

  • 1. Klik kanan dalam jendela Project Explorer, lalu Anda pilih menu popup

    Add � MDIForm. Lihat gambar di bawah.

    2. Setelah tampil area Form MDIForm, silahkan Anda buat desai menu

    seperti struktur menu pada table berikut ini.

    Level1

    Caption Name

    Master Data mnMaster

    Level 2

    Data Barang mnBarang

    Data Supplier mnSupplier

    Data Pelanggan mnPelanggan

    Level1

    Transaksi mnTransaksi

    Level 2

    Penjualan mnPenjualan

    Pembelian mnPembelian

    Level1

    Laporan mnLaporan

    Level 2

    Laporan Barang mnLaporanBarang

    Laporan Penjualan mnLaporanPenjualan

    Laporan Pembelian mnLaporanPembelian

    Level1

    Keluar mnKeluar

    Level 2

    Keluar dari Aplikasi mnExit

    3. Untuk membuat desain menu tersebut di atas, ikuti langkah – langkah

    sebagai berikut.

    a. Klik menu Tools � Menu Editor.

  • b. Akan tampil jendela Menu Editor. Seperti terlihat pada gambar.

    c. Pada kotak dialog Menu Editor terdapat beberapa bagian utama

    yaitu:

    1. Caption merupakan bagian yang digunakan untuk memberikan

    keterangan judul menu.

    2. Name merupakan bagian yang digunakan untuk memberikan nama

    dari suatu Menu.

    3. Shortcut merupakan bagian yang digunakan untuk memberikan

    tombol percepatan (shortcut) dari suatu SUBMENU.

    4. Tombol Panah Kekiri merupakan bagian yang digunakan

    untuk kembali ke Level di atasnya.

  • 5. Tombol Panah Kekanan merupakan bagian yang digunakan

    untuk membuat sub menu ( level dibawah level utama ).

    6. Tombol Panah KeAtas merupakan bagian yang digunakan

    untuk menggeser posisi menu ke atas.

    7. Tombol Panah KeBawah merupakan bagian yang digunakan

    untuk menggeser posisi menu ke bawah.

    8. Tombol NEXT merupakan bagian yang digunakan untuk

    menambahkan menu atau sub menu baru.

    9. Tombol INSERT merupakan bagian yang digunakan untuk

    menyisipkan menu atau sub menu diantara menu atau sub menu

    yang sudah ada.

    10. Tombol DELETE merupakan bagian yang digunakan untuk

    menghapus menu atau sub menu yang tidak terpakai atau salah.

    d. Untuk membuat menu yang seperti desain form di atas, silhkan Anda

    isikan teks Menu Master pada kotak isian Caption dan mnMaster

    pada kotak isian Name.

    e. Kemudian untuk membuat sub menu dari menu master, silahkan Anda

    klik tombol panah keKanan , kemudian Anda isikan teks Data

    Barang pada kotak isian Caption dan mnBarang pada kotak isian

    Name.

    f. Klik Tombol NEXT, untuk membuat sub menu yang berikutnya dan

    seterusnya sampai dengan sub menu yang terakhir dari Menu Master.

    g. Untuk kembali ke level di atasnya, yaitu untuk membuat menu

    Transaksi, silahkan Anda klik tombol panah ke kekiri .

    h. Isikan teks Transaksi pada kotak isian Caption dan teks MnTransaksi

    pada kotak isian Name.

    i. Lakukan langkah yang sama seperti langkah di atas mulai dari langkah

    e, f, dan g sampai dengan menu yang terakhir.

    j. Silahkan Anda klik tombol OK, untuk menutup kotak dialog Menu

    Editor.

  • 4. Kemudian ketikkan kode program berikut ini untuk membuka form – form

    yang ada di dalam project Anda melalui form utama tersebut.

    Kode Program Lengkap

    5. Simpan MDIForm Anda dengan nama MenuUtama.

    6. Untuk mengatur supaya yang tampil pertama kali dari project Anda

    adalah Form MenuUtama, silahkan Anda atur melalui jendela Project

    Explorer.

    7. Klik kanan pada jendela Project Explorer � Pilih popup menu

    Properties.

  • 8. Klik OK.

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 1

    Modul ini tanpa seijin penulis.

    BAB 10 - MEMBUAT FORM JUAL

    Buatlah desain form Jual berikut ini.

    Kemudian Tuliskan Kode programnya sebagai berikut :

    Dim Gen As New cGeneral Dim rsJual As New ADODB.Recordset Dim kolom As Integer Private Sub cmdBersih_Click() Unload Me Me.Show vbModal End Sub Private Sub cmdCetak_Click() CR.ReportFileName = App.Path & "\penjualanpernota .rpt" CR.SelectionFormula = "{Penjualan2.no_nota}='" & Text1.Text & "' " CR.Formulas(0) = "Bayar=" & Text9.Text & "" CR.Formulas(1) = "Kembali=" & Label14.Caption & " " CR.WindowTitle = "Laporan Penjualan Per-Nota" CR.WindowState = crptMaximized CR.RetrieveDataFiles

    Gunakan Komponen Apex

    TDBGrid dan berinama GRID

    MSHFlexGrid1

    Command1

    cmdSearch

    cmdBersih cmdSimpan cmdHapus cmdCetak Command2 cmdTutup

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 2

    Modul ini tanpa seijin penulis.

    CR.Action = 1 End Sub Private Sub cmdHapus_Click() If Text2.Text = "" Then Exit Sub Dim Ty As String Dim Conn As New ADODB.Connection Conn.Open Gen.getConnectionString Ty = MsgBox("Hapus Data?", vbQuestion + vbOKCance l, "Hapus") If Ty = vbOK Then Conn.Execute "delete from penjualan2 where no_ nota='" & Text1.Text & "' and kode_barang='" & Text2.Text & "'" End If Conn.Close Set Conn = Nothing Clear TampilGrid (Text1.Text) End Sub Private Sub cmdSearch_Click() Dim lConn As New ADODB.Connection lConn.Open Gen.getConnectionString SQL = "select kode_barang as Kode,nama_barang as Nama from brg_barang where kode_barang like'%" & Text2.Text & "%'" MSHFlexGrid1.Top = Text2.Top + 200 MSHFlexGrid1.Left = Text2.Left Adodc1.ConnectionString = lConn Adodc1.RecordSource = SQL Adodc1.Refresh MSHFlexGrid1.Width = 3500 MSHFlexGrid1.Height = 1300 MSHFlexGrid1.ColWidth(0) = 1000 MSHFlexGrid1.ColWidth(1) = 2000 MSHFlexGrid1.Visible = True Set lConn = Nothing kolom = 1 End Sub Private Sub cmdSimpan_Click() Dim Conn As New ADODB.Connection Dim rs As New ADODB.Recordset Dim list As New cGetList If Text1.Text = "" Then MsgBox "Nota kosong" Text1.SetFocus Exit Sub ElseIf Text8.Text = "" Then MsgBox "Kode Customer kosong" Text8.SetFocus Exit Sub ElseIf Text2.Text = "" Then MsgBox "Kode Barang kosong" Text2.SetFocus Exit Sub ElseIf Text3.Text = "" Then MsgBox "Nama Barang kosong" Text3.SetFocus

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 3

    Modul ini tanpa seijin penulis.

    Exit Sub ElseIf Text4.Text = "" Then MsgBox "Jml kosong" Text4.SetFocus Exit Sub Else Conn.Open Gen.getConnectionString Conn.Execute "delete from penjualan1 where no_n ota='" & Text1.Text & "'" Conn.Execute "insert into penjualan1 values('" & Text1.Text & "','" & Format(DTPicker1.Value, "MM/dd/yyyy") & "','" & T ext8.Text & "')" Set rs = list.getRecordsetBySQL("select * from penjualan2 where no_nota='" & Text1.Text & "' and kode_barang='" & T ext2.Text & "'") If Not rs.EOF Then Conn.Execute "update penjualan2 set jml_jual= jml_jual +" & Val(Text5.Text) & " where no_nota='" & Text1.Text & "' and kode_barang='" & Text2.Text & "'" Else Conn.Execute "insert into penjualan2 values(' " & Text1.Text & "','" & Text2.Text & "'," & Val(Text5.Text) & ")" End If Conn.Execute "update brg_barang set stock=stock -" & Val(Text5.Text) & " where kode_barang='" & Text2.Text & "'" Set rs = Nothing Conn.Close Clear TampilGrid (Text1.Text) MsgBox "data telah disimpan" End If End Sub Sub TampilGrid(ByVal tmp As String) On Error GoTo errx Dim Conn As New ADODB.Connection Dim list As New cGetList Dim i As Integer ''' ''' With Grid ''' .Rows = 2 ''' For i = 0 To .Cols - 1 ''' .TextMatrix(1, i) = "" ''' Next i ''' End With ''' i = 0 total = 0 ''' Set rs = list.getRecordsetBySQL("SELECT penjua lan2.kode_barang, brg_barang.nama_barang, brg_barang.harga_barang, pe njualan2.jml_jual " & _ "FROM brg_barang INNER JOIN penjualan2 ON b rg_barang.kode_barang = penjualan2.kode_barang " & _ "WHERE (((penjualan2.no_nota)='" & tmp & "' ))") Conn.Open Gen.getConnectionString Set rsJual = New ADODB.Recordset rsJual.ActiveConnection = Conn rsJual.CursorLocation = adUseClient rsJual.CursorType = adOpenKeyset rsJual.LockType = adLockOptimistic rsJual.Open "SELECT penjualan2.kode_barang, brg_b arang.nama_barang, brg_barang.harga_barang, penjualan2.jml_jual,(brg_b arang.harga_barang * penjualan2.jml_jual) as SubTotal " & _

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 4

    Modul ini tanpa seijin penulis.

    "FROM (brg_barang INNER JOIN penjualan2 ON brg_barang.kode_barang = penjualan2.kode_barang) " & _ "INNER JOIN penjualan1 ON penjualan2.no_not a = penjualan1.no_nota " & _ "WHERE (((penjualan2.no_nota)='" & tmp & "' )) ORDER BY Penjualan1.tgl_jual" Set Grid.DataSource = rsJual With Grid '''================================================ = .Columns(0).Width = 1000 .Columns(1).Width = 2200 .Columns(2).Width = 1000 .Columns(3).Width = 500 .Columns(4).Width = 1200 '''================================================ = .Columns(0).Caption = "Kode" .Columns(1).Caption = "Nama" .Columns(2).Caption = "Harga" .Columns(3).Caption = "Jml" .Columns(4).Caption = "Sub Total" End With Do While Not rsJual.EOF total = total + ((rsJual!harga_barang) * (rsJua l!jml_jual)) & "" rsJual.MoveNext Loop Label8.Caption = Format(total, "###,###,###") Set rs = Nothing Exit Sub errx: MsgBox Err.Description, vbExclamation + vbOKOnly, "Error" Exit Sub End Sub Private Sub cmdTutup_Click() Unload Me End Sub Private Sub Command1_Click() Dim lConn As New ADODB.Connection lConn.Open Gen.getConnectionString SQL = "select Kodecustomer,Nama from customer whe re kodecustomer like'%" & Text8.Text & "%'" MSHFlexGrid1.Top = Text8.Top + 200 MSHFlexGrid1.Left = Text8.Left Adodc1.ConnectionString = lConn Adodc1.RecordSource = SQL Adodc1.Refresh MSHFlexGrid1.Width = 3500 MSHFlexGrid1.Height = 1300 MSHFlexGrid1.ColWidth(0) = 1000 MSHFlexGrid1.ColWidth(1) = 2000 MSHFlexGrid1.Visible = True

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 5

    Modul ini tanpa seijin penulis.

    Set lConn = Nothing kolom = 2 End Sub Private Sub Command2_Click() CR.ReportFileName = App.Path & "\penjualanpernota .rpt" CR.SelectionFormula = "{Penjualan2.no_nota}='" & Text1.Text & "' " CR.Formulas(0) = "Bayar=" & Text9.Text & "" CR.Formulas(1) = "Kembali=" & Label14.Caption & " " CR.WindowTitle = "Laporan Penjualan Per-Nota" CR.WindowState = crptMaximized CR.RetrieveDataFiles CR.Action = 1 End Sub Private Sub Form_Load() Clear TampilGrid (Text1.Text) geturut End Sub Sub Clear() Text2.Text = "" Text3.Text = "" Text4.Text = "" Text5.Text = "" Text6.Text = "" Label14.Caption = "" DTPicker1.Value = Format(Date, "dd-MM-yyyy") End Sub Sub geturut() Dim rsx As New ADODB.Recordset Dim listx As New cGetList Dim nomor As Double Set rsx = listx.getRecordsetBySQL("select mid(no_ nota,3,5)as nomor from penjualan1 order by no_nota desc") If Not rsx.EOF Then nomor = Val(rsx!nomor) End If Text1.Text = GenerateNota(nomor + 1, "PJ") Set rsx = Nothing Set listx = Nothing End Sub Private Sub Grid_Click() If Not rsJual.EOF Then Text2.Text = rsJual!kode_barang Text5.Text = rsJual![jml_jual] End If End Sub Private Sub MSHFlexGrid1_Click() If kolom = 1 Then Text2.Text = Trim(MSHFlexGrid1.TextMatrix(MSHFl exGrid1.Row, 0)) ElseIf kolom = 2 Then Text8.Text = Trim(MSHFlexGrid1.TextMatrix(MSHFl exGrid1.Row, 0)) End If MSHFlexGrid1.Visible = False End Sub Private Sub MSHFlexGrid1_GotFocus() If Adodc1.Recordset.RecordCount

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 6

    Modul ini tanpa seijin penulis.

    End If End Sub Private Sub MSHFlexGrid1_KeyPress(KeyAscii As Integ er) If KeyAscii = 27 Then MSHFlexGrid1.Visible = Fals e If KeyAscii = 13 Then MSHFlexGrid1_Click End Sub Private Sub MSHFlexGrid1_LostFocus() MSHFlexGrid1.Visible = False End Sub Private Sub Text1_Change() TampilGrid (Text1.Text) End Sub Private Sub Text2_Change() Dim rs1 As New ADODB.Recordset Dim List1 As New cGetList Set rs1 = List1.getRecordsetBySQL("select * from brg_barang where kode_barang='" & Text2.Text & "'") If Not rs1.EOF Then Text3.Text = rs1!nama_barang & "" Text4.Text = rs1!harga_barang & "" Else Text3.Text = "" Text4.Text = "" End If Set rs1 = Nothing Set List1 = Nothing End Sub Private Sub Text4_Change() Text4.Text = Format(Text4.Text, "###,###,###") Text4.SelStart = Len(Text4.Text) Text6.Text = FormatNil(Text4.Text) * Val(Text5.Te xt) End Sub Private Sub Text5_Change() Text6.Text = FormatNil(Text4.Text) * Val(Text5.Te xt) End Sub Private Sub Text5_KeyPress(KeyAscii As Integer) KeyAscii = Gen.CheckAngkaOnly(KeyAscii) End Sub Private Sub Text5_KeyUp(KeyCode As Integer, Shift A s Integer) Dim rsx As New ADODB.Recordset Dim listx As New cGetList Set rsx = listx.getRecordsetBySQL("select stock f rom brg_barang where kode_barang='" & Text2.Text & "'") If Not rsx.EOF Then If Val(Text5.Text) > rsx!stock Then MsgBox "Stock hanya tersedia " & rsx!stock & ", kurangi jumlah anda" Text5.Text = rsx!stock End If End If Set rsx = Nothing Set listx = Nothing End Sub Private Sub Text6_Change() Text6.Text = Format(Text6.Text, "###,###,###") Text6.SelStart = Len(Text6.Text) End Sub Private Sub Text8_Change() Dim rs1 As New ADODB.Recordset

  • Materi : Pemrograman Visual I

    Dosen Pengampu : Jarot Dian Susatyono, S.Kom

    Dilarang mengcopy atau memperbanyak 7

    Modul ini tanpa seijin penulis.

    Dim List1 As New cGetList Set rs1 = List1.getRecordsetBySQL("select * from customer where kodecustomer='" & Text8.Text & "'") If Not rs1.EOF Then Text7.Text = rs1!nama & "" Else Text7.Text = "" End If Set rs1 = Nothing Set List1 = Nothing End Sub Private Sub Text9_Change() Label14.Caption = Val(FormatNil(Text9.Text)) - Val(FormatNil(Label8.Caption)) End Sub

  • BAB XI

    MEMBUAT FORM LOGIN

    Buatlah desain form Login berikut ini.

    Komponen Properties Nilai

    Form Name Caption Font Font Size

    frmPassword Login Tahoma 9

    Label

    Label1 Name Caption Font Font Style Size

    Label1 Golongan Tahoma Bold 9

    Label2 Name Caption Font Font Style Size

    Label2 Jenis Produk Tahoma Bold 9

    TextBox

    TextBox1

    Name Text

    txtLogin

    TextBox2 Name Text PasswordChar

    txtPassword * (tanda bintang)

    Command

    Command1

    Name Caption

    cmdOK &Login

    Command2

    Name Caption

    cmdCancel &Cancel

  • Kemudian Tuliskan Kode programnya sebagai berikut :

    Option Explicit Dim Gen As New cGeneral Private Sub cmdCancel_Click() End End Sub Private Sub cmdOK_Click() Dim rs As New ADODB.Recordset Dim list As New cGetList Set rs = list.getRecordsetBySQL("select * from logi n where " & _ "username='" & txtLogin.Text & "' and password='" & txtPassword.Text & "'") If Not rs.EOF Then MN1 = rs!MN1 & "" MN2 = rs!MN2 & "" MN3 = rs!MN3 & "" MN4 = rs!MN4 & "" CurrentUserName = rs!UserName If rs!UserName = "admin" Then mfrmMain.mnSUsers .Visible = True mfrmMain.EnabelTrue Set rs = Nothing Set list = Nothing Unload Me Else MsgBox "Login salah" End If Set rs = Nothing Set list = Nothing End Sub Private Sub Form_Load() Unload frmBar End Sub Private Sub txtLogin_KeyDown(KeyCode As Integer, Sh ift As Integer) If KeyCode = 13 Or KeyCode = 40 Then txtPassword.SetFocus End If End Sub Private Sub txtLogin_KeyPress(KeyAscii As Integer) If KeyAscii = 27 Then End KeyAscii = Gen.CheckKarakter(KeyAscii) End Sub Private Sub txtPassword_KeyDown(KeyCode As Integer, Shift As Integer) If KeyCode = 38 Then txtLogin.SetFocus End If If KeyCode = 13 Then cmdOK_Click End If End Sub Private Sub txtPassword_KeyPress(KeyAscii As Intege r) If KeyAscii = 27 Then End KeyAscii = Gen.CheckKarakter(KeyAscii) End Sub