16-06-24, 02:44 PM
لإعداد وتصدير التقرير إلى Excel في VB.NET باستخدام مكتبة Microsoft.Reporting.WinForms، يمكنك اتباع الخطوات التالية. هذا الكود يعتمد على المكتبة المتاحة ضمن Visual Studio ويشرح كيفية إنشاء التقرير وتصديره إلى ملف Excel.
الخطوات:
إعداد مشروعك: تأكد من إضافة مكتبة Microsoft.Reporting.WinForms إلى مشروعك.
إعداد البيانات والتقرير: قم بإعداد البيانات وربطها بالتقرير.
تصدير التقرير إلى Excel: استخدم الوظيفة Render لتصدير التقرير إلى ملف Excel.
الشرح:
إعداد البيانات والتقرير:
تم إعداد الاتصال بقاعدة البيانات واستعلام SQL لجلب البيانات.
ملء DataSet بالبيانات المسترجعة من قاعدة البيانات.
إعداد ReportDataSource وربطها بـ ReportViewer.
تصدير التقرير إلى Excel:
تستخدم وظيفة Render لتوليد البيانات الثنائية للتقرير بصيغة Excel.
يتم حفظ البيانات الثنائية إلى ملف Excel باستخدام FileStream.
ملاحظات:
تأكد من أن مسار الملف (filePath) صالح وأن لديك الأذونات اللازمة للكتابة في الموقع المحدد.
يمكنك تعديل تنسيق التصدير وتغيير "Excel" إلى تنسيقات أخرى مدعومة مثل "PDF" إذا رغبت بذلك.
باستخدام هذا الكود، يمكنك إعداد وتصدير تقريرك إلى ملف Excel بسهولة في VB.NET.
الخطوات:
إعداد مشروعك: تأكد من إضافة مكتبة Microsoft.Reporting.WinForms إلى مشروعك.
إعداد البيانات والتقرير: قم بإعداد البيانات وربطها بالتقرير.
تصدير التقرير إلى Excel: استخدم الوظيفة Render لتصدير التقرير إلى ملف Excel.
PHP كود :
Imports System.IO
Imports Microsoft.Reporting.WinForms
Public Class Form3
Private Sub ButtonGenerateReport_Click(sender As Object, e As EventArgs) Handles ButtonGenerateReport.Click
' إعداد الاتصال وقاعدة البيانات
Dim sqlQRY2 As String = "SELECT * FROM school"
Dim objconn As New OleDbConnection("Your Connection String Here")
Dim SqlDataAdapter As New OleDbDataAdapter(sqlQRY2, objconn)
Dim ds As New DataSet
SqlDataAdapter.Fill(ds, "school")
Dim the5, the6, the7, the12, the13 As Double
Dim nnn1 As Integer = CInt(TextBox1.Text)
ComboBox4.Text = nnn1
Dim nnn2 As Date = DateTimePicker1.Value
Dim nnn3 As String = ComboBox1.Text
If objconn.State = ConnectionState.Closed Then objconn.Open()
Dim sqlQRY As String
sqlQRY = "SELECT adinvodet.gname, adinvodet.company, adinvodet.invsun, adinvodet.makhzanid, adinvodet.makhzanname, " & _
"Sum(adinvodet.invqu) AS invqu, adinvodet.invprc, adinvodet.invsal, adinvodet.makas " & _
"FROM adinvodet " & _
"WHERE adinvodet.invono = " & ComboBox4.Text & " " & _
"GROUP BY adinvodet.gname, adinvodet.company, adinvodet.invsun, adinvodet.makhzanid, adinvodet.makhzanname, " & _
"adinvodet.invprc, adinvodet.invsal, adinvodet.makas, adinvodet.itcod, adinvodet.invunit, adinvodet.invqu, " & _
"adinvodet.invprc, adinvodet.invsal, adinvodet.makas"
Dim Dp As New OleDbDataAdapter(sqlQRY, objconn)
Dp.Fill(ds, "adinvodet")
Dim rds As New ReportDataSource("salseDataSet1_adinvodet", ds.Tables("adinvodet"))
Form46.ReportViewer1.LocalReport.DataSources.Clear()
Form46.ReportViewer1.LocalReport.DataSources.Add(rds)
Form46.ReportViewer1.LocalReport.ReportEmbeddedResource = "ismail.Report2.rdlc"
Dim paramList As New Generic.List(Of ReportParameter)
paramList.Add(New ReportParameter("part1", ComboBox1.Text))
paramList.Add(New ReportParameter("part2", TextBox1.Text))
paramList.Add(New ReportParameter("part3", DateTimePicker1.Value.ToString("yyyy-MM-dd")))
paramList.Add(New ReportParameter("part4", theschool))
Form46.ReportViewer1.LocalReport.SetParameters(paramList)
Form46.ReportViewer1.RefreshReport()
' تصدير التقرير إلى Excel
ExportReportToExcel(Form46.ReportViewer1)
End Sub
Private Sub ExportReportToExcel(reportViewer As ReportViewer)
Dim warnings As Warning()
Dim streamids As String()
Dim mimeType As String = String.Empty
Dim encoding As String = String.Empty
Dim extension As String = "xlsx"
Dim bytes As Byte()
' إعداد التقرير
bytes = reportViewer.LocalReport.Render("Excel", Nothing, mimeType, encoding, extension, streamids, warnings)
' حفظ الملف إلى Excel
Dim filePath As String = "C:\path\to\your\output\Report.xlsx"
Using fs As New FileStream(filePath, FileMode.Create)
fs.Write(bytes, 0, bytes.Length)
End Using
MessageBox.Show("تم تصدير التقرير بنجاح إلى " & filePath)
End Sub
End Class
الشرح:
إعداد البيانات والتقرير:
تم إعداد الاتصال بقاعدة البيانات واستعلام SQL لجلب البيانات.
ملء DataSet بالبيانات المسترجعة من قاعدة البيانات.
إعداد ReportDataSource وربطها بـ ReportViewer.
تصدير التقرير إلى Excel:
تستخدم وظيفة Render لتوليد البيانات الثنائية للتقرير بصيغة Excel.
يتم حفظ البيانات الثنائية إلى ملف Excel باستخدام FileStream.
ملاحظات:
تأكد من أن مسار الملف (filePath) صالح وأن لديك الأذونات اللازمة للكتابة في الموقع المحدد.
يمكنك تعديل تنسيق التصدير وتغيير "Excel" إلى تنسيقات أخرى مدعومة مثل "PDF" إذا رغبت بذلك.
باستخدام هذا الكود، يمكنك إعداد وتصدير تقريرك إلى ملف Excel بسهولة في VB.NET.
غَزة شجرة سنديان لا تنحني، ووردة لا تذبل، وشوكة عصية على الكسر. غزة، دماؤها تنتصر على السيف والسياف.
متغيب لفترة ان اخطأت بحق احد ارجو المسامحة


