jump to navigation

Crystal Report Legacy SDK Upgrade timeline Wed - Nov 26, 2014

Posted by supriyatna in Programming, Windows.
Tags: , ,
add a comment

Please follow this link Crystal Reports Legacy SDKs Upgrade Options.

References:

Mengurutkan Data Pada Crystal Report Secara Dinamis Wed - Jun 28, 2000

Posted by supriyatna in Programming, Windows.
Tags: , , ,
add a comment

Pernah kerepotan untuk mengurutkan data pada Crystal Report?, mudah sekali bukan?, Tapi bagaimana jika mengurutkan data secara dinamis? yaitu data diurutkan sesuai dengan pilihan yang ada pada form VB. Contoh: misalkan data diurutkan berdasarkan pilihan SESSION_ID, NAMA atau EMAIL. Biasanya setiap programmer akan selalu membuat beberapa report yang sama namun memiliki kriteria penyortiran yang berbeda. Sekarang silahkan anda gunakan metoda yang lebih baik, yaitu hanya menggunakan satu buah report untuk sortir dengan kriteria yang berbeda.

Pada Crystal Report fasilitas untuk mengurutkan data yaitu dengan menggunakan Group. Jika ingin mengurutkan data berdasarkan SESSION_ID maka harus dibuat Group Session_ID, sedangkan jika ingin diurutkan berdasarkan NAMA maka Group Nama harus dibuat. Lalu bagaimana jika ingin menampilkan data yang sama namun memiliki kriteria pengurutan yang berbeda-beda. Apakah jika ada SEPULUH buah kriteria maka harus dibuat SEPULUH buah report?. Wow! Kalau begitu caranya, membuat Report ternyata benar-benar REPOT.

Sorting data crystal report

Sebetulnya dengan sedikit akal-akalan masalah ini dapat dengan mudah diatasi. Mungkin boleh juga cara ini disebut dengan cara CURANG. Caranya? Betul!… yaitu dengan menggunakan formula agar parameternya dapat dikirim melalui Applikasi VB. Buatlah sebuah group dengan menggunakan FORMULA, misalkan formula SORTING. Agar nilai dari formula SORTING dapat diubah-ubah, secara otomatis FORMULA ini harus merupakan Blank Formula -(Formula yang kosong). Kendalanya yang muncul kemudian adalah, pada Crystal Report GROUP yang berasal dari FORMULA tidak dapat dibuat apabila FORMULA tersebut kosong (Blank Formula). Cara mengatasi masalah ini adalah dengan mengisi Formula SORTING dengan Field sesuka anda, tujuannya hanyalah untuk memancing agar GROUP dapat dibuat berdasarkan Formula.

Setelah GROUP selesai dibuat dengan menggunakan Formula SORTING, hapuslah isi dari formula SORTING atau remark statment yang ada didalam formula tersebut, sehingga formula SORTING menjadi Blank Formula.
NB: Untuk meremak baris pada Crystal Report digunakan tanda Double Slash atau ‘//’

Selanjutnya adalah mengirim parameter ke Crystal Report via Applikasi, yaitu dengan men-setting properti .Formulas( nIndex ). Untuk lebih lengkapnya, perhatikan potongan program dibawah.

Private Sub Form_Load()
  lblKeterangan.Caption = "Program ini digunakan menyortir " & _
   vbCrLf & "data secara dinamis pada Crystal Report " & _
   vbCrLf & "supriyatna@mailandnews.com"
End Sub

Private Sub cmdKeluar_Click()
  Unload Me
End Sub

Private Sub cmdCetak_Click()
Dim strSort As String
Dim strJudul As String

  If opSessionID.Value Or opNama.Value Or _
   opEmail.Value Then

   CrystalReport1.ReportFileName=App.Path + _
     "\sortrptdinamic.rpt"
   CrystalReport1.DataFiles(0) = App.Path + "\DB_TEST.mdb"
   CrystalReport1.DiscardSavedData = True
   CrystalReport1.WindowTitle="Sorting data " & _
     Report secara dinamis"
   CrystalReport1.WindowState = crptMaximized

   If opSessionID.Value = True Then
     strSort = "ToNumber( {USERS.SESSION_ID} )"
     strJudul = "'SORTING DATA BERDASARKAN SESSION_ID'"
   ElseIf opNama.Value = True Then
     strSort = "{USERS.NAMA}"
     strJudul = "'SORTING DATA BERDASARKAN NAMA'"
   ElseIf opEmail.Value = True Then
     strSort = "{USERS.EMAIL}"
     strJudul = "'SORTING DATA BERDASARKAN EMAIL ADDRESS'"
   End If
   CrystalReport1.Formulas(0) = "SORTING=" & strSort
   CrystalReport1.Formulas(1) = "JUDUL=" & strJudul

   CrystalReport1.Action = 2
  Else
   MsgBox "Silahkan anda pilih terlebih dahulu kriteria" & _
     vbCrLf & "pengurutan data", vbExclamation, _
     "supriyatna@mailandnews.com"
  End If
End Sub

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

Posted by supriyatna in Programming, Windows.
Tags: , ,
add a comment

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