#vb.net #crystal-reports-2008
#vb.net #crystal-отчеты-2008
Вопрос:
Я хочу распечатать изображение в Crystal Reports. Я получил некоторый код из Интернета, но изображение не отображается; был показан только текст «ok» в первом столбце.
Буду признателен за любые предложения.
Заранее спасибо
Вот мой код
Dim myRpt As New ImageReport
Dim txtHeader As CrystalDecisions.CrystalReports.Engine.TextObject = myRpt.Section2.ReportObjects("txtHeader")
txtHeader.Text = "IMAGE AND TEXT"
Dim txtDateNow As CrystalDecisions.CrystalReports.Engine.TextObject = myRpt.Section2.ReportObjects("txtDateNow")
txtDateNow.Text = Format(Now(), "MMMM d, yyyy")
Dim row As DataRow = Nothing
Dim DS As New DataSet
'ADD A TABLE TO THE DATASET
DS.Tables.Add("rp_recipe_cr_image_report")
'ADD THE COLUMNS TO THE TABLE
With DS.Tables(0).Columns
.Add("others_t1", Type.GetType("System.String"))
.Add("image", Type.GetType("System.Byte[]"))
End With
Dim fs As New FileStream("D:asianporkroll.Jpg", FileMode.Open)
Dim br As New BinaryReader(fs)
Dim lBImageByte As Byte()
lBImageByte = New Byte(fs.Length 1) {}
lBImageByte = br.ReadBytes(Convert.ToInt32(fs.Length))
row = DS.Tables(0).NewRow
row(0) = "ok"
row(1) = lBImageByte
DS.Tables(0).Rows.Add(row)
br.Close()
fs.Close()
myRpt.SetDataSource(DS)
CrystalReportViewer1.ReportSource = myRpt
CrystalReportViewer1.Refresh()
'DISPOSE OF THE DATASET
DS.Dispose()
DS = Nothing
Комментарии:
1. Как определяется ваше изображение в Crystal Reports?
2. Сначала я создал таблицу в access, содержащую имя столбца others_t1 и изображение. Я перетаскиваю эти два столбца в название моего отчета crystal ImageReport.
3. Когда вы вставляете столбец изображения в отчет, а затем щелкаете по нему правой кнопкой мыши, отображается ли в контекстном меню что-то вроде «Blob-поле: изображение» вверху?
4. привет, competent_tech, теперь это работает. Я изменил тип своего поля на ole object, и теперь оно стало «blob-полем». Большое вам спасибо