Contoh Penggunaan Implements

Di materi sebelumnya sudah dibahas bagaimana menggunakan sebuah Interface dengan menggunakan Implements.

Disini saya akan buat sebuat contoh kasus menggunakan impelements.

Kasus: Sistem Pembuatan Laporan Multi-Format

Sebuah perusahaan ingin mengotomatisasi pembuatan laporan dalam berbagai format seperti PDF dan Excel.

Dengan menggunakan Interface, kita dapat mendefinisikan metode umum misalnya BuatReport yang kemudian diimplementasikan secara spesifik untuk setiap format laporan.

Sehingga saat akan memebuat Report baik Report dalam bentuk PDF ataupun Excel menggunakan 1 motode yaitu BuatReport.

1. Membuat Interface IReport

Langkah pertama adalah membuat Class yang bertindak sebagai Interface dengan mendefinisikan metode yang harus diimplementasikan oleh kelas lain.

Tambahkan Class Module baru dan beri nama IReport.

masukan code dibawah ini kedalam iReport

Public Sub BuatReport()
    ' Metode kosong sebagai placeholder
End Sub

2. Membuat Class Implements

Selanjutnya membuat class untuk implements. Class ini akan mengimplementasikan metode BuatReport untuk menghasilkan laporan dalam format PDF.

Buat Class baru kemudian beri nama misalnya ReportPDF

Implements IReport

Private Sub IReport_BuatReport()
    ' Bagian ini diisi script Report PDF
    ' Kode spesifik untuk menghasilkan PDF dapat ditambahkan di sini
    ' Sebagai Contoh Hanya di isi Msgbox saja

    MsgBox "Menghasilkan Laporan dalam format PDF...", vbInformation, "Laporan PDF"    
End Sub

Selanjutnya buat Class baru lagi untuk Implements Report Excel. Misalnya Class ini diberi nama ReportExcel.

Copy code berikut ini pada Class ReportExcel

Implements IReport

Private Sub IReport_BuatReport()
    ' Bagian ini diisi script Report Excel
    ' Kode spesifik untuk menghasilkan Report dapat ditambahkan di sini
    ' Sebagai contoh disini saya hanya tambahkan script sederhana saja

    MsgBox "Menghasilkan Laporan dalam format Excel...", vbInformation, "Laporan Excel"
    
    Dim ws As Worksheet
    Set ws = ThisWorkbook.Sheets.Add
    ws.Name = "Laporan Excel"
    ws.Range("A1").Value = "Ini adalah laporan dalam format Excel."

End Sub

Semua Class sudah berhasil dibuat, total menjadi ada 3 class, yaitu iReport, ReportPdf dan ReportExcel. Setelah ini tinggal langsung ke penggunaan Implements

Contoh Penggunaan Implements

Setelah berhasil membuat Class Implements, kini saatnya untuk penggunan. Penggunan ini bisa dilakukan di Module ataupun di Userform, tergantung kebutuhan.

Sebagai contoh disini akan saya contohkan penggunaan dalam Module.

Sub BuatSemuaReport()
    Dim LapPDF As IReport
    Dim LapExcel As IReport
    
    ' Membuat instance
    Set LapPDF = New ReportPDF
    Set LapExcel = New ReportExcel
    
    ' Membuat laporan menggunakan Interface
    LapPDF.BuatReport
    LapExcel.BuatReport
End Sub

Atau misalnya didalam sebuah Userform ada tombol khusus untuk membuat report dalam bentu PDF, maka scriptnya bisa dibuat.

Sub BtnReport_Click()
    Dim LapPDF As IReport

    Set LapPDF = New ReportPDF
    LapPDF.BuatReport
End Sub

Leave a Reply

Your email address will not be published. Required fields are marked *

Tutorial Lainnya
Chat WhatsApp
WhatsApp