تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
مشكلة في طباعة تقرير ReportViewer مباشرة في فيجوال ستوديو - يوجد مثال
#1
السلام عليكم

فضلا اريد  طباعة تقرير ريبورت فيور ( reportviewer )  مباشرة من خلال الطابعة الافتراضية دون اظهار المعاينة للتقرير او اختيار الطابعة

يوجد في الملفات المرفقة مثال جاهزة للاطلاع

( لم استطع ارفاق الملفات .. هناك مشكلة في الموقع )


هذا رابط البرنامج



https://www.mediafire.com/file/vfhogik9u...t.rar/file
الرد }}}
تم الشكر بواسطة:
#2
Dodgy Dodgy
الرد }}}
تم الشكر بواسطة:
#3
تم تحميل المثال اخي والطباعه شغاله تمام بس عرض البيانات يتم عرضها عن طريق كتابة جملة في textbox والضغط علي طباعة يتم تحويلك الي صفة بها ReportViewer2
يتم الضغط علي امر الطباعة يتم الطباعه

وهذا المثال الواحد الذي وجدت يعمل علي ريبورت معي واحاول التعديل عليه واضافة فاتورة من بيانات موجوده في قاعدة البيانات تظهر لي هذه الرسالة
a data source instance has not been supplid for the data source 'dataset1'

الكود المستخدم




Imports Microsoft.Reporting.WinForms
Imports System.Data.OleDb
Public Class Form2


Private Sub ViewReport_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load

ReportViewer2.ProcessingMode = Microsoft.Reporting.WinForms.ProcessingMode.Local



Me.ReportViewer2.RefreshReport()
End Sub

Private Sub ReportViewer2_Load(sender As Object, e As EventArgs) Handles ReportViewer2.Load

' Dim cnn As New OleDbConnection("provider=microsoft.jet.oledb.4.0;data source=" & Application.StartupPath & "\db21alx22889129111177.mdb;user id=admin;jet oledb:database password=0120147")


' ReportViewer2.LocalReport.DataSources.Clear()

' B_SelectQuery = "select * from cb where idcb=14 "
ReportViewer2.ProcessingMode = Microsoft.Reporting.WinForms.ProcessingMode.Local
' conn = New OleDbConnection
Dim params1 = New ReportParameter("Parameter1", Form1.TextBox1.Text)

Dim conn As New OleDbConnection("provider=microsoft.jet.oledb.4.0;data source=" & Application.StartupPath & "\db21alx22889129111177.mdb;user id=admin;jet oledb:database password=********")
' Dim dataset1 As New DataSet

'dta = New OleDbDataAdapter("Select * From [Sheet1$]", conn)
conn.Open()
Dim adpt As New OleDbDataAdapter("select * from cb ", conn)
Dim rs As New DataTable
adpt.Fill(rs)
Dim ds As DataSet = New DataSet("DataSetOne")
ds.Tables.Add(rs)
Dim datasource As New ReportDataSource("cb", ds.Tables(0))

Me.ReportViewer2.SetDisplayMode(Microsoft.Reporting.WinForms.DisplayMode.PrintLayout)
ReportViewer2.LocalReport.DataSources.Clear()
ReportViewer2.LocalReport.SetParameters(params1)

ReportViewer2.LocalReport.DataSources.Add(datasource)
ReportViewer2.LocalReport.Refresh()

End Sub
End Class
الرد }}}
تم الشكر بواسطة:
#4
الحمد لله تم التعديل علي الكود وربط قاعدة البيانات معه بنجاح وهذا هو 

Imports Microsoft.Reporting.WinForms
Imports System.IO
Imports System.Text
Imports System.Drawing.Imaging
Imports System.Drawing.Printing
Imports System
Imports System.Globalization
Imports System.Drawing
Imports System.Collections.Generic
Imports System.Collections.Specialized
Imports System.Data
Imports System.Data.OleDb

Public Class Form2

    Private Sub Form2_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Dim params1 = New ReportParameter("Parameter1", Form1.TextBox1.Text)

        Dim conn As New OleDbConnection("provider=microsoft.jet.oledb.4.0;data source=" & Application.StartupPath & "\db21alx22889129111177.mdb;user id=admin;jet oledb:database password=*****")

        Dim dataset1 As New DataSet

        On Error Resume Next
        Dim DT As New DataTable
        DT.Clear()

        Dim cmdString As String = "select * from cb   "
        conn.Open()
        Dim adpt As New OleDbDataAdapter(cmdString, conn)
        adpt.Fill(DT)

        '    Dim datasource As New rs

        Dim datasource As New ReportDataSource("cb", DT)


        Me.ReportViewer2.SetDisplayMode(Microsoft.Reporting.WinForms.DisplayMode.PrintLayout)
        ReportViewer2.LocalReport.DataSources.Clear()
        ReportViewer2.LocalReport.SetParameters(params1)

        ReportViewer2.LocalReport.DataSources.Add(datasource)

        ReportViewer2.LocalReport.SetParameters(params1)
        Me.ReportViewer2.RefreshReport
    End Sub

    Private Sub ReportViewer2_Load(sender As Object, e As EventArgs) Handles ReportViewer2.Load


    End Sub
End Class

يجب اضافة قاعدة البيانات داخل Report1 يدوي واسم قاعدة البيانات بتفس اسم الجدول في الكود
الرد }}}
تم الشكر بواسطة:



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم