jump to navigation

Mengirim Parameter dari Visual Basic ke Crystal Report Sun - Jun 18, 2000

Posted by supriyatna in Programming, Windows.
Tags: , ,
trackback

Seagate Crystal Report digunakan untuk mencetak data dari suatu database. Hal ini jelas terlihat pada saat setiap user membuat Report, Crystal Report akan menanyakan database yang digunakan. Namun terkadang, selain mengambil data dari database sering kita dihadapkan pada kasus, “Bagaimana cara mengirim nilai dari suatu form (VB) kedalam Crystal Report?”. Apakah bisa?

Ya! Bisa dan mudah sekali…
Caranya cukup dengan membuat suatu formula dalam Crystal Report kemudian kosongkan formula tersebut ( Blank Formula ). Pada contoh dibawah, formula yang digunakan adalah @NAMA, @ALAMAT, @TELEPON, @KETERANGAN dan ke-emat formula tersebut tidak berisi apa-apa.

NB: Formula dalam Crystal Report selalu diawali dengan prefix @ (baca: at)

Langkah selanjutnya yaitu “Mengisi formula tersebut dengan nilai dari aplikasi Visual Basic”, ini pun tidak terlalu sulit, yaitu dengan memberikan nilai pada property .Formulas( nIndex ). Misalkan ika ingin memberikan nilai “Dede Supriyatna” pada formula @NAMA, maka syntak-nya:

CrystalReport1.Formulas(0) = "NAMA='Dede Supriyatna' "

Sedangkan apabila menginginkan nilai-nya bersifat dinamik, tergantung dari nilai yang ada pada TextBox txtNama maka syntaknya:

CrystalReport1.Formulas(0) = "NAMA='" & txtNama.Text & "'"

  • .ReportFileName, Properti untuk menentukan nama file dari report yang akan digunakan.
  • .DataFiles( nIndex ), Properti untuk menentukan Database yang digunakan pada report.
  • .DiscardSavedData, yaitu data yang dicetak bukan berasal dari data yang disimpan pada report, tetapi data langsung diambil dari database.

Untuk lebih lengkapnya silahkan perhatikan potongan program dibawah ini:

Private Sub cmdCetak_Click()
  CrystalReport1.ReportFileName = App.Path + "\param2rpt.rpt"
  CrystalReport1.DataFiles(0) = App.Path + "\DB_TEST.mdb"
  CrystalReport1.DiscardSavedData = True
  CrystalReport1.Formulas(0) = "NAMA='" & txtNama.Text & "'"
  CrystalReport1.Formulas(1) = "ALAMAT='" & txtAlamat.Text & "'"
  CrystalReport1.Formulas(2) = "TELEPON='" & _
    txtTelepon.Text & "'"
  CrystalReport1.Formulas(3) = "KETERANGAN='" & _
    txtKeterangan.Text & "'"
  CrystalReport1.Action = 2	' Cetak ke layar

End Sub

Private Sub cmdKeluar_Click()
  Unload Me
End Sub

Private Sub Form_Load()
  txtNama.Text = "Dede Supriyatna"
  txtAlamat.Text = "Pinang-Cipondoh Tangerang"
  txtTelepon.Text = "021-7330472"
  txtKeterangan.Text = "Program ini digunakan " & _
    "/u mengirim data " & _
    "dari VB ke dalam Crystal Report " & _
    "supriyatna@mailandnews.com"
End Sub

Private Sub txtKeterangan_KeyPress(KeyAscii As Integer)
  KeyAscii = 0
End Sub

Comments»

No comments yet — be the first.

Leave a comment